@aws-amplify/core
Version:
Core category of aws-amplify
40 lines (38 loc) • 1.82 kB
JavaScript
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
// SPDX-License-Identifier: Apache-2.0
Object.defineProperty(exports, "__esModule", { value: true });
exports.putEvents = void 0;
const authenticated_1 = require("../../clients/handlers/authenticated");
const composeServiceApi_1 = require("../../clients/internal/composeServiceApi");
const extendedEncodeURIComponent_1 = require("../../clients/middleware/signing/utils/extendedEncodeURIComponent");
const serde_1 = require("../../clients/serde");
const amplifyUrl_1 = require("../../utils/amplifyUrl");
const base_1 = require("./base");
const errorHelpers_1 = require("./errorHelpers");
const putEventsSerializer = ({ ApplicationId, EventsRequest }, endpoint) => {
(0, errorHelpers_1.assert)(!!ApplicationId, errorHelpers_1.PinpointValidationErrorCode.NoAppId);
const headers = (0, base_1.getSharedHeaders)();
const url = new amplifyUrl_1.AmplifyUrl(endpoint.url);
url.pathname = `v1/apps/${(0, extendedEncodeURIComponent_1.extendedEncodeURIComponent)(ApplicationId)}/events`;
const body = JSON.stringify(EventsRequest ?? {});
return { method: 'POST', headers, url, body };
};
const putEventsDeserializer = async (response) => {
if (response.statusCode >= 300) {
const error = await (0, serde_1.parseJsonError)(response);
throw error;
}
else {
const { Results } = await (0, serde_1.parseJsonBody)(response);
return {
EventsResponse: { Results },
$metadata: (0, serde_1.parseMetadata)(response),
};
}
};
/**
* @internal
*/
exports.putEvents = (0, composeServiceApi_1.composeServiceApi)(authenticated_1.authenticatedHandler, putEventsSerializer, putEventsDeserializer, base_1.defaultConfig);
//# sourceMappingURL=putEvents.js.map
;