{"version":3,"file":"normalizeNativeMessage.mjs","sources":["../../../src/utils/normalizeNativeMessage.ts"],"sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport isEmpty from 'lodash/isEmpty.js';\n/**\n * @internal\n */\nexport const normalizeNativeMessage = (nativeMessage) => {\n    let normalized;\n    if (isApnsMessage(nativeMessage)) {\n        normalized = normalizeApnsMessage(nativeMessage);\n    }\n    else if (isFcmMessage(nativeMessage)) {\n        normalized = normalizeFcmMessage(nativeMessage);\n    }\n    else {\n        return null;\n    }\n    const { body, imageUrl, title, action, options, data } = normalized;\n    return {\n        body,\n        data,\n        imageUrl,\n        title,\n        ...action,\n        ...options,\n    };\n};\nconst normalizeApnsMessage = (apnsMessage) => {\n    const { aps, data } = apnsMessage;\n    const { body, title } = aps.alert ?? {};\n    const action = getApnsAction(data?.pinpoint) ?? {};\n    const imageUrl = data?.['media-url'];\n    const options = getApnsOptions(apnsMessage);\n    return { body, imageUrl, title, action, options, data };\n};\nconst normalizeFcmMessage = (fcmMessage) => {\n    const { body, imageUrl, rawData: data, title } = fcmMessage;\n    const action = getFcmAction(fcmMessage.action) ?? {};\n    const options = getFcmOptions(fcmMessage);\n    return { body, imageUrl, title, action, options, data };\n};\nconst getApnsAction = (action) => {\n    if (action?.deeplink) {\n        return { deeplinkUrl: action.deeplink };\n    }\n};\nconst getFcmAction = (action) => {\n    if (action?.url) {\n        return { goToUrl: action.url };\n    }\n    if (action?.deeplink) {\n        return { deeplinkUrl: action.deeplink };\n    }\n};\nconst getApnsOptions = ({ aps, }) => {\n    const { subtitle } = aps.alert ?? {};\n    const apnsOptions = { ...(subtitle && { subtitle }) };\n    return { ...(!isEmpty(apnsOptions) && { apnsOptions }) };\n};\nconst getFcmOptions = ({ channelId = '', messageId = '', senderId = '', sendTime = new Date().getTime(), }) => {\n    const fcmOptions = {\n        channelId,\n        messageId,\n        senderId,\n        sendTime: new Date(sendTime),\n    };\n    return { ...(!isEmpty(fcmOptions) && { fcmOptions }) };\n};\nconst isApnsMessage = (nativeMessage) => !!nativeMessage?.aps;\nconst isFcmMessage = (nativeMessage) => !!nativeMessage?.rawData;\n"],"names":[],"mappings":"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"}