@aws-amplify/core
Version:
Core category of aws-amplify
37 lines (34 loc) • 1.68 kB
JavaScript
import { authenticatedHandler } from '../../clients/handlers/aws/authenticated.mjs';
import { composeServiceApi } from '../../clients/internal/composeServiceApi.mjs';
import { extendedEncodeURIComponent } from '../../clients/middleware/signing/utils/extendedEncodeURIComponent.mjs';
import { parseMetadata } from '../../clients/serde/responseInfo.mjs';
import { parseJsonError, parseJsonBody } from '../../clients/serde/json.mjs';
import { AmplifyUrl } from '../../utils/amplifyUrl/index.mjs';
import { defaultConfig, getSharedHeaders } from './base.mjs';
// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
// SPDX-License-Identifier: Apache-2.0
const getInAppMessagesSerializer = ({ ApplicationId = '', EndpointId = '' }, endpoint) => {
const headers = getSharedHeaders();
const url = new AmplifyUrl(endpoint.url);
url.pathname = `v1/apps/${extendedEncodeURIComponent(ApplicationId)}/endpoints/${extendedEncodeURIComponent(EndpointId)}/inappmessages`;
return { method: 'GET', headers, url };
};
const getInAppMessagesDeserializer = async (response) => {
if (response.statusCode >= 300) {
const error = await parseJsonError(response);
throw error;
}
else {
const { InAppMessageCampaigns } = await parseJsonBody(response);
return {
InAppMessagesResponse: { InAppMessageCampaigns },
$metadata: parseMetadata(response),
};
}
};
/**
* @internal
*/
const getInAppMessages = composeServiceApi(authenticatedHandler, getInAppMessagesSerializer, getInAppMessagesDeserializer, defaultConfig);
export { getInAppMessages };
//# sourceMappingURL=getInAppMessages.mjs.map