@metamask-previews/notification-services-controller 24.3.0-preview-429f86194 → 24.3.0-preview-ef063ff2d
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +0 -19
- package/dist/NotificationServicesController/mocks/mock-raw-notifications.cjs +16 -32
- package/dist/NotificationServicesController/mocks/mock-raw-notifications.cjs.map +1 -1
- package/dist/NotificationServicesController/mocks/mock-raw-notifications.d.cts.map +1 -1
- package/dist/NotificationServicesController/mocks/mock-raw-notifications.d.mts.map +1 -1
- package/dist/NotificationServicesController/mocks/mock-raw-notifications.mjs +16 -32
- package/dist/NotificationServicesController/mocks/mock-raw-notifications.mjs.map +1 -1
- package/dist/NotificationServicesController/services/api-notifications.cjs +2 -2
- package/dist/NotificationServicesController/services/api-notifications.cjs.map +1 -1
- package/dist/NotificationServicesController/services/api-notifications.mjs +2 -2
- package/dist/NotificationServicesController/services/api-notifications.mjs.map +1 -1
- package/dist/NotificationServicesController/types/notification-api/notification-api.cjs +0 -1
- package/dist/NotificationServicesController/types/notification-api/notification-api.cjs.map +1 -1
- package/dist/NotificationServicesController/types/notification-api/notification-api.d.cts +14 -7
- package/dist/NotificationServicesController/types/notification-api/notification-api.d.cts.map +1 -1
- package/dist/NotificationServicesController/types/notification-api/notification-api.d.mts +14 -7
- package/dist/NotificationServicesController/types/notification-api/notification-api.d.mts.map +1 -1
- package/dist/NotificationServicesController/types/notification-api/notification-api.mjs +1 -1
- package/dist/NotificationServicesController/types/notification-api/notification-api.mjs.map +1 -1
- package/dist/NotificationServicesController/types/notification-api/schema.cjs.map +1 -1
- package/dist/NotificationServicesController/types/notification-api/schema.d.cts +2 -366
- package/dist/NotificationServicesController/types/notification-api/schema.d.cts.map +1 -1
- package/dist/NotificationServicesController/types/notification-api/schema.d.mts +2 -366
- package/dist/NotificationServicesController/types/notification-api/schema.d.mts.map +1 -1
- package/dist/NotificationServicesController/types/notification-api/schema.mjs.map +1 -1
- package/dist/shared/index.cjs +0 -1
- package/dist/shared/index.cjs.map +1 -1
- package/dist/shared/index.d.cts +0 -1
- package/dist/shared/index.d.cts.map +1 -1
- package/dist/shared/index.d.mts +0 -1
- package/dist/shared/index.d.mts.map +1 -1
- package/dist/shared/index.mjs +0 -1
- package/dist/shared/index.mjs.map +1 -1
- package/dist/shared/to-raw-notification.cjs +13 -8
- package/dist/shared/to-raw-notification.cjs.map +1 -1
- package/dist/shared/to-raw-notification.d.cts.map +1 -1
- package/dist/shared/to-raw-notification.d.mts.map +1 -1
- package/dist/shared/to-raw-notification.mjs +13 -8
- package/dist/shared/to-raw-notification.mjs.map +1 -1
- package/package.json +1 -1
- package/dist/shared/notification-api-type-guards.cjs +0 -24
- package/dist/shared/notification-api-type-guards.cjs.map +0 -1
- package/dist/shared/notification-api-type-guards.d.cts +0 -16
- package/dist/shared/notification-api-type-guards.d.cts.map +0 -1
- package/dist/shared/notification-api-type-guards.d.mts +0 -16
- package/dist/shared/notification-api-type-guards.d.mts.map +0 -1
- package/dist/shared/notification-api-type-guards.mjs +0 -19
- package/dist/shared/notification-api-type-guards.mjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mock-raw-notifications.mjs","sourceRoot":"","sources":["../../../src/NotificationServicesController/mocks/mock-raw-notifications.ts"],"names":[],"mappings":"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","sourcesContent":["import { TRIGGER_TYPES } from '../constants/notification-schema';\nimport type { NormalisedAPINotification } from '../types/notification-api/notification-api';\n\n/**\n * Mocking Utility - create a mock Eth sent notification\n *\n * @returns Mock raw Eth sent notification\n */\nexport function createMockNotificationEthSent(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.ETH_SENT,\n notification_type: 'wallet_activity',\n notification_subtype: 'eth_sent',\n id: '3fa85f64-5717-4562-b3fc-2c963f66afa7',\n unread: true,\n created_at: '2022-03-01T00:00:00Z',\n payload: {\n chain_id: 1,\n block_number: 17485840,\n block_timestamp: '2022-03-01T00:00:00Z',\n tx_hash:\n '0xb2256b183f2fb3872f99294ab55fb03e6a479b0d4aca556a3b27568b712505a6',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n kind: 'eth_sent',\n network_fee: {\n gas_price: '207806259583',\n native_token_price_in_usd: '0.83',\n },\n from: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n to: '0x881D40237659C251811CEC9c364ef91dC08D300D',\n amount: {\n usd: '670.64',\n eth: '0.005',\n },\n },\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock Eth Received notification\n *\n * @returns Mock raw Eth Received notification\n */\nexport function createMockNotificationEthReceived(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.ETH_RECEIVED,\n notification_type: 'wallet_activity',\n notification_subtype: 'eth_received',\n id: '3fa85f64-5717-4562-b3fc-2c963f66afa8',\n unread: true,\n created_at: '2022-03-01T00:00:00Z',\n payload: {\n chain_id: 1,\n block_number: 17485840,\n block_timestamp: '2022-03-01T00:00:00Z',\n tx_hash:\n '0xb2256b183f2fb3872f99294ab55fb03e6a479b0d4aca556a3b27568b712505a6',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n kind: 'eth_received',\n network_fee: {\n gas_price: '207806259583',\n native_token_price_in_usd: '0.83',\n },\n from: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n to: '0x881D40237659C251811CEC9c364ef91dC08D300D',\n amount: {\n usd: '670.64',\n eth: '808.000000000000000000',\n },\n },\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock ERC20 sent notification\n *\n * @returns Mock raw ERC20 sent notification\n */\nexport function createMockNotificationERC20Sent(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.ERC20_SENT,\n notification_type: 'wallet_activity',\n notification_subtype: 'erc20_sent',\n id: '3fa85f64-5717-4562-b3fc-2c963f66afa9',\n unread: true,\n created_at: '2022-03-01T00:00:00Z',\n payload: {\n chain_id: 1,\n block_number: 17485840,\n block_timestamp: '2022-03-01T00:00:00Z',\n tx_hash:\n '0xb2256b183f2fb3872f99294ab55fb03e6a479b0d4aca556a3b27568b712505a6',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n kind: 'erc20_sent',\n network_fee: {\n gas_price: '207806259583',\n native_token_price_in_usd: '0.83',\n },\n to: '0xecc19e177d24551aa7ed6bc6fe566eca726cc8a9',\n from: '0x1231deb6f5749ef6ce6943a275a1d3e7486f4eae',\n token: {\n usd: '1.00',\n name: 'USDC',\n image:\n 'https://raw.githubusercontent.com/MetaMask/contract-metadata/master/images/usdc.svg',\n amount: '4956250000',\n symbol: 'USDC',\n address: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',\n decimals: '6',\n },\n },\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock ERC20 received notification\n *\n * @returns Mock raw ERC20 received notification\n */\nexport function createMockNotificationERC20Received(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.ERC20_RECEIVED,\n notification_type: 'wallet_activity',\n notification_subtype: 'erc20_received',\n id: '3fa85f64-5717-4562-b3fc-2c963f66afa6',\n unread: true,\n created_at: '2022-03-01T00:00:00Z',\n payload: {\n chain_id: 1,\n block_number: 17485840,\n block_timestamp: '2022-03-01T00:00:00Z',\n tx_hash:\n '0xb2256b183f2fb3872f99294ab55fb03e6a479b0d4aca556a3b27568b712505a6',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n kind: 'erc20_received',\n network_fee: {\n gas_price: '207806259583',\n native_token_price_in_usd: '0.83',\n },\n to: '0xeae7380dd4cef6fbd1144f49e4d1e6964258a4f4',\n from: '0x51c72848c68a965f66fa7a88855f9f7784502a7f',\n token: {\n usd: '0.00',\n name: 'SHIBA INU',\n image:\n 'https://raw.githubusercontent.com/MetaMask/contract-metadata/master/images/shib.svg',\n amount: '8382798736999999457296646144',\n symbol: 'SHIB',\n address: '0x95ad61b0a150d79219dcf64e1e6cc01f0b64c4ce',\n decimals: '18',\n },\n },\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock ERC721 sent notification\n *\n * @returns Mock raw ERC721 sent notification\n */\nexport function createMockNotificationERC721Sent(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.ERC721_SENT,\n notification_type: 'wallet_activity',\n notification_subtype: 'erc721_sent',\n id: 'a4193058-9814-537e-9df4-79dcac727fb6',\n created_at: '2023-11-15T11:08:17.895407Z',\n unread: true,\n payload: {\n block_number: 18576643,\n block_timestamp: '1700043467',\n chain_id: 1,\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n to: '0xf47f628fe3bd2595e9ab384bfffc3859b448e451',\n nft: {\n name: 'Captainz #8680',\n image:\n 'https://i.seadn.io/s/raw/files/ae0fc06714ff7fb40217340d8a242c0e.gif?w=500&auto=format',\n token_id: '8680',\n collection: {\n name: 'The Captainz',\n image:\n 'https://i.seadn.io/gcs/files/6df4d75778066bce740050615bc84e21.png?w=500&auto=format',\n symbol: 'Captainz',\n address: '0x769272677fab02575e84945f03eca517acc544cc',\n },\n },\n from: '0x24a0bb54b7e7a8e406e9b28058a9fd6c49e6df4f',\n kind: 'erc721_sent',\n network_fee: {\n gas_price: '24550653274',\n native_token_price_in_usd: '1986.61',\n },\n },\n tx_hash:\n '0x0833c69fb41cf972a0f031fceca242939bc3fcf82b964b74606649abcad371bd',\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock ERC721 received notification\n *\n * @returns Mock raw ERC721 received notification\n */\nexport function createMockNotificationERC721Received(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.ERC721_RECEIVED,\n notification_type: 'wallet_activity',\n notification_subtype: 'erc721_received',\n id: '00a79d24-befa-57ed-a55a-9eb8696e1654',\n created_at: '2023-11-14T17:40:52.319281Z',\n unread: true,\n payload: {\n block_number: 18571446,\n block_timestamp: '1699980623',\n chain_id: 1,\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n to: '0xba7f3daa8adfdad686574406ab9bd5d2f0a49d2e',\n nft: {\n name: 'The Plague #2722',\n image:\n 'https://i.seadn.io/s/raw/files/a96f90ec8ebf55a2300c66a0c46d6a16.png?w=500&auto=format',\n token_id: '2722',\n collection: {\n name: 'The Plague NFT',\n image:\n 'https://i.seadn.io/gcs/files/4577987a5ca45ca5118b2e31559ee4d1.jpg?w=500&auto=format',\n symbol: 'FROG',\n address: '0xc379e535caff250a01caa6c3724ed1359fe5c29b',\n },\n },\n from: '0x24a0bb54b7e7a8e406e9b28058a9fd6c49e6df4f',\n kind: 'erc721_received',\n network_fee: {\n gas_price: '53701898538',\n native_token_price_in_usd: '2047.01',\n },\n },\n tx_hash:\n '0xe554c9e29e6eeca8ba94da4d047334ba08b8eb9ca3b801dd69cec08dfdd4ae43',\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock ERC1155 sent notification\n *\n * @returns Mock raw ERC1155 sent notification\n */\nexport function createMockNotificationERC1155Sent(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.ERC1155_SENT,\n notification_type: 'wallet_activity',\n notification_subtype: 'erc1155_sent',\n id: 'a09ff9d1-623a-52ab-a3d4-c7c8c9a58362',\n created_at: '2023-11-20T20:44:10.110706Z',\n unread: true,\n payload: {\n block_number: 18615206,\n block_timestamp: '1700510003',\n chain_id: 1,\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n to: '0x15bd77ccacf2da39b84f0c31fee2e451225bb190',\n nft: {\n name: 'IlluminatiNFT DAO',\n image:\n 'https://i.seadn.io/gcs/files/79a77cb37c7b2f1069f752645d29fea7.jpg?w=500&auto=format',\n token_id: '1',\n collection: {\n name: 'IlluminatiNFT DAO',\n image:\n 'https://i.seadn.io/gae/LTKz3om2eCQfn3M6PkqEmY7KhLtdMCOm0QVch2318KJq7-KyToCH7NBTMo4UuJ0AZI-oaBh1HcgrAEIEWYbXY3uMcYpuGXunaXEh?w=500&auto=format',\n symbol: 'TRUTH',\n address: '0xe25f0fe686477f9df3c2876c4902d3b85f75f33a',\n },\n },\n from: '0x0000000000000000000000000000000000000000',\n kind: 'erc1155_sent',\n network_fee: {\n gas_price: '33571446596',\n native_token_price_in_usd: '2038.88',\n },\n },\n tx_hash:\n '0x03381aba290facbaf71c123e263c8dc3dd550aac00ef589cce395182eaeff76f',\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock ERC1155 received notification\n *\n * @returns Mock raw ERC1155 received notification\n */\nexport function createMockNotificationERC1155Received(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.ERC1155_RECEIVED,\n notification_type: 'wallet_activity',\n notification_subtype: 'erc1155_received',\n id: 'b6b93c84-e8dc-54ed-9396-7ea50474843a',\n created_at: '2023-11-20T20:44:10.110706Z',\n unread: true,\n payload: {\n block_number: 18615206,\n block_timestamp: '1700510003',\n chain_id: 1,\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n to: '0x15bd77ccacf2da39b84f0c31fee2e451225bb190',\n nft: {\n name: 'IlluminatiNFT DAO',\n image:\n 'https://i.seadn.io/gcs/files/79a77cb37c7b2f1069f752645d29fea7.jpg?w=500&auto=format',\n token_id: '1',\n collection: {\n name: 'IlluminatiNFT DAO',\n image:\n 'https://i.seadn.io/gae/LTKz3om2eCQfn3M6PkqEmY7KhLtdMCOm0QVch2318KJq7-KyToCH7NBTMo4UuJ0AZI-oaBh1HcgrAEIEWYbXY3uMcYpuGXunaXEh?w=500&auto=format',\n symbol: 'TRUTH',\n address: '0xe25f0fe686477f9df3c2876c4902d3b85f75f33a',\n },\n },\n from: '0x0000000000000000000000000000000000000000',\n kind: 'erc1155_received',\n network_fee: {\n gas_price: '33571446596',\n native_token_price_in_usd: '2038.88',\n },\n },\n tx_hash:\n '0x03381aba290facbaf71c123e263c8dc3dd550aac00ef589cce395182eaeff76f',\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock MetaMask Swaps notification\n *\n * @returns Mock raw MetaMask Swaps notification\n */\nexport function createMockNotificationMetaMaskSwapsCompleted(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.METAMASK_SWAP_COMPLETED,\n notification_type: 'wallet_activity',\n notification_subtype: 'metamask_swap_completed',\n id: '7ddfe6a1-ac52-5ffe-aa40-f04242db4b8b',\n created_at: '2023-10-18T13:58:49.854596Z',\n unread: true,\n payload: {\n block_number: 18377666,\n block_timestamp: '1697637275',\n chain_id: 1,\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n kind: 'metamask_swap_completed',\n rate: '1558.27',\n token_in: {\n usd: '1576.73',\n image:\n 'https://token.api.cx.metamask.io/assets/nativeCurrencyLogos/ethereum.svg',\n amount: '9000000000000000',\n symbol: 'ETH',\n address: '0x0000000000000000000000000000000000000000',\n decimals: '18',\n name: 'Ethereum',\n },\n token_out: {\n usd: '1.00',\n image:\n 'https://raw.githubusercontent.com/MetaMask/contract-metadata/master/images/usdt.svg',\n amount: '14024419',\n symbol: 'USDT',\n address: '0xdac17f958d2ee523a2206206994597c13d831ec7',\n decimals: '6',\n name: 'USDT',\n },\n network_fee: {\n gas_price: '15406129273',\n native_token_price_in_usd: '1576.73',\n },\n },\n tx_hash:\n '0xf69074290f3aa11bce567aabc9ca0df7a12559dfae1b80ba1a124e9dfe19ecc5',\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock RocketPool Stake Completed notification\n *\n * @returns Mock raw RocketPool Stake Completed notification\n */\nexport function createMockNotificationRocketPoolStakeCompleted(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.ROCKETPOOL_STAKE_COMPLETED,\n notification_type: 'wallet_activity',\n notification_subtype: 'rocketpool_stake_completed',\n id: 'c2a2f225-b2fb-5d6c-ba56-e27a5c71ffb9',\n created_at: '2023-11-20T12:02:48.796824Z',\n unread: true,\n payload: {\n block_number: 18585057,\n block_timestamp: '1700145059',\n chain_id: 1,\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n kind: 'rocketpool_stake_completed',\n stake_in: {\n usd: '2031.86',\n name: 'Ethereum',\n image:\n 'https://token.api.cx.metamask.io/assets/nativeCurrencyLogos/ethereum.svg',\n amount: '190690478063438272',\n symbol: 'ETH',\n address: '0x0000000000000000000000000000000000000000',\n decimals: '18',\n },\n stake_out: {\n usd: '2226.49',\n name: 'Rocket Pool ETH',\n image:\n 'https://raw.githubusercontent.com/MetaMask/contract-metadata/master/images/rETH.svg',\n amount: '175024360778165879',\n symbol: 'RETH',\n address: '0xae78736Cd615f374D3085123A210448E74Fc6393',\n decimals: '18',\n },\n network_fee: {\n gas_price: '36000000000',\n native_token_price_in_usd: '2031.86',\n },\n },\n tx_hash:\n '0xcfc0693bf47995907b0f46ef0644cf16dd9a0de797099b2e00fd481e1b2117d3',\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock RocketPool Un-staked notification\n *\n * @returns Mock raw RocketPool Un-staked notification\n */\nexport function createMockNotificationRocketPoolUnStakeCompleted(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.ROCKETPOOL_UNSTAKE_COMPLETED,\n notification_type: 'wallet_activity',\n notification_subtype: 'rocketpool_unstake_completed',\n id: '291ec897-f569-4837-b6c0-21001b198dff',\n created_at: '2023-10-19T13:11:10.623042Z',\n unread: true,\n payload: {\n block_number: 18384336,\n block_timestamp: '1697718011',\n chain_id: 1,\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n kind: 'rocketpool_unstake_completed',\n stake_in: {\n usd: '1686.34',\n image:\n 'https://raw.githubusercontent.com/MetaMask/contract-metadata/master/images/rETH.svg',\n amount: '66608041413696770',\n symbol: 'RETH',\n address: '0xae78736Cd615f374D3085123A210448E74Fc6393',\n decimals: '18',\n name: 'Rocketpool Eth',\n },\n stake_out: {\n usd: '1553.75',\n image:\n 'https://token.api.cx.metamask.io/assets/nativeCurrencyLogos/ethereum.svg',\n amount: '72387843427700824',\n symbol: 'ETH',\n address: '0x0000000000000000000000000000000000000000',\n decimals: '18',\n name: 'Ethereum',\n },\n network_fee: {\n gas_price: '5656322987',\n native_token_price_in_usd: '1553.75',\n },\n },\n tx_hash:\n '0xc7972a7e409abfc62590ec90e633acd70b9b74e76ad02305be8bf133a0e22d5f',\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock Lido Stake Completed notification\n *\n * @returns Mock raw Lido Stake Completed notification\n */\nexport function createMockNotificationLidoStakeCompleted(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.LIDO_STAKE_COMPLETED,\n notification_type: 'wallet_activity',\n notification_subtype: 'lido_stake_completed',\n id: 'ec10d66a-f78f-461f-83c9-609aada8cc50',\n created_at: '2023-11-02T22:28:49.970865Z',\n unread: true,\n payload: {\n block_number: 18487118,\n block_timestamp: '1698961091',\n chain_id: 1,\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n kind: 'lido_stake_completed',\n stake_in: {\n usd: '1806.33',\n name: 'Ethereum',\n image:\n 'https://token.api.cx.metamask.io/assets/nativeCurrencyLogos/ethereum.svg',\n amount: '330303634023928032',\n symbol: 'ETH',\n address: '0x0000000000000000000000000000000000000000',\n decimals: '18',\n },\n stake_out: {\n usd: '1801.30',\n name: 'Liquid staked Ether 2.0',\n image:\n 'https://raw.githubusercontent.com/MetaMask/contract-metadata/master/images/stETH.svg',\n amount: '330303634023928032',\n symbol: 'STETH',\n address: '0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84',\n decimals: '18',\n },\n network_fee: {\n gas_price: '26536359866',\n native_token_price_in_usd: '1806.33',\n },\n },\n tx_hash:\n '0x8cc0fa805f7c3b1743b14f3b91c6b824113b094f26d4ccaf6a71ad8547ce6a0f',\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock Lido Withdrawal Requested notification\n *\n * @returns Mock raw Lido Withdrawal Requested notification\n */\nexport function createMockNotificationLidoWithdrawalRequested(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.LIDO_WITHDRAWAL_REQUESTED,\n notification_type: 'wallet_activity',\n notification_subtype: 'lido_withdrawal_requested',\n id: 'ef003925-3379-4ba7-9e2d-8218690cadc9',\n created_at: '2023-10-18T15:04:02.482526Z',\n unread: true,\n payload: {\n block_number: 18377760,\n block_timestamp: '1697638415',\n chain_id: 1,\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n kind: 'lido_withdrawal_requested',\n stake_in: {\n usd: '1568.54',\n image:\n 'https://raw.githubusercontent.com/MetaMask/contract-metadata/master/images/stETH.svg',\n amount: '97180668792218669859',\n symbol: 'STETH',\n address: '0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84',\n decimals: '18',\n name: 'Staked Eth',\n },\n stake_out: {\n usd: '1576.73',\n image:\n 'https://token.api.cx.metamask.io/assets/nativeCurrencyLogos/ethereum.svg',\n amount: '97180668792218669859',\n symbol: 'ETH',\n address: '0x0000000000000000000000000000000000000000',\n decimals: '18',\n name: 'Ethereum',\n },\n network_fee: {\n gas_price: '11658906980',\n native_token_price_in_usd: '1576.73',\n },\n },\n tx_hash:\n '0x58b5f82e084cb750ea174e02b20fbdfd2ba8d78053deac787f34fc38e5d427aa',\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock Lido Withdrawal Completed notification\n *\n * @returns Mock raw Lido Withdrawal Completed notification\n */\nexport function createMockNotificationLidoWithdrawalCompleted(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.LIDO_WITHDRAWAL_COMPLETED,\n notification_type: 'wallet_activity',\n notification_subtype: 'lido_withdrawal_completed',\n id: 'd73df14d-ce73-4f38-bad3-ab028154042f',\n created_at: '2023-10-18T16:35:03.147606Z',\n unread: true,\n payload: {\n block_number: 18378208,\n block_timestamp: '1697643851',\n chain_id: 1,\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n kind: 'lido_withdrawal_completed',\n stake_in: {\n usd: '1570.23',\n image:\n 'https://raw.githubusercontent.com/MetaMask/contract-metadata/master/images/stETH.svg',\n amount: '35081997661451346',\n symbol: 'STETH',\n address: '0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84',\n decimals: '18',\n name: 'Staked Eth',\n },\n stake_out: {\n usd: '1571.74',\n image:\n 'https://token.api.cx.metamask.io/assets/nativeCurrencyLogos/ethereum.svg',\n amount: '35081997661451346',\n symbol: 'ETH',\n address: '0x0000000000000000000000000000000000000000',\n decimals: '18',\n name: 'Ethereum',\n },\n network_fee: {\n gas_price: '12699495150',\n native_token_price_in_usd: '1571.74',\n },\n },\n tx_hash:\n '0xe6d210d2e601ef3dd1075c48e71452cf35f2daae3886911e964e3babad8ac657',\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock Lido Withdrawal Ready notification\n *\n * @returns Mock raw Lido Withdrawal Ready notification\n */\nexport function createMockNotificationLidoReadyToBeWithdrawn(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.LIDO_STAKE_READY_TO_BE_WITHDRAWN,\n notification_type: 'wallet_activity',\n notification_subtype: 'lido_stake_ready_to_be_withdrawn',\n id: 'd73df14d-ce73-4f38-bad3-ab028154042e',\n created_at: '2023-10-18T16:35:03.147606Z',\n unread: true,\n payload: {\n block_number: 18378208,\n block_timestamp: '1697643851',\n chain_id: 1,\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n kind: 'lido_stake_ready_to_be_withdrawn',\n request_id: '123456789',\n staked_eth: {\n address: '0x881D40237659C251811CEC9c364ef91dC08D300F',\n symbol: 'ETH',\n name: 'Ethereum',\n amount: '2.5',\n decimals: '18',\n image:\n 'https://token.api.cx.metamask.io/assets/nativeCurrencyLogos/ethereum.svg',\n usd: '10000.00',\n },\n },\n tx_hash:\n '0xe6d210d2e601ef3dd1075c48e71452cf35f2daae3886911e964e3babad8ac657',\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock Generic Platform notification\n *\n * @returns Mock raw Generic Platform notification\n */\nexport function createMockPlatformNotification(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.PLATFORM,\n notification_type: 'perps',\n notification_subtype: 'position_liquidated',\n id: '3fa85f64-5717-4562-b3fc-2c963f66afa6',\n unread: true,\n created_at: '2025-10-09T09:45:34.202Z',\n template: {\n image_url:\n 'https://images.ctfassets.net/clixtyxoaeas/4rnpEzy1ATWRKVBOLxZ1Fm/a74dc1eed36d23d7ea6030383a4d5163/MetaMask-icon-fox.svg',\n title: 'This is a Platform Notification!',\n body: 'Teams can now build out their own notifications, and add an optional CTA (like this one below).',\n cta: {\n content: 'Get Started',\n link: 'https://metamask.io/get-started',\n },\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - creates an array of raw on-chain notifications\n *\n * @returns Array of raw on-chain notifications\n */\nexport function createMockRawOnChainNotifications(): NormalisedAPINotification[] {\n return [1, 2, 3].map((id) => {\n const notification = createMockNotificationEthSent();\n notification.id += `-${id}`;\n return notification;\n });\n}\n"]}
|
|
1
|
+
{"version":3,"file":"mock-raw-notifications.mjs","sourceRoot":"","sources":["../../../src/NotificationServicesController/mocks/mock-raw-notifications.ts"],"names":[],"mappings":"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","sourcesContent":["import { TRIGGER_TYPES } from '../constants/notification-schema';\nimport type { NormalisedAPINotification } from '../types/notification-api/notification-api';\n\n/**\n * Mocking Utility - create a mock Eth sent notification\n *\n * @returns Mock raw Eth sent notification\n */\nexport function createMockNotificationEthSent(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.ETH_SENT,\n notification_type: 'on-chain',\n id: '3fa85f64-5717-4562-b3fc-2c963f66afa7',\n unread: true,\n created_at: '2022-03-01T00:00:00Z',\n payload: {\n chain_id: 1,\n block_number: 17485840,\n block_timestamp: '2022-03-01T00:00:00Z',\n tx_hash:\n '0xb2256b183f2fb3872f99294ab55fb03e6a479b0d4aca556a3b27568b712505a6',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n kind: 'eth_sent',\n network_fee: {\n gas_price: '207806259583',\n native_token_price_in_usd: '0.83',\n },\n from: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n to: '0x881D40237659C251811CEC9c364ef91dC08D300D',\n amount: {\n usd: '670.64',\n eth: '0.005',\n },\n },\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock Eth Received notification\n *\n * @returns Mock raw Eth Received notification\n */\nexport function createMockNotificationEthReceived(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.ETH_RECEIVED,\n notification_type: 'on-chain',\n id: '3fa85f64-5717-4562-b3fc-2c963f66afa8',\n unread: true,\n created_at: '2022-03-01T00:00:00Z',\n payload: {\n chain_id: 1,\n block_number: 17485840,\n block_timestamp: '2022-03-01T00:00:00Z',\n tx_hash:\n '0xb2256b183f2fb3872f99294ab55fb03e6a479b0d4aca556a3b27568b712505a6',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n kind: 'eth_received',\n network_fee: {\n gas_price: '207806259583',\n native_token_price_in_usd: '0.83',\n },\n from: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n to: '0x881D40237659C251811CEC9c364ef91dC08D300D',\n amount: {\n usd: '670.64',\n eth: '808.000000000000000000',\n },\n },\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock ERC20 sent notification\n *\n * @returns Mock raw ERC20 sent notification\n */\nexport function createMockNotificationERC20Sent(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.ERC20_SENT,\n notification_type: 'on-chain',\n id: '3fa85f64-5717-4562-b3fc-2c963f66afa9',\n unread: true,\n created_at: '2022-03-01T00:00:00Z',\n payload: {\n chain_id: 1,\n block_number: 17485840,\n block_timestamp: '2022-03-01T00:00:00Z',\n tx_hash:\n '0xb2256b183f2fb3872f99294ab55fb03e6a479b0d4aca556a3b27568b712505a6',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n kind: 'erc20_sent',\n network_fee: {\n gas_price: '207806259583',\n native_token_price_in_usd: '0.83',\n },\n to: '0xecc19e177d24551aa7ed6bc6fe566eca726cc8a9',\n from: '0x1231deb6f5749ef6ce6943a275a1d3e7486f4eae',\n token: {\n usd: '1.00',\n name: 'USDC',\n image:\n 'https://raw.githubusercontent.com/MetaMask/contract-metadata/master/images/usdc.svg',\n amount: '4956250000',\n symbol: 'USDC',\n address: '0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48',\n decimals: '6',\n },\n },\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock ERC20 received notification\n *\n * @returns Mock raw ERC20 received notification\n */\nexport function createMockNotificationERC20Received(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.ERC20_RECEIVED,\n notification_type: 'on-chain',\n id: '3fa85f64-5717-4562-b3fc-2c963f66afa6',\n unread: true,\n created_at: '2022-03-01T00:00:00Z',\n payload: {\n chain_id: 1,\n block_number: 17485840,\n block_timestamp: '2022-03-01T00:00:00Z',\n tx_hash:\n '0xb2256b183f2fb3872f99294ab55fb03e6a479b0d4aca556a3b27568b712505a6',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n kind: 'erc20_received',\n network_fee: {\n gas_price: '207806259583',\n native_token_price_in_usd: '0.83',\n },\n to: '0xeae7380dd4cef6fbd1144f49e4d1e6964258a4f4',\n from: '0x51c72848c68a965f66fa7a88855f9f7784502a7f',\n token: {\n usd: '0.00',\n name: 'SHIBA INU',\n image:\n 'https://raw.githubusercontent.com/MetaMask/contract-metadata/master/images/shib.svg',\n amount: '8382798736999999457296646144',\n symbol: 'SHIB',\n address: '0x95ad61b0a150d79219dcf64e1e6cc01f0b64c4ce',\n decimals: '18',\n },\n },\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock ERC721 sent notification\n *\n * @returns Mock raw ERC721 sent notification\n */\nexport function createMockNotificationERC721Sent(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.ERC721_SENT,\n notification_type: 'on-chain',\n id: 'a4193058-9814-537e-9df4-79dcac727fb6',\n created_at: '2023-11-15T11:08:17.895407Z',\n unread: true,\n payload: {\n block_number: 18576643,\n block_timestamp: '1700043467',\n chain_id: 1,\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n to: '0xf47f628fe3bd2595e9ab384bfffc3859b448e451',\n nft: {\n name: 'Captainz #8680',\n image:\n 'https://i.seadn.io/s/raw/files/ae0fc06714ff7fb40217340d8a242c0e.gif?w=500&auto=format',\n token_id: '8680',\n collection: {\n name: 'The Captainz',\n image:\n 'https://i.seadn.io/gcs/files/6df4d75778066bce740050615bc84e21.png?w=500&auto=format',\n symbol: 'Captainz',\n address: '0x769272677fab02575e84945f03eca517acc544cc',\n },\n },\n from: '0x24a0bb54b7e7a8e406e9b28058a9fd6c49e6df4f',\n kind: 'erc721_sent',\n network_fee: {\n gas_price: '24550653274',\n native_token_price_in_usd: '1986.61',\n },\n },\n tx_hash:\n '0x0833c69fb41cf972a0f031fceca242939bc3fcf82b964b74606649abcad371bd',\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock ERC721 received notification\n *\n * @returns Mock raw ERC721 received notification\n */\nexport function createMockNotificationERC721Received(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.ERC721_RECEIVED,\n notification_type: 'on-chain',\n id: '00a79d24-befa-57ed-a55a-9eb8696e1654',\n created_at: '2023-11-14T17:40:52.319281Z',\n unread: true,\n payload: {\n block_number: 18571446,\n block_timestamp: '1699980623',\n chain_id: 1,\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n to: '0xba7f3daa8adfdad686574406ab9bd5d2f0a49d2e',\n nft: {\n name: 'The Plague #2722',\n image:\n 'https://i.seadn.io/s/raw/files/a96f90ec8ebf55a2300c66a0c46d6a16.png?w=500&auto=format',\n token_id: '2722',\n collection: {\n name: 'The Plague NFT',\n image:\n 'https://i.seadn.io/gcs/files/4577987a5ca45ca5118b2e31559ee4d1.jpg?w=500&auto=format',\n symbol: 'FROG',\n address: '0xc379e535caff250a01caa6c3724ed1359fe5c29b',\n },\n },\n from: '0x24a0bb54b7e7a8e406e9b28058a9fd6c49e6df4f',\n kind: 'erc721_received',\n network_fee: {\n gas_price: '53701898538',\n native_token_price_in_usd: '2047.01',\n },\n },\n tx_hash:\n '0xe554c9e29e6eeca8ba94da4d047334ba08b8eb9ca3b801dd69cec08dfdd4ae43',\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock ERC1155 sent notification\n *\n * @returns Mock raw ERC1155 sent notification\n */\nexport function createMockNotificationERC1155Sent(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.ERC1155_SENT,\n notification_type: 'on-chain',\n id: 'a09ff9d1-623a-52ab-a3d4-c7c8c9a58362',\n created_at: '2023-11-20T20:44:10.110706Z',\n unread: true,\n payload: {\n block_number: 18615206,\n block_timestamp: '1700510003',\n chain_id: 1,\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n to: '0x15bd77ccacf2da39b84f0c31fee2e451225bb190',\n nft: {\n name: 'IlluminatiNFT DAO',\n image:\n 'https://i.seadn.io/gcs/files/79a77cb37c7b2f1069f752645d29fea7.jpg?w=500&auto=format',\n token_id: '1',\n collection: {\n name: 'IlluminatiNFT DAO',\n image:\n 'https://i.seadn.io/gae/LTKz3om2eCQfn3M6PkqEmY7KhLtdMCOm0QVch2318KJq7-KyToCH7NBTMo4UuJ0AZI-oaBh1HcgrAEIEWYbXY3uMcYpuGXunaXEh?w=500&auto=format',\n symbol: 'TRUTH',\n address: '0xe25f0fe686477f9df3c2876c4902d3b85f75f33a',\n },\n },\n from: '0x0000000000000000000000000000000000000000',\n kind: 'erc1155_sent',\n network_fee: {\n gas_price: '33571446596',\n native_token_price_in_usd: '2038.88',\n },\n },\n tx_hash:\n '0x03381aba290facbaf71c123e263c8dc3dd550aac00ef589cce395182eaeff76f',\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock ERC1155 received notification\n *\n * @returns Mock raw ERC1155 received notification\n */\nexport function createMockNotificationERC1155Received(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.ERC1155_RECEIVED,\n notification_type: 'on-chain',\n id: 'b6b93c84-e8dc-54ed-9396-7ea50474843a',\n created_at: '2023-11-20T20:44:10.110706Z',\n unread: true,\n payload: {\n block_number: 18615206,\n block_timestamp: '1700510003',\n chain_id: 1,\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n to: '0x15bd77ccacf2da39b84f0c31fee2e451225bb190',\n nft: {\n name: 'IlluminatiNFT DAO',\n image:\n 'https://i.seadn.io/gcs/files/79a77cb37c7b2f1069f752645d29fea7.jpg?w=500&auto=format',\n token_id: '1',\n collection: {\n name: 'IlluminatiNFT DAO',\n image:\n 'https://i.seadn.io/gae/LTKz3om2eCQfn3M6PkqEmY7KhLtdMCOm0QVch2318KJq7-KyToCH7NBTMo4UuJ0AZI-oaBh1HcgrAEIEWYbXY3uMcYpuGXunaXEh?w=500&auto=format',\n symbol: 'TRUTH',\n address: '0xe25f0fe686477f9df3c2876c4902d3b85f75f33a',\n },\n },\n from: '0x0000000000000000000000000000000000000000',\n kind: 'erc1155_received',\n network_fee: {\n gas_price: '33571446596',\n native_token_price_in_usd: '2038.88',\n },\n },\n tx_hash:\n '0x03381aba290facbaf71c123e263c8dc3dd550aac00ef589cce395182eaeff76f',\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock MetaMask Swaps notification\n *\n * @returns Mock raw MetaMask Swaps notification\n */\nexport function createMockNotificationMetaMaskSwapsCompleted(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.METAMASK_SWAP_COMPLETED,\n notification_type: 'on-chain',\n id: '7ddfe6a1-ac52-5ffe-aa40-f04242db4b8b',\n created_at: '2023-10-18T13:58:49.854596Z',\n unread: true,\n payload: {\n block_number: 18377666,\n block_timestamp: '1697637275',\n chain_id: 1,\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n kind: 'metamask_swap_completed',\n rate: '1558.27',\n token_in: {\n usd: '1576.73',\n image:\n 'https://token.api.cx.metamask.io/assets/nativeCurrencyLogos/ethereum.svg',\n amount: '9000000000000000',\n symbol: 'ETH',\n address: '0x0000000000000000000000000000000000000000',\n decimals: '18',\n name: 'Ethereum',\n },\n token_out: {\n usd: '1.00',\n image:\n 'https://raw.githubusercontent.com/MetaMask/contract-metadata/master/images/usdt.svg',\n amount: '14024419',\n symbol: 'USDT',\n address: '0xdac17f958d2ee523a2206206994597c13d831ec7',\n decimals: '6',\n name: 'USDT',\n },\n network_fee: {\n gas_price: '15406129273',\n native_token_price_in_usd: '1576.73',\n },\n },\n tx_hash:\n '0xf69074290f3aa11bce567aabc9ca0df7a12559dfae1b80ba1a124e9dfe19ecc5',\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock RocketPool Stake Completed notification\n *\n * @returns Mock raw RocketPool Stake Completed notification\n */\nexport function createMockNotificationRocketPoolStakeCompleted(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.ROCKETPOOL_STAKE_COMPLETED,\n notification_type: 'on-chain',\n id: 'c2a2f225-b2fb-5d6c-ba56-e27a5c71ffb9',\n created_at: '2023-11-20T12:02:48.796824Z',\n unread: true,\n payload: {\n block_number: 18585057,\n block_timestamp: '1700145059',\n chain_id: 1,\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n kind: 'rocketpool_stake_completed',\n stake_in: {\n usd: '2031.86',\n name: 'Ethereum',\n image:\n 'https://token.api.cx.metamask.io/assets/nativeCurrencyLogos/ethereum.svg',\n amount: '190690478063438272',\n symbol: 'ETH',\n address: '0x0000000000000000000000000000000000000000',\n decimals: '18',\n },\n stake_out: {\n usd: '2226.49',\n name: 'Rocket Pool ETH',\n image:\n 'https://raw.githubusercontent.com/MetaMask/contract-metadata/master/images/rETH.svg',\n amount: '175024360778165879',\n symbol: 'RETH',\n address: '0xae78736Cd615f374D3085123A210448E74Fc6393',\n decimals: '18',\n },\n network_fee: {\n gas_price: '36000000000',\n native_token_price_in_usd: '2031.86',\n },\n },\n tx_hash:\n '0xcfc0693bf47995907b0f46ef0644cf16dd9a0de797099b2e00fd481e1b2117d3',\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock RocketPool Un-staked notification\n *\n * @returns Mock raw RocketPool Un-staked notification\n */\nexport function createMockNotificationRocketPoolUnStakeCompleted(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.ROCKETPOOL_UNSTAKE_COMPLETED,\n notification_type: 'on-chain',\n id: '291ec897-f569-4837-b6c0-21001b198dff',\n created_at: '2023-10-19T13:11:10.623042Z',\n unread: true,\n payload: {\n block_number: 18384336,\n block_timestamp: '1697718011',\n chain_id: 1,\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n kind: 'rocketpool_unstake_completed',\n stake_in: {\n usd: '1686.34',\n image:\n 'https://raw.githubusercontent.com/MetaMask/contract-metadata/master/images/rETH.svg',\n amount: '66608041413696770',\n symbol: 'RETH',\n address: '0xae78736Cd615f374D3085123A210448E74Fc6393',\n decimals: '18',\n name: 'Rocketpool Eth',\n },\n stake_out: {\n usd: '1553.75',\n image:\n 'https://token.api.cx.metamask.io/assets/nativeCurrencyLogos/ethereum.svg',\n amount: '72387843427700824',\n symbol: 'ETH',\n address: '0x0000000000000000000000000000000000000000',\n decimals: '18',\n name: 'Ethereum',\n },\n network_fee: {\n gas_price: '5656322987',\n native_token_price_in_usd: '1553.75',\n },\n },\n tx_hash:\n '0xc7972a7e409abfc62590ec90e633acd70b9b74e76ad02305be8bf133a0e22d5f',\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock Lido Stake Completed notification\n *\n * @returns Mock raw Lido Stake Completed notification\n */\nexport function createMockNotificationLidoStakeCompleted(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.LIDO_STAKE_COMPLETED,\n notification_type: 'on-chain',\n id: 'ec10d66a-f78f-461f-83c9-609aada8cc50',\n created_at: '2023-11-02T22:28:49.970865Z',\n unread: true,\n payload: {\n block_number: 18487118,\n block_timestamp: '1698961091',\n chain_id: 1,\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n kind: 'lido_stake_completed',\n stake_in: {\n usd: '1806.33',\n name: 'Ethereum',\n image:\n 'https://token.api.cx.metamask.io/assets/nativeCurrencyLogos/ethereum.svg',\n amount: '330303634023928032',\n symbol: 'ETH',\n address: '0x0000000000000000000000000000000000000000',\n decimals: '18',\n },\n stake_out: {\n usd: '1801.30',\n name: 'Liquid staked Ether 2.0',\n image:\n 'https://raw.githubusercontent.com/MetaMask/contract-metadata/master/images/stETH.svg',\n amount: '330303634023928032',\n symbol: 'STETH',\n address: '0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84',\n decimals: '18',\n },\n network_fee: {\n gas_price: '26536359866',\n native_token_price_in_usd: '1806.33',\n },\n },\n tx_hash:\n '0x8cc0fa805f7c3b1743b14f3b91c6b824113b094f26d4ccaf6a71ad8547ce6a0f',\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock Lido Withdrawal Requested notification\n *\n * @returns Mock raw Lido Withdrawal Requested notification\n */\nexport function createMockNotificationLidoWithdrawalRequested(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.LIDO_WITHDRAWAL_REQUESTED,\n notification_type: 'on-chain',\n id: 'ef003925-3379-4ba7-9e2d-8218690cadc9',\n created_at: '2023-10-18T15:04:02.482526Z',\n unread: true,\n payload: {\n block_number: 18377760,\n block_timestamp: '1697638415',\n chain_id: 1,\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n kind: 'lido_withdrawal_requested',\n stake_in: {\n usd: '1568.54',\n image:\n 'https://raw.githubusercontent.com/MetaMask/contract-metadata/master/images/stETH.svg',\n amount: '97180668792218669859',\n symbol: 'STETH',\n address: '0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84',\n decimals: '18',\n name: 'Staked Eth',\n },\n stake_out: {\n usd: '1576.73',\n image:\n 'https://token.api.cx.metamask.io/assets/nativeCurrencyLogos/ethereum.svg',\n amount: '97180668792218669859',\n symbol: 'ETH',\n address: '0x0000000000000000000000000000000000000000',\n decimals: '18',\n name: 'Ethereum',\n },\n network_fee: {\n gas_price: '11658906980',\n native_token_price_in_usd: '1576.73',\n },\n },\n tx_hash:\n '0x58b5f82e084cb750ea174e02b20fbdfd2ba8d78053deac787f34fc38e5d427aa',\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock Lido Withdrawal Completed notification\n *\n * @returns Mock raw Lido Withdrawal Completed notification\n */\nexport function createMockNotificationLidoWithdrawalCompleted(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.LIDO_WITHDRAWAL_COMPLETED,\n notification_type: 'on-chain',\n id: 'd73df14d-ce73-4f38-bad3-ab028154042f',\n created_at: '2023-10-18T16:35:03.147606Z',\n unread: true,\n payload: {\n block_number: 18378208,\n block_timestamp: '1697643851',\n chain_id: 1,\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n kind: 'lido_withdrawal_completed',\n stake_in: {\n usd: '1570.23',\n image:\n 'https://raw.githubusercontent.com/MetaMask/contract-metadata/master/images/stETH.svg',\n amount: '35081997661451346',\n symbol: 'STETH',\n address: '0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84',\n decimals: '18',\n name: 'Staked Eth',\n },\n stake_out: {\n usd: '1571.74',\n image:\n 'https://token.api.cx.metamask.io/assets/nativeCurrencyLogos/ethereum.svg',\n amount: '35081997661451346',\n symbol: 'ETH',\n address: '0x0000000000000000000000000000000000000000',\n decimals: '18',\n name: 'Ethereum',\n },\n network_fee: {\n gas_price: '12699495150',\n native_token_price_in_usd: '1571.74',\n },\n },\n tx_hash:\n '0xe6d210d2e601ef3dd1075c48e71452cf35f2daae3886911e964e3babad8ac657',\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock Lido Withdrawal Ready notification\n *\n * @returns Mock raw Lido Withdrawal Ready notification\n */\nexport function createMockNotificationLidoReadyToBeWithdrawn(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.LIDO_STAKE_READY_TO_BE_WITHDRAWN,\n notification_type: 'on-chain',\n id: 'd73df14d-ce73-4f38-bad3-ab028154042e',\n created_at: '2023-10-18T16:35:03.147606Z',\n unread: true,\n payload: {\n block_number: 18378208,\n block_timestamp: '1697643851',\n chain_id: 1,\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n network: {\n name: 'Ethereum',\n native_symbol: 'ETH',\n block_explorer: {\n url: 'https://etherscan.io',\n name: 'Etherscan',\n },\n },\n data: {\n kind: 'lido_stake_ready_to_be_withdrawn',\n request_id: '123456789',\n staked_eth: {\n address: '0x881D40237659C251811CEC9c364ef91dC08D300F',\n symbol: 'ETH',\n name: 'Ethereum',\n amount: '2.5',\n decimals: '18',\n image:\n 'https://token.api.cx.metamask.io/assets/nativeCurrencyLogos/ethereum.svg',\n usd: '10000.00',\n },\n },\n tx_hash:\n '0xe6d210d2e601ef3dd1075c48e71452cf35f2daae3886911e964e3babad8ac657',\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock Generic Platform notification\n *\n * @returns Mock raw Generic Platform notification\n */\nexport function createMockPlatformNotification(): NormalisedAPINotification {\n const mockNotification: NormalisedAPINotification = {\n type: TRIGGER_TYPES.PLATFORM,\n notification_type: 'platform',\n id: '3fa85f64-5717-4562-b3fc-2c963f66afa6',\n unread: true,\n created_at: '2025-10-09T09:45:34.202Z',\n template: {\n image_url:\n 'https://images.ctfassets.net/clixtyxoaeas/4rnpEzy1ATWRKVBOLxZ1Fm/a74dc1eed36d23d7ea6030383a4d5163/MetaMask-icon-fox.svg',\n title: 'This is a Platform Notification!',\n body: 'Teams can now build out their own notifications, and add an optional CTA (like this one below).',\n cta: {\n content: 'Get Started',\n link: 'https://metamask.io/get-started',\n },\n },\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - creates an array of raw on-chain notifications\n *\n * @returns Array of raw on-chain notifications\n */\nexport function createMockRawOnChainNotifications(): NormalisedAPINotification[] {\n return [1, 2, 3].map((id) => {\n const notification = createMockNotificationEthSent();\n notification.id += `-${id}`;\n return notification;\n });\n}\n"]}
|
|
@@ -26,10 +26,10 @@ exports.NOTIFICATION_API = NOTIFICATION_API;
|
|
|
26
26
|
const TRIGGER_API_NOTIFICATIONS_QUERY_ENDPOINT = (env = 'prd') => `${(0, exports.TRIGGER_API)(env)}/api/v2/notifications/query`;
|
|
27
27
|
exports.TRIGGER_API_NOTIFICATIONS_QUERY_ENDPOINT = TRIGGER_API_NOTIFICATIONS_QUERY_ENDPOINT;
|
|
28
28
|
// Lists notifications for each address provided
|
|
29
|
-
const NOTIFICATION_API_LIST_ENDPOINT = (env = 'prd') => `${(0, exports.NOTIFICATION_API)(env)}/api/
|
|
29
|
+
const NOTIFICATION_API_LIST_ENDPOINT = (env = 'prd') => `${(0, exports.NOTIFICATION_API)(env)}/api/v3/notifications`;
|
|
30
30
|
exports.NOTIFICATION_API_LIST_ENDPOINT = NOTIFICATION_API_LIST_ENDPOINT;
|
|
31
31
|
// Marks notifications as read
|
|
32
|
-
const NOTIFICATION_API_MARK_ALL_AS_READ_ENDPOINT = (env = 'prd') => `${(0, exports.NOTIFICATION_API)(env)}/api/
|
|
32
|
+
const NOTIFICATION_API_MARK_ALL_AS_READ_ENDPOINT = (env = 'prd') => `${(0, exports.NOTIFICATION_API)(env)}/api/v3/notifications/mark-as-read`;
|
|
33
33
|
exports.NOTIFICATION_API_MARK_ALL_AS_READ_ENDPOINT = NOTIFICATION_API_MARK_ALL_AS_READ_ENDPOINT;
|
|
34
34
|
/**
|
|
35
35
|
* fetches notification config (accounts enabled vs disabled)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-notifications.cjs","sourceRoot":"","sources":["../../../src/NotificationServicesController/services/api-notifications.ts"],"names":[],"mappings":"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","sourcesContent":["import log from 'loglevel';\n\nimport { toRawAPINotification } from '../../shared/to-raw-notification';\nimport type {\n NormalisedAPINotification,\n Schema,\n UnprocessedRawNotification,\n} from '../types/notification-api';\nimport { makeApiCall } from '../utils/utils';\nimport { notificationsConfigCache } from './notification-config-cache';\n\nexport type ENV = 'prd' | 'uat' | 'dev';\n\nconst TRIGGER_API_ENV = {\n dev: 'https://trigger.dev-api.cx.metamask.io',\n uat: 'https://trigger.uat-api.cx.metamask.io',\n prd: 'https://trigger.api.cx.metamask.io',\n} satisfies Record<ENV, string>;\n\nexport const TRIGGER_API = (env: ENV = 'prd'): string =>\n TRIGGER_API_ENV[env] ?? TRIGGER_API_ENV.prd;\n\nconst NOTIFICATION_API_ENV = {\n dev: 'https://notification.dev-api.cx.metamask.io',\n uat: 'https://notification.uat-api.cx.metamask.io',\n prd: 'https://notification.api.cx.metamask.io',\n};\n\nexport const NOTIFICATION_API = (env: ENV = 'prd'): string =>\n NOTIFICATION_API_ENV[env] ?? NOTIFICATION_API_ENV.prd;\n\n// Gets notification settings for each account provided\nexport const TRIGGER_API_NOTIFICATIONS_QUERY_ENDPOINT = (\n env: ENV = 'prd',\n): string => `${TRIGGER_API(env)}/api/v2/notifications/query`;\n\n// Lists notifications for each address provided\nexport const NOTIFICATION_API_LIST_ENDPOINT = (env: ENV = 'prd'): string =>\n `${NOTIFICATION_API(env)}/api/
|
|
1
|
+
{"version":3,"file":"api-notifications.cjs","sourceRoot":"","sources":["../../../src/NotificationServicesController/services/api-notifications.ts"],"names":[],"mappings":"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","sourcesContent":["import log from 'loglevel';\n\nimport { toRawAPINotification } from '../../shared/to-raw-notification';\nimport type {\n NormalisedAPINotification,\n Schema,\n UnprocessedRawNotification,\n} from '../types/notification-api';\nimport { makeApiCall } from '../utils/utils';\nimport { notificationsConfigCache } from './notification-config-cache';\n\nexport type ENV = 'prd' | 'uat' | 'dev';\n\nconst TRIGGER_API_ENV = {\n dev: 'https://trigger.dev-api.cx.metamask.io',\n uat: 'https://trigger.uat-api.cx.metamask.io',\n prd: 'https://trigger.api.cx.metamask.io',\n} satisfies Record<ENV, string>;\n\nexport const TRIGGER_API = (env: ENV = 'prd'): string =>\n TRIGGER_API_ENV[env] ?? TRIGGER_API_ENV.prd;\n\nconst NOTIFICATION_API_ENV = {\n dev: 'https://notification.dev-api.cx.metamask.io',\n uat: 'https://notification.uat-api.cx.metamask.io',\n prd: 'https://notification.api.cx.metamask.io',\n};\n\nexport const NOTIFICATION_API = (env: ENV = 'prd'): string =>\n NOTIFICATION_API_ENV[env] ?? NOTIFICATION_API_ENV.prd;\n\n// Gets notification settings for each account provided\nexport const TRIGGER_API_NOTIFICATIONS_QUERY_ENDPOINT = (\n env: ENV = 'prd',\n): string => `${TRIGGER_API(env)}/api/v2/notifications/query`;\n\n// Lists notifications for each address provided\nexport const NOTIFICATION_API_LIST_ENDPOINT = (env: ENV = 'prd'): string =>\n `${NOTIFICATION_API(env)}/api/v3/notifications`;\n\n// Marks notifications as read\nexport const NOTIFICATION_API_MARK_ALL_AS_READ_ENDPOINT = (\n env: ENV = 'prd',\n): string => `${NOTIFICATION_API(env)}/api/v3/notifications/mark-as-read`;\n\n/**\n * fetches notification config (accounts enabled vs disabled)\n *\n * @param bearerToken - jwt\n * @param addresses - list of addresses to check\n * @param env - the environment to use for the API call\n * NOTE the API will return addresses config with false if they have not been created before.\n * NOTE this is cached for 1s to prevent multiple update calls\n * @returns object of notification config, or null if missing\n */\nexport async function getNotificationsApiConfigCached(\n bearerToken: string,\n addresses: string[],\n env: ENV = 'prd',\n): Promise<{ address: string; enabled: boolean }[]> {\n if (addresses.length === 0) {\n return [];\n }\n\n const normalizedAddresses = addresses.map((addr) => addr.toLowerCase());\n\n const cached = notificationsConfigCache.get(normalizedAddresses);\n if (cached) {\n return cached;\n }\n\n type RequestBody = { address: string }[];\n type Response = { address: string; enabled: boolean }[];\n const body: RequestBody = normalizedAddresses.map((address) => ({ address }));\n const apiResponse = await makeApiCall(\n bearerToken,\n TRIGGER_API_NOTIFICATIONS_QUERY_ENDPOINT(env),\n 'POST',\n body,\n )\n .then<Response | null>((response) => (response.ok ? response.json() : null))\n .catch(() => null);\n\n const result = apiResponse ?? [];\n\n if (result.length > 0) {\n notificationsConfigCache.set(result);\n }\n\n return result;\n}\n\n/**\n * Fetches on-chain notifications for the given addresses\n *\n * @param bearerToken - The JSON Web Token used for authentication in the API call.\n * @param addresses - List of addresses\n * @param locale - to generate translated notifications\n * @param platform - filter notifications for specific platforms ('extension' | 'mobile')\n * @param env - the environment to use for the API call\n * @returns An array of {@link NormalisedAPINotification}. Returns an empty array on transport or parse errors.\n */\nexport async function getAPINotifications(\n bearerToken: string,\n addresses: string[],\n locale: string,\n platform: 'extension' | 'mobile',\n env: ENV = 'prd',\n): Promise<NormalisedAPINotification[]> {\n if (addresses.length === 0) {\n return [];\n }\n\n type RequestBody =\n Schema.paths['/api/v3/notifications']['post']['requestBody']['content']['application/json'];\n type APIResponse =\n Schema.paths['/api/v3/notifications']['post']['responses']['200']['content']['application/json'];\n\n const body: RequestBody = {\n addresses: addresses.map((addr) => addr.toLowerCase()),\n locale,\n platform,\n };\n const notifications = await makeApiCall(\n bearerToken,\n NOTIFICATION_API_LIST_ENDPOINT(env),\n 'POST',\n body,\n )\n .then<APIResponse | null>((response) =>\n response.ok ? response.json() : null,\n )\n .catch(() => null);\n\n // Transform and sort notifications\n const transformedNotifications = notifications\n ?.map((notification): UnprocessedRawNotification | undefined => {\n if (!notification.notification_type) {\n return undefined;\n }\n\n try {\n return toRawAPINotification(notification);\n } catch {\n return undefined;\n }\n })\n .filter((item): item is NormalisedAPINotification => Boolean(item));\n\n return transformedNotifications ?? [];\n}\n\n/**\n * Marks the specified notifications as read.\n * This method sends a POST request to the notifications service to mark the provided notification IDs as read.\n * If the operation is successful, it completes without error. If the operation fails, it throws an error with details.\n *\n * @param bearerToken - The JSON Web Token used for authentication in the API call.\n * @param notificationIds - An array of notification IDs to be marked as read.\n * @param env - the environment to use for the API call\n * @returns A promise that resolves to void. The promise will reject if there's an error during the API call or if the response status is not 200.\n */\nexport async function markNotificationsAsRead(\n bearerToken: string,\n notificationIds: string[],\n env: ENV = 'prd',\n): Promise<void> {\n if (notificationIds.length === 0) {\n return;\n }\n\n type ResponseBody =\n Schema.paths['/api/v3/notifications/mark-as-read']['post']['requestBody']['content']['application/json'];\n const body: ResponseBody = {\n ids: notificationIds,\n };\n\n try {\n await makeApiCall(\n bearerToken,\n NOTIFICATION_API_MARK_ALL_AS_READ_ENDPOINT(env),\n 'POST',\n body,\n );\n } catch (error) {\n log.error('Error marking notifications as read:', error);\n }\n}\n"]}
|
|
@@ -24,9 +24,9 @@ export const NOTIFICATION_API = (env = 'prd') => NOTIFICATION_API_ENV[env] ?? NO
|
|
|
24
24
|
// Gets notification settings for each account provided
|
|
25
25
|
export const TRIGGER_API_NOTIFICATIONS_QUERY_ENDPOINT = (env = 'prd') => `${TRIGGER_API(env)}/api/v2/notifications/query`;
|
|
26
26
|
// Lists notifications for each address provided
|
|
27
|
-
export const NOTIFICATION_API_LIST_ENDPOINT = (env = 'prd') => `${NOTIFICATION_API(env)}/api/
|
|
27
|
+
export const NOTIFICATION_API_LIST_ENDPOINT = (env = 'prd') => `${NOTIFICATION_API(env)}/api/v3/notifications`;
|
|
28
28
|
// Marks notifications as read
|
|
29
|
-
export const NOTIFICATION_API_MARK_ALL_AS_READ_ENDPOINT = (env = 'prd') => `${NOTIFICATION_API(env)}/api/
|
|
29
|
+
export const NOTIFICATION_API_MARK_ALL_AS_READ_ENDPOINT = (env = 'prd') => `${NOTIFICATION_API(env)}/api/v3/notifications/mark-as-read`;
|
|
30
30
|
/**
|
|
31
31
|
* fetches notification config (accounts enabled vs disabled)
|
|
32
32
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-notifications.mjs","sourceRoot":"","sources":["../../../src/NotificationServicesController/services/api-notifications.ts"],"names":[],"mappings":"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","sourcesContent":["import log from 'loglevel';\n\nimport { toRawAPINotification } from '../../shared/to-raw-notification';\nimport type {\n NormalisedAPINotification,\n Schema,\n UnprocessedRawNotification,\n} from '../types/notification-api';\nimport { makeApiCall } from '../utils/utils';\nimport { notificationsConfigCache } from './notification-config-cache';\n\nexport type ENV = 'prd' | 'uat' | 'dev';\n\nconst TRIGGER_API_ENV = {\n dev: 'https://trigger.dev-api.cx.metamask.io',\n uat: 'https://trigger.uat-api.cx.metamask.io',\n prd: 'https://trigger.api.cx.metamask.io',\n} satisfies Record<ENV, string>;\n\nexport const TRIGGER_API = (env: ENV = 'prd'): string =>\n TRIGGER_API_ENV[env] ?? TRIGGER_API_ENV.prd;\n\nconst NOTIFICATION_API_ENV = {\n dev: 'https://notification.dev-api.cx.metamask.io',\n uat: 'https://notification.uat-api.cx.metamask.io',\n prd: 'https://notification.api.cx.metamask.io',\n};\n\nexport const NOTIFICATION_API = (env: ENV = 'prd'): string =>\n NOTIFICATION_API_ENV[env] ?? NOTIFICATION_API_ENV.prd;\n\n// Gets notification settings for each account provided\nexport const TRIGGER_API_NOTIFICATIONS_QUERY_ENDPOINT = (\n env: ENV = 'prd',\n): string => `${TRIGGER_API(env)}/api/v2/notifications/query`;\n\n// Lists notifications for each address provided\nexport const NOTIFICATION_API_LIST_ENDPOINT = (env: ENV = 'prd'): string =>\n `${NOTIFICATION_API(env)}/api/
|
|
1
|
+
{"version":3,"file":"api-notifications.mjs","sourceRoot":"","sources":["../../../src/NotificationServicesController/services/api-notifications.ts"],"names":[],"mappings":"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","sourcesContent":["import log from 'loglevel';\n\nimport { toRawAPINotification } from '../../shared/to-raw-notification';\nimport type {\n NormalisedAPINotification,\n Schema,\n UnprocessedRawNotification,\n} from '../types/notification-api';\nimport { makeApiCall } from '../utils/utils';\nimport { notificationsConfigCache } from './notification-config-cache';\n\nexport type ENV = 'prd' | 'uat' | 'dev';\n\nconst TRIGGER_API_ENV = {\n dev: 'https://trigger.dev-api.cx.metamask.io',\n uat: 'https://trigger.uat-api.cx.metamask.io',\n prd: 'https://trigger.api.cx.metamask.io',\n} satisfies Record<ENV, string>;\n\nexport const TRIGGER_API = (env: ENV = 'prd'): string =>\n TRIGGER_API_ENV[env] ?? TRIGGER_API_ENV.prd;\n\nconst NOTIFICATION_API_ENV = {\n dev: 'https://notification.dev-api.cx.metamask.io',\n uat: 'https://notification.uat-api.cx.metamask.io',\n prd: 'https://notification.api.cx.metamask.io',\n};\n\nexport const NOTIFICATION_API = (env: ENV = 'prd'): string =>\n NOTIFICATION_API_ENV[env] ?? NOTIFICATION_API_ENV.prd;\n\n// Gets notification settings for each account provided\nexport const TRIGGER_API_NOTIFICATIONS_QUERY_ENDPOINT = (\n env: ENV = 'prd',\n): string => `${TRIGGER_API(env)}/api/v2/notifications/query`;\n\n// Lists notifications for each address provided\nexport const NOTIFICATION_API_LIST_ENDPOINT = (env: ENV = 'prd'): string =>\n `${NOTIFICATION_API(env)}/api/v3/notifications`;\n\n// Marks notifications as read\nexport const NOTIFICATION_API_MARK_ALL_AS_READ_ENDPOINT = (\n env: ENV = 'prd',\n): string => `${NOTIFICATION_API(env)}/api/v3/notifications/mark-as-read`;\n\n/**\n * fetches notification config (accounts enabled vs disabled)\n *\n * @param bearerToken - jwt\n * @param addresses - list of addresses to check\n * @param env - the environment to use for the API call\n * NOTE the API will return addresses config with false if they have not been created before.\n * NOTE this is cached for 1s to prevent multiple update calls\n * @returns object of notification config, or null if missing\n */\nexport async function getNotificationsApiConfigCached(\n bearerToken: string,\n addresses: string[],\n env: ENV = 'prd',\n): Promise<{ address: string; enabled: boolean }[]> {\n if (addresses.length === 0) {\n return [];\n }\n\n const normalizedAddresses = addresses.map((addr) => addr.toLowerCase());\n\n const cached = notificationsConfigCache.get(normalizedAddresses);\n if (cached) {\n return cached;\n }\n\n type RequestBody = { address: string }[];\n type Response = { address: string; enabled: boolean }[];\n const body: RequestBody = normalizedAddresses.map((address) => ({ address }));\n const apiResponse = await makeApiCall(\n bearerToken,\n TRIGGER_API_NOTIFICATIONS_QUERY_ENDPOINT(env),\n 'POST',\n body,\n )\n .then<Response | null>((response) => (response.ok ? response.json() : null))\n .catch(() => null);\n\n const result = apiResponse ?? [];\n\n if (result.length > 0) {\n notificationsConfigCache.set(result);\n }\n\n return result;\n}\n\n/**\n * Fetches on-chain notifications for the given addresses\n *\n * @param bearerToken - The JSON Web Token used for authentication in the API call.\n * @param addresses - List of addresses\n * @param locale - to generate translated notifications\n * @param platform - filter notifications for specific platforms ('extension' | 'mobile')\n * @param env - the environment to use for the API call\n * @returns An array of {@link NormalisedAPINotification}. Returns an empty array on transport or parse errors.\n */\nexport async function getAPINotifications(\n bearerToken: string,\n addresses: string[],\n locale: string,\n platform: 'extension' | 'mobile',\n env: ENV = 'prd',\n): Promise<NormalisedAPINotification[]> {\n if (addresses.length === 0) {\n return [];\n }\n\n type RequestBody =\n Schema.paths['/api/v3/notifications']['post']['requestBody']['content']['application/json'];\n type APIResponse =\n Schema.paths['/api/v3/notifications']['post']['responses']['200']['content']['application/json'];\n\n const body: RequestBody = {\n addresses: addresses.map((addr) => addr.toLowerCase()),\n locale,\n platform,\n };\n const notifications = await makeApiCall(\n bearerToken,\n NOTIFICATION_API_LIST_ENDPOINT(env),\n 'POST',\n body,\n )\n .then<APIResponse | null>((response) =>\n response.ok ? response.json() : null,\n )\n .catch(() => null);\n\n // Transform and sort notifications\n const transformedNotifications = notifications\n ?.map((notification): UnprocessedRawNotification | undefined => {\n if (!notification.notification_type) {\n return undefined;\n }\n\n try {\n return toRawAPINotification(notification);\n } catch {\n return undefined;\n }\n })\n .filter((item): item is NormalisedAPINotification => Boolean(item));\n\n return transformedNotifications ?? [];\n}\n\n/**\n * Marks the specified notifications as read.\n * This method sends a POST request to the notifications service to mark the provided notification IDs as read.\n * If the operation is successful, it completes without error. If the operation fails, it throws an error with details.\n *\n * @param bearerToken - The JSON Web Token used for authentication in the API call.\n * @param notificationIds - An array of notification IDs to be marked as read.\n * @param env - the environment to use for the API call\n * @returns A promise that resolves to void. The promise will reject if there's an error during the API call or if the response status is not 200.\n */\nexport async function markNotificationsAsRead(\n bearerToken: string,\n notificationIds: string[],\n env: ENV = 'prd',\n): Promise<void> {\n if (notificationIds.length === 0) {\n return;\n }\n\n type ResponseBody =\n Schema.paths['/api/v3/notifications/mark-as-read']['post']['requestBody']['content']['application/json'];\n const body: ResponseBody = {\n ids: notificationIds,\n };\n\n try {\n await makeApiCall(\n bearerToken,\n NOTIFICATION_API_MARK_ALL_AS_READ_ENDPOINT(env),\n 'POST',\n body,\n );\n } catch (error) {\n log.error('Error marking notifications as read:', error);\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notification-api.cjs","sourceRoot":"","sources":["../../../../src/NotificationServicesController/types/notification-api/notification-api.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"notification-api.cjs","sourceRoot":"","sources":["../../../../src/NotificationServicesController/types/notification-api/notification-api.ts"],"names":[],"mappings":"","sourcesContent":["import type { TRIGGER_TYPES } from '../../constants/notification-schema';\nimport type { Compute } from '../type-utils';\n// Types derived from external Notification API schema - naming follows API conventions\n/* eslint-disable @typescript-eslint/naming-convention */\nimport type { components } from './schema';\n\nexport type Data_MetamaskSwapCompleted =\n components['schemas']['Data_MetamaskSwapCompleted'];\nexport type Data_LidoStakeReadyToBeWithdrawn =\n components['schemas']['Data_LidoStakeReadyToBeWithdrawn'];\nexport type Data_LidoStakeCompleted =\n components['schemas']['Data_LidoStakeCompleted'];\nexport type Data_LidoWithdrawalRequested =\n components['schemas']['Data_LidoWithdrawalRequested'];\nexport type Data_LidoWithdrawalCompleted =\n components['schemas']['Data_LidoWithdrawalCompleted'];\nexport type Data_RocketPoolStakeCompleted =\n components['schemas']['Data_RocketPoolStakeCompleted'];\nexport type Data_RocketPoolUnstakeCompleted =\n components['schemas']['Data_RocketPoolUnstakeCompleted'];\nexport type Data_ETHSent = components['schemas']['Data_ETHSent'];\nexport type Data_ETHReceived = components['schemas']['Data_ETHReceived'];\nexport type Data_ERC20Sent = components['schemas']['Data_ERC20Sent'];\nexport type Data_ERC20Received = components['schemas']['Data_ERC20Received'];\nexport type Data_ERC721Sent = components['schemas']['Data_ERC721Sent'];\nexport type Data_ERC721Received = components['schemas']['Data_ERC721Received'];\nexport type NetworkMetadata = components['schemas']['NetworkMetadata'];\nexport type BlockExplorer = components['schemas']['BlockExplorer'];\n\ntype Notification = components['schemas']['NotificationOutputV3'][number];\ntype PlatformNotification = Extract<\n Notification,\n { notification_type: 'platform' }\n>;\ntype OnChainNotification = Extract<\n Notification,\n { notification_type: 'on-chain' }\n>;\n\ntype ConvertToEnum<Kind> = {\n [K in TRIGGER_TYPES]: Kind extends `${K}` ? K : never;\n}[TRIGGER_TYPES];\n\n/**\n * Type-Computation.\n * Adds a `type` field to on-chain notifications for easier enum checking.\n * Preserves the original nested payload structure.\n */\ntype NormalizeOnChainNotification<\n N extends OnChainNotification = OnChainNotification,\n NotificationDataKinds extends string = NonNullable<\n N['payload']['data']\n >['kind'],\n> = {\n [K in NotificationDataKinds]: Compute<\n Omit<N, 'payload'> & {\n type: ConvertToEnum<K>;\n payload: Compute<\n Omit<N['payload'], 'data'> & {\n data: Extract<NonNullable<N['payload']['data']>, { kind: K }>;\n }\n >;\n }\n >;\n}[NotificationDataKinds];\n\n/**\n * Type-Computation.\n * Adds a `type` field to platform notifications for easier enum checking.\n * Preserves the original nested payload structure.\n */\ntype NormalizePlatformNotification<\n N extends PlatformNotification = PlatformNotification,\n NotificationKind extends string = N['notification_type'],\n> = {\n [K in NotificationKind]: Compute<\n N & {\n type: ConvertToEnum<K>;\n }\n >;\n}[NotificationKind];\n\nexport type OnChainRawNotification = Compute<\n NormalizeOnChainNotification<OnChainNotification>\n>;\n\nexport type PlatformRawNotification = Compute<\n NormalizePlatformNotification<PlatformNotification>\n>;\n\nexport type UnprocessedRawNotification = Notification;\n\nexport type NormalisedAPINotification =\n | OnChainRawNotification\n | PlatformRawNotification;\n\nexport type OnChainRawNotificationsWithNetworkFields = Extract<\n OnChainRawNotification,\n { payload: { data: { network_fee: unknown } } }\n>;\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { TRIGGER_TYPES } from "../../constants/notification-schema.cjs";
|
|
1
|
+
import type { TRIGGER_TYPES } from "../../constants/notification-schema.cjs";
|
|
2
2
|
import type { Compute } from "../type-utils.cjs";
|
|
3
3
|
import type { components } from "./schema.cjs";
|
|
4
4
|
export type Data_MetamaskSwapCompleted = components['schemas']['Data_MetamaskSwapCompleted'];
|
|
@@ -16,9 +16,13 @@ export type Data_ERC721Sent = components['schemas']['Data_ERC721Sent'];
|
|
|
16
16
|
export type Data_ERC721Received = components['schemas']['Data_ERC721Received'];
|
|
17
17
|
export type NetworkMetadata = components['schemas']['NetworkMetadata'];
|
|
18
18
|
export type BlockExplorer = components['schemas']['BlockExplorer'];
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
19
|
+
type Notification = components['schemas']['NotificationOutputV3'][number];
|
|
20
|
+
type PlatformNotification = Extract<Notification, {
|
|
21
|
+
notification_type: 'platform';
|
|
22
|
+
}>;
|
|
23
|
+
type OnChainNotification = Extract<Notification, {
|
|
24
|
+
notification_type: 'on-chain';
|
|
25
|
+
}>;
|
|
22
26
|
type ConvertToEnum<Kind> = {
|
|
23
27
|
[K in TRIGGER_TYPES]: Kind extends `${K}` ? K : never;
|
|
24
28
|
}[TRIGGER_TYPES];
|
|
@@ -42,11 +46,14 @@ type NormalizeOnChainNotification<N extends OnChainNotification = OnChainNotific
|
|
|
42
46
|
* Adds a `type` field to platform notifications for easier enum checking.
|
|
43
47
|
* Preserves the original nested payload structure.
|
|
44
48
|
*/
|
|
45
|
-
type NormalizePlatformNotification<N extends PlatformNotification = PlatformNotification
|
|
46
|
-
|
|
47
|
-
|
|
49
|
+
type NormalizePlatformNotification<N extends PlatformNotification = PlatformNotification, NotificationKind extends string = N['notification_type']> = {
|
|
50
|
+
[K in NotificationKind]: Compute<N & {
|
|
51
|
+
type: ConvertToEnum<K>;
|
|
52
|
+
}>;
|
|
53
|
+
}[NotificationKind];
|
|
48
54
|
export type OnChainRawNotification = Compute<NormalizeOnChainNotification<OnChainNotification>>;
|
|
49
55
|
export type PlatformRawNotification = Compute<NormalizePlatformNotification<PlatformNotification>>;
|
|
56
|
+
export type UnprocessedRawNotification = Notification;
|
|
50
57
|
export type NormalisedAPINotification = OnChainRawNotification | PlatformRawNotification;
|
|
51
58
|
export type OnChainRawNotificationsWithNetworkFields = Extract<OnChainRawNotification, {
|
|
52
59
|
payload: {
|
package/dist/NotificationServicesController/types/notification-api/notification-api.d.cts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notification-api.d.cts","sourceRoot":"","sources":["../../../../src/NotificationServicesController/types/notification-api/notification-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,gDAA4C;
|
|
1
|
+
{"version":3,"file":"notification-api.d.cts","sourceRoot":"","sources":["../../../../src/NotificationServicesController/types/notification-api/notification-api.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { TRIGGER_TYPES } from "../../constants/notification-schema.mjs";
|
|
1
|
+
import type { TRIGGER_TYPES } from "../../constants/notification-schema.mjs";
|
|
2
2
|
import type { Compute } from "../type-utils.mjs";
|
|
3
3
|
import type { components } from "./schema.mjs";
|
|
4
4
|
export type Data_MetamaskSwapCompleted = components['schemas']['Data_MetamaskSwapCompleted'];
|
|
@@ -16,9 +16,13 @@ export type Data_ERC721Sent = components['schemas']['Data_ERC721Sent'];
|
|
|
16
16
|
export type Data_ERC721Received = components['schemas']['Data_ERC721Received'];
|
|
17
17
|
export type NetworkMetadata = components['schemas']['NetworkMetadata'];
|
|
18
18
|
export type BlockExplorer = components['schemas']['BlockExplorer'];
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
19
|
+
type Notification = components['schemas']['NotificationOutputV3'][number];
|
|
20
|
+
type PlatformNotification = Extract<Notification, {
|
|
21
|
+
notification_type: 'platform';
|
|
22
|
+
}>;
|
|
23
|
+
type OnChainNotification = Extract<Notification, {
|
|
24
|
+
notification_type: 'on-chain';
|
|
25
|
+
}>;
|
|
22
26
|
type ConvertToEnum<Kind> = {
|
|
23
27
|
[K in TRIGGER_TYPES]: Kind extends `${K}` ? K : never;
|
|
24
28
|
}[TRIGGER_TYPES];
|
|
@@ -42,11 +46,14 @@ type NormalizeOnChainNotification<N extends OnChainNotification = OnChainNotific
|
|
|
42
46
|
* Adds a `type` field to platform notifications for easier enum checking.
|
|
43
47
|
* Preserves the original nested payload structure.
|
|
44
48
|
*/
|
|
45
|
-
type NormalizePlatformNotification<N extends PlatformNotification = PlatformNotification
|
|
46
|
-
|
|
47
|
-
|
|
49
|
+
type NormalizePlatformNotification<N extends PlatformNotification = PlatformNotification, NotificationKind extends string = N['notification_type']> = {
|
|
50
|
+
[K in NotificationKind]: Compute<N & {
|
|
51
|
+
type: ConvertToEnum<K>;
|
|
52
|
+
}>;
|
|
53
|
+
}[NotificationKind];
|
|
48
54
|
export type OnChainRawNotification = Compute<NormalizeOnChainNotification<OnChainNotification>>;
|
|
49
55
|
export type PlatformRawNotification = Compute<NormalizePlatformNotification<PlatformNotification>>;
|
|
56
|
+
export type UnprocessedRawNotification = Notification;
|
|
50
57
|
export type NormalisedAPINotification = OnChainRawNotification | PlatformRawNotification;
|
|
51
58
|
export type OnChainRawNotificationsWithNetworkFields = Extract<OnChainRawNotification, {
|
|
52
59
|
payload: {
|
package/dist/NotificationServicesController/types/notification-api/notification-api.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notification-api.d.mts","sourceRoot":"","sources":["../../../../src/NotificationServicesController/types/notification-api/notification-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,gDAA4C;
|
|
1
|
+
{"version":3,"file":"notification-api.d.mts","sourceRoot":"","sources":["../../../../src/NotificationServicesController/types/notification-api/notification-api.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
|
|
1
|
+
export {};
|
|
2
2
|
//# sourceMappingURL=notification-api.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notification-api.mjs","sourceRoot":"","sources":["../../../../src/NotificationServicesController/types/notification-api/notification-api.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"notification-api.mjs","sourceRoot":"","sources":["../../../../src/NotificationServicesController/types/notification-api/notification-api.ts"],"names":[],"mappings":"","sourcesContent":["import type { TRIGGER_TYPES } from '../../constants/notification-schema';\nimport type { Compute } from '../type-utils';\n// Types derived from external Notification API schema - naming follows API conventions\n/* eslint-disable @typescript-eslint/naming-convention */\nimport type { components } from './schema';\n\nexport type Data_MetamaskSwapCompleted =\n components['schemas']['Data_MetamaskSwapCompleted'];\nexport type Data_LidoStakeReadyToBeWithdrawn =\n components['schemas']['Data_LidoStakeReadyToBeWithdrawn'];\nexport type Data_LidoStakeCompleted =\n components['schemas']['Data_LidoStakeCompleted'];\nexport type Data_LidoWithdrawalRequested =\n components['schemas']['Data_LidoWithdrawalRequested'];\nexport type Data_LidoWithdrawalCompleted =\n components['schemas']['Data_LidoWithdrawalCompleted'];\nexport type Data_RocketPoolStakeCompleted =\n components['schemas']['Data_RocketPoolStakeCompleted'];\nexport type Data_RocketPoolUnstakeCompleted =\n components['schemas']['Data_RocketPoolUnstakeCompleted'];\nexport type Data_ETHSent = components['schemas']['Data_ETHSent'];\nexport type Data_ETHReceived = components['schemas']['Data_ETHReceived'];\nexport type Data_ERC20Sent = components['schemas']['Data_ERC20Sent'];\nexport type Data_ERC20Received = components['schemas']['Data_ERC20Received'];\nexport type Data_ERC721Sent = components['schemas']['Data_ERC721Sent'];\nexport type Data_ERC721Received = components['schemas']['Data_ERC721Received'];\nexport type NetworkMetadata = components['schemas']['NetworkMetadata'];\nexport type BlockExplorer = components['schemas']['BlockExplorer'];\n\ntype Notification = components['schemas']['NotificationOutputV3'][number];\ntype PlatformNotification = Extract<\n Notification,\n { notification_type: 'platform' }\n>;\ntype OnChainNotification = Extract<\n Notification,\n { notification_type: 'on-chain' }\n>;\n\ntype ConvertToEnum<Kind> = {\n [K in TRIGGER_TYPES]: Kind extends `${K}` ? K : never;\n}[TRIGGER_TYPES];\n\n/**\n * Type-Computation.\n * Adds a `type` field to on-chain notifications for easier enum checking.\n * Preserves the original nested payload structure.\n */\ntype NormalizeOnChainNotification<\n N extends OnChainNotification = OnChainNotification,\n NotificationDataKinds extends string = NonNullable<\n N['payload']['data']\n >['kind'],\n> = {\n [K in NotificationDataKinds]: Compute<\n Omit<N, 'payload'> & {\n type: ConvertToEnum<K>;\n payload: Compute<\n Omit<N['payload'], 'data'> & {\n data: Extract<NonNullable<N['payload']['data']>, { kind: K }>;\n }\n >;\n }\n >;\n}[NotificationDataKinds];\n\n/**\n * Type-Computation.\n * Adds a `type` field to platform notifications for easier enum checking.\n * Preserves the original nested payload structure.\n */\ntype NormalizePlatformNotification<\n N extends PlatformNotification = PlatformNotification,\n NotificationKind extends string = N['notification_type'],\n> = {\n [K in NotificationKind]: Compute<\n N & {\n type: ConvertToEnum<K>;\n }\n >;\n}[NotificationKind];\n\nexport type OnChainRawNotification = Compute<\n NormalizeOnChainNotification<OnChainNotification>\n>;\n\nexport type PlatformRawNotification = Compute<\n NormalizePlatformNotification<PlatformNotification>\n>;\n\nexport type UnprocessedRawNotification = Notification;\n\nexport type NormalisedAPINotification =\n | OnChainRawNotification\n | PlatformRawNotification;\n\nexport type OnChainRawNotificationsWithNetworkFields = Extract<\n OnChainRawNotification,\n { payload: { data: { network_fee: unknown } } }\n>;\n"]}
|