authing_ruby 1.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/authing_ruby.gemspec +30 -0
- data/lib/authing_ruby/GraphQLAPI.rb +151 -0
- data/lib/authing_ruby/authentication/AuthenticationClient.rb +801 -0
- data/lib/authing_ruby/authentication/AuthenticationTokenProvider.rb +42 -0
- data/lib/authing_ruby/authentication/BaseAuthenticationClient.rb +28 -0
- data/lib/authing_ruby/common/GraphqlClient.rb +39 -0
- data/lib/authing_ruby/common/HttpClient.rb +247 -0
- data/lib/authing_ruby/common/PublicKeyManager.rb +42 -0
- data/lib/authing_ruby/graphql/mutations/bindPhone.gql +53 -0
- data/lib/authing_ruby/graphql/mutations/createUser.gql +54 -0
- data/lib/authing_ruby/graphql/mutations/deleteUser.gql +6 -0
- data/lib/authing_ruby/graphql/mutations/deleteUsers.gql +6 -0
- data/lib/authing_ruby/graphql/mutations/loginByEmail.gql +54 -0
- data/lib/authing_ruby/graphql/mutations/loginByPhoneCode.gql +54 -0
- data/lib/authing_ruby/graphql/mutations/loginByPhonePassword.gql +54 -0
- data/lib/authing_ruby/graphql/mutations/loginByUsername.gql +54 -0
- data/lib/authing_ruby/graphql/mutations/refreshAccessToken.gql +7 -0
- data/lib/authing_ruby/graphql/mutations/registerByEmail.gql +54 -0
- data/lib/authing_ruby/graphql/mutations/registerByPhoneCode.gql +54 -0
- data/lib/authing_ruby/graphql/mutations/registerByUsername.gql +54 -0
- data/lib/authing_ruby/graphql/mutations/resetPassword.gql +6 -0
- data/lib/authing_ruby/graphql/mutations/sendEmail.gql +6 -0
- data/lib/authing_ruby/graphql/mutations/updatePassword.gql +53 -0
- data/lib/authing_ruby/graphql/mutations/updateUser.gql +54 -0
- data/lib/authing_ruby/graphql/queries/accessToken.gql +7 -0
- data/lib/authing_ruby/graphql/queries/checkLoginStatus.gql +14 -0
- data/lib/authing_ruby/graphql/queries/checkPasswordStrength.gql +6 -0
- data/lib/authing_ruby/graphql/queries/findUser.gql +64 -0
- data/lib/authing_ruby/graphql/queries/isUserExists.gql +13 -0
- data/lib/authing_ruby/graphql/queries/user.gql +63 -0
- data/lib/authing_ruby/graphql/queries/users.gql +57 -0
- data/lib/authing_ruby/management/AclManagementClient.rb +47 -0
- data/lib/authing_ruby/management/ApplicationsManagementClient.rb +79 -0
- data/lib/authing_ruby/management/ManagementClient.rb +66 -0
- data/lib/authing_ruby/management/ManagementTokenProvider.rb +92 -0
- data/lib/authing_ruby/management/RolesManagementClient.rb +38 -0
- data/lib/authing_ruby/management/UserpoolManagementClient.rb +15 -0
- data/lib/authing_ruby/management/UsersManagementClient.rb +161 -0
- data/lib/authing_ruby/management/WhitelistManagementClient.rb +1 -0
- data/lib/authing_ruby/test/RSA.rb +18 -0
- data/lib/authing_ruby/test/helper.rb +15 -0
- data/lib/authing_ruby/test/js_sdk_test/1.buildAuthorizeUrl.js +43 -0
- data/lib/authing_ruby/test/js_sdk_test/2.buildAuthorizeUrl_PKCE.js +47 -0
- data/lib/authing_ruby/test/js_sdk_test/README.md +5 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/CONTRIBUTION.md +23 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/LICENSE +21 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/README.md +303 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/browser/index.min.js +2 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/browser/index.min.js.LICENSE.txt +91 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/index.d.ts +7 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/index.js +20 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/AuthenticationClient.d.ts +1078 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/AuthenticationClient.js +2801 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/AuthenticationTokenProvider.d.ts +13 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/AuthenticationTokenProvider.js +56 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/BaseAuthenticationClient.d.ts +6 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/BaseAuthenticationClient.js +31 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/EnterpriseAuthenticationClient.d.ts +92 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/EnterpriseAuthenticationClient.js +250 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/MfaAuthenticationClient.d.ts +303 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/MfaAuthenticationClient.js +665 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/QrCodeAuthenticationClient.d.ts +232 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/QrCodeAuthenticationClient.js +619 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/SocialAuthenticationClient.d.ts +100 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/SocialAuthenticationClient.js +179 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/types.d.ts +331 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/authentication/types.js +69 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/common/GraphqlClient.d.ts +14 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/common/GraphqlClient.js +125 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/common/HttpClient.d.ts +19 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/common/HttpClient.js +149 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/common/PublicKeyManager.d.ts +18 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/common/PublicKeyManager.js +81 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/graphqlapi.d.ts +110 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/graphqlapi.js +1812 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/AclManagementClient.d.ts +236 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/AclManagementClient.js +863 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/AgreementManagementClient.d.ts +65 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/AgreementManagementClient.js +195 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/ApplicationsManagementClient.d.ts +216 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/ApplicationsManagementClient.js +531 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/GroupsManagementClient.d.ts +184 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/GroupsManagementClient.js +386 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/MFAManagementClient.d.ts +58 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/MFAManagementClient.js +126 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/ManagementClient.d.ts +74 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/ManagementClient.js +190 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/ManagementTokenProvider.d.ts +39 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/ManagementTokenProvider.js +159 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/OrgManagementClient.d.ts +488 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/OrgManagementClient.js +772 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/PoliciesManagementClient.d.ts +304 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/PoliciesManagementClient.js +512 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/RolesManagementClient.d.ts +291 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/RolesManagementClient.js +676 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/StatisticsManagementClient.d.ts +56 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/StatisticsManagementClient.js +198 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/UdfManagementClient.d.ts +146 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/UdfManagementClient.js +264 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/UserActionManagementClient.d.ts +44 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/UserActionManagementClient.js +106 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/UserpoolManagementClient.d.ts +142 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/UserpoolManagementClient.js +241 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/UsersManagementClient.d.ts +753 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/UsersManagementClient.js +1114 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/WhitelistManagementClient.d.ts +114 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/WhitelistManagementClient.js +259 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/types.d.ts +982 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/management/types.js +96 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/platform/express/index.d.ts +30 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/platform/express/index.js +126 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/testing-helper.d.ts +31 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/testing-helper.js +67 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/utils.d.ts +53 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/utils.js +343 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/version.d.ts +1 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/lib/version.js +5 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/types/graphql.v2.d.ts +5612 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/types/graphql.v2.js +240 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/types/index.d.ts +7 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/main/types/index.js +3 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/index.d.ts +7 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/index.js +8 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/AuthenticationClient.d.ts +1078 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/AuthenticationClient.js +2795 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/AuthenticationTokenProvider.d.ts +13 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/AuthenticationTokenProvider.js +53 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/BaseAuthenticationClient.d.ts +6 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/BaseAuthenticationClient.js +28 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/EnterpriseAuthenticationClient.d.ts +92 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/EnterpriseAuthenticationClient.js +247 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/MfaAuthenticationClient.d.ts +303 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/MfaAuthenticationClient.js +662 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/QrCodeAuthenticationClient.d.ts +232 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/QrCodeAuthenticationClient.js +616 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/SocialAuthenticationClient.d.ts +100 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/SocialAuthenticationClient.js +176 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/types.d.ts +331 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/authentication/types.js +66 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/common/GraphqlClient.d.ts +14 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/common/GraphqlClient.js +119 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/common/HttpClient.d.ts +19 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/common/HttpClient.js +143 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/common/PublicKeyManager.d.ts +18 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/common/PublicKeyManager.js +78 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/graphqlapi.d.ts +110 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/graphqlapi.js +1809 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/AclManagementClient.d.ts +236 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/AclManagementClient.js +860 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/AgreementManagementClient.d.ts +65 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/AgreementManagementClient.js +192 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/ApplicationsManagementClient.d.ts +216 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/ApplicationsManagementClient.js +528 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/GroupsManagementClient.d.ts +184 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/GroupsManagementClient.js +383 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/MFAManagementClient.d.ts +58 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/MFAManagementClient.js +123 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/ManagementClient.d.ts +74 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/ManagementClient.js +184 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/ManagementTokenProvider.d.ts +39 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/ManagementTokenProvider.js +153 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/OrgManagementClient.d.ts +488 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/OrgManagementClient.js +750 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/PoliciesManagementClient.d.ts +304 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/PoliciesManagementClient.js +509 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/RolesManagementClient.d.ts +291 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/RolesManagementClient.js +673 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/StatisticsManagementClient.d.ts +56 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/StatisticsManagementClient.js +195 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/UdfManagementClient.d.ts +146 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/UdfManagementClient.js +261 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/UserActionManagementClient.d.ts +44 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/UserActionManagementClient.js +103 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/UserpoolManagementClient.d.ts +142 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/UserpoolManagementClient.js +238 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/UsersManagementClient.d.ts +753 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/UsersManagementClient.js +1111 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/WhitelistManagementClient.d.ts +114 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/WhitelistManagementClient.js +256 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/types.d.ts +982 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/management/types.js +93 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/platform/express/index.d.ts +30 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/platform/express/index.js +123 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/testing-helper.d.ts +31 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/testing-helper.js +62 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/utils.d.ts +53 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/utils.js +336 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/version.d.ts +1 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/lib/version.js +2 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/types/graphql.v2.d.ts +5612 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/types/graphql.v2.js +237 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/types/index.d.ts +7 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/module/types/index.js +1 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/index.d.ts +7 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/index.js +30 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/AuthenticationClient.d.ts +1078 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/AuthenticationClient.js +2811 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/AuthenticationTokenProvider.d.ts +13 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/AuthenticationTokenProvider.js +66 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/BaseAuthenticationClient.d.ts +6 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/BaseAuthenticationClient.js +41 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/EnterpriseAuthenticationClient.d.ts +92 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/EnterpriseAuthenticationClient.js +260 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/MfaAuthenticationClient.d.ts +303 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/MfaAuthenticationClient.js +675 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/QrCodeAuthenticationClient.d.ts +232 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/QrCodeAuthenticationClient.js +629 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/SocialAuthenticationClient.d.ts +100 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/SocialAuthenticationClient.js +189 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/types.d.ts +331 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/authentication/types.js +79 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/common/GraphqlClient.d.ts +14 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/common/GraphqlClient.js +135 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/common/HttpClient.d.ts +19 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/common/HttpClient.js +159 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/common/PublicKeyManager.d.ts +18 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/common/PublicKeyManager.js +91 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/graphqlapi.d.ts +110 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/graphqlapi.js +1822 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/AclManagementClient.d.ts +236 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/AclManagementClient.js +873 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/AgreementManagementClient.d.ts +65 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/AgreementManagementClient.js +205 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/ApplicationsManagementClient.d.ts +216 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/ApplicationsManagementClient.js +541 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/GroupsManagementClient.d.ts +184 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/GroupsManagementClient.js +396 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/MFAManagementClient.d.ts +58 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/MFAManagementClient.js +136 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/ManagementClient.d.ts +74 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/ManagementClient.js +200 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/ManagementTokenProvider.d.ts +39 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/ManagementTokenProvider.js +169 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/OrgManagementClient.d.ts +488 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/OrgManagementClient.js +782 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/PoliciesManagementClient.d.ts +304 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/PoliciesManagementClient.js +522 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/RolesManagementClient.d.ts +291 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/RolesManagementClient.js +686 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/StatisticsManagementClient.d.ts +56 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/StatisticsManagementClient.js +208 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/UdfManagementClient.d.ts +146 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/UdfManagementClient.js +274 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/UserActionManagementClient.d.ts +44 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/UserActionManagementClient.js +116 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/UserpoolManagementClient.d.ts +142 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/UserpoolManagementClient.js +251 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/UsersManagementClient.d.ts +753 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/UsersManagementClient.js +1124 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/WhitelistManagementClient.d.ts +114 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/WhitelistManagementClient.js +269 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/types.d.ts +982 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/management/types.js +106 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/platform/express/index.d.ts +30 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/platform/express/index.js +136 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/testing-helper.d.ts +31 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/testing-helper.js +77 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/utils.d.ts +53 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/utils.js +353 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/version.d.ts +1 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/lib/version.js +15 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/types/graphql.v2.d.ts +5612 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/types/graphql.v2.js +250 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/types/index.d.ts +7 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build/umd/types/index.js +13 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/build-doc.js +520 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/CHANGELOG.md +413 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/LICENSE +19 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/README.md +709 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/UPGRADE_GUIDE.md +162 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/dist/axios.js +1715 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/dist/axios.map +1 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/dist/axios.min.js +3 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/dist/axios.min.map +1 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/index.d.ts +157 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/index.js +1 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/adapters/README.md +37 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/adapters/http.js +279 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/adapters/xhr.js +180 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/axios.js +53 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/cancel/Cancel.js +19 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/cancel/CancelToken.js +57 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/cancel/isCancel.js +5 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/Axios.js +94 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/InterceptorManager.js +52 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/README.md +7 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/buildFullPath.js +20 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/createError.js +18 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/dispatchRequest.js +79 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/enhanceError.js +42 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/mergeConfig.js +73 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/settle.js +25 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/core/transformData.js +20 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/defaults.js +97 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/README.md +7 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/bind.js +11 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/buildURL.js +71 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/combineURLs.js +14 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/cookies.js +53 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/deprecatedMethod.js +24 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/isAbsoluteURL.js +14 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/isURLSameOrigin.js +68 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/normalizeHeaderName.js +12 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/parseHeaders.js +53 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/helpers/spread.js +27 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/lib/utils.js +344 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/axios/package.json +84 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/follow-redirects/LICENSE +18 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/follow-redirects/README.md +155 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/follow-redirects/http.js +1 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/follow-redirects/https.js +1 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/follow-redirects/index.js +322 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/node_modules/follow-redirects/package.json +60 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/package.json +129 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/tests/index.html +21 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/tsconfig.brower.json +45 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/tsconfig.node.json +0 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/authing-js-sdk/webpack.config.js +41 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/CHANGELOG.md +685 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/LICENSE +19 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/README.md +800 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/UPGRADE_GUIDE.md +162 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/dist/axios.js +1756 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/dist/axios.map +1 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/dist/axios.min.js +3 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/dist/axios.min.map +1 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/index.d.ts +161 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/index.js +1 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/adapters/README.md +37 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/adapters/http.js +303 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/adapters/xhr.js +179 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/axios.js +56 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/cancel/Cancel.js +19 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/cancel/CancelToken.js +57 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/cancel/isCancel.js +5 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/Axios.js +95 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/InterceptorManager.js +52 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/README.md +7 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/buildFullPath.js +20 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/createError.js +18 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/dispatchRequest.js +79 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/enhanceError.js +42 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/mergeConfig.js +87 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/settle.js +25 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/core/transformData.js +20 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/defaults.js +98 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/README.md +7 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/bind.js +11 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/buildURL.js +70 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/combineURLs.js +14 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/cookies.js +53 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/deprecatedMethod.js +24 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/isAbsoluteURL.js +14 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/isAxiosError.js +11 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/isURLSameOrigin.js +68 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/normalizeHeaderName.js +12 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/parseHeaders.js +53 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/helpers/spread.js +27 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/lib/utils.js +351 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/axios/package.json +86 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/CONTRIBUTING.md +28 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/LICENSE +24 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/README.md +249 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/aes.js +234 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/bower.json +35 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/cipher-core.js +890 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/core.js +797 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/crypto-js.js +6059 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/docs/QuickStartGuide.wiki +470 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/enc-base64.js +136 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/enc-hex.js +18 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/enc-latin1.js +18 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/enc-utf16.js +149 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/enc-utf8.js +18 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/evpkdf.js +134 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/format-hex.js +66 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/format-openssl.js +18 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac-md5.js +18 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac-ripemd160.js +18 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac-sha1.js +18 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac-sha224.js +18 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac-sha256.js +18 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac-sha3.js +18 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac-sha384.js +18 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac-sha512.js +18 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/hmac.js +143 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/index.js +18 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/lib-typedarrays.js +76 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/md5.js +268 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/mode-cfb.js +80 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/mode-ctr-gladman.js +116 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/mode-ctr.js +58 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/mode-ecb.js +40 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/mode-ofb.js +54 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/package.json +38 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/pad-ansix923.js +49 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/pad-iso10126.js +44 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/pad-iso97971.js +40 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/pad-nopadding.js +30 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/pad-pkcs7.js +18 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/pad-zeropadding.js +47 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/pbkdf2.js +145 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/rabbit-legacy.js +190 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/rabbit.js +192 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/rc4.js +139 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/ripemd160.js +267 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/sha1.js +150 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/sha224.js +80 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/sha256.js +199 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/sha3.js +326 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/sha384.js +83 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/sha512.js +326 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/tripledes.js +779 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/crypto-js/x64-core.js +304 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/CHANGELOG.md +395 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/LICENSE +19 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/Makefile +58 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/README.md +368 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/karma.conf.js +70 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/node.js +1 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/package.json +43 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/src/browser.js +195 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/src/debug.js +225 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/src/index.js +10 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/debug/src/node.js +186 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/follow-redirects/LICENSE +18 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/follow-redirects/README.md +148 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/follow-redirects/debug.js +14 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/follow-redirects/http.js +1 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/follow-redirects/https.js +1 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/follow-redirects/index.js +535 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/follow-redirects/package.json +59 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/LICENSE.txt +107 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/README.md +192 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/bin/jsencrypt.js +249 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/bin/jsencrypt.min.js +2 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/bin/jsencrypt.min.js.LICENSE.txt +8 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/JSEncrypt.d.ts +116 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/JSEncrypt.js +186 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/JSEncryptRSAKey.d.ts +142 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/JSEncryptRSAKey.js +315 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/index.d.ts +3 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/index.js +3 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/asn1.d.ts +51 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/asn1.js +565 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/base64.d.ts +5 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/base64.js +88 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/hex.d.ts +3 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/hex.js +64 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/int10.d.ts +9 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/int10.js +87 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/oids.d.ts +9778 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/asn1js/oids.js +1962 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/base64.d.ts +3 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/base64.js +76 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/jsbn.d.ts +98 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/jsbn.js +1754 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/prng4.d.ts +10 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/prng4.js +46 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/rng.d.ts +3 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/rng.js +76 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/rsa.d.ts +23 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/rsa.js +373 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/util.d.ts +7 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsbn/util.js +58 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsrsasign/asn1-1.0.js +1593 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/lib/jsrsasign/yahoo.js +69 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/lib/version.json +1 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jsencrypt/package.json +49 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/Gruntfile.js +78 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/LICENSE +21 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/README.md +55 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/bower.json +20 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/build/jwt-decode.js +125 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/build/jwt-decode.min.js +1 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/jwt-decode.html +2 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/lib/atob.js +38 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/lib/base64_url_decode.js +33 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/lib/index.js +26 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/package.json +37 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/standalone.js +16 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/test/tests.js +53 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/test_harness.html +29 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/testem.yml +46 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/jwt-decode/testem_dev.yml +1 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/ms/index.js +152 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/ms/license.md +21 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/ms/package.json +37 -0
- data/lib/authing_ruby/test/js_sdk_test/node_modules/ms/readme.md +51 -0
- data/lib/authing_ruby/test/js_sdk_test/package-lock.json +177 -0
- data/lib/authing_ruby/test/js_sdk_test/package.json +15 -0
- data/lib/authing_ruby/test/mini_test/TestApplicationsManagementClient.rb +85 -0
- data/lib/authing_ruby/test/mini_test/TestAuthenticationClient.rb +232 -0
- data/lib/authing_ruby/test/mini_test/TestAuthenticationClientProtocal.rb +238 -0
- data/lib/authing_ruby/test/mini_test/TestHttpClient.rb +53 -0
- data/lib/authing_ruby/test/mini_test/TestManagementClient.rb +193 -0
- data/lib/authing_ruby/test/mini_test/TestManagementTokenProvider.rb +49 -0
- data/lib/authing_ruby/test/mini_test/TestNaiveHttpClient.rb +33 -0
- data/lib/authing_ruby/test/mini_test/TestSMSandEmail.rb +101 -0
- data/lib/authing_ruby/test/mini_test/TestUtils.rb +35 -0
- data/lib/authing_ruby/utils/utils.rb +40 -0
- data/lib/authing_ruby/version.rb +6 -0
- data/lib/authing_ruby.rb +14 -0
- metadata +694 -0
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
# 管理模块
|
|
2
|
+
require_relative './ManagementTokenProvider.rb'
|
|
3
|
+
require_relative './UsersManagementClient.rb'
|
|
4
|
+
require_relative './ApplicationsManagementClient.rb'
|
|
5
|
+
require_relative './AclManagementClient.rb'
|
|
6
|
+
require_relative './UserpoolManagementClient.rb'
|
|
7
|
+
require_relative './RolesManagementClient.rb'
|
|
8
|
+
|
|
9
|
+
module AuthingRuby
|
|
10
|
+
class ManagementClient
|
|
11
|
+
|
|
12
|
+
def initialize(options = {})
|
|
13
|
+
@userPoolId = options.fetch(:userPoolId, nil)
|
|
14
|
+
@secret = options.fetch(:secret, nil)
|
|
15
|
+
@appId = options.fetch(:appId, nil)
|
|
16
|
+
@host = options.fetch(:host, nil)
|
|
17
|
+
@accessToken = options.fetch(:accessToken, nil)
|
|
18
|
+
|
|
19
|
+
if @userPoolId == nil && @appId == nil
|
|
20
|
+
throw '请提供 userPoolId 或 appId!'
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
graphqlApiEndpointV2 = "#{@host}/graphql/v2"
|
|
24
|
+
@graphqlClient = AuthingRuby::Common::GraphqlClient.new(graphqlApiEndpointV2, options)
|
|
25
|
+
@tokenProvider = AuthingRuby::ManagementTokenProvider.new(options, @graphqlClient)
|
|
26
|
+
@httpClient = AuthingRuby::Common::HttpClient.new(options, @tokenProvider)
|
|
27
|
+
@publicKeyManager = AuthingRuby::Common::PublicKeyManager.new(options)
|
|
28
|
+
|
|
29
|
+
@users = AuthingRuby::UsersManagementClient.new(
|
|
30
|
+
options,
|
|
31
|
+
@graphqlClient,
|
|
32
|
+
@httpClient,
|
|
33
|
+
@tokenProvider,
|
|
34
|
+
@publicKeyManager
|
|
35
|
+
);
|
|
36
|
+
|
|
37
|
+
@applications = AuthingRuby::ApplicationsManagementClient.new(
|
|
38
|
+
options,
|
|
39
|
+
@httpClient,
|
|
40
|
+
@graphqlClient,
|
|
41
|
+
@tokenProvider,
|
|
42
|
+
);
|
|
43
|
+
|
|
44
|
+
@acl = AuthingRuby::AclManagementClient.new(
|
|
45
|
+
options,
|
|
46
|
+
@httpClient,
|
|
47
|
+
@graphqlClient,
|
|
48
|
+
@tokenProvider,
|
|
49
|
+
);
|
|
50
|
+
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
def users
|
|
54
|
+
return @users
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
def applications
|
|
58
|
+
return @applications
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
def acl
|
|
62
|
+
return @acl
|
|
63
|
+
end
|
|
64
|
+
|
|
65
|
+
end
|
|
66
|
+
end
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
# 复刻一个 JS SDK 里的 ManagementTokenProvider(方法名字,返回值,参数的数量和顺序,都尽量保持一致)
|
|
2
|
+
# 用途:管理 accessToken
|
|
3
|
+
|
|
4
|
+
# authing.js/src/lib/management/ManagementTokenProvider.ts
|
|
5
|
+
|
|
6
|
+
require_relative '../GraphQLAPI.rb'
|
|
7
|
+
require 'jwt'
|
|
8
|
+
|
|
9
|
+
module AuthingRuby
|
|
10
|
+
class ManagementTokenProvider
|
|
11
|
+
|
|
12
|
+
def initialize(options = {}, graphqlClient = nil)
|
|
13
|
+
@options = options;
|
|
14
|
+
@graphqlClient = graphqlClient;
|
|
15
|
+
|
|
16
|
+
@_accessToken = nil
|
|
17
|
+
@_accessTokenExpriredAt = nil # 过期时间
|
|
18
|
+
|
|
19
|
+
accessToken = options.fetch(:accessToken, nil)
|
|
20
|
+
# 如果 options 里传入了 accessToken
|
|
21
|
+
if accessToken
|
|
22
|
+
@_accessToken = accessToken;
|
|
23
|
+
decoded_token_array = JWT.decode @_accessToken, nil, false # 试着解析一下
|
|
24
|
+
payload = decoded_token_array[0]
|
|
25
|
+
exp = payload.dig('exp'); # exp 是过期时间(秒)
|
|
26
|
+
@_accessTokenExpriredAt = exp; # 把过期时间存起来
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
# 用途:获取 access token,如果没过期就直接返回缓存的版本
|
|
31
|
+
# 如果过期了就重新去获取
|
|
32
|
+
def getToken()
|
|
33
|
+
accessToken = @options.fetch(:accessToken, nil)
|
|
34
|
+
return accessToken if accessToken
|
|
35
|
+
|
|
36
|
+
# 缓存到 accessToken 过期前 3600 s
|
|
37
|
+
current_timestamps_in_second = Time.now.to_i
|
|
38
|
+
if @_accessToken && @_accessTokenExpriredAt > current_timestamps_in_second + 3600
|
|
39
|
+
return @_accessToken
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
return _getAccessTokenFromServer();
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
# 用途:发请求,从服务器获取新的 AccessToken
|
|
46
|
+
def _getAccessTokenFromServer
|
|
47
|
+
accessToken = nil;
|
|
48
|
+
secret = @options.fetch(:secret, nil)
|
|
49
|
+
if secret
|
|
50
|
+
accessToken = getClientWhenSdkInit()
|
|
51
|
+
else
|
|
52
|
+
accessToken = refreshToken()
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
@_accessToken = accessToken;
|
|
56
|
+
decoded_token_array = JWT.decode @_accessToken, nil, false
|
|
57
|
+
payload = decoded_token_array[0]
|
|
58
|
+
# {"data"=>{"type"=>"user", "userPoolId"=>"59f86b4832eb28071bdd9214", "arn"=>"arn:cn:authing:59f86b4832eb28071bdd9214:user:607b0b15aab3a805f7ea6617", "id"=>"607b0b15aab3a805f7ea6617", "userId"=>"607b0b15aab3a805f7ea6617", "_id"=>"607b0b15aab3a805f7ea6617", "phone"=>"13556136684", "email"=>nil, "username"=>nil, "unionid"=>nil, "openid"=>nil, "clientId"=>"59f86b4832eb28071bdd9214"}, "iat"=>1619579553, "exp"=>1620875553}
|
|
59
|
+
exp = payload.dig('exp'); # exp 是过期时间(秒)
|
|
60
|
+
@_accessTokenExpriredAt = exp
|
|
61
|
+
return @_accessToken;
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
# 发送 GraphQL 接口请求获取 accessToken
|
|
65
|
+
def getClientWhenSdkInit
|
|
66
|
+
variables = {
|
|
67
|
+
userPoolId: @options.fetch(:userPoolId, nil),
|
|
68
|
+
secret: @options.fetch(:secret, nil),
|
|
69
|
+
}
|
|
70
|
+
api = AuthingRuby::GraphQLAPI.new
|
|
71
|
+
res = api.getAccessToken(@graphqlClient, variables)
|
|
72
|
+
# {"data":{"accessToken":{"accessToken":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJkYXRhIjp7InR5cGUiOiJ1[省略]ZWE2NjE3IiwidXNlcks2lkIjoiNjA3YjBiMTVhYWIzYTgwNWY3ZWE2NjE3IiwiX2lkIjoiNjA3YjBiMTVhYWIzYTgwNWY3ZWE2NjE3IiwicGhvbmz3Mzk5M30.K7pwyvbxypeiOlYRsTIlLXY2xyk94tTd-CATQ85jYqM","exp":1620873993,"iat":1619577993}}}
|
|
73
|
+
hash = JSON.parse(res)
|
|
74
|
+
return hash.dig("data", "accessToken", "accessToken")
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
# TODO 还需要做什么?
|
|
78
|
+
def refreshToken
|
|
79
|
+
api = AuthingRuby::GraphQLAPI.new
|
|
80
|
+
res = api.refreshAccessToken(@graphqlClient, {
|
|
81
|
+
accessToken: @options.fetch(:accessToken, nil)
|
|
82
|
+
})
|
|
83
|
+
hash = JSON.parse(res)
|
|
84
|
+
# puts hash
|
|
85
|
+
# {"errors"=>[{"message"=>{"code"=>500, "message"=>"该 token 在黑名单中"}, "locations"=>[{"line"=>2, "column"=>5}], "path"=>["refreshAccessToken"], "extensions"=>{"code"=>"INTERNAL_SERVER_ERROR", "exception"=>{"name"=>"TokenInBlackListError"}}}], "data"=>nil}
|
|
86
|
+
if hash.dig("errors")
|
|
87
|
+
return hash
|
|
88
|
+
end
|
|
89
|
+
return hash.dig("data", "refreshAccessToken", "accessToken")
|
|
90
|
+
end
|
|
91
|
+
end
|
|
92
|
+
end
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# 管理角色
|
|
2
|
+
# TODO: 这个只写了个架子,具体的还没实现
|
|
3
|
+
|
|
4
|
+
module AuthingRuby
|
|
5
|
+
class RolesManagementClient
|
|
6
|
+
|
|
7
|
+
def initialize(options = {}, graphqlClient = nil, tokenProvider = nil)
|
|
8
|
+
@options = options
|
|
9
|
+
@graphqlClient = graphqlClient
|
|
10
|
+
@tokenProvider = tokenProvider
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
# 创建角色
|
|
14
|
+
def create
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# 删除角色
|
|
18
|
+
def delete
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
# 修改角色
|
|
22
|
+
def update
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
# 获取角色列表
|
|
26
|
+
def list
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
# 添加用户
|
|
30
|
+
def addUsers
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
# 移除用户
|
|
34
|
+
def removeUsers
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
end
|
|
38
|
+
end
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
# UsersManagementClient 负责什么?
|
|
2
|
+
# https://github.com/Authing/authing.js/blob/master/src/lib/management/UsersManagementClient.ts
|
|
3
|
+
|
|
4
|
+
module AuthingRuby
|
|
5
|
+
class UsersManagementClient
|
|
6
|
+
|
|
7
|
+
def initialize(options = {}, graphqlClient = nil, httpClient = nil, tokenProvider = nil, publicKeyManager = nil)
|
|
8
|
+
@options = options
|
|
9
|
+
@graphqlClient = graphqlClient
|
|
10
|
+
@httpClient = httpClient
|
|
11
|
+
@tokenProvider = tokenProvider
|
|
12
|
+
@publicKeyManager = publicKeyManager
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
# 创建用户
|
|
16
|
+
def create(userInfo = {}, options = {})
|
|
17
|
+
keepPassword = options.fetch(:keepPassword, false)
|
|
18
|
+
password = userInfo.fetch(:password, nil)
|
|
19
|
+
# 先对密码进行处理
|
|
20
|
+
if password
|
|
21
|
+
publicKey = @publicKeyManager.getPublicKey()
|
|
22
|
+
encryptedPassword = AuthingRuby::Utils.encrypt(password, publicKey)
|
|
23
|
+
userInfo[:password] = encryptedPassword
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
# 然后再发请求
|
|
27
|
+
graphqlAPI = AuthingRuby::GraphQLAPI.new
|
|
28
|
+
variables = {
|
|
29
|
+
"userInfo": userInfo,
|
|
30
|
+
"keepPassword": keepPassword,
|
|
31
|
+
}
|
|
32
|
+
res = graphqlAPI.createUser(@graphqlClient, @tokenProvider, variables)
|
|
33
|
+
return res
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
# 修改用户资料
|
|
37
|
+
def update(id, updates = {})
|
|
38
|
+
# 预处理密码(如果有的话)
|
|
39
|
+
password = updates.fetch(:password, nil)
|
|
40
|
+
if password
|
|
41
|
+
publicKey = @publicKeyManager.getPublicKey()
|
|
42
|
+
encryptedPassword = AuthingRuby::Utils.encrypt(password, publicKey)
|
|
43
|
+
updates[:password] = encryptedPassword
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
# 然后再发请求
|
|
47
|
+
graphqlAPI = AuthingRuby::GraphQLAPI.new
|
|
48
|
+
variables = {
|
|
49
|
+
"id": id,
|
|
50
|
+
"input": updates
|
|
51
|
+
}
|
|
52
|
+
res = graphqlAPI.updateUser(@graphqlClient, @tokenProvider, variables)
|
|
53
|
+
return res
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
# 通过 ID 获取用户信息
|
|
57
|
+
def detail(user_id)
|
|
58
|
+
graphqlAPI = AuthingRuby::GraphQLAPI.new
|
|
59
|
+
variables = {
|
|
60
|
+
"id": user_id,
|
|
61
|
+
}
|
|
62
|
+
res = graphqlAPI.user(@graphqlClient, @tokenProvider, variables)
|
|
63
|
+
return res
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
# 删除用户
|
|
67
|
+
def delete(user_id)
|
|
68
|
+
variables = {
|
|
69
|
+
"id": user_id,
|
|
70
|
+
}
|
|
71
|
+
graphqlAPI = AuthingRuby::GraphQLAPI.new
|
|
72
|
+
res = graphqlAPI.deleteUser(@graphqlClient, @tokenProvider, variables)
|
|
73
|
+
return res
|
|
74
|
+
# {"data":{"deleteUser":{"message":"删除成功!","code":200}}}
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
# 批量删除用户
|
|
78
|
+
def deleteMany(user_ids = [])
|
|
79
|
+
variables = {
|
|
80
|
+
"ids": user_ids,
|
|
81
|
+
}
|
|
82
|
+
graphqlAPI = AuthingRuby::GraphQLAPI.new
|
|
83
|
+
res = graphqlAPI.deleteUsers(@graphqlClient, @tokenProvider, variables)
|
|
84
|
+
return res
|
|
85
|
+
# {"data":{"deleteUsers":{"message":"删除成功!","code":200}}}
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
# 获取用户列表
|
|
89
|
+
def list(page = 1, limit = 10)
|
|
90
|
+
variables = {
|
|
91
|
+
"page": page,
|
|
92
|
+
"limit": limit,
|
|
93
|
+
}
|
|
94
|
+
graphqlAPI = AuthingRuby::GraphQLAPI.new
|
|
95
|
+
res = graphqlAPI.users(@graphqlClient, @tokenProvider, variables)
|
|
96
|
+
return res
|
|
97
|
+
end
|
|
98
|
+
|
|
99
|
+
# TODO
|
|
100
|
+
# 批量获取用户
|
|
101
|
+
def batch
|
|
102
|
+
end
|
|
103
|
+
|
|
104
|
+
# 检查用户是否存在
|
|
105
|
+
def exists(options = {})
|
|
106
|
+
username = options.fetch(:username, nil)
|
|
107
|
+
email = options.fetch(:email, nil)
|
|
108
|
+
phone = options.fetch(:phone, nil)
|
|
109
|
+
if username == nil && email == nil && phone == nil
|
|
110
|
+
throw "缺少参数, 请至少传入一个选项: username, email, phone"
|
|
111
|
+
end
|
|
112
|
+
|
|
113
|
+
variables = {
|
|
114
|
+
"username": username,
|
|
115
|
+
"email": email,
|
|
116
|
+
"phone": phone,
|
|
117
|
+
}
|
|
118
|
+
graphqlAPI = AuthingRuby::GraphQLAPI.new
|
|
119
|
+
res = graphqlAPI.isUserExists(@graphqlClient, @tokenProvider, variables)
|
|
120
|
+
json = JSON.parse(res)
|
|
121
|
+
return json.dig('data', "isUserExists")
|
|
122
|
+
end
|
|
123
|
+
|
|
124
|
+
# 查找用户
|
|
125
|
+
def find(options = {})
|
|
126
|
+
username = options.fetch(:username, nil)
|
|
127
|
+
email = options.fetch(:email, nil)
|
|
128
|
+
phone = options.fetch(:phone, nil)
|
|
129
|
+
externalId = options.fetch(:externalId, nil)
|
|
130
|
+
if username == nil && email == nil && phone == nil && externalId == nil
|
|
131
|
+
throw "缺少参数, 请至少传入一个选项: username, email, phone, externalId"
|
|
132
|
+
end
|
|
133
|
+
|
|
134
|
+
variables = {
|
|
135
|
+
"username": username,
|
|
136
|
+
"email": email,
|
|
137
|
+
"phone": phone,
|
|
138
|
+
"externalId": externalId,
|
|
139
|
+
}
|
|
140
|
+
graphqlAPI = AuthingRuby::GraphQLAPI.new
|
|
141
|
+
res = graphqlAPI.findUser(@graphqlClient, @tokenProvider, variables)
|
|
142
|
+
json = JSON.parse(res)
|
|
143
|
+
return json
|
|
144
|
+
end
|
|
145
|
+
|
|
146
|
+
# TODO
|
|
147
|
+
def search
|
|
148
|
+
end
|
|
149
|
+
|
|
150
|
+
# TODO
|
|
151
|
+
def refreshToken
|
|
152
|
+
end
|
|
153
|
+
|
|
154
|
+
# TODO
|
|
155
|
+
# 返回用户的所有角色
|
|
156
|
+
# https://docs.authing.cn/v2/guides/basics/authenticate-first-user/how-to-implement-access-control.html#%E5%9C%A8%E5%90%8E%E7%AB%AF%E9%80%9A%E8%BF%87%E7%94%A8%E6%88%B7%E8%A7%92%E8%89%B2%E6%8E%A7%E5%88%B6%E6%9D%83%E9%99%90
|
|
157
|
+
def listRoles(user_id)
|
|
158
|
+
end
|
|
159
|
+
|
|
160
|
+
end
|
|
161
|
+
end
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
# 管理注册白名单
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# 用途:把一个字符串通过 RSA 公钥进行加密
|
|
2
|
+
# 把这个加密后的字符串,传递给 Authing 的 registerbyemail 的 muation 的 password 字段
|
|
3
|
+
# 如何运行: ruby ./lib/test/RSA.rb
|
|
4
|
+
|
|
5
|
+
# 2021-4-24 结论:这个能运行,但是暂时不确定传递给 Authing 是否能用,要先解决用户池id 的问题
|
|
6
|
+
# https://github.com/Authing/authing.js/blob/cf4757d09de3b44c3c3f4509ae8c8715c9f302a2/src/lib/common/GraphqlClient.ts#L6
|
|
7
|
+
# 用户池 id 是请求头里 'x-authing-userpool-id' 指定的
|
|
8
|
+
# 解决了,实测可以,这个公钥加密方式是正确的。可以用这个密码登录。
|
|
9
|
+
|
|
10
|
+
require 'openssl'
|
|
11
|
+
require "base64"
|
|
12
|
+
|
|
13
|
+
# 公钥来自 https://rails-demo.authing.cn/api/v2/.well-known
|
|
14
|
+
public_key = "-----BEGIN PUBLIC KEY-----\nMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC4xKeUgQ+Aoz7TLfAfs9+paePb\n5KIofVthEopwrXFkp8OCeocaTHt9ICjTT2QeJh6cZaDaArfZ873GPUn00eOIZ7Ae\n+TiA2BKHbCvloW3w5Lnqm70iSsUi5Fmu9/2+68GZRH9L7Mlh8cFksCicW2Y2W2uM\nGKl64GDcIq3au+aqJQIDAQAB\n-----END PUBLIC KEY-----\n"
|
|
15
|
+
key = OpenSSL::PKey::RSA.new(public_key)
|
|
16
|
+
str = "password112233"
|
|
17
|
+
result = key.public_encrypt(str)
|
|
18
|
+
puts Base64.encode64(result) # 如果不 encode 64 就直接输出,命令行会看到乱码
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
|
|
2
|
+
module Test
|
|
3
|
+
class Helper
|
|
4
|
+
# 随机字母字符串,默认 6 位长度
|
|
5
|
+
def randomString(length = 6)
|
|
6
|
+
endIndex = length % 26
|
|
7
|
+
('a'..'z').to_a.shuffle[0,endIndex].join
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
# 随机数字字符串
|
|
11
|
+
def randomNumString(n = 6)
|
|
12
|
+
srand.to_s.chars.last(n).join
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
// 如何运行:
|
|
2
|
+
// node ./lib/test/js_sdk_test/1.buildAuthorizeUrl.js
|
|
3
|
+
const { AuthenticationClient } = require('authing-js-sdk')
|
|
4
|
+
|
|
5
|
+
// 测试目的: 生成 OIDC 协议的用户登录链接
|
|
6
|
+
const client = new AuthenticationClient({
|
|
7
|
+
appId: '60800b9151d040af9016d60b',
|
|
8
|
+
appHost: 'https://rails-demo.authing.cn',
|
|
9
|
+
redirectUri: 'http://localhost:3000/authing_callback',
|
|
10
|
+
});
|
|
11
|
+
let url = client.buildAuthorizeUrl({ scope: 'openid profile offline_access' });
|
|
12
|
+
console.log(url);
|
|
13
|
+
// 把这个 url 复制粘贴到浏览器里
|
|
14
|
+
// https://rails-demo.authing.cn/oidc/auth?nonce=42585064286980057&state=939818283327392&scope=openid+profile+offline_access&client_id=60800b9151d040af9016d60b&redirect_uri=http%3A%2F%2Flocalhost%3A3000%2Fauthing_callback&response_type=code&prompt=consent
|
|
15
|
+
|
|
16
|
+
// 分析 JS SDK 生成的:
|
|
17
|
+
// https://rails-demo.authing.cn/oidc/auth?
|
|
18
|
+
// nonce=42585064286980057
|
|
19
|
+
// &state=939818283327392
|
|
20
|
+
// &scope=openid+profile+offline_access
|
|
21
|
+
// &client_id=60800b9151d040af9016d60b
|
|
22
|
+
// &redirect_uri=http%3A%2F%2Flocalhost%3A3000%2Fauthing_callback
|
|
23
|
+
// &response_type=code
|
|
24
|
+
// &prompt=consent
|
|
25
|
+
|
|
26
|
+
// 我们 Ruby SDK 生成的:
|
|
27
|
+
// https://rails-demo.authing.cn/oidc/auth?
|
|
28
|
+
// nonce=9568662818019284
|
|
29
|
+
// &state=0611701018967879
|
|
30
|
+
// &scope=openid%20profile%20email%20phone%20address
|
|
31
|
+
// &client_id=60800b9151d040af9016d60b
|
|
32
|
+
// &redirect_uri=http%3A%2F%2Flocalhost%3A3000
|
|
33
|
+
// &response_type=code
|
|
34
|
+
// &response_mode=query
|
|
35
|
+
// &client_id=60800b9151d040af9016d60b
|
|
36
|
+
// &redirect_uri=http%3A%2F%2Flocalhost%3A3000
|
|
37
|
+
|
|
38
|
+
// 错在哪里?
|
|
39
|
+
// 1. 我们的 scope 不对
|
|
40
|
+
// 2. 我们的 client_id 重复了
|
|
41
|
+
// 3. 我们的 redirect_uri 和网页里设置的不一致
|
|
42
|
+
// 4. 我们多了个 response_mode
|
|
43
|
+
// 改正后就可以了
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
// 如何运行:
|
|
2
|
+
// node ./lib/test/js_sdk_test/2.buildAuthorizeUrl_PKCE.js
|
|
3
|
+
const { AuthenticationClient } = require('authing-js-sdk')
|
|
4
|
+
|
|
5
|
+
// 测试目的: 生成 OIDC 协议的用户登录链接
|
|
6
|
+
const client = new AuthenticationClient({
|
|
7
|
+
appId: '60800b9151d040af9016d60b',
|
|
8
|
+
appHost: 'https://rails-demo.authing.cn',
|
|
9
|
+
redirectUri: 'http://localhost:3000/authing_callback',
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
// PKCE 场景使用示例
|
|
13
|
+
// 生成一个 code_verifier
|
|
14
|
+
let codeChallenge = client.generateCodeChallenge()
|
|
15
|
+
// 计算 code_verifier 的 SHA256 摘要
|
|
16
|
+
let codeChallengeDigest = client.getCodeChallengeDigest({ codeChallenge, method: 'S256' })
|
|
17
|
+
// 构造 OIDC 授权码 + PKCE 模式登录 URL
|
|
18
|
+
let url2 = client.buildAuthorizeUrl({ codeChallenge: codeChallengeDigest, codeChallengeMethod: 'S256' });
|
|
19
|
+
console.log(url2)
|
|
20
|
+
// https://rails-demo.authing.cn/oidc/auth?nonce=8366121074426842&state=8460658619689978&scope=openid+profile+email+phone+address&client_id=60800b9151d040af9016d60b&redirect_uri=http%3A%2F%2Flocalhost%3A3000%2Fauthing_callback&response_type=code&code_challenge=LtE99dfPutuMXGSMCzKsbeTTCGlwmUi9sbQDFDZbB20&code_challenge_method=S256
|
|
21
|
+
|
|
22
|
+
// 分析 JS SDK 生成的:
|
|
23
|
+
// https://rails-demo.authing.cn/oidc/auth?
|
|
24
|
+
// nonce=8366121074426842
|
|
25
|
+
// &state=8460658619689978
|
|
26
|
+
// &scope=openid+profile+email+phone+address
|
|
27
|
+
// &client_id=60800b9151d040af9016d60b
|
|
28
|
+
// &redirect_uri=http%3A%2F%2Flocalhost%3A3000%2Fauthing_callback
|
|
29
|
+
// &response_type=code
|
|
30
|
+
// &code_challenge=LtE99dfPutuMXGSMCzKsbeTTCGlwmUi9sbQDFDZbB20
|
|
31
|
+
// &code_challenge_method=S256
|
|
32
|
+
|
|
33
|
+
// 我们 Ruby SDK 生成的
|
|
34
|
+
// https://rails-demo.authing.cn/oidc/auth?
|
|
35
|
+
// nonce=1232057194833633
|
|
36
|
+
// &state=3333848247084549
|
|
37
|
+
// &scope=openid%20profile%20email%20phone%20address
|
|
38
|
+
// &client_id=60800b9151d040af9016d60b
|
|
39
|
+
// &redirect_uri=http%3A%2F%2Flocalhost%3A3000%2Fauthing_callback
|
|
40
|
+
// &response_type=code
|
|
41
|
+
// &code_challenge=NGZkOTJiMjYzY2Q3NTkzMjM5YTE5N2E3NTUyOGFiYWZiM2MzOTE0NmIyYTY1%0AYzE2YzYxMjRmYzczNjM5YTljMw%0A
|
|
42
|
+
// &code_challenge_method=S256
|
|
43
|
+
|
|
44
|
+
// 区别:
|
|
45
|
+
// 1. scope 不同
|
|
46
|
+
// 2. 我的少了 code_challenge
|
|
47
|
+
// 3. 我的少了 code_challenge_method
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
## 运行测试用例
|
|
2
|
+
|
|
3
|
+
1. 添加配置文件 `.env`
|
|
4
|
+
|
|
5
|
+
```
|
|
6
|
+
AUTHING_USERPOOL_ID=5fe2005c10f750726160a04f
|
|
7
|
+
AUTHING_USERPOOL_SECRET=818892297020b628eb5d75144db32146
|
|
8
|
+
AUTHING_HOST=https://core.authing.cn
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
1. 执行 yarn watch
|
|
12
|
+
|
|
13
|
+
2. 运行全部测试用例
|
|
14
|
+
|
|
15
|
+
```
|
|
16
|
+
npx ava build/main/lib/**/*.spec.js
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
3. 运行单个文件测试用例
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
npx ava build/main/lib/management/RolesManagementClient.spec.js
|
|
23
|
+
```
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2019 cj
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|