sap-commerce-sdk
Version:
A TypeScript SDK for SAP Commerce Cloud storefront integration.
66 lines (65 loc) • 2.59 kB
JavaScript
;
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.getClientToken = getClientToken;
exports.getPasswordToken = getPasswordToken;
const config_1 = require("./config");
async function getClientToken() {
const url = `${config_1.config.baseUrl}/authorizationserver/oauth/token`;
const body = new URLSearchParams({
grant_type: 'client_credentials',
client_id: config_1.config.clientId,
client_secret: config_1.config.clientSecret,
scope: config_1.config.scope,
});
const response = await fetch(url, {
method: 'POST',
headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
body: body.toString(),
});
if (!response.ok) {
throw new Error('Failed to obtain client token');
}
return response.json();
}
async function getPasswordToken(username, password) {
const url = `${config_1.config.baseUrl}/authorizationserver/oauth/token`;
const body = new URLSearchParams({
grant_type: 'password',
client_id: config_1.config.clientId,
client_secret: config_1.config.clientSecret,
username,
password,
scope: config_1.config.scope,
});
const response = await fetch(url, {
method: 'POST',
headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
body: body.toString(),
});
if (!response.ok) {
throw new Error('Failed to obtain password token');
}
return response.json();
}
__exportStar(require("./config"), exports);
__exportStar(require("./config.client"), exports);
__exportStar(require("./occProductClient"), exports);
__exportStar(require("./occCartClient"), exports);
__exportStar(require("./occUserClient"), exports);
__exportStar(require("./occOrderClient"), exports);
__exportStar(require("./errors"), exports);
__exportStar(require("./authHelpers"), exports);