UNPKG

@umbraco/headless-client

Version:
115 lines 10.5 kB
"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.AuthenticationClient = void 0; var ApiRequest_1 = require("../ApiRequest"); var Endpoints_1 = require("../Endpoints"); /** * AuthenticationClient is used to authenticate members and Backoffice users. * @public * * @example * The {@link AuthenticationClient} must be accessed through {@link Client}. * * ```typescript * import { Client } from '@umbraco/headless-client' * * const client = new Client({ * projectAlias: '<your-project-alias>', * apiKey: '<your-api-key>', * language: '<iso-code>', * }) * * const authClient = client.authentication * ``` */ var AuthenticationClient = /** @class */ (function () { /** * @internal */ function AuthenticationClient(client) { this.client = client; } /** * Authenticate a member using username and password. * @param username - The members username. * @param password - The members password. * @returns a Promise resolving to a {@link OAUthResponse} */ AuthenticationClient.prototype.authenticateMember = function (username, password) { return __awaiter(this, void 0, void 0, function () { var data, options; return __generator(this, function (_a) { data = new URLSearchParams(); data.append('grant_type', 'password'); data.append('username', username); data.append('password', password); options = { projectAlias: '' }; if ('projectAlias' in this.client.options) { options.projectAlias = this.client.options.projectAlias; } return [2 /*return*/, new ApiRequest_1.ApiRequest(options, Endpoints_1.Endpoints.authentication.member(), data).promise()]; }); }); }; /** * Authenticate a Backoffice user using username and password. * @param username - The users username. * @param password - The users password. * @returns a Promise resolving to a {@link OAUthResponse} */ AuthenticationClient.prototype.authenticateUser = function (username, password) { return __awaiter(this, void 0, void 0, function () { var data, options; return __generator(this, function (_a) { data = new URLSearchParams(); data.append('grant_type', 'password'); data.append('username', username); data.append('password', password); options = { projectAlias: '' }; if ('projectAlias' in this.client.options) { options.projectAlias = this.client.options.projectAlias; } return [2 /*return*/, new ApiRequest_1.ApiRequest(options, Endpoints_1.Endpoints.authentication.user(), data).promise()]; }); }); }; return AuthenticationClient; }()); exports.AuthenticationClient = AuthenticationClient; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXV0aGVudGljYXRpb25DbGllbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvQ2xpZW50cy9BdXRoZW50aWNhdGlvbkNsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFDQSw0Q0FBMEM7QUFDMUMsMENBQXdDO0FBR3hDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FrQkc7QUFDSDtJQUNFOztPQUVHO0lBQ0gsOEJBQ21CLE1BQWM7UUFBZCxXQUFNLEdBQU4sTUFBTSxDQUFRO0lBR2pDLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNHLGlEQUFrQixHQUF4QixVQUEwQixRQUFnQixFQUFFLFFBQWdCOzs7O2dCQUNwRCxJQUFJLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQTtnQkFDbEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsVUFBVSxDQUFDLENBQUE7Z0JBQ3JDLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBQyxDQUFBO2dCQUNqQyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsQ0FBQTtnQkFFM0IsT0FBTyxHQUFHLEVBQUUsWUFBWSxFQUFFLEVBQUUsRUFBRSxDQUFBO2dCQUNwQyxJQUFJLGNBQWMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRTtvQkFDekMsT0FBTyxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUE7aUJBQ3hEO2dCQUVELHNCQUFPLElBQUksdUJBQVUsQ0FBZ0IsT0FBTyxFQUFFLHFCQUFTLENBQUMsY0FBYyxDQUFDLE1BQU0sRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFBOzs7S0FDakc7SUFFRDs7Ozs7T0FLRztJQUNHLCtDQUFnQixHQUF0QixVQUF3QixRQUFnQixFQUFFLFFBQWdCOzs7O2dCQUNsRCxJQUFJLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQTtnQkFDbEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLEVBQUUsVUFBVSxDQUFDLENBQUE7Z0JBQ3JDLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLFFBQVEsQ0FBQyxDQUFBO2dCQUNqQyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsQ0FBQTtnQkFFM0IsT0FBTyxHQUFHLEVBQUUsWUFBWSxFQUFFLEVBQUUsRUFBRSxDQUFBO2dCQUNwQyxJQUFJLGNBQWMsSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRTtvQkFDekMsT0FBTyxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUE7aUJBQ3hEO2dCQUVELHNCQUFPLElBQUksdUJBQVUsQ0FBZ0IsT0FBTyxFQUFFLHFCQUFTLENBQUMsY0FBYyxDQUFDLElBQUksRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFBOzs7S0FDL0Y7SUFDSCwyQkFBQztBQUFELENBQUMsQUFqREQsSUFpREM7QUFqRFksb0RBQW9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2xpZW50LCBDbGllbnRPcHRpb25zIH0gZnJvbSAnLi4vQ2xpZW50J1xuaW1wb3J0IHsgQXBpUmVxdWVzdCB9IGZyb20gJy4uL0FwaVJlcXVlc3QnXG5pbXBvcnQgeyBFbmRwb2ludHMgfSBmcm9tICcuLi9FbmRwb2ludHMnXG5pbXBvcnQgeyBPQVV0aFJlc3BvbnNlIH0gZnJvbSAnLi4vUmVzcG9uc2VzJ1xuXG4vKipcbiAqIEF1dGhlbnRpY2F0aW9uQ2xpZW50IGlzIHVzZWQgdG8gYXV0aGVudGljYXRlIG1lbWJlcnMgYW5kIEJhY2tvZmZpY2UgdXNlcnMuXG4gKiBAcHVibGljXG4gKlxuICogQGV4YW1wbGVcbiAqIFRoZSB7QGxpbmsgQXV0aGVudGljYXRpb25DbGllbnR9IG11c3QgYmUgYWNjZXNzZWQgdGhyb3VnaCB7QGxpbmsgQ2xpZW50fS5cbiAqXG4gKiBgYGB0eXBlc2NyaXB0XG4gKiBpbXBvcnQgeyBDbGllbnQgfSBmcm9tICdAdW1icmFjby9oZWFkbGVzcy1jbGllbnQnXG4gKlxuICogY29uc3QgY2xpZW50ID0gbmV3IENsaWVudCh7XG4gKiAgcHJvamVjdEFsaWFzOiAnPHlvdXItcHJvamVjdC1hbGlhcz4nLFxuICogIGFwaUtleTogJzx5b3VyLWFwaS1rZXk+JyxcbiAqICBsYW5ndWFnZTogJzxpc28tY29kZT4nLFxuICogfSlcbiAqXG4gKiBjb25zdCBhdXRoQ2xpZW50ID0gY2xpZW50LmF1dGhlbnRpY2F0aW9uXG4gKiBgYGBcbiAqL1xuZXhwb3J0IGNsYXNzIEF1dGhlbnRpY2F0aW9uQ2xpZW50IHtcbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgY29uc3RydWN0b3IgKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2xpZW50OiBDbGllbnRcbiAgKSB7XG5cbiAgfVxuXG4gIC8qKlxuICAgKiBBdXRoZW50aWNhdGUgYSBtZW1iZXIgdXNpbmcgdXNlcm5hbWUgYW5kIHBhc3N3b3JkLlxuICAgKiBAcGFyYW0gdXNlcm5hbWUgLSBUaGUgbWVtYmVycyB1c2VybmFtZS5cbiAgICogQHBhcmFtIHBhc3N3b3JkIC0gVGhlIG1lbWJlcnMgcGFzc3dvcmQuXG4gICAqIEByZXR1cm5zIGEgUHJvbWlzZSByZXNvbHZpbmcgdG8gYSB7QGxpbmsgT0FVdGhSZXNwb25zZX1cbiAgICovXG4gIGFzeW5jIGF1dGhlbnRpY2F0ZU1lbWJlciAodXNlcm5hbWU6IHN0cmluZywgcGFzc3dvcmQ6IHN0cmluZykge1xuICAgIGNvbnN0IGRhdGEgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKClcbiAgICBkYXRhLmFwcGVuZCgnZ3JhbnRfdHlwZScsICdwYXNzd29yZCcpXG4gICAgZGF0YS5hcHBlbmQoJ3VzZXJuYW1lJywgdXNlcm5hbWUpXG4gICAgZGF0YS5hcHBlbmQoJ3Bhc3N3b3JkJywgcGFzc3dvcmQpXG5cbiAgICBjb25zdCBvcHRpb25zID0geyBwcm9qZWN0QWxpYXM6ICcnIH1cbiAgICBpZiAoJ3Byb2plY3RBbGlhcycgaW4gdGhpcy5jbGllbnQub3B0aW9ucykge1xuICAgICAgb3B0aW9ucy5wcm9qZWN0QWxpYXMgPSB0aGlzLmNsaWVudC5vcHRpb25zLnByb2plY3RBbGlhc1xuICAgIH1cblxuICAgIHJldHVybiBuZXcgQXBpUmVxdWVzdDxPQVV0aFJlc3BvbnNlPihvcHRpb25zLCBFbmRwb2ludHMuYXV0aGVudGljYXRpb24ubWVtYmVyKCksIGRhdGEpLnByb21pc2UoKVxuICB9XG5cbiAgLyoqXG4gICAqIEF1dGhlbnRpY2F0ZSBhIEJhY2tvZmZpY2UgdXNlciB1c2luZyB1c2VybmFtZSBhbmQgcGFzc3dvcmQuXG4gICAqIEBwYXJhbSB1c2VybmFtZSAtIFRoZSB1c2VycyB1c2VybmFtZS5cbiAgICogQHBhcmFtIHBhc3N3b3JkIC0gVGhlIHVzZXJzIHBhc3N3b3JkLlxuICAgKiBAcmV0dXJucyBhIFByb21pc2UgcmVzb2x2aW5nIHRvIGEge0BsaW5rIE9BVXRoUmVzcG9uc2V9XG4gICAqL1xuICBhc3luYyBhdXRoZW50aWNhdGVVc2VyICh1c2VybmFtZTogc3RyaW5nLCBwYXNzd29yZDogc3RyaW5nKSB7XG4gICAgY29uc3QgZGF0YSA9IG5ldyBVUkxTZWFyY2hQYXJhbXMoKVxuICAgIGRhdGEuYXBwZW5kKCdncmFudF90eXBlJywgJ3Bhc3N3b3JkJylcbiAgICBkYXRhLmFwcGVuZCgndXNlcm5hbWUnLCB1c2VybmFtZSlcbiAgICBkYXRhLmFwcGVuZCgncGFzc3dvcmQnLCBwYXNzd29yZClcblxuICAgIGNvbnN0IG9wdGlvbnMgPSB7IHByb2plY3RBbGlhczogJycgfVxuICAgIGlmICgncHJvamVjdEFsaWFzJyBpbiB0aGlzLmNsaWVudC5vcHRpb25zKSB7XG4gICAgICBvcHRpb25zLnByb2plY3RBbGlhcyA9IHRoaXMuY2xpZW50Lm9wdGlvbnMucHJvamVjdEFsaWFzXG4gICAgfVxuXG4gICAgcmV0dXJuIG5ldyBBcGlSZXF1ZXN0PE9BVXRoUmVzcG9uc2U+KG9wdGlvbnMsIEVuZHBvaW50cy5hdXRoZW50aWNhdGlvbi51c2VyKCksIGRhdGEpLnByb21pc2UoKVxuICB9XG59XG4iXX0=