"use strict"; var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; var __generator = (this && this.__generator) || function (thisArg, body) { var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; function verb(n) { return function (v) { return step([n, v]); }; } function step(op) { if (f) throw new TypeError("Generator is already executing."); while (_) try { 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; if (y = 0, t) op = [op[0] & 2, t.value]; switch (op[0]) { case 0: case 1: t = op; break; case 4: _.label++; return { value: op[1], done: false }; case 5: _.label++; y = op[1]; op = [0]; continue; case 7: op = _.ops.pop(); _.trys.pop(); continue; default: if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } if (t[2]) _.ops.pop(); _.trys.pop(); continue; } op = body.call(thisArg, _); } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; } }; Object.defineProperty(exports, "__esModule", { value: true }); exports.searchNodes = exports.authorizedTargets = exports.authorizeResource = exports.listAuthorizedResources = exports.listNodeByCodeAuthorizedResources = exports.listNodeByIdAuthorizedResources = exports.listGroupAuthorizedResources = exports.listRoleAuthorizedResources = exports.listUserAuthorizedResources = exports.refreshAccessToken = exports.getAccessToken = exports.unbindEmail = exports.getUserGroups = exports.removeUserFromGroup = exports.addUserToGroup = exports.deleteGroups = exports.updateGroup = exports.createGroup = exports.groupWithUsersWithCustomData = exports.groupWithUsers = exports.group = exports.getGroups = exports.checkLoginStatus = exports.disablePolicyAssignment = exports.enablePolicyAssignment = exports.removePolicyAssignments = exports.addPolicyAssignments = exports.policyAssignments = exports.deletePolicies = exports.deletePolicy = exports.updatePolicy = exports.policy = exports.createPolicy = exports.policies = exports.deleteRoles = exports.deleteRole = exports.udf = exports.removeUdf = exports.setUdf = exports.removeUdv = exports.setUdfValueBatch = exports.setUdvBatch = exports.setUdv = exports.udfValueBatch = exports.udv = exports.addWhiteList = exports.removeWhiteList = exports.getWhiteList = exports.allow = exports.setMainDepartment = exports.getUserDepartments = exports.getUserRoles = exports.userBatchWithCustomData = exports.userBatch = exports.unbindPhone = exports.bindEmail = exports.bindPhone = exports.updateEmail = exports.updatePhone = exports.updatePassword = exports.isUserExists = exports.refreshToken = exports.removeMembers = exports.moveNode = exports.nodeById = exports.deleteNode = exports.updateNode = exports.addNode = exports.updateRole = exports.roleWithUsersWithCustomData = exports.roleWithUsers = exports.role = exports.roles = exports.deleteUsers = exports.deleteUser = exports.createUser = exports.findUserWithCustomData = exports.findUser = exports.searchUserWithCustomData = exports.searchUser = exports.updateUser = exports.updateUserpool = exports.archivedUsers = exports.usersWithCustomData = exports.users = exports.resetPasswordByFirstLoginToken = exports.resetPassword = exports.sendFirstLoginVerifyEmail = exports.sendEmail = exports.getMembersByCode = exports.getMembersById = exports.moveMembers = exports.addMember = exports.revokeRole = exports.assignRole = exports.addRole = exports.registerByPhoneCode = exports.registerByUsername = exports.loginBySubAccount = exports.loginByPhonePassword = exports.loginByPhoneCode = exports.loginByUsername = exports.loginByEmail = exports.registerByEmail = exports.checkPasswordStrength = exports.isDenied = exports.deleteOrg = exports.createOrg = exports.userWithCustomData = exports.user = exports.getUserPoolDetail = exports.orgs = exports.rootNode = exports.isRootNode = exports.org = exports.getChildrenNodes = exports.isAllowed = void 0; var graphql_v2_1 = require("../types/graphql.v2"); exports.isAllowed = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.IsActionAllowedDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [4 /*yield*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; exports.getChildrenNodes = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.ChildrenNodesDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [4 /*yield*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; exports.org = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.OrgDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [4 /*yield*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; exports.isRootNode = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.IsRootNodeDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [4 /*yield*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; exports.rootNode = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.RootNodeDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [4 /*yield*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; exports.orgs = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.OrgsDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [4 /*yield*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; exports.getUserPoolDetail = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.UserpoolDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [4 /*yield*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; exports.user = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.UserDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [4 /*yield*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; exports.userWithCustomData = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.UserWithCustomDataDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [4 /*yield*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; exports.createOrg = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.CreateOrgDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [4 /*yield*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; exports.deleteOrg = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.DeleteOrgDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [4 /*yield*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; exports.isDenied = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.IsActionDeniedDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [4 /*yield*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; exports.checkPasswordStrength = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.CheckPasswordStrengthDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.registerByEmail = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.RegisterByEmailDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.loginByEmail = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { query = graphql_v2_1.LoginByEmailDocument; token = tokenProvider.getToken(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; }); }); }; exports.loginByUsername = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { query = graphql_v2_1.LoginByUsernameDocument; token = tokenProvider.getToken(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; }); }); }; exports.loginByPhoneCode = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { query = graphql_v2_1.LoginByPhoneCodeDocument; token = tokenProvider.getToken(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; }); }); }; exports.loginByPhonePassword = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { query = graphql_v2_1.LoginByPhonePasswordDocument; token = tokenProvider.getToken(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; }); }); }; exports.loginBySubAccount = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { query = graphql_v2_1.LoginBySubAccountDocument; token = tokenProvider.getToken(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; }); }); }; exports.registerByUsername = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { query = graphql_v2_1.RegisterByUsernameDocument; token = tokenProvider.getToken(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; }); }); }; exports.registerByPhoneCode = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { query = graphql_v2_1.RegisterByPhoneCodeDocument; token = tokenProvider.getToken(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; }); }); }; exports.addRole = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.CreateRoleDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [4 /*yield*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; exports.assignRole = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.AssignRoleDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [4 /*yield*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; exports.revokeRole = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.RevokeRoleDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [4 /*yield*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; exports.addMember = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.AddMemberDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [4 /*yield*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; exports.moveMembers = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.MoveMembersDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [4 /*yield*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; exports.getMembersById = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.NodeByIdWithMembersDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [4 /*yield*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; exports.getMembersByCode = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.NodeByCodeWithMembersDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [4 /*yield*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; exports.sendEmail = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.SendEmailDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [4 /*yield*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; exports.sendFirstLoginVerifyEmail = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.SendFirstLoginVerifyEmailDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [4 /*yield*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; case 2: return [2 /*return*/, _a.sent()]; } }); }); }; exports.resetPassword = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.ResetPasswordDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.resetPasswordByFirstLoginToken = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.ResetPasswordByFirstLoginTokenDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.users = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.UsersDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.usersWithCustomData = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.UsersWithCustomDataDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.archivedUsers = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.ArchivedUsersDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.updateUserpool = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.UpdateUserpoolDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.updateUser = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.UpdateUserDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.searchUser = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.SearchUserDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.searchUserWithCustomData = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.SearchUserWithCustomDataDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.findUser = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.FindUserDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.findUserWithCustomData = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.FindUserWithCustomDataDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.createUser = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.CreateUserDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.deleteUser = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.DeleteUserDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.deleteUsers = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.DeleteUsersDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.roles = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.RolesDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.role = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.RoleDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.roleWithUsers = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.RoleWithUsersDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.roleWithUsersWithCustomData = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.RoleWithUsersWithCustomDataDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.updateRole = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.UpdateRoleDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.addNode = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.AddNodeV2Document; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.updateNode = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.UpdateNodeDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.deleteNode = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.DeleteNodeDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.nodeById = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.NodeByIdDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.moveNode = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.MoveNodeDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.removeMembers = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.RemoveMemberDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.refreshToken = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.RefreshTokenDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.isUserExists = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.IsUserExistsDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.updatePassword = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.UpdatePasswordDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.updatePhone = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.UpdatePhoneDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.updateEmail = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.UpdateEmailDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.bindPhone = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.BindPhoneDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.bindEmail = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.BindEmailDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.unbindPhone = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.UnbindPhoneDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.userBatch = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.UserBatchDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.userBatchWithCustomData = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.UserBatchWithCustomDataDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.getUserRoles = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.GetUserRolesDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.getUserDepartments = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.GetUserDepartmentsDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.setMainDepartment = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.SetMainDepartmentDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.allow = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.AllowDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.getWhiteList = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.WhitelistDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.removeWhiteList = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.RemoveWhitelistDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.addWhiteList = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.AddWhitelistDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.udv = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.UdvDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.udfValueBatch = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.UdfValueBatchDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.setUdv = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.SetUdvDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.setUdvBatch = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.SetUdvBatchDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.setUdfValueBatch = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.SetUdfValueBatchDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.removeUdv = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.RemoveUdvDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.setUdf = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.SetUdfDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.removeUdf = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.RemoveUdfDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.udf = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.UdfDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.deleteRole = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.DeleteRoleDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.deleteRoles = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.DeleteRolesDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.policies = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.PoliciesDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.createPolicy = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.CreatePolicyDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.policy = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.PolicyDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.updatePolicy = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.UpdatePolicyDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.deletePolicy = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.DeletePolicyDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.deletePolicies = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.DeletePoliciesDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.policyAssignments = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.PolicyAssignmentsDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.addPolicyAssignments = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.AddPolicyAssignmentsDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.removePolicyAssignments = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.RemovePolicyAssignmentsDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.enablePolicyAssignment = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.EnablePolicyAssignmentDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.disablePolicyAssignment = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.DisbalePolicyAssignmentDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.checkLoginStatus = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.CheckLoginStatusDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.getGroups = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.GroupsDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.group = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.GroupDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.groupWithUsers = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.GroupWithUsersDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.groupWithUsersWithCustomData = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.GroupWithUsersWithCustomDataDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.createGroup = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.CreateGroupDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.updateGroup = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.UpdateGroupDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.deleteGroups = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.DeleteGroupsDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.addUserToGroup = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.AddUserToGroupDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.removeUserFromGroup = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.RemoveUserFromGroupDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.getUserGroups = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.GetUserGroupsDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.unbindEmail = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.UnbindEmailDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.getAccessToken = function (garpqhlClient, variables) { return __awaiter(void 0, void 0, void 0, function () { var query; return __generator(this, function (_a) { query = graphql_v2_1.AccessTokenDocument; return [2 /*return*/, garpqhlClient.request({ query: query, variables: variables })]; }); }); }; exports.refreshAccessToken = function (garpqhlClient, variables) { return __awaiter(void 0, void 0, void 0, function () { var query; return __generator(this, function (_a) { query = graphql_v2_1.RefreshTokenDocument; return [2 /*return*/, garpqhlClient.request({ query: query, variables: variables })]; }); }); }; exports.listUserAuthorizedResources = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.ListUserAuthorizedResourcesDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.listRoleAuthorizedResources = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.ListRoleAuthorizedResourcesDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.listGroupAuthorizedResources = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.ListGroupAuthorizedResourcesDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.listNodeByIdAuthorizedResources = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.ListNodeByIdAuthorizedResourcesDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.listNodeByCodeAuthorizedResources = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.ListNodeByCodeAuthorizedResourcesDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.listAuthorizedResources = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.AuthorizedResourcesDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.authorizeResource = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.AuthorizeResourceDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.authorizedTargets = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.AuthorizedTargetsDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; exports.searchNodes = function (garpqhlClient, tokenProvider, variables) { return __awaiter(void 0, void 0, void 0, function () { var query, token; return __generator(this, function (_a) { switch (_a.label) { case 0: query = graphql_v2_1.SearchNodesDocument; return [4 /*yield*/, tokenProvider.getToken()]; case 1: token = _a.sent(); return [2 /*return*/, garpqhlClient.request({ query: query, token: token, variables: variables })]; } }); }); }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JhcGhxbGFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvZ3JhcGhxbGFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFHQSxrREErVjZCO0FBRWhCLFFBQUEsU0FBUyxHQUFHLFVBQ3ZCLGFBQTRCLEVBQzVCLGFBQXNDLEVBQ3RDLFNBQW1DOzs7OztnQkFFN0IsS0FBSyxHQUFHLG9DQUF1QixDQUFDO2dCQUN4QixxQkFBTSxhQUFhLENBQUMsUUFBUSxFQUFFLEVBQUE7O2dCQUF0QyxLQUFLLEdBQUcsU0FBOEI7Z0JBQ3JDLHFCQUFNLGFBQWEsQ0FBQyxPQUFPLENBQUM7d0JBQ2pDLEtBQUssT0FBQTt3QkFDTCxLQUFLLE9BQUE7d0JBQ0wsU0FBUyxXQUFBO3FCQUNWLENBQUMsRUFBQTtvQkFKRixzQkFBTyxTQUlMLEVBQUM7OztLQUNKLENBQUM7QUFFVyxRQUFBLGdCQUFnQixHQUFHLFVBQzlCLGFBQTRCLEVBQzVCLGFBQXNDLEVBQ3RDLFNBQWlDOzs7OztnQkFFM0IsS0FBSyxHQUFHLGtDQUFxQixDQUFDO2dCQUN0QixxQkFBTSxhQUFhLENBQUMsUUFBUSxFQUFFLEVBQUE7O2dCQUF0QyxLQUFLLEdBQUcsU0FBOEI7Z0JBQ3JDLHFCQUFNLGFBQWEsQ0FBQyxPQUFPLENBQUM7d0JBQ2pDLEtBQUssT0FBQTt3QkFDTCxLQUFLLE9BQUE7d0JBQ0wsU0FBUyxXQUFBO3FCQUNWLENBQUMsRUFBQTtvQkFKRixzQkFBTyxTQUlMLEVBQUM7OztLQUNKLENBQUM7QUFFVyxRQUFBLEdBQUcsR0FBRyxVQUNqQixhQUE0QixFQUM1QixhQUFzQyxFQUN0QyxTQUF1Qjs7Ozs7Z0JBRWpCLEtBQUssR0FBRyx3QkFBVyxDQUFDO2dCQUNaLHFCQUFNLGFBQWEsQ0FBQyxRQUFRLEVBQUUsRUFBQTs7Z0JBQXRDLEtBQUssR0FBRyxTQUE4QjtnQkFDckMscUJB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