@metamask-previews/notification-services-controller 28.0.1-preview-5d09c14 → 28.0.1-preview-95a403d7b

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 CHANGED
@@ -9,10 +9,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
9
9
 
10
10
  ### Changed
11
11
 
12
- - **BREAKING:** Remove `createOnChainPushNotificationMessage`, `createOnChainPushNotificationMessages`, and the `TranslationKeys` type. Push notification copy is now provided by the Notification API via `template`, so client-side translation keys are no longer required. ([#9184](https://github.com/MetaMask/core/pull/9184))
13
- - Regenerated `schema.ts` from the latest Notification API OpenAPI spec. ([#9184](https://github.com/MetaMask/core/pull/9184))
14
- - `OnChainNotificationV4` now includes optional `template` (`OnChainTemplate`: required `title`, optional `body`).
15
- - `LocalizedNotificationCTA` no longer includes `content`; it is `link` only.
16
12
  - Bump `@metamask/profile-sync-controller` from `^32.0.0` to `^32.1.1` ([#10184](https://github.com/MetaMask/core/pull/10184), [#10220](https://github.com/MetaMask/core/pull/10220))
17
13
  - Bump `@metamask/utils` from `^11.12.0` to `^12.0.0` ([#10192](https://github.com/MetaMask/core/pull/10192))
18
14
 
@@ -1 +1 @@
1
- {"version":3,"file":"mock-raw-notifications.d.ts","sourceRoot":"","sources":["../../../src/NotificationServicesController/mocks/mock-raw-notifications.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+CAA+C,CAAC;AAE/F;;;;GAIG;AACH,wBAAgB,6BAA6B,IAAI,yBAAyB,CAyCzE;AAED;;;;GAIG;AACH,wBAAgB,iCAAiC,IAAI,yBAAyB,CAyC7E;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,IAAI,yBAAyB,CA+C3E;AAED;;;;GAIG;AACH,wBAAgB,mCAAmC,IAAI,yBAAyB,CA+C/E;AAED;;;;GAIG;AACH,wBAAgB,gCAAgC,IAAI,yBAAyB,CAkD5E;AAED;;;;GAIG;AACH,wBAAgB,oCAAoC,IAAI,yBAAyB,CAkDhF;AAED;;;;GAIG;AACH,wBAAgB,iCAAiC,IAAI,yBAAyB,CAkD7E;AAED;;;;GAIG;AACH,wBAAgB,qCAAqC,IAAI,yBAAyB,CAkDjF;AAED;;;;GAIG;AACH,wBAAgB,4CAA4C,IAAI,yBAAyB,CAwDxF;AAED;;;;GAIG;AACH,wBAAgB,8CAA8C,IAAI,yBAAyB,CAuD1F;AAED;;;;GAIG;AACH,wBAAgB,gDAAgD,IAAI,yBAAyB,CAuD5F;AAED;;;;GAIG;AACH,wBAAgB,wCAAwC,IAAI,yBAAyB,CAuDpF;AAED;;;;GAIG;AACH,wBAAgB,6CAA6C,IAAI,yBAAyB,CAuDzF;AAED;;;;GAIG;AACH,wBAAgB,6CAA6C,IAAI,yBAAyB,CAuDzF;AAED;;;;GAIG;AACH,wBAAgB,4CAA4C,IAAI,yBAAyB,CA0CxF;AAED;;;;GAIG;AACH,wBAAgB,8BAA8B,IAAI,yBAAyB,CAqB1E;AAED;;;;GAIG;AACH,wBAAgB,iCAAiC,IAAI,yBAAyB,EAAE,CAM/E"}
1
+ {"version":3,"file":"mock-raw-notifications.d.ts","sourceRoot":"","sources":["../../../src/NotificationServicesController/mocks/mock-raw-notifications.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,+CAA+C,CAAC;AAE/F;;;;GAIG;AACH,wBAAgB,6BAA6B,IAAI,yBAAyB,CAwCzE;AAED;;;;GAIG;AACH,wBAAgB,iCAAiC,IAAI,yBAAyB,CAwC7E;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,IAAI,yBAAyB,CA8C3E;AAED;;;;GAIG;AACH,wBAAgB,mCAAmC,IAAI,yBAAyB,CA8C/E;AAED;;;;GAIG;AACH,wBAAgB,gCAAgC,IAAI,yBAAyB,CAiD5E;AAED;;;;GAIG;AACH,wBAAgB,oCAAoC,IAAI,yBAAyB,CAiDhF;AAED;;;;GAIG;AACH,wBAAgB,iCAAiC,IAAI,yBAAyB,CAiD7E;AAED;;;;GAIG;AACH,wBAAgB,qCAAqC,IAAI,yBAAyB,CAiDjF;AAED;;;;GAIG;AACH,wBAAgB,4CAA4C,IAAI,yBAAyB,CAuDxF;AAED;;;;GAIG;AACH,wBAAgB,8CAA8C,IAAI,yBAAyB,CAsD1F;AAED;;;;GAIG;AACH,wBAAgB,gDAAgD,IAAI,yBAAyB,CAsD5F;AAED;;;;GAIG;AACH,wBAAgB,wCAAwC,IAAI,yBAAyB,CAsDpF;AAED;;;;GAIG;AACH,wBAAgB,6CAA6C,IAAI,yBAAyB,CAsDzF;AAED;;;;GAIG;AACH,wBAAgB,6CAA6C,IAAI,yBAAyB,CAsDzF;AAED;;;;GAIG;AACH,wBAAgB,4CAA4C,IAAI,yBAAyB,CAyCxF;AAED;;;;GAIG;AACH,wBAAgB,8BAA8B,IAAI,yBAAyB,CAqB1E;AAED;;;;GAIG;AACH,wBAAgB,iCAAiC,IAAI,yBAAyB,EAAE,CAM/E"}
@@ -8,7 +8,6 @@ export function createMockNotificationEthSent() {
8
8
  const mockNotification = {
9
9
  type: TRIGGER_TYPES.ETH_SENT,
10
10
  notification_type: 'wallet_activity',
11
- category: 'wallet_activity',
12
11
  notification_subtype: 'eth_sent',
13
12
  id: '3fa85f64-5717-4562-b3fc-2c963f66afa7',
14
13
  unread: true,
@@ -53,7 +52,6 @@ export function createMockNotificationEthReceived() {
53
52
  const mockNotification = {
54
53
  type: TRIGGER_TYPES.ETH_RECEIVED,
55
54
  notification_type: 'wallet_activity',
56
- category: 'wallet_activity',
57
55
  notification_subtype: 'eth_received',
58
56
  id: '3fa85f64-5717-4562-b3fc-2c963f66afa8',
59
57
  unread: true,
@@ -98,7 +96,6 @@ export function createMockNotificationERC20Sent() {
98
96
  const mockNotification = {
99
97
  type: TRIGGER_TYPES.ERC20_SENT,
100
98
  notification_type: 'wallet_activity',
101
- category: 'wallet_activity',
102
99
  notification_subtype: 'erc20_sent',
103
100
  id: '3fa85f64-5717-4562-b3fc-2c963f66afa9',
104
101
  unread: true,
@@ -148,7 +145,6 @@ export function createMockNotificationERC20Received() {
148
145
  const mockNotification = {
149
146
  type: TRIGGER_TYPES.ERC20_RECEIVED,
150
147
  notification_type: 'wallet_activity',
151
- category: 'wallet_activity',
152
148
  notification_subtype: 'erc20_received',
153
149
  id: '3fa85f64-5717-4562-b3fc-2c963f66afa6',
154
150
  unread: true,
@@ -198,7 +194,6 @@ export function createMockNotificationERC721Sent() {
198
194
  const mockNotification = {
199
195
  type: TRIGGER_TYPES.ERC721_SENT,
200
196
  notification_type: 'wallet_activity',
201
- category: 'wallet_activity',
202
197
  notification_subtype: 'erc721_sent',
203
198
  id: 'a4193058-9814-537e-9df4-79dcac727fb6',
204
199
  created_at: '2023-11-15T11:08:17.895407Z',
@@ -250,7 +245,6 @@ export function createMockNotificationERC721Received() {
250
245
  const mockNotification = {
251
246
  type: TRIGGER_TYPES.ERC721_RECEIVED,
252
247
  notification_type: 'wallet_activity',
253
- category: 'wallet_activity',
254
248
  notification_subtype: 'erc721_received',
255
249
  id: '00a79d24-befa-57ed-a55a-9eb8696e1654',
256
250
  created_at: '2023-11-14T17:40:52.319281Z',
@@ -302,7 +296,6 @@ export function createMockNotificationERC1155Sent() {
302
296
  const mockNotification = {
303
297
  type: TRIGGER_TYPES.ERC1155_SENT,
304
298
  notification_type: 'wallet_activity',
305
- category: 'wallet_activity',
306
299
  notification_subtype: 'erc1155_sent',
307
300
  id: 'a09ff9d1-623a-52ab-a3d4-c7c8c9a58362',
308
301
  created_at: '2023-11-20T20:44:10.110706Z',
@@ -354,7 +347,6 @@ export function createMockNotificationERC1155Received() {
354
347
  const mockNotification = {
355
348
  type: TRIGGER_TYPES.ERC1155_RECEIVED,
356
349
  notification_type: 'wallet_activity',
357
- category: 'wallet_activity',
358
350
  notification_subtype: 'erc1155_received',
359
351
  id: 'b6b93c84-e8dc-54ed-9396-7ea50474843a',
360
352
  created_at: '2023-11-20T20:44:10.110706Z',
@@ -406,7 +398,6 @@ export function createMockNotificationMetaMaskSwapsCompleted() {
406
398
  const mockNotification = {
407
399
  type: TRIGGER_TYPES.METAMASK_SWAP_COMPLETED,
408
400
  notification_type: 'wallet_activity',
409
- category: 'wallet_activity',
410
401
  notification_subtype: 'metamask_swap_completed',
411
402
  id: '7ddfe6a1-ac52-5ffe-aa40-f04242db4b8b',
412
403
  created_at: '2023-10-18T13:58:49.854596Z',
@@ -464,7 +455,6 @@ export function createMockNotificationRocketPoolStakeCompleted() {
464
455
  const mockNotification = {
465
456
  type: TRIGGER_TYPES.ROCKETPOOL_STAKE_COMPLETED,
466
457
  notification_type: 'wallet_activity',
467
- category: 'wallet_activity',
468
458
  notification_subtype: 'rocketpool_stake_completed',
469
459
  id: 'c2a2f225-b2fb-5d6c-ba56-e27a5c71ffb9',
470
460
  created_at: '2023-11-20T12:02:48.796824Z',
@@ -521,7 +511,6 @@ export function createMockNotificationRocketPoolUnStakeCompleted() {
521
511
  const mockNotification = {
522
512
  type: TRIGGER_TYPES.ROCKETPOOL_UNSTAKE_COMPLETED,
523
513
  notification_type: 'wallet_activity',
524
- category: 'wallet_activity',
525
514
  notification_subtype: 'rocketpool_unstake_completed',
526
515
  id: '291ec897-f569-4837-b6c0-21001b198dff',
527
516
  created_at: '2023-10-19T13:11:10.623042Z',
@@ -578,7 +567,6 @@ export function createMockNotificationLidoStakeCompleted() {
578
567
  const mockNotification = {
579
568
  type: TRIGGER_TYPES.LIDO_STAKE_COMPLETED,
580
569
  notification_type: 'wallet_activity',
581
- category: 'wallet_activity',
582
570
  notification_subtype: 'lido_stake_completed',
583
571
  id: 'ec10d66a-f78f-461f-83c9-609aada8cc50',
584
572
  created_at: '2023-11-02T22:28:49.970865Z',
@@ -635,7 +623,6 @@ export function createMockNotificationLidoWithdrawalRequested() {
635
623
  const mockNotification = {
636
624
  type: TRIGGER_TYPES.LIDO_WITHDRAWAL_REQUESTED,
637
625
  notification_type: 'wallet_activity',
638
- category: 'wallet_activity',
639
626
  notification_subtype: 'lido_withdrawal_requested',
640
627
  id: 'ef003925-3379-4ba7-9e2d-8218690cadc9',
641
628
  created_at: '2023-10-18T15:04:02.482526Z',
@@ -692,7 +679,6 @@ export function createMockNotificationLidoWithdrawalCompleted() {
692
679
  const mockNotification = {
693
680
  type: TRIGGER_TYPES.LIDO_WITHDRAWAL_COMPLETED,
694
681
  notification_type: 'wallet_activity',
695
- category: 'wallet_activity',
696
682
  notification_subtype: 'lido_withdrawal_completed',
697
683
  id: 'd73df14d-ce73-4f38-bad3-ab028154042f',
698
684
  created_at: '2023-10-18T16:35:03.147606Z',
@@ -749,7 +735,6 @@ export function createMockNotificationLidoReadyToBeWithdrawn() {
749
735
  const mockNotification = {
750
736
  type: TRIGGER_TYPES.LIDO_STAKE_READY_TO_BE_WITHDRAWN,
751
737
  notification_type: 'wallet_activity',
752
- category: 'wallet_activity',
753
738
  notification_subtype: 'lido_stake_ready_to_be_withdrawn',
754
739
  id: 'd73df14d-ce73-4f38-bad3-ab028154042e',
755
740
  created_at: '2023-10-18T16:35:03.147606Z',
@@ -794,7 +779,6 @@ export function createMockPlatformNotification() {
794
779
  const mockNotification = {
795
780
  type: TRIGGER_TYPES.PLATFORM,
796
781
  notification_type: 'perps',
797
- category: 'trading_activity',
798
782
  notification_subtype: 'position_liquidated',
799
783
  id: '3fa85f64-5717-4562-b3fc-2c963f66afa6',
800
784
  unread: true,
@@ -804,6 +788,7 @@ export function createMockPlatformNotification() {
804
788
  title: 'This is a Platform Notification!',
805
789
  body: 'Teams can now build out their own notifications, and add an optional CTA (like this one below).',
806
790
  cta: {
791
+ content: 'Get Started',
807
792
  link: 'https://metamask.io/get-started',
808
793
  },
809
794
  },
@@ -1 +1 @@
1
- {"version":3,"file":"mock-raw-notifications.js","sourceRoot":"","sources":["../../../src/NotificationServicesController/mocks/mock-raw-notifications.ts"],"names":[],"mappings":"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","sourcesContent":["import { TRIGGER_TYPES } from '../constants/notification-schema.js';\nimport type { NormalisedAPINotification } from '../types/notification-api/notification-api.js';\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 category: '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 category: '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 category: '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 category: '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 category: '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 category: '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 category: '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 category: '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 category: '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 category: '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 category: '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 category: '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 category: '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 category: '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 category: '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 category: 'trading_activity',\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 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.js","sourceRoot":"","sources":["../../../src/NotificationServicesController/mocks/mock-raw-notifications.ts"],"names":[],"mappings":"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","sourcesContent":["import { TRIGGER_TYPES } from '../constants/notification-schema.js';\nimport type { NormalisedAPINotification } from '../types/notification-api/notification-api.js';\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"]}
@@ -16,8 +16,6 @@ export type paths = {
16
16
  /**
17
17
  * List both platform and on-chain notifications for a certain user/address(es)
18
18
  * @description Same behaviour as /api/v3/notifications, but the returned notification_type and notification_subtype are taken directly from the producer-set database fields: platform notifications expose platform_notifications.notification_type / notification_subtype, while on-chain notifications expose the constant "wallet_activity" as notification_type and notifications_part.kind as notification_subtype. Clients should distinguish the two shapes structurally (presence of "payload" for on-chain vs "template" for platform).
19
- *
20
- * Both shapes also carry a "category": the category_id of the settings category the notification_type belongs to, resolved server-side from the same manifest served by GET /api/v4/notifications/categories. It lets clients group or filter a notification list with the same taxonomy the settings screen uses, without duplicating the notification_type -> category mapping client-side.
21
19
  */
22
20
  post: {
23
21
  parameters: {
@@ -103,53 +101,6 @@ export type paths = {
103
101
  patch?: never;
104
102
  trace?: never;
105
103
  };
106
- '/api/v4/notifications/categories': {
107
- parameters: {
108
- query?: never;
109
- header?: never;
110
- path?: never;
111
- cookie?: never;
112
- };
113
- /**
114
- * List notification categories (server-driven settings manifest)
115
- * @description Read-only manifest that drives the client notification-settings UX. It is a single artifact identical for every user and platform: the client renders only the entries whose `visible_on` includes its own platform, in the order they appear in the array, and toggles the AUS preference keys listed in `aus_keys`. It ties together the AUS preference keys (user-storage), the platform notification_types, and the UX grouping, so changing the taxonomy no longer requires a client release.
116
- * Presentation (labels, descriptions, icons) is client-owned for now and keyed off `category_id`; server-side localization is a future, additive change. This endpoint is unauthenticated — it carries no per-user state.
117
- */
118
- get: {
119
- parameters: {
120
- query?: never;
121
- header?: never;
122
- path?: never;
123
- cookie?: never;
124
- };
125
- requestBody?: never;
126
- responses: {
127
- /** @description The notification categories manifest */
128
- 200: {
129
- headers: {
130
- [name: string]: unknown;
131
- };
132
- content: {
133
- 'application/json': components['schemas']['NotificationCategories'];
134
- };
135
- };
136
- /** @description Internal server error */
137
- 500: {
138
- headers: {
139
- [name: string]: unknown;
140
- };
141
- content?: never;
142
- };
143
- };
144
- };
145
- put?: never;
146
- post?: never;
147
- delete?: never;
148
- options?: never;
149
- head?: never;
150
- patch?: never;
151
- trace?: never;
152
- };
153
104
  '/api/v3/notifications': {
154
105
  parameters: {
155
106
  query?: never;
@@ -437,31 +388,6 @@ export type components = {
437
388
  * @enum {string}
438
389
  */
439
390
  AppPlatform: 'portfolio' | 'extension' | 'mobile';
440
- /** @description The full set of notification categories, in display order. Returned in its entirety to every client regardless of platform; the client renders only the entries whose `visible_on` includes its platform, in the order they appear here. */
441
- NotificationCategories: components['schemas']['NotificationCategory'][];
442
- NotificationCategory: {
443
- /**
444
- * @description Stable identifier for the category. The client keys its localized copy and icon off this value.
445
- * @example trading_activity
446
- */
447
- category_id: string;
448
- /** @description Platforms on which the client should render this category. An empty array means it is hidden everywhere but still present in the manifest (so the set of categories stays complete with respect to the platform notification_types). */
449
- visible_on: components['schemas']['AppPlatform'][];
450
- /**
451
- * @description The user-storage notification-preference keys this category toggles. The AUS key is the toggle pivot: turning the category off disables every listed key, turning it on enables them. An empty array means the category is display-only (not user-toggleable).
452
- * @example [
453
- * "perps"
454
- * ]
455
- */
456
- aus_keys: string[];
457
- /**
458
- * @description The platform notification_type values this category covers. Advisory / validation only — the client toggles `aus_keys`, not these. May be empty when a category maps to an AUS-only key (e.g. `marketing`, or the reserved on-chain `wallet_activity`) that has no platform notification_type.
459
- * @example [
460
- * "perps"
461
- * ]
462
- */
463
- notification_types: string[];
464
- };
465
391
  NotificationInputV3: {
466
392
  /** @example en-US */
467
393
  locale: string;
@@ -495,7 +421,7 @@ export type components = {
495
421
  body: string;
496
422
  };
497
423
  LocalizedNotificationCTA: {
498
- /** @description Deeplink URL. Clients open this when the notification is tapped. */
424
+ content: string;
499
425
  link: string;
500
426
  };
501
427
  OnChainNotification: {
@@ -540,11 +466,6 @@ export type components = {
540
466
  * @example perps
541
467
  */
542
468
  notification_type: string;
543
- /**
544
- * @description The `category_id` of the settings category this notification belongs to, derived server-side from `notification_type` via the manifest served by GET /api/v4/notifications/categories. Empty string when no category covers the notification_type (e.g. a type newer than the manifest); clients should treat that, and any category_id they do not know, as uncategorized.
545
- * @example trading_activity
546
- */
547
- category: string;
548
469
  /**
549
470
  * @description Producer-set platform_notifications.notification_subtype value.
550
471
  * @example position_liquidated
@@ -567,11 +488,6 @@ export type components = {
567
488
  id: string;
568
489
  /** @enum {string} */
569
490
  notification_type: 'wallet_activity';
570
- /**
571
- * @description The `category_id` of the settings category this notification belongs to, derived server-side from `notification_type` via the manifest served by GET /api/v4/notifications/categories.
572
- * @example wallet_activity
573
- */
574
- category: string;
575
491
  /**
576
492
  * @description notifications_part.kind value.
577
493
  * @example metamask_swap_completed
@@ -584,26 +500,8 @@ export type components = {
584
500
  * @example 2025-10-09T09:45:34.202Z
585
501
  */
586
502
  created_at: string;
587
- template?: components['schemas']['OnChainTemplate'];
588
503
  payload: components['schemas']['OnChainPayload'];
589
504
  };
590
- /**
591
- * @description The notification's copy, already localized into the `locale` sent with the request. This is the same text the clients used to assemble themselves from their own locale files; rendering it server-side keeps every surface (in-app, push, each client) on one set of strings.
592
- * Optional: it is absent when the server cannot render the row — a notification_subtype newer than the server, or a payload it cannot read. Clients must keep their local rendering as a fallback for those, and may drop it once this field is present for every subtype they support.
593
- * Only translated copy lives here. The amount, token name, network name, icons and timestamp are not included: clients already derive those from `payload` and render them with locale-aware, user-configured formatting.
594
- */
595
- OnChainTemplate: {
596
- /**
597
- * @description The notification headline.
598
- * @example Received from 0x5aAeb...BeAed
599
- */
600
- title: string;
601
- /**
602
- * @description Secondary line, present only for the subtypes whose description is translated copy (today lido_withdrawal_requested and lido_stake_ready_to_be_withdrawn). For every other subtype the client composes the secondary line from `payload` as before.
603
- * @example You can now withdraw your unstaked stETH
604
- */
605
- body?: string;
606
- };
607
505
  NotificationInput: {
608
506
  /** Format: address */
609
507
  address: string;
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../src/NotificationServicesController/types/notification-api/schema.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AAEH,MAAM,MAAM,KAAK,GAAG;IAClB,uBAAuB,EAAE;QACvB,UAAU,EAAE;YACV,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAChB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ;;;;;WAKG;QACH,IAAI,EAAE;YACJ,UAAU,EAAE;gBACV,KAAK,CAAC,EAAE,KAAK,CAAC;gBACd,MAAM,CAAC,EAAE,KAAK,CAAC;gBACf,IAAI,CAAC,EAAE,KAAK,CAAC;gBACb,MAAM,CAAC,EAAE,KAAK,CAAC;aAChB,CAAC;YACF,WAAW,EAAE;gBACX,OAAO,EAAE;oBACP,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC;iBAClE,CAAC;aACH,CAAC;YACF,SAAS,EAAE;gBACT,qDAAqD;gBACrD,GAAG,EAAE;oBACH,OAAO,EAAE;wBACP,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;qBACzB,CAAC;oBACF,OAAO,EAAE;wBACP,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,sBAAsB,CAAC,CAAC;qBACnE,CAAC;iBACH,CAAC;gBACF,+BAA+B;gBAC/B,GAAG,EAAE;oBACH,OAAO,EAAE;wBACP,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;qBACzB,CAAC;oBACF,OAAO,CAAC,EAAE,KAAK,CAAC;iBACjB,CAAC;gBACF,yCAAyC;gBACzC,GAAG,EAAE;oBACH,OAAO,EAAE;wBACP,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;qBACzB,CAAC;oBACF,OAAO,CAAC,EAAE,KAAK,CAAC;iBACjB,CAAC;aACH,CAAC;SACH,CAAC;QACF,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACf,CAAC;IACF,oCAAoC,EAAE;QACpC,UAAU,EAAE;YACV,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAChB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,iCAAiC;QACjC,IAAI,EAAE;YACJ,UAAU,EAAE;gBACV,KAAK,CAAC,EAAE,KAAK,CAAC;gBACd,MAAM,CAAC,EAAE,KAAK,CAAC;gBACf,IAAI,CAAC,EAAE,KAAK,CAAC;gBACb,MAAM,CAAC,EAAE,KAAK,CAAC;aAChB,CAAC;YACF,WAAW,EAAE;gBACX,OAAO,EAAE;oBACP,kBAAkB,EAAE;wBAClB,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;qBAChB,CAAC;iBACH,CAAC;aACH,CAAC;YACF,SAAS,EAAE;gBACT,6DAA6D;gBAC7D,GAAG,EAAE;oBACH,OAAO,EAAE;wBACP,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;qBACzB,CAAC;oBACF,OAAO,CAAC,EAAE,KAAK,CAAC;iBACjB,CAAC;aACH,CAAC;SACH,CAAC;QACF,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACf,CAAC;IACF,kCAAkC,EAAE;QAClC,UAAU,EAAE;YACV,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAChB,CAAC;QACF;;;;WAIG;QACH,GAAG,EAAE;YACH,UAAU,EAAE;gBACV,KAAK,CAAC,EAAE,KAAK,CAAC;gBACd,MAAM,CAAC,EAAE,KAAK,CAAC;gBACf,IAAI,CAAC,EAAE,KAAK,CAAC;gBACb,MAAM,CAAC,EAAE,KAAK,CAAC;aAChB,CAAC;YACF,WAAW,CAAC,EAAE,KAAK,CAAC;YACpB,SAAS,EAAE;gBACT,wDAAwD;gBACxD,GAAG,EAAE;oBACH,OAAO,EAAE;wBACP,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;qBACzB,CAAC;oBACF,OAAO,EAAE;wBACP,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,wBAAwB,CAAC,CAAC;qBACrE,CAAC;iBACH,CAAC;gBACF,yCAAyC;gBACzC,GAAG,EAAE;oBACH,OAAO,EAAE;wBACP,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;qBACzB,CAAC;oBACF,OAAO,CAAC,EAAE,KAAK,CAAC;iBACjB,CAAC;aACH,CAAC;SACH,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACf,CAAC;IACF,uBAAuB,EAAE;QACvB,UAAU,EAAE;YACV,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAChB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,mFAAmF;QACnF,IAAI,EAAE;YACJ,UAAU,EAAE;gBACV,KAAK,CAAC,EAAE,KAAK,CAAC;gBACd,MAAM,CAAC,EAAE,KAAK,CAAC;gBACf,IAAI,CAAC,EAAE,KAAK,CAAC;gBACb,MAAM,CAAC,EAAE,KAAK,CAAC;aAChB,CAAC;YACF,WAAW,EAAE;gBACX,OAAO,EAAE;oBACP,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC;iBAClE,CAAC;aACH,CAAC;YACF,SAAS,EAAE;gBACT,qDAAqD;gBACrD,GAAG,EAAE;oBACH,OAAO,EAAE;wBACP,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;qBACzB,CAAC;oBACF,OAAO,EAAE;wBACP,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,sBAAsB,CAAC,CAAC;qBACnE,CAAC;iBACH,CAAC;gBACF,+BAA+B;gBAC/B,GAAG,EAAE;oBACH,OAAO,EAAE;wBACP,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;qBACzB,CAAC;oBACF,OAAO,CAAC,EAAE,KAAK,CAAC;iBACjB,CAAC;gBACF,yCAAyC;gBACzC,GAAG,EAAE;oBACH,OAAO,EAAE;wBACP,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;qBACzB,CAAC;oBACF,OAAO,CAAC,EAAE,KAAK,CAAC;iBACjB,CAAC;aACH,CAAC;SACH,CAAC;QACF,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACf,CAAC;IACF,oCAAoC,EAAE;QACpC,UAAU,EAAE;YACV,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAChB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,iCAAiC;QACjC,IAAI,EAAE;YACJ,UAAU,EAAE;gBACV,KAAK,CAAC,EAAE,KAAK,CAAC;gBACd,MAAM,CAAC,EAAE,KAAK,CAAC;gBACf,IAAI,CAAC,EAAE,KAAK,CAAC;gBACb,MAAM,CAAC,EAAE,KAAK,CAAC;aAChB,CAAC;YACF,WAAW,EAAE;gBACX,OAAO,EAAE;oBACP,kBAAkB,EAAE;wBAClB,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;qBAChB,CAAC;iBACH,CAAC;aACH,CAAC;YACF,SAAS,EAAE;gBACT,6DAA6D;gBAC7D,GAAG,EAAE;oBACH,OAAO,EAAE;wBACP,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;qBACzB,CAAC;oBACF,OAAO,CAAC,EAAE,KAAK,CAAC;iBACjB,CAAC;aACH,CAAC;SACH,CAAC;QACF,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACf,CAAC;IACF,uBAAuB,EAAE;QACvB,UAAU,EAAE;YACV,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAChB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,4DAA4D;QAC5D,IAAI,EAAE;YACJ,UAAU,EAAE;gBACV,KAAK,CAAC,EAAE,KAAK,CAAC;gBACd,MAAM,CAAC,EAAE,KAAK,CAAC;gBACf,IAAI,CAAC,EAAE,KAAK,CAAC;gBACb,MAAM,CAAC,EAAE,KAAK,CAAC;aAChB,CAAC;YACF,WAAW,EAAE;gBACX,OAAO,EAAE;oBACP,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,mBAAmB,CAAC,EAAE,CAAC;iBAClE,CAAC;aACH,CAAC;YACF,SAAS,EAAE;gBACT,qDAAqD;gBACrD,GAAG,EAAE;oBACH,OAAO,EAAE;wBACP,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;qBACzB,CAAC;oBACF,OAAO,EAAE;wBACP,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,EAAE,CAAC;qBACnE,CAAC;iBACH,CAAC;gBACF,+BAA+B;gBAC/B,GAAG,EAAE;oBACH,OAAO,EAAE;wBACP,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;qBACzB,CAAC;oBACF,OAAO,CAAC,EAAE,KAAK,CAAC;iBACjB,CAAC;gBACF,yCAAyC;gBACzC,GAAG,EAAE;oBACH,OAAO,EAAE;wBACP,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;qBACzB,CAAC;oBACF,OAAO,CAAC,EAAE,KAAK,CAAC;iBACjB,CAAC;aACH,CAAC;SACH,CAAC;QACF,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACf,CAAC;IACF,oCAAoC,EAAE;QACpC,UAAU,EAAE;YACV,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAChB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,iCAAiC;QACjC,IAAI,EAAE;YACJ,UAAU,EAAE;gBACV,KAAK,CAAC,EAAE,KAAK,CAAC;gBACd,MAAM,CAAC,EAAE,KAAK,CAAC;gBACf,IAAI,CAAC,EAAE,KAAK,CAAC;gBACb,MAAM,CAAC,EAAE,KAAK,CAAC;aAChB,CAAC;YACF,WAAW,EAAE;gBACX,OAAO,EAAE;oBACP,kBAAkB,EAAE;wBAClB,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;qBAChB,CAAC;iBACH,CAAC;aACH,CAAC;YACF,SAAS,EAAE;gBACT,6DAA6D;gBAC7D,GAAG,EAAE;oBACH,OAAO,EAAE;wBACP,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;qBACzB,CAAC;oBACF,OAAO,CAAC,EAAE,KAAK,CAAC;iBACjB,CAAC;aACH,CAAC;SACH,CAAC;QACF,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACf,CAAC;IACF,uBAAuB,EAAE;QACvB,UAAU,EAAE;YACV,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAChB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,oDAAoD;QACpD,IAAI,EAAE;YACJ,UAAU,EAAE;gBACV,KAAK,CAAC,EAAE;oBACN,8CAA8C;oBAC9C,IAAI,CAAC,EAAE,MAAM,CAAC;oBACd,mEAAmE;oBACnE,QAAQ,CAAC,EAAE,MAAM,CAAC;iBACnB,CAAC;gBACF,MAAM,CAAC,EAAE,KAAK,CAAC;gBACf,IAAI,CAAC,EAAE,KAAK,CAAC;gBACb,MAAM,CAAC,EAAE,KAAK,CAAC;aAChB,CAAC;YACF,WAAW,CAAC,EAAE;gBACZ,OAAO,EAAE;oBACP,kBAAkB,EAAE;wBAClB,WAAW,EAAE,MAAM,EAAE,CAAC;wBACtB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;wBACrB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;wBACjB,MAAM,CAAC,EAAE,OAAO,CAAC;qBAClB,CAAC;iBACH,CAAC;aACH,CAAC;YACF,SAAS,EAAE;gBACT,gEAAgE;gBAChE,GAAG,EAAE;oBACH,OAAO,EAAE;wBACP,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;qBACzB,CAAC;oBACF,OAAO,EAAE;wBACP,kBAAkB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,EAAE,CAAC;qBACnE,CAAC;iBACH,CAAC;aACH,CAAC;SACH,CAAC;QACF,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACf,CAAC;IACF,oCAAoC,EAAE;QACpC,UAAU,EAAE;YACV,KAAK,CAAC,EAAE,KAAK,CAAC;YACd,MAAM,CAAC,EAAE,KAAK,CAAC;YACf,IAAI,CAAC,EAAE,KAAK,CAAC;YACb,MAAM,CAAC,EAAE,KAAK,CAAC;SAChB,CAAC;QACF,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,GAAG,CAAC,EAAE,KAAK,CAAC;QACZ,iCAAiC;QACjC,IAAI,EAAE;YACJ,UAAU,EAAE;gBACV,KAAK,CAAC,EAAE,KAAK,CAAC;gBACd,MAAM,CAAC,EAAE,KAAK,CAAC;gBACf,IAAI,CAAC,EAAE,KAAK,CAAC;gBACb,MAAM,CAAC,EAAE,KAAK,CAAC;aAChB,CAAC;YACF,WAAW,EAAE;gBACX,OAAO,EAAE;oBACP,kBAAkB,EAAE;wBAClB,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;qBAChB,CAAC;iBACH,CAAC;aACH,CAAC;YACF,SAAS,EAAE;gBACT,6DAA6D;gBAC7D,GAAG,EAAE;oBACH,OAAO,EAAE;wBACP,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;qBACzB,CAAC;oBACF,OAAO,CAAC,EAAE,KAAK,CAAC;iBACjB,CAAC;aACH,CAAC;SACH,CAAC;QACF,MAAM,CAAC,EAAE,KAAK,CAAC;QACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAChB,IAAI,CAAC,EAAE,KAAK,CAAC;QACb,KAAK,CAAC,EAAE,KAAK,CAAC;QACd,KAAK,CAAC,EAAE,KAAK,CAAC;KACf,CAAC;CACH,CAAC;AACF,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAC7C,MAAM,MAAM,UAAU,GAAG;IACvB,OAAO,EAAE;QACP;;;WAGG;QACH,WAAW,EAAE,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC;QAClD,4PAA4P;QAC5P,sBAAsB,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,sBAAsB,CAAC,EAAE,CAAC;QACxE,oBAAoB,EAAE;YACpB;;;eAGG;YACH,WAAW,EAAE,MAAM,CAAC;YACpB,wPAAwP;YACxP,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC;YACnD;;;;;eAKG;YACH,QAAQ,EAAE,MAAM,EAAE,CAAC;YACnB;;;;;eAKG;YACH,kBAAkB,EAAE,MAAM,EAAE,CAAC;SAC9B,CAAC;QACF,mBAAmB,EAAE;YACnB,qBAAqB;YACrB,MAAM,EAAE,MAAM,CAAC;YACf,QAAQ,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,aAAa,CAAC,CAAC;YAC/C,SAAS,EAAE,MAAM,EAAE,CAAC;SACrB,CAAC;QACF,oBAAoB,EAAE,CAClB,UAAU,CAAC,SAAS,CAAC,CAAC,sBAAsB,CAAC,GAC7C,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAC/C,EAAE,CAAC;QACJ,oBAAoB,EAAE;YACpB;;;eAGG;YACH,EAAE,EAAE,MAAM,CAAC;YACX,qBAAqB;YACrB,iBAAiB,EAAE,UAAU,CAAC;YAC9B,mCAAmC;YACnC,oBAAoB,EAAE,MAAM,CAAC;YAC7B,qBAAqB;YACrB,MAAM,EAAE,OAAO,CAAC;YAChB,QAAQ,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,uBAAuB,CAAC,CAAC;YACzD;;;eAGG;YACH,UAAU,EAAE,MAAM,CAAC;SACpB,CAAC;QACF,qBAAqB,EAAE;YACrB,SAAS,EAAE,MAAM,CAAC;YAClB,GAAG,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,0BAA0B,CAAC,CAAC;YACxD,KAAK,EAAE,MAAM,CAAC;YACd,IAAI,EAAE,MAAM,CAAC;SACd,CAAC;QACF,wBAAwB,EAAE;YACxB,oFAAoF;YACpF,IAAI,EAAE,MAAM,CAAC;SACd,CAAC;QACF,mBAAmB,EAAE;YACnB;;;eAGG;YACH,EAAE,EAAE,MAAM,CAAC;YACX,qBAAqB;YACrB,iBAAiB,EAAE,UAAU,CAAC;YAC9B,qBAAqB;YACrB,MAAM,EAAE,OAAO,CAAC;YAChB;;;eAGG;YACH,UAAU,EAAE,MAAM,CAAC;YACnB,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,gBAAgB,CAAC,CAAC;SAClD,CAAC;QACF,cAAc,EAAE;YACd,iBAAiB;YACjB,QAAQ,EAAE,MAAM,CAAC;YACjB,wBAAwB;YACxB,YAAY,EAAE,MAAM,CAAC;YACrB,eAAe,EAAE,MAAM,CAAC;YACxB,0DAA0D;YAC1D,OAAO,EAAE,MAAM,CAAC;YAChB,OAAO,EAAE,MAAM,CAAC;YAChB,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,iBAAiB,CAAC,CAAC;YAClD,IAAI,CAAC,EACD,UAAU,CAAC,SAAS,CAAC,CAAC,4BAA4B,CAAC,GACnD,UAAU,CAAC,SAAS,CAAC,CAAC,kCAAkC,CAAC,GACzD,UAAU,CAAC,SAAS,CAAC,CAAC,yBAAyB,CAAC,GAChD,UAAU,CAAC,SAAS,CAAC,CAAC,8BAA8B,CAAC,GACrD,UAAU,CAAC,SAAS,CAAC,CAAC,8BAA8B,CAAC,GACrD,UAAU,CAAC,SAAS,CAAC,CAAC,+BAA+B,CAAC,GACtD,UAAU,CAAC,SAAS,CAAC,CAAC,iCAAiC,CAAC,GACxD,UAAU,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,GACrC,UAAU,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,GACzC,UAAU,CAAC,SAAS,CAAC,CAAC,gBAAgB,CAAC,GACvC,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,GAC3C,UAAU,CAAC,SAAS,CAAC,CAAC,iBAAiB,CAAC,GACxC,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,GAC5C,UAAU,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,GACzC,UAAU,CAAC,SAAS,CAAC,CAAC,sBAAsB,CAAC,CAAC;SACnD,CAAC;QACF,+dAA+d;QAC/d,oBAAoB,EAAE,CAClB,UAAU,CAAC,SAAS,CAAC,CAAC,wBAAwB,CAAC,GAC/C,UAAU,CAAC,SAAS,CAAC,CAAC,uBAAuB,CAAC,CACjD,EAAE,CAAC;QACJ,sBAAsB,EAAE;YACtB;;;eAGG;YACH,EAAE,EAAE,MAAM,CAAC;YACX;;;eAGG;YACH,iBAAiB,EAAE,MAAM,CAAC;YAC1B;;;eAGG;YACH,QAAQ,EAAE,MAAM,CAAC;YACjB;;;eAGG;YACH,oBAAoB,EAAE,MAAM,CAAC;YAC7B,qBAAqB;YACrB,MAAM,EAAE,OAAO,CAAC;YAChB,QAAQ,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,uBAAuB,CAAC,CAAC;YACzD;;;eAGG;YACH,UAAU,EAAE,MAAM,CAAC;SACpB,CAAC;QACF,qBAAqB,EAAE;YACrB;;;eAGG;YACH,EAAE,EAAE,MAAM,CAAC;YACX,qBAAqB;YACrB,iBAAiB,EAAE,iBAAiB,CAAC;YACrC;;;eAGG;YACH,QAAQ,EAAE,MAAM,CAAC;YACjB;;;eAGG;YACH,oBAAoB,EAAE,MAAM,CAAC;YAC7B,qBAAqB;YACrB,MAAM,EAAE,OAAO,CAAC;YAChB;;;eAGG;YACH,UAAU,EAAE,MAAM,CAAC;YACnB,QAAQ,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,iBAAiB,CAAC,CAAC;YACpD,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,gBAAgB,CAAC,CAAC;SAClD,CAAC;QACF;;;;WAIG;QACH,eAAe,EAAE;YACf;;;eAGG;YACH,KAAK,EAAE,MAAM,CAAC;YACd;;;eAGG;YACH,IAAI,CAAC,EAAE,MAAM,CAAC;SACf,CAAC;QACF,iBAAiB,EAAE;YACjB,sBAAsB;YACtB,OAAO,EAAE,MAAM,CAAC;SACjB,CAAC;QACF,kBAAkB,EAAE;YAClB,mBAAmB;YACnB,EAAE,EAAE,MAAM,CAAC;YACX,mBAAmB;YACnB,UAAU,EAAE,MAAM,CAAC;YACnB,iBAAiB;YACjB,QAAQ,EAAE,MAAM,CAAC;YACjB,wBAAwB;YACxB,YAAY,EAAE,MAAM,CAAC;YACrB,eAAe,EAAE,MAAM,CAAC;YACxB;;;eAGG;YACH,OAAO,EAAE,MAAM,CAAC;YAChB,qBAAqB;YACrB,MAAM,EAAE,OAAO,CAAC;YAChB,wBAAwB;YACxB,UAAU,EAAE,MAAM,CAAC;YACnB,sBAAsB;YACtB,OAAO,EAAE,MAAM,CAAC;YAChB,IAAI,CAAC,EACD,UAAU,CAAC,SAAS,CAAC,CAAC,4BAA4B,CAAC,GACnD,UAAU,CAAC,SAAS,CAAC,CAAC,kCAAkC,CAAC,GACzD,UAAU,CAAC,SAAS,CAAC,CAAC,yBAAyB,CAAC,GAChD,UAAU,CAAC,SAAS,CAAC,CAAC,8BAA8B,CAAC,GACrD,UAAU,CAAC,SAAS,CAAC,CAAC,8BAA8B,CAAC,GACrD,UAAU,CAAC,SAAS,CAAC,CAAC,+BAA+B,CAAC,GACtD,UAAU,CAAC,SAAS,CAAC,CAAC,iCAAiC,CAAC,GACxD,UAAU,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,GACrC,UAAU,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,GACzC,UAAU,CAAC,SAAS,CAAC,CAAC,gBAAgB,CAAC,GACvC,UAAU,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,GAC3C,UAAU,CAAC,SAAS,CAAC,CAAC,iBAAiB,CAAC,GACxC,UAAU,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,GAC5C,UAAU,CAAC,SAAS,CAAC,CAAC,kBAAkB,CAAC,GACzC,UAAU,CAAC,SAAS,CAAC,CAAC,sBAAsB,CAAC,CAAC;SACnD,CAAC;QACF,0BAA0B,EAAE;YAC1B,qBAAqB;YACrB,IAAI,EAAE,yBAAyB,CAAC;YAChC,WAAW,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;YACjD,sBAAsB;YACtB,IAAI,EAAE,MAAM,CAAC;YACb,QAAQ,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC;YACzC,SAAS,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC;SAC3C,CAAC;QACF,uBAAuB,EAAE;YACvB,qBAAqB;YACrB,IAAI,EAAE,sBAAsB,CAAC;YAC7B,WAAW,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;YACjD,QAAQ,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC;YACzC,SAAS,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC;SAC3C,CAAC;QACF,4BAA4B,EAAE;YAC5B,qBAAqB;YACrB,IAAI,EAAE,2BAA2B,CAAC;YAClC,WAAW,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;YACjD,QAAQ,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC;YACzC,SAAS,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC;SAC3C,CAAC;QACF,gCAAgC,EAAE;YAChC,qBAAqB;YACrB,IAAI,EAAE,kCAAkC,CAAC;YACzC,sBAAsB;YACtB,UAAU,EAAE,MAAM,CAAC;YACnB,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC;SAC5C,CAAC;QACF,4BAA4B,EAAE;YAC5B,qBAAqB;YACrB,IAAI,EAAE,2BAA2B,CAAC;YAClC,WAAW,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;YACjD,QAAQ,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC;YACzC,SAAS,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC;SAC3C,CAAC;QACF,6BAA6B,EAAE;YAC7B,qBAAqB;YACrB,IAAI,EAAE,4BAA4B,CAAC;YACnC,WAAW,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;YACjD,QAAQ,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC;YACzC,SAAS,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC;SAC3C,CAAC;QACF,+BAA+B,EAAE;YAC/B,qBAAqB;YACrB,IAAI,EAAE,8BAA8B,CAAC;YACrC,WAAW,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;YACjD,QAAQ,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC;YACzC,SAAS,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC;SAC3C,CAAC;QACF,YAAY,EAAE;YACZ,qBAAqB;YACrB,IAAI,EAAE,UAAU,CAAC;YACjB,WAAW,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;YACjD,sBAAsB;YACtB,IAAI,EAAE,MAAM,CAAC;YACb,sBAAsB;YACtB,EAAE,EAAE,MAAM,CAAC;YACX,MAAM,EAAE;gBACN,sBAAsB;gBACtB,GAAG,EAAE,MAAM,CAAC;gBACZ,sBAAsB;gBACtB,GAAG,EAAE,MAAM,CAAC;aACb,CAAC;SACH,CAAC;QACF,gBAAgB,EAAE;YAChB,qBAAqB;YACrB,IAAI,EAAE,cAAc,CAAC;YACrB,WAAW,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;YACjD,sBAAsB;YACtB,IAAI,EAAE,MAAM,CAAC;YACb,sBAAsB;YACtB,EAAE,EAAE,MAAM,CAAC;YACX,MAAM,EAAE;gBACN,sBAAsB;gBACtB,GAAG,EAAE,MAAM,CAAC;gBACZ,sBAAsB;gBACtB,GAAG,EAAE,MAAM,CAAC;aACb,CAAC;SACH,CAAC;QACF,cAAc,EAAE;YACd,qBAAqB;YACrB,IAAI,EAAE,YAAY,CAAC;YACnB,WAAW,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;YACjD,sBAAsB;YACtB,IAAI,EAAE,MAAM,CAAC;YACb,sBAAsB;YACtB,EAAE,EAAE,MAAM,CAAC;YACX,KAAK,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC;SACvC,CAAC;QACF,kBAAkB,EAAE;YAClB,qBAAqB;YACrB,IAAI,EAAE,gBAAgB,CAAC;YACvB,WAAW,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;YACjD,sBAAsB;YACtB,IAAI,EAAE,MAAM,CAAC;YACb,sBAAsB;YACtB,EAAE,EAAE,MAAM,CAAC;YACX,KAAK,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC;SACvC,CAAC;QACF,eAAe,EAAE;YACf,qBAAqB;YACrB,IAAI,EAAE,aAAa,CAAC;YACpB,WAAW,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;YACjD,sBAAsB;YACtB,IAAI,EAAE,MAAM,CAAC;YACb,sBAAsB;YACtB,EAAE,EAAE,MAAM,CAAC;YACX,GAAG,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC;SACnC,CAAC;QACF,mBAAmB,EAAE;YACnB,qBAAqB;YACrB,IAAI,EAAE,iBAAiB,CAAC;YACxB,WAAW,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;YACjD,sBAAsB;YACtB,IAAI,EAAE,MAAM,CAAC;YACb,sBAAsB;YACtB,EAAE,EAAE,MAAM,CAAC;YACX,GAAG,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC;SACnC,CAAC;QACF,gBAAgB,EAAE;YAChB,qBAAqB;YACrB,IAAI,EAAE,cAAc,CAAC;YACrB,WAAW,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;YACjD,sBAAsB;YACtB,IAAI,EAAE,MAAM,CAAC;YACb,sBAAsB;YACtB,EAAE,EAAE,MAAM,CAAC;YACX,GAAG,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC;SACpC,CAAC;QACF,oBAAoB,EAAE;YACpB,qBAAqB;YACrB,IAAI,EAAE,kBAAkB,CAAC;YACzB,WAAW,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC;YACjD,sBAAsB;YACtB,IAAI,EAAE,MAAM,CAAC;YACb,sBAAsB;YACtB,EAAE,EAAE,MAAM,CAAC;YACX,GAAG,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC;SACpC,CAAC;QACF,UAAU,EAAE;YACV,sBAAsB;YACtB,SAAS,EAAE,MAAM,CAAC;YAClB,sBAAsB;YACtB,yBAAyB,EAAE,MAAM,CAAC;SACnC,CAAC;QACF,KAAK,EAAE;YACL,sBAAsB;YACtB,OAAO,EAAE,MAAM,CAAC;YAChB,MAAM,EAAE,MAAM,CAAC;YACf,IAAI,EAAE,MAAM,CAAC;YACb,sBAAsB;YACtB,MAAM,EAAE,MAAM,CAAC;YACf,oBAAoB;YACpB,QAAQ,EAAE,MAAM,CAAC;YACjB,kBAAkB;YAClB,KAAK,EAAE,MAAM,CAAC;YACd,sBAAsB;YACtB,GAAG,EAAE,MAAM,CAAC;SACb,CAAC;QACF,GAAG,EAAE;YACH,IAAI,EAAE,MAAM,CAAC;YACb,QAAQ,EAAE,MAAM,CAAC;YACjB,kBAAkB;YAClB,KAAK,EAAE,MAAM,CAAC;YACd,UAAU,EAAE;gBACV,sBAAsB;gBACtB,OAAO,EAAE,MAAM,CAAC;gBAChB,IAAI,EAAE,MAAM,CAAC;gBACb,MAAM,EAAE,MAAM,CAAC;gBACf,kBAAkB;gBAClB,KAAK,EAAE,MAAM,CAAC;aACf,CAAC;SACH,CAAC;QACF,KAAK,EAAE;YACL,sBAAsB;YACtB,OAAO,EAAE,MAAM,CAAC;YAChB,MAAM,EAAE,MAAM,CAAC;YACf,IAAI,EAAE,MAAM,CAAC;YACb,sBAAsB;YACtB,MAAM,EAAE,MAAM,CAAC;YACf,oBAAoB;YACpB,QAAQ,EAAE,MAAM,CAAC;YACjB,kBAAkB;YAClB,KAAK,EAAE,MAAM,CAAC;YACd,sBAAsB;YACtB,GAAG,EAAE,MAAM,CAAC;SACb,CAAC;QACF,aAAa,EAAE;YACb;;;eAGG;YACH,GAAG,EAAE,MAAM,CAAC;YACZ,yBAAyB;YACzB,IAAI,EAAE,MAAM,CAAC;SACd,CAAC;QACF,eAAe,EAAE;YACf;;;eAGG;YACH,IAAI,EAAE,MAAM,CAAC;YACb;;;eAGG;YACH,aAAa,EAAE,MAAM,CAAC;YACtB,cAAc,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC;SACxD,CAAC;KACH,CAAC;IACF,SAAS,EAAE,KAAK,CAAC;IACjB,UAAU,EAAE,KAAK,CAAC;IAClB,aAAa,EAAE,KAAK,CAAC;IACrB,OAAO,EAAE,KAAK,CAAC;IACf,SAAS,EAAE,KAAK,CAAC;CAClB,CAAC;AACF,MAAM,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAC1C,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../src/NotificationServicesController/types/notification-api/schema.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/NotificationServicesController/types/notification-api/schema.ts"],"names":[],"mappings":"AAAA,oCAAoC;AACpC,2EAA2E;AAC3E,yDAAyD","sourcesContent":["/* eslint-disable jsdoc/tag-lines */\n// Auto-generated from OpenAPI spec - naming follows API schema conventions\n/* eslint-disable @typescript-eslint/naming-convention */\n\n/**\n * This file was auto-generated by openapi-typescript.\n * Do not make direct changes to the file.\n * Script: `npx openapi-typescript <PATH_TO_API_SPEC> -o ./schema.ts`\n */\n\nexport type paths = {\n '/api/v4/notifications': {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n get?: never;\n put?: never;\n /**\n * List both platform and on-chain notifications for a certain user/address(es)\n * @description Same behaviour as /api/v3/notifications, but the returned notification_type and notification_subtype are taken directly from the producer-set database fields: platform notifications expose platform_notifications.notification_type / notification_subtype, while on-chain notifications expose the constant \"wallet_activity\" as notification_type and notifications_part.kind as notification_subtype. Clients should distinguish the two shapes structurally (presence of \"payload\" for on-chain vs \"template\" for platform).\n *\n * Both shapes also carry a \"category\": the category_id of the settings category the notification_type belongs to, resolved server-side from the same manifest served by GET /api/v4/notifications/categories. It lets clients group or filter a notification list with the same taxonomy the settings screen uses, without duplicating the notification_type -> category mapping client-side.\n */\n post: {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n requestBody: {\n content: {\n 'application/json': components['schemas']['NotificationInputV3'];\n };\n };\n responses: {\n /** @description Notifications listed successfully */\n 200: {\n headers: {\n [name: string]: unknown;\n };\n content: {\n 'application/json': components['schemas']['NotificationOutputV4'];\n };\n };\n /** @description Bad request */\n 400: {\n headers: {\n [name: string]: unknown;\n };\n content?: never;\n };\n /** @description Internal server error */\n 500: {\n headers: {\n [name: string]: unknown;\n };\n content?: never;\n };\n };\n };\n delete?: never;\n options?: never;\n head?: never;\n patch?: never;\n trace?: never;\n };\n '/api/v4/notifications/mark-as-read': {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n get?: never;\n put?: never;\n /** Mark notifications as read */\n post: {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n requestBody: {\n content: {\n 'application/json': {\n ids?: string[];\n };\n };\n };\n responses: {\n /** @description Successfully marked notifications as read */\n 200: {\n headers: {\n [name: string]: unknown;\n };\n content?: never;\n };\n };\n };\n delete?: never;\n options?: never;\n head?: never;\n patch?: never;\n trace?: never;\n };\n '/api/v4/notifications/categories': {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n /**\n * List notification categories (server-driven settings manifest)\n * @description Read-only manifest that drives the client notification-settings UX. It is a single artifact identical for every user and platform: the client renders only the entries whose `visible_on` includes its own platform, in the order they appear in the array, and toggles the AUS preference keys listed in `aus_keys`. It ties together the AUS preference keys (user-storage), the platform notification_types, and the UX grouping, so changing the taxonomy no longer requires a client release.\n * Presentation (labels, descriptions, icons) is client-owned for now and keyed off `category_id`; server-side localization is a future, additive change. This endpoint is unauthenticated — it carries no per-user state.\n */\n get: {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n requestBody?: never;\n responses: {\n /** @description The notification categories manifest */\n 200: {\n headers: {\n [name: string]: unknown;\n };\n content: {\n 'application/json': components['schemas']['NotificationCategories'];\n };\n };\n /** @description Internal server error */\n 500: {\n headers: {\n [name: string]: unknown;\n };\n content?: never;\n };\n };\n };\n put?: never;\n post?: never;\n delete?: never;\n options?: never;\n head?: never;\n patch?: never;\n trace?: never;\n };\n '/api/v3/notifications': {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n get?: never;\n put?: never;\n /** List both platform and on-chain notifications for a certain user/address(es) */\n post: {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n requestBody: {\n content: {\n 'application/json': components['schemas']['NotificationInputV3'];\n };\n };\n responses: {\n /** @description Notifications listed successfully */\n 200: {\n headers: {\n [name: string]: unknown;\n };\n content: {\n 'application/json': components['schemas']['NotificationOutputV3'];\n };\n };\n /** @description Bad request */\n 400: {\n headers: {\n [name: string]: unknown;\n };\n content?: never;\n };\n /** @description Internal server error */\n 500: {\n headers: {\n [name: string]: unknown;\n };\n content?: never;\n };\n };\n };\n delete?: never;\n options?: never;\n head?: never;\n patch?: never;\n trace?: never;\n };\n '/api/v3/notifications/mark-as-read': {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n get?: never;\n put?: never;\n /** Mark notifications as read */\n post: {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n requestBody: {\n content: {\n 'application/json': {\n ids?: string[];\n };\n };\n };\n responses: {\n /** @description Successfully marked notifications as read */\n 200: {\n headers: {\n [name: string]: unknown;\n };\n content?: never;\n };\n };\n };\n delete?: never;\n options?: never;\n head?: never;\n patch?: never;\n trace?: never;\n };\n '/api/v2/notifications': {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n get?: never;\n put?: never;\n /** List all notifications for a certain user/address(es) */\n post: {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n requestBody: {\n content: {\n 'application/json': components['schemas']['NotificationInput'][];\n };\n };\n responses: {\n /** @description Notifications listed successfully */\n 200: {\n headers: {\n [name: string]: unknown;\n };\n content: {\n 'application/json': components['schemas']['WalletNotification'][];\n };\n };\n /** @description Bad request */\n 400: {\n headers: {\n [name: string]: unknown;\n };\n content?: never;\n };\n /** @description Internal server error */\n 500: {\n headers: {\n [name: string]: unknown;\n };\n content?: never;\n };\n };\n };\n delete?: never;\n options?: never;\n head?: never;\n patch?: never;\n trace?: never;\n };\n '/api/v2/notifications/mark-as-read': {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n get?: never;\n put?: never;\n /** Mark notifications as read */\n post: {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n requestBody: {\n content: {\n 'application/json': {\n ids?: string[];\n };\n };\n };\n responses: {\n /** @description Successfully marked notifications as read */\n 200: {\n headers: {\n [name: string]: unknown;\n };\n content?: never;\n };\n };\n };\n delete?: never;\n options?: never;\n head?: never;\n patch?: never;\n trace?: never;\n };\n '/api/v1/notifications': {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n get?: never;\n put?: never;\n /** List all notifications ordered by most recent */\n post: {\n parameters: {\n query?: {\n /** @description Page number for pagination */\n page?: number;\n /** @description Number of notifications per page for pagination */\n per_page?: number;\n };\n header?: never;\n path?: never;\n cookie?: never;\n };\n requestBody?: {\n content: {\n 'application/json': {\n trigger_ids: string[];\n chain_ids?: number[];\n kinds?: string[];\n unread?: boolean;\n };\n };\n };\n responses: {\n /** @description Successfully fetched a list of notifications */\n 200: {\n headers: {\n [name: string]: unknown;\n };\n content: {\n 'application/json': components['schemas']['WalletNotification'][];\n };\n };\n };\n };\n delete?: never;\n options?: never;\n head?: never;\n patch?: never;\n trace?: never;\n };\n '/api/v1/notifications/mark-as-read': {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n get?: never;\n put?: never;\n /** Mark notifications as read */\n post: {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n requestBody: {\n content: {\n 'application/json': {\n ids?: string[];\n };\n };\n };\n responses: {\n /** @description Successfully marked notifications as read */\n 200: {\n headers: {\n [name: string]: unknown;\n };\n content?: never;\n };\n };\n };\n delete?: never;\n options?: never;\n head?: never;\n patch?: never;\n trace?: never;\n };\n};\nexport type webhooks = Record<string, never>;\nexport type components = {\n schemas: {\n /**\n * @example mobile\n * @enum {string}\n */\n AppPlatform: 'portfolio' | 'extension' | 'mobile';\n /** @description The full set of notification categories, in display order. Returned in its entirety to every client regardless of platform; the client renders only the entries whose `visible_on` includes its platform, in the order they appear here. */\n NotificationCategories: components['schemas']['NotificationCategory'][];\n NotificationCategory: {\n /**\n * @description Stable identifier for the category. The client keys its localized copy and icon off this value.\n * @example trading_activity\n */\n category_id: string;\n /** @description Platforms on which the client should render this category. An empty array means it is hidden everywhere but still present in the manifest (so the set of categories stays complete with respect to the platform notification_types). */\n visible_on: components['schemas']['AppPlatform'][];\n /**\n * @description The user-storage notification-preference keys this category toggles. The AUS key is the toggle pivot: turning the category off disables every listed key, turning it on enables them. An empty array means the category is display-only (not user-toggleable).\n * @example [\n * \"perps\"\n * ]\n */\n aus_keys: string[];\n /**\n * @description The platform notification_type values this category covers. Advisory / validation only — the client toggles `aus_keys`, not these. May be empty when a category maps to an AUS-only key (e.g. `marketing`, or the reserved on-chain `wallet_activity`) that has no platform notification_type.\n * @example [\n * \"perps\"\n * ]\n */\n notification_types: string[];\n };\n NotificationInputV3: {\n /** @example en-US */\n locale: string;\n platform: components['schemas']['AppPlatform'];\n addresses: string[];\n };\n NotificationOutputV3: (\n | components['schemas']['PlatformNotification']\n | components['schemas']['OnChainNotification']\n )[];\n PlatformNotification: {\n /**\n * Format: uuid\n * @example 3fa85f64-5717-4562-b3fc-2c963f66afa6\n */\n id: string;\n /** @enum {string} */\n notification_type: 'platform';\n /** @example position_liquidated */\n notification_subtype: string;\n /** @example false */\n unread: boolean;\n template: components['schemas']['LocalizedNotification'];\n /**\n * Format: date-time\n * @example 2025-10-09T09:45:34.202Z\n */\n created_at: string;\n };\n LocalizedNotification: {\n image_url: string;\n cta?: components['schemas']['LocalizedNotificationCTA'];\n title: string;\n body: string;\n };\n LocalizedNotificationCTA: {\n /** @description Deeplink URL. Clients open this when the notification is tapped. */\n link: string;\n };\n OnChainNotification: {\n /**\n * Format: uuid\n * @example 3fa85f64-5717-4562-b3fc-2c963f66afa6\n */\n id: string;\n /** @enum {string} */\n notification_type: 'on-chain';\n /** @example false */\n unread: boolean;\n /**\n * Format: date-time\n * @example 2025-10-09T09:45:34.202Z\n */\n created_at: string;\n payload: components['schemas']['OnChainPayload'];\n };\n OnChainPayload: {\n /** @example 1 */\n chain_id: number;\n /** @example 17485840 */\n block_number: number;\n block_timestamp: string;\n /** @example 0x881D40237659C251811CEC9c364ef91dC08D300C */\n tx_hash: string;\n address: string;\n network: components['schemas']['NetworkMetadata'];\n data?:\n | components['schemas']['Data_MetamaskSwapCompleted']\n | components['schemas']['Data_LidoStakeReadyToBeWithdrawn']\n | components['schemas']['Data_LidoStakeCompleted']\n | components['schemas']['Data_LidoWithdrawalRequested']\n | components['schemas']['Data_LidoWithdrawalCompleted']\n | components['schemas']['Data_RocketPoolStakeCompleted']\n | components['schemas']['Data_RocketPoolUnstakeCompleted']\n | components['schemas']['Data_ETHSent']\n | components['schemas']['Data_ETHReceived']\n | components['schemas']['Data_ERC20Sent']\n | components['schemas']['Data_ERC20Received']\n | components['schemas']['Data_ERC721Sent']\n | components['schemas']['Data_ERC721Received']\n | components['schemas']['Data_ERC1155Sent']\n | components['schemas']['Data_ERC1155Received'];\n };\n /** @description A heterogeneous list of platform and on-chain notifications. The two shapes are discriminated by `notification_type`: a value of \"wallet_activity\" identifies an OnChainNotificationV4, any other value identifies a PlatformNotificationV4. \"wallet_activity\" is a reserved value and MUST NOT be used as a producer-set platform notification_type. (This cannot be modelled as a formal OpenAPI discriminator because the platform notification_type set is open-ended.) */\n NotificationOutputV4: (\n | components['schemas']['PlatformNotificationV4']\n | components['schemas']['OnChainNotificationV4']\n )[];\n PlatformNotificationV4: {\n /**\n * Format: uuid\n * @example 3fa85f64-5717-4562-b3fc-2c963f66afa6\n */\n id: string;\n /**\n * @description Producer-set platform_notifications.notification_type value.\n * @example perps\n */\n notification_type: string;\n /**\n * @description The `category_id` of the settings category this notification belongs to, derived server-side from `notification_type` via the manifest served by GET /api/v4/notifications/categories. Empty string when no category covers the notification_type (e.g. a type newer than the manifest); clients should treat that, and any category_id they do not know, as uncategorized.\n * @example trading_activity\n */\n category: string;\n /**\n * @description Producer-set platform_notifications.notification_subtype value.\n * @example position_liquidated\n */\n notification_subtype: string;\n /** @example false */\n unread: boolean;\n template: components['schemas']['LocalizedNotification'];\n /**\n * Format: date-time\n * @example 2025-10-09T09:45:34.202Z\n */\n created_at: string;\n };\n OnChainNotificationV4: {\n /**\n * Format: uuid\n * @example 3fa85f64-5717-4562-b3fc-2c963f66afa6\n */\n id: string;\n /** @enum {string} */\n notification_type: 'wallet_activity';\n /**\n * @description The `category_id` of the settings category this notification belongs to, derived server-side from `notification_type` via the manifest served by GET /api/v4/notifications/categories.\n * @example wallet_activity\n */\n category: string;\n /**\n * @description notifications_part.kind value.\n * @example metamask_swap_completed\n */\n notification_subtype: string;\n /** @example false */\n unread: boolean;\n /**\n * Format: date-time\n * @example 2025-10-09T09:45:34.202Z\n */\n created_at: string;\n template?: components['schemas']['OnChainTemplate'];\n payload: components['schemas']['OnChainPayload'];\n };\n /**\n * @description The notification's copy, already localized into the `locale` sent with the request. This is the same text the clients used to assemble themselves from their own locale files; rendering it server-side keeps every surface (in-app, push, each client) on one set of strings.\n * Optional: it is absent when the server cannot render the row — a notification_subtype newer than the server, or a payload it cannot read. Clients must keep their local rendering as a fallback for those, and may drop it once this field is present for every subtype they support.\n * Only translated copy lives here. The amount, token name, network name, icons and timestamp are not included: clients already derive those from `payload` and render them with locale-aware, user-configured formatting.\n */\n OnChainTemplate: {\n /**\n * @description The notification headline.\n * @example Received from 0x5aAeb...BeAed\n */\n title: string;\n /**\n * @description Secondary line, present only for the subtypes whose description is translated copy (today lido_withdrawal_requested and lido_stake_ready_to_be_withdrawn). For every other subtype the client composes the secondary line from `payload` as before.\n * @example You can now withdraw your unstaked stETH\n */\n body?: string;\n };\n NotificationInput: {\n /** Format: address */\n address: string;\n };\n WalletNotification: {\n /** Format: uuid */\n id: string;\n /** Format: uuid */\n trigger_id: string;\n /** @example 1 */\n chain_id: number;\n /** @example 17485840 */\n block_number: number;\n block_timestamp: string;\n /**\n * Format: address\n * @example 0x881D40237659C251811CEC9c364ef91dC08D300C\n */\n tx_hash: string;\n /** @example false */\n unread: boolean;\n /** Format: date-time */\n created_at: string;\n /** Format: address */\n address: string;\n data?:\n | components['schemas']['Data_MetamaskSwapCompleted']\n | components['schemas']['Data_LidoStakeReadyToBeWithdrawn']\n | components['schemas']['Data_LidoStakeCompleted']\n | components['schemas']['Data_LidoWithdrawalRequested']\n | components['schemas']['Data_LidoWithdrawalCompleted']\n | components['schemas']['Data_RocketPoolStakeCompleted']\n | components['schemas']['Data_RocketPoolUnstakeCompleted']\n | components['schemas']['Data_ETHSent']\n | components['schemas']['Data_ETHReceived']\n | components['schemas']['Data_ERC20Sent']\n | components['schemas']['Data_ERC20Received']\n | components['schemas']['Data_ERC721Sent']\n | components['schemas']['Data_ERC721Received']\n | components['schemas']['Data_ERC1155Sent']\n | components['schemas']['Data_ERC1155Received'];\n };\n Data_MetamaskSwapCompleted: {\n /** @enum {string} */\n kind: 'metamask_swap_completed';\n network_fee: components['schemas']['NetworkFee'];\n /** Format: decimal */\n rate: string;\n token_in: components['schemas']['Token'];\n token_out: components['schemas']['Token'];\n };\n Data_LidoStakeCompleted: {\n /** @enum {string} */\n kind: 'lido_stake_completed';\n network_fee: components['schemas']['NetworkFee'];\n stake_in: components['schemas']['Stake'];\n stake_out: components['schemas']['Stake'];\n };\n Data_LidoWithdrawalRequested: {\n /** @enum {string} */\n kind: 'lido_withdrawal_requested';\n network_fee: components['schemas']['NetworkFee'];\n stake_in: components['schemas']['Stake'];\n stake_out: components['schemas']['Stake'];\n };\n Data_LidoStakeReadyToBeWithdrawn: {\n /** @enum {string} */\n kind: 'lido_stake_ready_to_be_withdrawn';\n /** Format: decimal */\n request_id: string;\n staked_eth: components['schemas']['Stake'];\n };\n Data_LidoWithdrawalCompleted: {\n /** @enum {string} */\n kind: 'lido_withdrawal_completed';\n network_fee: components['schemas']['NetworkFee'];\n stake_in: components['schemas']['Stake'];\n stake_out: components['schemas']['Stake'];\n };\n Data_RocketPoolStakeCompleted: {\n /** @enum {string} */\n kind: 'rocketpool_stake_completed';\n network_fee: components['schemas']['NetworkFee'];\n stake_in: components['schemas']['Stake'];\n stake_out: components['schemas']['Stake'];\n };\n Data_RocketPoolUnstakeCompleted: {\n /** @enum {string} */\n kind: 'rocketpool_unstake_completed';\n network_fee: components['schemas']['NetworkFee'];\n stake_in: components['schemas']['Stake'];\n stake_out: components['schemas']['Stake'];\n };\n Data_ETHSent: {\n /** @enum {string} */\n kind: 'eth_sent';\n network_fee: components['schemas']['NetworkFee'];\n /** Format: address */\n from: string;\n /** Format: address */\n to: string;\n amount: {\n /** Format: decimal */\n usd: string;\n /** Format: decimal */\n eth: string;\n };\n };\n Data_ETHReceived: {\n /** @enum {string} */\n kind: 'eth_received';\n network_fee: components['schemas']['NetworkFee'];\n /** Format: address */\n from: string;\n /** Format: address */\n to: string;\n amount: {\n /** Format: decimal */\n usd: string;\n /** Format: decimal */\n eth: string;\n };\n };\n Data_ERC20Sent: {\n /** @enum {string} */\n kind: 'erc20_sent';\n network_fee: components['schemas']['NetworkFee'];\n /** Format: address */\n from: string;\n /** Format: address */\n to: string;\n token: components['schemas']['Token'];\n };\n Data_ERC20Received: {\n /** @enum {string} */\n kind: 'erc20_received';\n network_fee: components['schemas']['NetworkFee'];\n /** Format: address */\n from: string;\n /** Format: address */\n to: string;\n token: components['schemas']['Token'];\n };\n Data_ERC721Sent: {\n /** @enum {string} */\n kind: 'erc721_sent';\n network_fee: components['schemas']['NetworkFee'];\n /** Format: address */\n from: string;\n /** Format: address */\n to: string;\n nft: components['schemas']['NFT'];\n };\n Data_ERC721Received: {\n /** @enum {string} */\n kind: 'erc721_received';\n network_fee: components['schemas']['NetworkFee'];\n /** Format: address */\n from: string;\n /** Format: address */\n to: string;\n nft: components['schemas']['NFT'];\n };\n Data_ERC1155Sent: {\n /** @enum {string} */\n kind: 'erc1155_sent';\n network_fee: components['schemas']['NetworkFee'];\n /** Format: address */\n from: string;\n /** Format: address */\n to: string;\n nft?: components['schemas']['NFT'];\n };\n Data_ERC1155Received: {\n /** @enum {string} */\n kind: 'erc1155_received';\n network_fee: components['schemas']['NetworkFee'];\n /** Format: address */\n from: string;\n /** Format: address */\n to: string;\n nft?: components['schemas']['NFT'];\n };\n NetworkFee: {\n /** Format: decimal */\n gas_price: string;\n /** Format: decimal */\n native_token_price_in_usd: string;\n };\n Token: {\n /** Format: address */\n address: string;\n symbol: string;\n name: string;\n /** Format: decimal */\n amount: string;\n /** Format: int32 */\n decimals: string;\n /** Format: uri */\n image: string;\n /** Format: decimal */\n usd: string;\n };\n NFT: {\n name: string;\n token_id: string;\n /** Format: uri */\n image: string;\n collection: {\n /** Format: address */\n address: string;\n name: string;\n symbol: string;\n /** Format: uri */\n image: string;\n };\n };\n Stake: {\n /** Format: address */\n address: string;\n symbol: string;\n name: string;\n /** Format: decimal */\n amount: string;\n /** Format: int32 */\n decimals: string;\n /** Format: uri */\n image: string;\n /** Format: decimal */\n usd: string;\n };\n BlockExplorer: {\n /**\n * Format: uri\n * @example https://etherscan.io\n */\n url: string;\n /** @example Etherscan */\n name: string;\n };\n NetworkMetadata: {\n /**\n * @description Human-readable network name\n * @example Ethereum\n */\n name: string;\n /**\n * @description Native token symbol\n * @example ETH\n */\n native_symbol: string;\n block_explorer: components['schemas']['BlockExplorer'];\n };\n };\n responses: never;\n parameters: never;\n requestBodies: never;\n headers: never;\n pathItems: never;\n};\nexport type $defs = Record<string, never>;\nexport type operations = Record<string, never>;\n"]}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/NotificationServicesController/types/notification-api/schema.ts"],"names":[],"mappings":"AAAA,oCAAoC;AACpC,2EAA2E;AAC3E,yDAAyD","sourcesContent":["/* eslint-disable jsdoc/tag-lines */\n// Auto-generated from OpenAPI spec - naming follows API schema conventions\n/* eslint-disable @typescript-eslint/naming-convention */\n\n/**\n * This file was auto-generated by openapi-typescript.\n * Do not make direct changes to the file.\n * Script: `npx openapi-typescript <PATH_TO_API_SPEC> -o ./schema.ts`\n */\n\nexport type paths = {\n '/api/v4/notifications': {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n get?: never;\n put?: never;\n /**\n * List both platform and on-chain notifications for a certain user/address(es)\n * @description Same behaviour as /api/v3/notifications, but the returned notification_type and notification_subtype are taken directly from the producer-set database fields: platform notifications expose platform_notifications.notification_type / notification_subtype, while on-chain notifications expose the constant \"wallet_activity\" as notification_type and notifications_part.kind as notification_subtype. Clients should distinguish the two shapes structurally (presence of \"payload\" for on-chain vs \"template\" for platform).\n */\n post: {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n requestBody: {\n content: {\n 'application/json': components['schemas']['NotificationInputV3'];\n };\n };\n responses: {\n /** @description Notifications listed successfully */\n 200: {\n headers: {\n [name: string]: unknown;\n };\n content: {\n 'application/json': components['schemas']['NotificationOutputV4'];\n };\n };\n /** @description Bad request */\n 400: {\n headers: {\n [name: string]: unknown;\n };\n content?: never;\n };\n /** @description Internal server error */\n 500: {\n headers: {\n [name: string]: unknown;\n };\n content?: never;\n };\n };\n };\n delete?: never;\n options?: never;\n head?: never;\n patch?: never;\n trace?: never;\n };\n '/api/v4/notifications/mark-as-read': {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n get?: never;\n put?: never;\n /** Mark notifications as read */\n post: {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n requestBody: {\n content: {\n 'application/json': {\n ids?: string[];\n };\n };\n };\n responses: {\n /** @description Successfully marked notifications as read */\n 200: {\n headers: {\n [name: string]: unknown;\n };\n content?: never;\n };\n };\n };\n delete?: never;\n options?: never;\n head?: never;\n patch?: never;\n trace?: never;\n };\n '/api/v3/notifications': {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n get?: never;\n put?: never;\n /** List both platform and on-chain notifications for a certain user/address(es) */\n post: {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n requestBody: {\n content: {\n 'application/json': components['schemas']['NotificationInputV3'];\n };\n };\n responses: {\n /** @description Notifications listed successfully */\n 200: {\n headers: {\n [name: string]: unknown;\n };\n content: {\n 'application/json': components['schemas']['NotificationOutputV3'];\n };\n };\n /** @description Bad request */\n 400: {\n headers: {\n [name: string]: unknown;\n };\n content?: never;\n };\n /** @description Internal server error */\n 500: {\n headers: {\n [name: string]: unknown;\n };\n content?: never;\n };\n };\n };\n delete?: never;\n options?: never;\n head?: never;\n patch?: never;\n trace?: never;\n };\n '/api/v3/notifications/mark-as-read': {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n get?: never;\n put?: never;\n /** Mark notifications as read */\n post: {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n requestBody: {\n content: {\n 'application/json': {\n ids?: string[];\n };\n };\n };\n responses: {\n /** @description Successfully marked notifications as read */\n 200: {\n headers: {\n [name: string]: unknown;\n };\n content?: never;\n };\n };\n };\n delete?: never;\n options?: never;\n head?: never;\n patch?: never;\n trace?: never;\n };\n '/api/v2/notifications': {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n get?: never;\n put?: never;\n /** List all notifications for a certain user/address(es) */\n post: {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n requestBody: {\n content: {\n 'application/json': components['schemas']['NotificationInput'][];\n };\n };\n responses: {\n /** @description Notifications listed successfully */\n 200: {\n headers: {\n [name: string]: unknown;\n };\n content: {\n 'application/json': components['schemas']['WalletNotification'][];\n };\n };\n /** @description Bad request */\n 400: {\n headers: {\n [name: string]: unknown;\n };\n content?: never;\n };\n /** @description Internal server error */\n 500: {\n headers: {\n [name: string]: unknown;\n };\n content?: never;\n };\n };\n };\n delete?: never;\n options?: never;\n head?: never;\n patch?: never;\n trace?: never;\n };\n '/api/v2/notifications/mark-as-read': {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n get?: never;\n put?: never;\n /** Mark notifications as read */\n post: {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n requestBody: {\n content: {\n 'application/json': {\n ids?: string[];\n };\n };\n };\n responses: {\n /** @description Successfully marked notifications as read */\n 200: {\n headers: {\n [name: string]: unknown;\n };\n content?: never;\n };\n };\n };\n delete?: never;\n options?: never;\n head?: never;\n patch?: never;\n trace?: never;\n };\n '/api/v1/notifications': {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n get?: never;\n put?: never;\n /** List all notifications ordered by most recent */\n post: {\n parameters: {\n query?: {\n /** @description Page number for pagination */\n page?: number;\n /** @description Number of notifications per page for pagination */\n per_page?: number;\n };\n header?: never;\n path?: never;\n cookie?: never;\n };\n requestBody?: {\n content: {\n 'application/json': {\n trigger_ids: string[];\n chain_ids?: number[];\n kinds?: string[];\n unread?: boolean;\n };\n };\n };\n responses: {\n /** @description Successfully fetched a list of notifications */\n 200: {\n headers: {\n [name: string]: unknown;\n };\n content: {\n 'application/json': components['schemas']['WalletNotification'][];\n };\n };\n };\n };\n delete?: never;\n options?: never;\n head?: never;\n patch?: never;\n trace?: never;\n };\n '/api/v1/notifications/mark-as-read': {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n get?: never;\n put?: never;\n /** Mark notifications as read */\n post: {\n parameters: {\n query?: never;\n header?: never;\n path?: never;\n cookie?: never;\n };\n requestBody: {\n content: {\n 'application/json': {\n ids?: string[];\n };\n };\n };\n responses: {\n /** @description Successfully marked notifications as read */\n 200: {\n headers: {\n [name: string]: unknown;\n };\n content?: never;\n };\n };\n };\n delete?: never;\n options?: never;\n head?: never;\n patch?: never;\n trace?: never;\n };\n};\nexport type webhooks = Record<string, never>;\nexport type components = {\n schemas: {\n /**\n * @example mobile\n * @enum {string}\n */\n AppPlatform: 'portfolio' | 'extension' | 'mobile';\n NotificationInputV3: {\n /** @example en-US */\n locale: string;\n platform: components['schemas']['AppPlatform'];\n addresses: string[];\n };\n NotificationOutputV3: (\n | components['schemas']['PlatformNotification']\n | components['schemas']['OnChainNotification']\n )[];\n PlatformNotification: {\n /**\n * Format: uuid\n * @example 3fa85f64-5717-4562-b3fc-2c963f66afa6\n */\n id: string;\n /** @enum {string} */\n notification_type: 'platform';\n /** @example position_liquidated */\n notification_subtype: string;\n /** @example false */\n unread: boolean;\n template: components['schemas']['LocalizedNotification'];\n /**\n * Format: date-time\n * @example 2025-10-09T09:45:34.202Z\n */\n created_at: string;\n };\n LocalizedNotification: {\n image_url: string;\n cta?: components['schemas']['LocalizedNotificationCTA'];\n title: string;\n body: string;\n };\n LocalizedNotificationCTA: {\n content: string;\n link: string;\n };\n OnChainNotification: {\n /**\n * Format: uuid\n * @example 3fa85f64-5717-4562-b3fc-2c963f66afa6\n */\n id: string;\n /** @enum {string} */\n notification_type: 'on-chain';\n /** @example false */\n unread: boolean;\n /**\n * Format: date-time\n * @example 2025-10-09T09:45:34.202Z\n */\n created_at: string;\n payload: components['schemas']['OnChainPayload'];\n };\n OnChainPayload: {\n /** @example 1 */\n chain_id: number;\n /** @example 17485840 */\n block_number: number;\n block_timestamp: string;\n /** @example 0x881D40237659C251811CEC9c364ef91dC08D300C */\n tx_hash: string;\n address: string;\n network: components['schemas']['NetworkMetadata'];\n data?:\n | components['schemas']['Data_MetamaskSwapCompleted']\n | components['schemas']['Data_LidoStakeReadyToBeWithdrawn']\n | components['schemas']['Data_LidoStakeCompleted']\n | components['schemas']['Data_LidoWithdrawalRequested']\n | components['schemas']['Data_LidoWithdrawalCompleted']\n | components['schemas']['Data_RocketPoolStakeCompleted']\n | components['schemas']['Data_RocketPoolUnstakeCompleted']\n | components['schemas']['Data_ETHSent']\n | components['schemas']['Data_ETHReceived']\n | components['schemas']['Data_ERC20Sent']\n | components['schemas']['Data_ERC20Received']\n | components['schemas']['Data_ERC721Sent']\n | components['schemas']['Data_ERC721Received']\n | components['schemas']['Data_ERC1155Sent']\n | components['schemas']['Data_ERC1155Received'];\n };\n /** @description A heterogeneous list of platform and on-chain notifications. The two shapes are discriminated by `notification_type`: a value of \"wallet_activity\" identifies an OnChainNotificationV4, any other value identifies a PlatformNotificationV4. \"wallet_activity\" is a reserved value and MUST NOT be used as a producer-set platform notification_type. (This cannot be modelled as a formal OpenAPI discriminator because the platform notification_type set is open-ended.) */\n NotificationOutputV4: (\n | components['schemas']['PlatformNotificationV4']\n | components['schemas']['OnChainNotificationV4']\n )[];\n PlatformNotificationV4: {\n /**\n * Format: uuid\n * @example 3fa85f64-5717-4562-b3fc-2c963f66afa6\n */\n id: string;\n /**\n * @description Producer-set platform_notifications.notification_type value.\n * @example perps\n */\n notification_type: string;\n /**\n * @description Producer-set platform_notifications.notification_subtype value.\n * @example position_liquidated\n */\n notification_subtype: string;\n /** @example false */\n unread: boolean;\n template: components['schemas']['LocalizedNotification'];\n /**\n * Format: date-time\n * @example 2025-10-09T09:45:34.202Z\n */\n created_at: string;\n };\n OnChainNotificationV4: {\n /**\n * Format: uuid\n * @example 3fa85f64-5717-4562-b3fc-2c963f66afa6\n */\n id: string;\n /** @enum {string} */\n notification_type: 'wallet_activity';\n /**\n * @description notifications_part.kind value.\n * @example metamask_swap_completed\n */\n notification_subtype: string;\n /** @example false */\n unread: boolean;\n /**\n * Format: date-time\n * @example 2025-10-09T09:45:34.202Z\n */\n created_at: string;\n payload: components['schemas']['OnChainPayload'];\n };\n NotificationInput: {\n /** Format: address */\n address: string;\n };\n WalletNotification: {\n /** Format: uuid */\n id: string;\n /** Format: uuid */\n trigger_id: string;\n /** @example 1 */\n chain_id: number;\n /** @example 17485840 */\n block_number: number;\n block_timestamp: string;\n /**\n * Format: address\n * @example 0x881D40237659C251811CEC9c364ef91dC08D300C\n */\n tx_hash: string;\n /** @example false */\n unread: boolean;\n /** Format: date-time */\n created_at: string;\n /** Format: address */\n address: string;\n data?:\n | components['schemas']['Data_MetamaskSwapCompleted']\n | components['schemas']['Data_LidoStakeReadyToBeWithdrawn']\n | components['schemas']['Data_LidoStakeCompleted']\n | components['schemas']['Data_LidoWithdrawalRequested']\n | components['schemas']['Data_LidoWithdrawalCompleted']\n | components['schemas']['Data_RocketPoolStakeCompleted']\n | components['schemas']['Data_RocketPoolUnstakeCompleted']\n | components['schemas']['Data_ETHSent']\n | components['schemas']['Data_ETHReceived']\n | components['schemas']['Data_ERC20Sent']\n | components['schemas']['Data_ERC20Received']\n | components['schemas']['Data_ERC721Sent']\n | components['schemas']['Data_ERC721Received']\n | components['schemas']['Data_ERC1155Sent']\n | components['schemas']['Data_ERC1155Received'];\n };\n Data_MetamaskSwapCompleted: {\n /** @enum {string} */\n kind: 'metamask_swap_completed';\n network_fee: components['schemas']['NetworkFee'];\n /** Format: decimal */\n rate: string;\n token_in: components['schemas']['Token'];\n token_out: components['schemas']['Token'];\n };\n Data_LidoStakeCompleted: {\n /** @enum {string} */\n kind: 'lido_stake_completed';\n network_fee: components['schemas']['NetworkFee'];\n stake_in: components['schemas']['Stake'];\n stake_out: components['schemas']['Stake'];\n };\n Data_LidoWithdrawalRequested: {\n /** @enum {string} */\n kind: 'lido_withdrawal_requested';\n network_fee: components['schemas']['NetworkFee'];\n stake_in: components['schemas']['Stake'];\n stake_out: components['schemas']['Stake'];\n };\n Data_LidoStakeReadyToBeWithdrawn: {\n /** @enum {string} */\n kind: 'lido_stake_ready_to_be_withdrawn';\n /** Format: decimal */\n request_id: string;\n staked_eth: components['schemas']['Stake'];\n };\n Data_LidoWithdrawalCompleted: {\n /** @enum {string} */\n kind: 'lido_withdrawal_completed';\n network_fee: components['schemas']['NetworkFee'];\n stake_in: components['schemas']['Stake'];\n stake_out: components['schemas']['Stake'];\n };\n Data_RocketPoolStakeCompleted: {\n /** @enum {string} */\n kind: 'rocketpool_stake_completed';\n network_fee: components['schemas']['NetworkFee'];\n stake_in: components['schemas']['Stake'];\n stake_out: components['schemas']['Stake'];\n };\n Data_RocketPoolUnstakeCompleted: {\n /** @enum {string} */\n kind: 'rocketpool_unstake_completed';\n network_fee: components['schemas']['NetworkFee'];\n stake_in: components['schemas']['Stake'];\n stake_out: components['schemas']['Stake'];\n };\n Data_ETHSent: {\n /** @enum {string} */\n kind: 'eth_sent';\n network_fee: components['schemas']['NetworkFee'];\n /** Format: address */\n from: string;\n /** Format: address */\n to: string;\n amount: {\n /** Format: decimal */\n usd: string;\n /** Format: decimal */\n eth: string;\n };\n };\n Data_ETHReceived: {\n /** @enum {string} */\n kind: 'eth_received';\n network_fee: components['schemas']['NetworkFee'];\n /** Format: address */\n from: string;\n /** Format: address */\n to: string;\n amount: {\n /** Format: decimal */\n usd: string;\n /** Format: decimal */\n eth: string;\n };\n };\n Data_ERC20Sent: {\n /** @enum {string} */\n kind: 'erc20_sent';\n network_fee: components['schemas']['NetworkFee'];\n /** Format: address */\n from: string;\n /** Format: address */\n to: string;\n token: components['schemas']['Token'];\n };\n Data_ERC20Received: {\n /** @enum {string} */\n kind: 'erc20_received';\n network_fee: components['schemas']['NetworkFee'];\n /** Format: address */\n from: string;\n /** Format: address */\n to: string;\n token: components['schemas']['Token'];\n };\n Data_ERC721Sent: {\n /** @enum {string} */\n kind: 'erc721_sent';\n network_fee: components['schemas']['NetworkFee'];\n /** Format: address */\n from: string;\n /** Format: address */\n to: string;\n nft: components['schemas']['NFT'];\n };\n Data_ERC721Received: {\n /** @enum {string} */\n kind: 'erc721_received';\n network_fee: components['schemas']['NetworkFee'];\n /** Format: address */\n from: string;\n /** Format: address */\n to: string;\n nft: components['schemas']['NFT'];\n };\n Data_ERC1155Sent: {\n /** @enum {string} */\n kind: 'erc1155_sent';\n network_fee: components['schemas']['NetworkFee'];\n /** Format: address */\n from: string;\n /** Format: address */\n to: string;\n nft?: components['schemas']['NFT'];\n };\n Data_ERC1155Received: {\n /** @enum {string} */\n kind: 'erc1155_received';\n network_fee: components['schemas']['NetworkFee'];\n /** Format: address */\n from: string;\n /** Format: address */\n to: string;\n nft?: components['schemas']['NFT'];\n };\n NetworkFee: {\n /** Format: decimal */\n gas_price: string;\n /** Format: decimal */\n native_token_price_in_usd: string;\n };\n Token: {\n /** Format: address */\n address: string;\n symbol: string;\n name: string;\n /** Format: decimal */\n amount: string;\n /** Format: int32 */\n decimals: string;\n /** Format: uri */\n image: string;\n /** Format: decimal */\n usd: string;\n };\n NFT: {\n name: string;\n token_id: string;\n /** Format: uri */\n image: string;\n collection: {\n /** Format: address */\n address: string;\n name: string;\n symbol: string;\n /** Format: uri */\n image: string;\n };\n };\n Stake: {\n /** Format: address */\n address: string;\n symbol: string;\n name: string;\n /** Format: decimal */\n amount: string;\n /** Format: int32 */\n decimals: string;\n /** Format: uri */\n image: string;\n /** Format: decimal */\n usd: string;\n };\n BlockExplorer: {\n /**\n * Format: uri\n * @example https://etherscan.io\n */\n url: string;\n /** @example Etherscan */\n name: string;\n };\n NetworkMetadata: {\n /**\n * @description Human-readable network name\n * @example Ethereum\n */\n name: string;\n /**\n * @description Native token symbol\n * @example ETH\n */\n native_symbol: string;\n block_explorer: components['schemas']['BlockExplorer'];\n };\n };\n responses: never;\n parameters: never;\n requestBodies: never;\n headers: never;\n pathItems: never;\n};\nexport type $defs = Record<string, never>;\nexport type operations = Record<string, never>;\n"]}
@@ -0,0 +1,62 @@
1
+ import type { Types } from '../../NotificationServicesController/index.js';
2
+ import type { Constants } from '../../NotificationServicesController/index.js';
3
+ export type TranslationKeys = {
4
+ pushPlatformNotificationsFundsSentTitle: () => string;
5
+ pushPlatformNotificationsFundsSentDescriptionDefault: () => string;
6
+ pushPlatformNotificationsFundsSentDescription: (...args: [string, string]) => string;
7
+ pushPlatformNotificationsFundsReceivedTitle: () => string;
8
+ pushPlatformNotificationsFundsReceivedDescriptionDefault: () => string;
9
+ pushPlatformNotificationsFundsReceivedDescription: (...args: [string, string]) => string;
10
+ pushPlatformNotificationsSwapCompletedTitle: () => string;
11
+ pushPlatformNotificationsSwapCompletedDescription: () => string;
12
+ pushPlatformNotificationsNftSentTitle: () => string;
13
+ pushPlatformNotificationsNftSentDescription: () => string;
14
+ pushPlatformNotificationsNftReceivedTitle: () => string;
15
+ pushPlatformNotificationsNftReceivedDescription: () => string;
16
+ pushPlatformNotificationsStakingRocketpoolStakeCompletedTitle: () => string;
17
+ pushPlatformNotificationsStakingRocketpoolStakeCompletedDescription: () => string;
18
+ pushPlatformNotificationsStakingRocketpoolUnstakeCompletedTitle: () => string;
19
+ pushPlatformNotificationsStakingRocketpoolUnstakeCompletedDescription: () => string;
20
+ pushPlatformNotificationsStakingLidoStakeCompletedTitle: () => string;
21
+ pushPlatformNotificationsStakingLidoStakeCompletedDescription: () => string;
22
+ pushPlatformNotificationsStakingLidoStakeReadyToBeWithdrawnTitle: () => string;
23
+ pushPlatformNotificationsStakingLidoStakeReadyToBeWithdrawnDescription: () => string;
24
+ pushPlatformNotificationsStakingLidoWithdrawalRequestedTitle: () => string;
25
+ pushPlatformNotificationsStakingLidoWithdrawalRequestedDescription: () => string;
26
+ pushPlatformNotificationsStakingLidoWithdrawalCompletedTitle: () => string;
27
+ pushPlatformNotificationsStakingLidoWithdrawalCompletedDescription: () => string;
28
+ };
29
+ type PushNotificationMessage = {
30
+ title: string;
31
+ description: string;
32
+ ctaLink?: string;
33
+ };
34
+ type NotificationMessage<TNotification extends Types.INotification> = {
35
+ title: (notification: TNotification) => string | null;
36
+ defaultDescription: (notification: TNotification) => string | null;
37
+ getDescription?: (notification: TNotification) => string | null;
38
+ link?: (notification: TNotification) => string | null;
39
+ };
40
+ type NotificationMessageDict = {
41
+ [TriggerType in Constants.TRIGGER_TYPES]?: NotificationMessage<Extract<Types.INotification, {
42
+ type: TriggerType;
43
+ }>>;
44
+ };
45
+ /**
46
+ * On Chain Push Notification Messages.
47
+ * This is a list of all the push notifications we support. Update this for synced notifications on mobile and extension
48
+ *
49
+ * @param translationKeys - all translations supported
50
+ * @returns A translation push message object.
51
+ */
52
+ export declare const createOnChainPushNotificationMessages: (translationKeys: TranslationKeys) => NotificationMessageDict;
53
+ /**
54
+ * Creates a push notification message based on the given on-chain raw notification.
55
+ *
56
+ * @param notification - processed notification.
57
+ * @param translations - translates keys into text
58
+ * @returns The push notification message object, or null if the notification is invalid.
59
+ */
60
+ export declare function createOnChainPushNotificationMessage(notification: Types.INotification, translations: TranslationKeys): PushNotificationMessage | null;
61
+ export {};
62
+ //# sourceMappingURL=get-notification-message.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-notification-message.d.ts","sourceRoot":"","sources":["../../../src/NotificationServicesPushController/utils/get-notification-message.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,+CAA+C,CAAC;AAC3E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAC;AAG/E,MAAM,MAAM,eAAe,GAAG;IAC5B,uCAAuC,EAAE,MAAM,MAAM,CAAC;IACtD,oDAAoD,EAAE,MAAM,MAAM,CAAC;IACnE,6CAA6C,EAAE,CAC7C,GAAG,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,KACtB,MAAM,CAAC;IACZ,2CAA2C,EAAE,MAAM,MAAM,CAAC;IAC1D,wDAAwD,EAAE,MAAM,MAAM,CAAC;IACvE,iDAAiD,EAAE,CACjD,GAAG,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,KACtB,MAAM,CAAC;IACZ,2CAA2C,EAAE,MAAM,MAAM,CAAC;IAC1D,iDAAiD,EAAE,MAAM,MAAM,CAAC;IAChE,qCAAqC,EAAE,MAAM,MAAM,CAAC;IACpD,2CAA2C,EAAE,MAAM,MAAM,CAAC;IAC1D,yCAAyC,EAAE,MAAM,MAAM,CAAC;IACxD,+CAA+C,EAAE,MAAM,MAAM,CAAC;IAC9D,6DAA6D,EAAE,MAAM,MAAM,CAAC;IAC5E,mEAAmE,EAAE,MAAM,MAAM,CAAC;IAClF,+DAA+D,EAAE,MAAM,MAAM,CAAC;IAC9E,qEAAqE,EAAE,MAAM,MAAM,CAAC;IACpF,uDAAuD,EAAE,MAAM,MAAM,CAAC;IACtE,6DAA6D,EAAE,MAAM,MAAM,CAAC;IAC5E,gEAAgE,EAAE,MAAM,MAAM,CAAC;IAC/E,sEAAsE,EAAE,MAAM,MAAM,CAAC;IACrF,4DAA4D,EAAE,MAAM,MAAM,CAAC;IAC3E,kEAAkE,EAAE,MAAM,MAAM,CAAC;IACjF,4DAA4D,EAAE,MAAM,MAAM,CAAC;IAC3E,kEAAkE,EAAE,MAAM,MAAM,CAAC;CAClF,CAAC;AAEF,KAAK,uBAAuB,GAAG;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,KAAK,mBAAmB,CAAC,aAAa,SAAS,KAAK,CAAC,aAAa,IAAI;IACpE,KAAK,EAAE,CAAC,YAAY,EAAE,aAAa,KAAK,MAAM,GAAG,IAAI,CAAC;IACtD,kBAAkB,EAAE,CAAC,YAAY,EAAE,aAAa,KAAK,MAAM,GAAG,IAAI,CAAC;IACnE,cAAc,CAAC,EAAE,CAAC,YAAY,EAAE,aAAa,KAAK,MAAM,GAAG,IAAI,CAAC;IAChE,IAAI,CAAC,EAAE,CAAC,YAAY,EAAE,aAAa,KAAK,MAAM,GAAG,IAAI,CAAC;CACvD,CAAC;AAEF,KAAK,uBAAuB,GAAG;KAC5B,WAAW,IAAI,SAAS,CAAC,aAAa,CAAC,CAAC,EAAE,mBAAmB,CAC5D,OAAO,CAAC,KAAK,CAAC,aAAa,EAAE;QAAE,IAAI,EAAE,WAAW,CAAA;KAAE,CAAC,CACpD;CACF,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,qCAAqC,oBAC/B,eAAe,KAC/B,uBAwMF,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,oCAAoC,CAClD,YAAY,EAAE,KAAK,CAAC,aAAa,EACjC,YAAY,EAAE,eAAe,GAC5B,uBAAuB,GAAG,IAAI,CA8BhC"}
@@ -0,0 +1,166 @@
1
+ import { getAmount, formatAmount } from './get-notification-data.js';
2
+ /**
3
+ * On Chain Push Notification Messages.
4
+ * This is a list of all the push notifications we support. Update this for synced notifications on mobile and extension
5
+ *
6
+ * @param translationKeys - all translations supported
7
+ * @returns A translation push message object.
8
+ */
9
+ export const createOnChainPushNotificationMessages = (translationKeys) => {
10
+ const translate = (...args) => {
11
+ const [key, ...otherArgs] = args;
12
+ // Coerce types for the translation function
13
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
14
+ const fn = translationKeys[key];
15
+ return fn(...otherArgs);
16
+ };
17
+ return {
18
+ erc20_sent: {
19
+ title: () => translate('pushPlatformNotificationsFundsSentTitle'),
20
+ defaultDescription: () => translate('pushPlatformNotificationsFundsSentDescriptionDefault'),
21
+ getDescription: (notification) => {
22
+ const symbol = notification?.payload?.data?.token?.symbol;
23
+ const tokenAmount = notification?.payload?.data?.token?.amount;
24
+ const tokenDecimals = notification?.payload?.data?.token?.decimals;
25
+ if (!symbol || !tokenAmount || !tokenDecimals) {
26
+ return null;
27
+ }
28
+ const amount = getAmount(tokenAmount, tokenDecimals, {
29
+ shouldEllipse: true,
30
+ });
31
+ return translate('pushPlatformNotificationsFundsSentDescription', amount, symbol);
32
+ },
33
+ },
34
+ eth_sent: {
35
+ title: () => translate('pushPlatformNotificationsFundsSentTitle'),
36
+ defaultDescription: () => translate('pushPlatformNotificationsFundsSentDescriptionDefault'),
37
+ getDescription: (notification) => {
38
+ const symbol = notification?.payload?.network?.native_symbol;
39
+ const tokenAmount = notification?.payload?.data?.amount?.eth;
40
+ if (!symbol || !tokenAmount) {
41
+ return null;
42
+ }
43
+ const amount = formatAmount(parseFloat(tokenAmount), {
44
+ shouldEllipse: true,
45
+ });
46
+ return translate('pushPlatformNotificationsFundsSentDescription', amount, symbol);
47
+ },
48
+ },
49
+ erc20_received: {
50
+ title: () => translate('pushPlatformNotificationsFundsReceivedTitle'),
51
+ defaultDescription: () => translate('pushPlatformNotificationsFundsReceivedDescriptionDefault'),
52
+ getDescription: (notification) => {
53
+ const symbol = notification?.payload?.data?.token?.symbol;
54
+ const tokenAmount = notification?.payload?.data?.token?.amount;
55
+ const tokenDecimals = notification?.payload?.data?.token?.decimals;
56
+ if (!symbol || !tokenAmount || !tokenDecimals) {
57
+ return null;
58
+ }
59
+ const amount = getAmount(tokenAmount, tokenDecimals, {
60
+ shouldEllipse: true,
61
+ });
62
+ return translate('pushPlatformNotificationsFundsReceivedDescription', amount, symbol);
63
+ },
64
+ },
65
+ eth_received: {
66
+ title: () => translate('pushPlatformNotificationsFundsReceivedTitle'),
67
+ defaultDescription: () => translate('pushPlatformNotificationsFundsReceivedDescriptionDefault'),
68
+ getDescription: (notification) => {
69
+ const symbol = notification?.payload?.network?.native_symbol;
70
+ const tokenAmount = notification?.payload?.data?.amount?.eth;
71
+ if (!symbol || !tokenAmount) {
72
+ return null;
73
+ }
74
+ const amount = formatAmount(parseFloat(tokenAmount), {
75
+ shouldEllipse: true,
76
+ });
77
+ return translate('pushPlatformNotificationsFundsReceivedDescription', amount, symbol);
78
+ },
79
+ },
80
+ metamask_swap_completed: {
81
+ title: () => translate('pushPlatformNotificationsSwapCompletedTitle'),
82
+ defaultDescription: () => translate('pushPlatformNotificationsSwapCompletedDescription'),
83
+ },
84
+ erc721_sent: {
85
+ title: () => translate('pushPlatformNotificationsNftSentTitle'),
86
+ defaultDescription: () => translate('pushPlatformNotificationsNftSentDescription'),
87
+ },
88
+ erc1155_sent: {
89
+ title: () => translate('pushPlatformNotificationsNftSentTitle'),
90
+ defaultDescription: () => translate('pushPlatformNotificationsNftSentDescription'),
91
+ },
92
+ erc721_received: {
93
+ title: () => translate('pushPlatformNotificationsNftReceivedTitle'),
94
+ defaultDescription: () => translate('pushPlatformNotificationsNftReceivedDescription'),
95
+ },
96
+ erc1155_received: {
97
+ title: () => translate('pushPlatformNotificationsNftReceivedTitle'),
98
+ defaultDescription: () => translate('pushPlatformNotificationsNftReceivedDescription'),
99
+ },
100
+ rocketpool_stake_completed: {
101
+ title: () => translate('pushPlatformNotificationsStakingRocketpoolStakeCompletedTitle'),
102
+ defaultDescription: () => translate('pushPlatformNotificationsStakingRocketpoolStakeCompletedDescription'),
103
+ },
104
+ rocketpool_unstake_completed: {
105
+ title: () => translate('pushPlatformNotificationsStakingRocketpoolUnstakeCompletedTitle'),
106
+ defaultDescription: () => translate('pushPlatformNotificationsStakingRocketpoolUnstakeCompletedDescription'),
107
+ },
108
+ lido_stake_completed: {
109
+ title: () => translate('pushPlatformNotificationsStakingLidoStakeCompletedTitle'),
110
+ defaultDescription: () => translate('pushPlatformNotificationsStakingLidoStakeCompletedDescription'),
111
+ },
112
+ lido_stake_ready_to_be_withdrawn: {
113
+ title: () => translate('pushPlatformNotificationsStakingLidoStakeReadyToBeWithdrawnTitle'),
114
+ defaultDescription: () => translate('pushPlatformNotificationsStakingLidoStakeReadyToBeWithdrawnDescription'),
115
+ },
116
+ lido_withdrawal_requested: {
117
+ title: () => translate('pushPlatformNotificationsStakingLidoWithdrawalRequestedTitle'),
118
+ defaultDescription: () => translate('pushPlatformNotificationsStakingLidoWithdrawalRequestedDescription'),
119
+ },
120
+ lido_withdrawal_completed: {
121
+ title: () => translate('pushPlatformNotificationsStakingLidoWithdrawalCompletedTitle'),
122
+ defaultDescription: () => translate('pushPlatformNotificationsStakingLidoWithdrawalCompletedDescription'),
123
+ },
124
+ platform: {
125
+ title: (notification) => notification.template.title,
126
+ defaultDescription: (notification) => notification.template.body,
127
+ getDescription: (notification) => notification.template.body,
128
+ },
129
+ };
130
+ };
131
+ /**
132
+ * Creates a push notification message based on the given on-chain raw notification.
133
+ *
134
+ * @param notification - processed notification.
135
+ * @param translations - translates keys into text
136
+ * @returns The push notification message object, or null if the notification is invalid.
137
+ */
138
+ export function createOnChainPushNotificationMessage(notification, translations) {
139
+ if (!notification?.type) {
140
+ return null;
141
+ }
142
+ const notificationMessage = createOnChainPushNotificationMessages(translations)[notification.type];
143
+ if (!notificationMessage) {
144
+ return null;
145
+ }
146
+ let description = null;
147
+ try {
148
+ description =
149
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
150
+ notificationMessage?.getDescription?.(notification) ??
151
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
152
+ notificationMessage.defaultDescription?.(notification) ??
153
+ null;
154
+ }
155
+ catch {
156
+ description =
157
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
158
+ notificationMessage.defaultDescription?.(notification) ?? null;
159
+ }
160
+ return {
161
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
162
+ title: notificationMessage?.title?.(notification) ?? '', // Ensure title is always a string
163
+ description: description ?? '', // Fallback to empty string if null
164
+ };
165
+ }
166
+ //# sourceMappingURL=get-notification-message.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-notification-message.js","sourceRoot":"","sources":["../../../src/NotificationServicesPushController/utils/get-notification-message.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Types } from '../../NotificationServicesController/index.js';\nimport type { Constants } from '../../NotificationServicesController/index.js';\nimport { getAmount, formatAmount } from './get-notification-data.js';\n\nexport type TranslationKeys = {\n pushPlatformNotificationsFundsSentTitle: () => string;\n pushPlatformNotificationsFundsSentDescriptionDefault: () => string;\n pushPlatformNotificationsFundsSentDescription: (\n ...args: [string, string]\n ) => string;\n pushPlatformNotificationsFundsReceivedTitle: () => string;\n pushPlatformNotificationsFundsReceivedDescriptionDefault: () => string;\n pushPlatformNotificationsFundsReceivedDescription: (\n ...args: [string, string]\n ) => string;\n pushPlatformNotificationsSwapCompletedTitle: () => string;\n pushPlatformNotificationsSwapCompletedDescription: () => string;\n pushPlatformNotificationsNftSentTitle: () => string;\n pushPlatformNotificationsNftSentDescription: () => string;\n pushPlatformNotificationsNftReceivedTitle: () => string;\n pushPlatformNotificationsNftReceivedDescription: () => string;\n pushPlatformNotificationsStakingRocketpoolStakeCompletedTitle: () => string;\n pushPlatformNotificationsStakingRocketpoolStakeCompletedDescription: () => string;\n pushPlatformNotificationsStakingRocketpoolUnstakeCompletedTitle: () => string;\n pushPlatformNotificationsStakingRocketpoolUnstakeCompletedDescription: () => string;\n pushPlatformNotificationsStakingLidoStakeCompletedTitle: () => string;\n pushPlatformNotificationsStakingLidoStakeCompletedDescription: () => string;\n pushPlatformNotificationsStakingLidoStakeReadyToBeWithdrawnTitle: () => string;\n pushPlatformNotificationsStakingLidoStakeReadyToBeWithdrawnDescription: () => string;\n pushPlatformNotificationsStakingLidoWithdrawalRequestedTitle: () => string;\n pushPlatformNotificationsStakingLidoWithdrawalRequestedDescription: () => string;\n pushPlatformNotificationsStakingLidoWithdrawalCompletedTitle: () => string;\n pushPlatformNotificationsStakingLidoWithdrawalCompletedDescription: () => string;\n};\n\ntype PushNotificationMessage = {\n title: string;\n description: string;\n ctaLink?: string;\n};\n\ntype NotificationMessage<TNotification extends Types.INotification> = {\n title: (notification: TNotification) => string | null;\n defaultDescription: (notification: TNotification) => string | null;\n getDescription?: (notification: TNotification) => string | null;\n link?: (notification: TNotification) => string | null;\n};\n\ntype NotificationMessageDict = {\n [TriggerType in Constants.TRIGGER_TYPES]?: NotificationMessage<\n Extract<Types.INotification, { type: TriggerType }>\n >;\n};\n\n/**\n * On Chain Push Notification Messages.\n * This is a list of all the push notifications we support. Update this for synced notifications on mobile and extension\n *\n * @param translationKeys - all translations supported\n * @returns A translation push message object.\n */\nexport const createOnChainPushNotificationMessages = (\n translationKeys: TranslationKeys,\n): NotificationMessageDict => {\n type TranslationFn = <TKey extends keyof TranslationKeys>(\n ...args: [TKey, ...Parameters<TranslationKeys[TKey]>]\n ) => string;\n const translate: TranslationFn = (...args) => {\n const [key, ...otherArgs] = args;\n\n // Coerce types for the translation function\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const fn: any = translationKeys[key];\n return fn(...otherArgs);\n };\n\n return {\n erc20_sent: {\n title: (): string | null =>\n translate('pushPlatformNotificationsFundsSentTitle'),\n defaultDescription: (): string | null =>\n translate('pushPlatformNotificationsFundsSentDescriptionDefault'),\n getDescription: (notification): string | null => {\n const symbol = notification?.payload?.data?.token?.symbol;\n const tokenAmount = notification?.payload?.data?.token?.amount;\n const tokenDecimals = notification?.payload?.data?.token?.decimals;\n if (!symbol || !tokenAmount || !tokenDecimals) {\n return null;\n }\n\n const amount = getAmount(tokenAmount, tokenDecimals, {\n shouldEllipse: true,\n });\n return translate(\n 'pushPlatformNotificationsFundsSentDescription',\n amount,\n symbol,\n );\n },\n },\n eth_sent: {\n title: (): string | null =>\n translate('pushPlatformNotificationsFundsSentTitle'),\n defaultDescription: (): string | null =>\n translate('pushPlatformNotificationsFundsSentDescriptionDefault'),\n getDescription: (notification): string | null => {\n const symbol = notification?.payload?.network?.native_symbol;\n const tokenAmount = notification?.payload?.data?.amount?.eth;\n if (!symbol || !tokenAmount) {\n return null;\n }\n\n const amount = formatAmount(parseFloat(tokenAmount), {\n shouldEllipse: true,\n });\n return translate(\n 'pushPlatformNotificationsFundsSentDescription',\n amount,\n symbol,\n );\n },\n },\n erc20_received: {\n title: (): string | null =>\n translate('pushPlatformNotificationsFundsReceivedTitle'),\n defaultDescription: (): string | null =>\n translate('pushPlatformNotificationsFundsReceivedDescriptionDefault'),\n getDescription: (notification): string | null => {\n const symbol = notification?.payload?.data?.token?.symbol;\n const tokenAmount = notification?.payload?.data?.token?.amount;\n const tokenDecimals = notification?.payload?.data?.token?.decimals;\n if (!symbol || !tokenAmount || !tokenDecimals) {\n return null;\n }\n\n const amount = getAmount(tokenAmount, tokenDecimals, {\n shouldEllipse: true,\n });\n return translate(\n 'pushPlatformNotificationsFundsReceivedDescription',\n amount,\n symbol,\n );\n },\n },\n eth_received: {\n title: (): string | null =>\n translate('pushPlatformNotificationsFundsReceivedTitle'),\n defaultDescription: (): string | null =>\n translate('pushPlatformNotificationsFundsReceivedDescriptionDefault'),\n getDescription: (notification): string | null => {\n const symbol = notification?.payload?.network?.native_symbol;\n const tokenAmount = notification?.payload?.data?.amount?.eth;\n if (!symbol || !tokenAmount) {\n return null;\n }\n\n const amount = formatAmount(parseFloat(tokenAmount), {\n shouldEllipse: true,\n });\n return translate(\n 'pushPlatformNotificationsFundsReceivedDescription',\n amount,\n symbol,\n );\n },\n },\n metamask_swap_completed: {\n title: (): string | null =>\n translate('pushPlatformNotificationsSwapCompletedTitle'),\n defaultDescription: (): string | null =>\n translate('pushPlatformNotificationsSwapCompletedDescription'),\n },\n erc721_sent: {\n title: (): string | null =>\n translate('pushPlatformNotificationsNftSentTitle'),\n defaultDescription: (): string | null =>\n translate('pushPlatformNotificationsNftSentDescription'),\n },\n erc1155_sent: {\n title: (): string | null =>\n translate('pushPlatformNotificationsNftSentTitle'),\n defaultDescription: (): string | null =>\n translate('pushPlatformNotificationsNftSentDescription'),\n },\n erc721_received: {\n title: (): string | null =>\n translate('pushPlatformNotificationsNftReceivedTitle'),\n defaultDescription: (): string | null =>\n translate('pushPlatformNotificationsNftReceivedDescription'),\n },\n erc1155_received: {\n title: (): string | null =>\n translate('pushPlatformNotificationsNftReceivedTitle'),\n defaultDescription: (): string | null =>\n translate('pushPlatformNotificationsNftReceivedDescription'),\n },\n rocketpool_stake_completed: {\n title: (): string | null =>\n translate(\n 'pushPlatformNotificationsStakingRocketpoolStakeCompletedTitle',\n ),\n defaultDescription: (): string | null =>\n translate(\n 'pushPlatformNotificationsStakingRocketpoolStakeCompletedDescription',\n ),\n },\n rocketpool_unstake_completed: {\n title: (): string | null =>\n translate(\n 'pushPlatformNotificationsStakingRocketpoolUnstakeCompletedTitle',\n ),\n defaultDescription: (): string | null =>\n translate(\n 'pushPlatformNotificationsStakingRocketpoolUnstakeCompletedDescription',\n ),\n },\n lido_stake_completed: {\n title: (): string | null =>\n translate('pushPlatformNotificationsStakingLidoStakeCompletedTitle'),\n defaultDescription: (): string | null =>\n translate(\n 'pushPlatformNotificationsStakingLidoStakeCompletedDescription',\n ),\n },\n lido_stake_ready_to_be_withdrawn: {\n title: (): string | null =>\n translate(\n 'pushPlatformNotificationsStakingLidoStakeReadyToBeWithdrawnTitle',\n ),\n defaultDescription: (): string | null =>\n translate(\n 'pushPlatformNotificationsStakingLidoStakeReadyToBeWithdrawnDescription',\n ),\n },\n lido_withdrawal_requested: {\n title: (): string | null =>\n translate(\n 'pushPlatformNotificationsStakingLidoWithdrawalRequestedTitle',\n ),\n defaultDescription: (): string | null =>\n translate(\n 'pushPlatformNotificationsStakingLidoWithdrawalRequestedDescription',\n ),\n },\n lido_withdrawal_completed: {\n title: (): string | null =>\n translate(\n 'pushPlatformNotificationsStakingLidoWithdrawalCompletedTitle',\n ),\n defaultDescription: (): string | null =>\n translate(\n 'pushPlatformNotificationsStakingLidoWithdrawalCompletedDescription',\n ),\n },\n platform: {\n title: (notification): string | null => notification.template.title,\n defaultDescription: (notification): string | null =>\n notification.template.body,\n getDescription: (notification): string | null =>\n notification.template.body,\n },\n };\n};\n\n/**\n * Creates a push notification message based on the given on-chain raw notification.\n *\n * @param notification - processed notification.\n * @param translations - translates keys into text\n * @returns The push notification message object, or null if the notification is invalid.\n */\nexport function createOnChainPushNotificationMessage(\n notification: Types.INotification,\n translations: TranslationKeys,\n): PushNotificationMessage | null {\n if (!notification?.type) {\n return null;\n }\n const notificationMessage =\n createOnChainPushNotificationMessages(translations)[notification.type];\n\n if (!notificationMessage) {\n return null;\n }\n\n let description: string | null = null;\n try {\n description =\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n notificationMessage?.getDescription?.(notification as any) ??\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n notificationMessage.defaultDescription?.(notification as any) ??\n null;\n } catch {\n description =\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n notificationMessage.defaultDescription?.(notification as any) ?? null;\n }\n\n return {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n title: notificationMessage?.title?.(notification as any) ?? '', // Ensure title is always a string\n description: description ?? '', // Fallback to empty string if null\n };\n}\n"]}
@@ -1,3 +1,4 @@
1
1
  export * from './get-notification-data.js';
2
+ export * from './get-notification-message.js';
2
3
  export * from './to-push-analytics-payload.js';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/NotificationServicesPushController/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/NotificationServicesPushController/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export * from './get-notification-data.js';
2
+ export * from './get-notification-message.js';
2
3
  export * from './to-push-analytics-payload.js';
3
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/NotificationServicesPushController/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC","sourcesContent":["export * from './get-notification-data.js';\nexport * from './to-push-analytics-payload.js';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/NotificationServicesPushController/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAC;AAC3C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC","sourcesContent":["export * from './get-notification-data.js';\nexport * from './get-notification-message.js';\nexport * from './to-push-analytics-payload.js';\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@metamask-previews/notification-services-controller",
3
- "version": "28.0.1-preview-5d09c14",
3
+ "version": "28.0.1-preview-95a403d7b",
4
4
  "description": "Manages New MetaMask decentralized Notification system",
5
5
  "keywords": [
6
6
  "Ethereum",