@metamask-previews/notification-services-controller 0.21.0-preview-dbdf1da → 1.0.0-preview-30bb9023

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.
Files changed (254) hide show
  1. package/CHANGELOG.md +22 -3
  2. package/README.md +35 -1
  3. package/dist/NotificationServicesController/NotificationServicesController.cjs +66 -77
  4. package/dist/NotificationServicesController/NotificationServicesController.cjs.map +1 -1
  5. package/dist/NotificationServicesController/NotificationServicesController.d.cts +10 -34
  6. package/dist/NotificationServicesController/NotificationServicesController.d.cts.map +1 -1
  7. package/dist/NotificationServicesController/NotificationServicesController.d.mts +10 -34
  8. package/dist/NotificationServicesController/NotificationServicesController.d.mts.map +1 -1
  9. package/dist/NotificationServicesController/NotificationServicesController.mjs +66 -77
  10. package/dist/NotificationServicesController/NotificationServicesController.mjs.map +1 -1
  11. package/dist/NotificationServicesController/index.cjs +2 -1
  12. package/dist/NotificationServicesController/index.cjs.map +1 -1
  13. package/dist/NotificationServicesController/index.d.cts +2 -1
  14. package/dist/NotificationServicesController/index.d.cts.map +1 -1
  15. package/dist/NotificationServicesController/index.d.mts +2 -1
  16. package/dist/NotificationServicesController/index.d.mts.map +1 -1
  17. package/dist/NotificationServicesController/index.mjs +2 -1
  18. package/dist/NotificationServicesController/index.mjs.map +1 -1
  19. package/dist/NotificationServicesController/mocks/index.cjs.map +1 -0
  20. package/dist/NotificationServicesController/mocks/index.d.cts.map +1 -0
  21. package/dist/NotificationServicesController/mocks/index.d.mts.map +1 -0
  22. package/dist/NotificationServicesController/mocks/index.mjs.map +1 -0
  23. package/dist/NotificationServicesController/mocks/mock-feature-announcements.cjs.map +1 -0
  24. package/dist/NotificationServicesController/mocks/mock-feature-announcements.d.cts.map +1 -0
  25. package/dist/NotificationServicesController/mocks/mock-feature-announcements.d.mts.map +1 -0
  26. package/dist/NotificationServicesController/mocks/mock-feature-announcements.mjs.map +1 -0
  27. package/dist/NotificationServicesController/mocks/mock-notification-trigger.cjs.map +1 -0
  28. package/dist/NotificationServicesController/mocks/mock-notification-trigger.d.cts.map +1 -0
  29. package/dist/NotificationServicesController/mocks/mock-notification-trigger.d.mts.map +1 -0
  30. package/dist/NotificationServicesController/mocks/mock-notification-trigger.mjs.map +1 -0
  31. package/dist/NotificationServicesController/mocks/mock-notification-user-storage.cjs.map +1 -0
  32. package/dist/NotificationServicesController/mocks/mock-notification-user-storage.d.cts.map +1 -0
  33. package/dist/NotificationServicesController/mocks/mock-notification-user-storage.d.mts.map +1 -0
  34. package/dist/NotificationServicesController/mocks/mock-notification-user-storage.mjs.map +1 -0
  35. package/dist/NotificationServicesController/mocks/mock-raw-notifications.cjs.map +1 -0
  36. package/dist/NotificationServicesController/mocks/mock-raw-notifications.d.cts.map +1 -0
  37. package/dist/NotificationServicesController/mocks/mock-raw-notifications.d.mts.map +1 -0
  38. package/dist/NotificationServicesController/mocks/mock-raw-notifications.mjs.map +1 -0
  39. package/dist/NotificationServicesController/mocks/mock-snap-notification.cjs.map +1 -0
  40. package/dist/NotificationServicesController/mocks/mock-snap-notification.d.cts.map +1 -0
  41. package/dist/NotificationServicesController/mocks/mock-snap-notification.d.mts.map +1 -0
  42. package/dist/NotificationServicesController/mocks/mock-snap-notification.mjs.map +1 -0
  43. package/dist/NotificationServicesController/mocks/mockResponses.cjs.map +1 -0
  44. package/dist/NotificationServicesController/mocks/mockResponses.d.cts.map +1 -0
  45. package/dist/NotificationServicesController/mocks/mockResponses.d.mts.map +1 -0
  46. package/dist/NotificationServicesController/mocks/mockResponses.mjs.map +1 -0
  47. package/dist/NotificationServicesPushController/NotificationServicesPushController.cjs +95 -46
  48. package/dist/NotificationServicesPushController/NotificationServicesPushController.cjs.map +1 -1
  49. package/dist/NotificationServicesPushController/NotificationServicesPushController.d.cts +17 -17
  50. package/dist/NotificationServicesPushController/NotificationServicesPushController.d.cts.map +1 -1
  51. package/dist/NotificationServicesPushController/NotificationServicesPushController.d.mts +17 -17
  52. package/dist/NotificationServicesPushController/NotificationServicesPushController.d.mts.map +1 -1
  53. package/dist/NotificationServicesPushController/NotificationServicesPushController.mjs +96 -47
  54. package/dist/NotificationServicesPushController/NotificationServicesPushController.mjs.map +1 -1
  55. package/dist/NotificationServicesPushController/index.cjs +1 -1
  56. package/dist/NotificationServicesPushController/index.cjs.map +1 -1
  57. package/dist/NotificationServicesPushController/index.d.cts +1 -1
  58. package/dist/NotificationServicesPushController/index.d.cts.map +1 -1
  59. package/dist/NotificationServicesPushController/index.d.mts +1 -1
  60. package/dist/NotificationServicesPushController/index.d.mts.map +1 -1
  61. package/dist/NotificationServicesPushController/index.mjs +1 -1
  62. package/dist/NotificationServicesPushController/index.mjs.map +1 -1
  63. package/dist/NotificationServicesPushController/mocks/index.cjs.map +1 -0
  64. package/dist/NotificationServicesPushController/mocks/index.d.cts.map +1 -0
  65. package/dist/NotificationServicesPushController/mocks/index.d.mts.map +1 -0
  66. package/dist/NotificationServicesPushController/mocks/index.mjs.map +1 -0
  67. package/dist/NotificationServicesPushController/{__fixtures__/mockResponse.mjs.map → mocks/mockResponse.cjs.map} +1 -1
  68. package/dist/NotificationServicesPushController/mocks/mockResponse.d.cts.map +1 -0
  69. package/dist/NotificationServicesPushController/mocks/mockResponse.d.mts.map +1 -0
  70. package/dist/NotificationServicesPushController/mocks/mockResponse.mjs.map +1 -0
  71. package/dist/NotificationServicesPushController/services/services.cjs +9 -28
  72. package/dist/NotificationServicesPushController/services/services.cjs.map +1 -1
  73. package/dist/NotificationServicesPushController/services/services.d.cts +2 -17
  74. package/dist/NotificationServicesPushController/services/services.d.cts.map +1 -1
  75. package/dist/NotificationServicesPushController/services/services.d.mts +2 -17
  76. package/dist/NotificationServicesPushController/services/services.d.mts.map +1 -1
  77. package/dist/NotificationServicesPushController/services/services.mjs +8 -26
  78. package/dist/NotificationServicesPushController/services/services.mjs.map +1 -1
  79. package/dist/NotificationServicesPushController/types/index.cjs.map +1 -1
  80. package/dist/NotificationServicesPushController/types/index.d.cts +1 -0
  81. package/dist/NotificationServicesPushController/types/index.d.cts.map +1 -1
  82. package/dist/NotificationServicesPushController/types/index.d.mts +1 -0
  83. package/dist/NotificationServicesPushController/types/index.d.mts.map +1 -1
  84. package/dist/NotificationServicesPushController/types/index.mjs.map +1 -1
  85. package/dist/NotificationServicesPushController/{services/push/index.cjs → types/push-service-interface.cjs} +1 -1
  86. package/dist/NotificationServicesPushController/types/push-service-interface.cjs.map +1 -0
  87. package/dist/NotificationServicesPushController/types/push-service-interface.d.cts +30 -0
  88. package/dist/NotificationServicesPushController/types/push-service-interface.d.cts.map +1 -0
  89. package/dist/NotificationServicesPushController/types/push-service-interface.d.mts +30 -0
  90. package/dist/NotificationServicesPushController/types/push-service-interface.d.mts.map +1 -0
  91. package/dist/NotificationServicesPushController/types/push-service-interface.mjs +2 -0
  92. package/dist/NotificationServicesPushController/types/push-service-interface.mjs.map +1 -0
  93. package/dist/NotificationServicesPushController/utils/get-notification-message.cjs +1 -19
  94. package/dist/NotificationServicesPushController/utils/get-notification-message.cjs.map +1 -1
  95. package/dist/NotificationServicesPushController/utils/get-notification-message.d.cts +0 -7
  96. package/dist/NotificationServicesPushController/utils/get-notification-message.d.cts.map +1 -1
  97. package/dist/NotificationServicesPushController/utils/get-notification-message.d.mts +0 -7
  98. package/dist/NotificationServicesPushController/utils/get-notification-message.d.mts.map +1 -1
  99. package/dist/NotificationServicesPushController/utils/get-notification-message.mjs +0 -17
  100. package/dist/NotificationServicesPushController/utils/get-notification-message.mjs.map +1 -1
  101. package/dist/NotificationServicesPushController/web/index.cjs +8 -0
  102. package/dist/NotificationServicesPushController/web/index.cjs.map +1 -0
  103. package/dist/NotificationServicesPushController/web/index.d.cts +2 -0
  104. package/dist/NotificationServicesPushController/web/index.d.cts.map +1 -0
  105. package/dist/NotificationServicesPushController/web/index.d.mts +2 -0
  106. package/dist/NotificationServicesPushController/web/index.d.mts.map +1 -0
  107. package/dist/NotificationServicesPushController/web/index.mjs +2 -0
  108. package/dist/NotificationServicesPushController/web/index.mjs.map +1 -0
  109. package/dist/NotificationServicesPushController/web/push-utils.cjs +170 -0
  110. package/dist/NotificationServicesPushController/web/push-utils.cjs.map +1 -0
  111. package/dist/NotificationServicesPushController/web/push-utils.d.cts +37 -0
  112. package/dist/NotificationServicesPushController/web/push-utils.d.cts.map +1 -0
  113. package/dist/NotificationServicesPushController/web/push-utils.d.mts +37 -0
  114. package/dist/NotificationServicesPushController/web/push-utils.d.mts.map +1 -0
  115. package/dist/NotificationServicesPushController/web/push-utils.mjs +168 -0
  116. package/dist/NotificationServicesPushController/web/push-utils.mjs.map +1 -0
  117. package/dist/shared/index.cjs +19 -0
  118. package/dist/shared/index.cjs.map +1 -0
  119. package/dist/shared/index.d.cts +3 -0
  120. package/dist/shared/index.d.cts.map +1 -0
  121. package/dist/shared/index.d.mts +3 -0
  122. package/dist/shared/index.d.mts.map +1 -0
  123. package/dist/shared/index.mjs +3 -0
  124. package/dist/shared/index.mjs.map +1 -0
  125. package/dist/shared/is-onchain-notification.cjs +22 -0
  126. package/dist/shared/is-onchain-notification.cjs.map +1 -0
  127. package/dist/shared/is-onchain-notification.d.cts +9 -0
  128. package/dist/shared/is-onchain-notification.d.cts.map +1 -0
  129. package/dist/shared/is-onchain-notification.d.mts +9 -0
  130. package/dist/shared/is-onchain-notification.d.mts.map +1 -0
  131. package/dist/shared/is-onchain-notification.mjs +18 -0
  132. package/dist/shared/is-onchain-notification.mjs.map +1 -0
  133. package/notification-services/mocks/package.json +2 -2
  134. package/package.json +21 -11
  135. package/push-services/mocks/package.json +2 -2
  136. package/push-services/web/package.json +9 -0
  137. package/dist/NotificationServicesController/__fixtures__/index.cjs.map +0 -1
  138. package/dist/NotificationServicesController/__fixtures__/index.d.cts.map +0 -1
  139. package/dist/NotificationServicesController/__fixtures__/index.d.mts.map +0 -1
  140. package/dist/NotificationServicesController/__fixtures__/index.mjs.map +0 -1
  141. package/dist/NotificationServicesController/__fixtures__/mock-feature-announcements.cjs.map +0 -1
  142. package/dist/NotificationServicesController/__fixtures__/mock-feature-announcements.d.cts.map +0 -1
  143. package/dist/NotificationServicesController/__fixtures__/mock-feature-announcements.d.mts.map +0 -1
  144. package/dist/NotificationServicesController/__fixtures__/mock-feature-announcements.mjs.map +0 -1
  145. package/dist/NotificationServicesController/__fixtures__/mock-notification-trigger.cjs.map +0 -1
  146. package/dist/NotificationServicesController/__fixtures__/mock-notification-trigger.d.cts.map +0 -1
  147. package/dist/NotificationServicesController/__fixtures__/mock-notification-trigger.d.mts.map +0 -1
  148. package/dist/NotificationServicesController/__fixtures__/mock-notification-trigger.mjs.map +0 -1
  149. package/dist/NotificationServicesController/__fixtures__/mock-notification-user-storage.cjs.map +0 -1
  150. package/dist/NotificationServicesController/__fixtures__/mock-notification-user-storage.d.cts.map +0 -1
  151. package/dist/NotificationServicesController/__fixtures__/mock-notification-user-storage.d.mts.map +0 -1
  152. package/dist/NotificationServicesController/__fixtures__/mock-notification-user-storage.mjs.map +0 -1
  153. package/dist/NotificationServicesController/__fixtures__/mock-raw-notifications.cjs.map +0 -1
  154. package/dist/NotificationServicesController/__fixtures__/mock-raw-notifications.d.cts.map +0 -1
  155. package/dist/NotificationServicesController/__fixtures__/mock-raw-notifications.d.mts.map +0 -1
  156. package/dist/NotificationServicesController/__fixtures__/mock-raw-notifications.mjs.map +0 -1
  157. package/dist/NotificationServicesController/__fixtures__/mock-snap-notification.cjs.map +0 -1
  158. package/dist/NotificationServicesController/__fixtures__/mock-snap-notification.d.cts.map +0 -1
  159. package/dist/NotificationServicesController/__fixtures__/mock-snap-notification.d.mts.map +0 -1
  160. package/dist/NotificationServicesController/__fixtures__/mock-snap-notification.mjs.map +0 -1
  161. package/dist/NotificationServicesController/__fixtures__/mockAddresses.cjs +0 -6
  162. package/dist/NotificationServicesController/__fixtures__/mockAddresses.cjs.map +0 -1
  163. package/dist/NotificationServicesController/__fixtures__/mockAddresses.d.cts +0 -3
  164. package/dist/NotificationServicesController/__fixtures__/mockAddresses.d.cts.map +0 -1
  165. package/dist/NotificationServicesController/__fixtures__/mockAddresses.d.mts +0 -3
  166. package/dist/NotificationServicesController/__fixtures__/mockAddresses.d.mts.map +0 -1
  167. package/dist/NotificationServicesController/__fixtures__/mockAddresses.mjs +0 -3
  168. package/dist/NotificationServicesController/__fixtures__/mockAddresses.mjs.map +0 -1
  169. package/dist/NotificationServicesController/__fixtures__/mockResponses.cjs.map +0 -1
  170. package/dist/NotificationServicesController/__fixtures__/mockResponses.d.cts.map +0 -1
  171. package/dist/NotificationServicesController/__fixtures__/mockResponses.d.mts.map +0 -1
  172. package/dist/NotificationServicesController/__fixtures__/mockResponses.mjs.map +0 -1
  173. package/dist/NotificationServicesController/__fixtures__/mockServices.cjs +0 -56
  174. package/dist/NotificationServicesController/__fixtures__/mockServices.cjs.map +0 -1
  175. package/dist/NotificationServicesController/__fixtures__/mockServices.d.cts +0 -12
  176. package/dist/NotificationServicesController/__fixtures__/mockServices.d.cts.map +0 -1
  177. package/dist/NotificationServicesController/__fixtures__/mockServices.d.mts +0 -12
  178. package/dist/NotificationServicesController/__fixtures__/mockServices.d.mts.map +0 -1
  179. package/dist/NotificationServicesController/__fixtures__/mockServices.mjs +0 -52
  180. package/dist/NotificationServicesController/__fixtures__/mockServices.mjs.map +0 -1
  181. package/dist/NotificationServicesController/__fixtures__/test-utils.cjs +0 -31
  182. package/dist/NotificationServicesController/__fixtures__/test-utils.cjs.map +0 -1
  183. package/dist/NotificationServicesController/__fixtures__/test-utils.d.cts +0 -14
  184. package/dist/NotificationServicesController/__fixtures__/test-utils.d.cts.map +0 -1
  185. package/dist/NotificationServicesController/__fixtures__/test-utils.d.mts +0 -14
  186. package/dist/NotificationServicesController/__fixtures__/test-utils.d.mts.map +0 -1
  187. package/dist/NotificationServicesController/__fixtures__/test-utils.mjs +0 -27
  188. package/dist/NotificationServicesController/__fixtures__/test-utils.mjs.map +0 -1
  189. package/dist/NotificationServicesPushController/__fixtures__/index.cjs.map +0 -1
  190. package/dist/NotificationServicesPushController/__fixtures__/index.d.cts.map +0 -1
  191. package/dist/NotificationServicesPushController/__fixtures__/index.d.mts.map +0 -1
  192. package/dist/NotificationServicesPushController/__fixtures__/index.mjs.map +0 -1
  193. package/dist/NotificationServicesPushController/__fixtures__/mockResponse.cjs.map +0 -1
  194. package/dist/NotificationServicesPushController/__fixtures__/mockResponse.d.cts.map +0 -1
  195. package/dist/NotificationServicesPushController/__fixtures__/mockResponse.d.mts.map +0 -1
  196. package/dist/NotificationServicesPushController/__fixtures__/mockServices.cjs +0 -19
  197. package/dist/NotificationServicesPushController/__fixtures__/mockServices.cjs.map +0 -1
  198. package/dist/NotificationServicesPushController/__fixtures__/mockServices.d.cts +0 -8
  199. package/dist/NotificationServicesPushController/__fixtures__/mockServices.d.cts.map +0 -1
  200. package/dist/NotificationServicesPushController/__fixtures__/mockServices.d.mts +0 -8
  201. package/dist/NotificationServicesPushController/__fixtures__/mockServices.d.mts.map +0 -1
  202. package/dist/NotificationServicesPushController/__fixtures__/mockServices.mjs +0 -19
  203. package/dist/NotificationServicesPushController/__fixtures__/mockServices.mjs.map +0 -1
  204. package/dist/NotificationServicesPushController/constants.cjs +0 -14
  205. package/dist/NotificationServicesPushController/constants.cjs.map +0 -1
  206. package/dist/NotificationServicesPushController/constants.d.cts +0 -11
  207. package/dist/NotificationServicesPushController/constants.d.cts.map +0 -1
  208. package/dist/NotificationServicesPushController/constants.d.mts +0 -11
  209. package/dist/NotificationServicesPushController/constants.d.mts.map +0 -1
  210. package/dist/NotificationServicesPushController/constants.mjs +0 -11
  211. package/dist/NotificationServicesPushController/constants.mjs.map +0 -1
  212. package/dist/NotificationServicesPushController/services/push/index.cjs.map +0 -1
  213. package/dist/NotificationServicesPushController/services/push/index.d.cts +0 -6
  214. package/dist/NotificationServicesPushController/services/push/index.d.cts.map +0 -1
  215. package/dist/NotificationServicesPushController/services/push/index.d.mts +0 -6
  216. package/dist/NotificationServicesPushController/services/push/index.d.mts.map +0 -1
  217. package/dist/NotificationServicesPushController/services/push/index.mjs +0 -2
  218. package/dist/NotificationServicesPushController/services/push/index.mjs.map +0 -1
  219. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/index.cjs +0 -0
  220. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/index.d.cts +0 -0
  221. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/index.d.mts +0 -0
  222. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/index.mjs +0 -0
  223. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/mock-feature-announcements.cjs +0 -0
  224. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/mock-feature-announcements.d.cts +0 -0
  225. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/mock-feature-announcements.d.mts +0 -0
  226. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/mock-feature-announcements.mjs +0 -0
  227. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/mock-notification-trigger.cjs +0 -0
  228. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/mock-notification-trigger.d.cts +0 -0
  229. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/mock-notification-trigger.d.mts +0 -0
  230. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/mock-notification-trigger.mjs +0 -0
  231. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/mock-notification-user-storage.cjs +0 -0
  232. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/mock-notification-user-storage.d.cts +0 -0
  233. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/mock-notification-user-storage.d.mts +0 -0
  234. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/mock-notification-user-storage.mjs +0 -0
  235. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/mock-raw-notifications.cjs +0 -0
  236. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/mock-raw-notifications.d.cts +0 -0
  237. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/mock-raw-notifications.d.mts +0 -0
  238. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/mock-raw-notifications.mjs +0 -0
  239. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/mock-snap-notification.cjs +0 -0
  240. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/mock-snap-notification.d.cts +0 -0
  241. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/mock-snap-notification.d.mts +0 -0
  242. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/mock-snap-notification.mjs +0 -0
  243. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/mockResponses.cjs +0 -0
  244. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/mockResponses.d.cts +0 -0
  245. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/mockResponses.d.mts +0 -0
  246. /package/dist/NotificationServicesController/{__fixtures__ → mocks}/mockResponses.mjs +0 -0
  247. /package/dist/NotificationServicesPushController/{__fixtures__ → mocks}/index.cjs +0 -0
  248. /package/dist/NotificationServicesPushController/{__fixtures__ → mocks}/index.d.cts +0 -0
  249. /package/dist/NotificationServicesPushController/{__fixtures__ → mocks}/index.d.mts +0 -0
  250. /package/dist/NotificationServicesPushController/{__fixtures__ → mocks}/index.mjs +0 -0
  251. /package/dist/NotificationServicesPushController/{__fixtures__ → mocks}/mockResponse.cjs +0 -0
  252. /package/dist/NotificationServicesPushController/{__fixtures__ → mocks}/mockResponse.d.cts +0 -0
  253. /package/dist/NotificationServicesPushController/{__fixtures__ → mocks}/mockResponse.d.mts +0 -0
  254. /package/dist/NotificationServicesPushController/{__fixtures__ → mocks}/mockResponse.mjs +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock-raw-notifications.cjs","sourceRoot":"","sources":["../../../src/NotificationServicesController/mocks/mock-raw-notifications.ts"],"names":[],"mappings":"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","sourcesContent":["import { TRIGGER_TYPES } from '../constants/notification-schema';\nimport type { OnChainRawNotification } from '../types/on-chain-notification/on-chain-notification';\n\n/**\n * Mocking Utility - create a mock Eth sent notification\n *\n * @returns Mock raw Eth sent notification\n */\nexport function createMockNotificationEthSent(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.ETH_SENT,\n id: '3fa85f64-5717-4562-b3fc-2c963f66afa7',\n trigger_id: '3fa85f64-5717-4562-b3fc-2c963f66afa7',\n chain_id: 1,\n block_number: 17485840,\n block_timestamp: '2022-03-01T00:00:00Z',\n tx_hash:\n '0xb2256b183f2fb3872f99294ab55fb03e6a479b0d4aca556a3b27568b712505a6',\n unread: true,\n created_at: '2022-03-01T00:00:00Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.ETH_RECEIVED,\n id: '3fa85f64-5717-4562-b3fc-2c963f66afa8',\n trigger_id: '3fa85f64-5717-4562-b3fc-2c963f66afa8',\n chain_id: 1,\n block_number: 17485840,\n block_timestamp: '2022-03-01T00:00:00Z',\n tx_hash:\n '0xb2256b183f2fb3872f99294ab55fb03e6a479b0d4aca556a3b27568b712505a6',\n unread: true,\n created_at: '2022-03-01T00:00:00Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.ERC20_SENT,\n id: '3fa85f64-5717-4562-b3fc-2c963f66afa9',\n trigger_id: '3fa85f64-5717-4562-b3fc-2c963f66afa9',\n chain_id: 1,\n block_number: 17485840,\n block_timestamp: '2022-03-01T00:00:00Z',\n tx_hash:\n '0xb2256b183f2fb3872f99294ab55fb03e6a479b0d4aca556a3b27568b712505a6',\n unread: true,\n created_at: '2022-03-01T00:00:00Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.ERC20_RECEIVED,\n id: '3fa85f64-5717-4562-b3fc-2c963f66afa6',\n trigger_id: '3fa85f64-5717-4562-b3fc-2c963f66afa6',\n chain_id: 1,\n block_number: 17485840,\n block_timestamp: '2022-03-01T00:00:00Z',\n tx_hash:\n '0xb2256b183f2fb3872f99294ab55fb03e6a479b0d4aca556a3b27568b712505a6',\n unread: true,\n created_at: '2022-03-01T00:00:00Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.ERC721_SENT,\n block_number: 18576643,\n block_timestamp: '1700043467',\n chain_id: 1,\n created_at: '2023-11-15T11:08:17.895407Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 id: 'a4193058-9814-537e-9df4-79dcac727fb6',\n trigger_id: '028485be-b994-422b-a93b-03fcc01ab715',\n tx_hash:\n '0x0833c69fb41cf972a0f031fceca242939bc3fcf82b964b74606649abcad371bd',\n unread: true,\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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.ERC721_RECEIVED,\n block_number: 18571446,\n block_timestamp: '1699980623',\n chain_id: 1,\n created_at: '2023-11-14T17:40:52.319281Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 id: '00a79d24-befa-57ed-a55a-9eb8696e1654',\n trigger_id: 'd24ac26a-8579-49ec-9947-d04d63592ebd',\n tx_hash:\n '0xe554c9e29e6eeca8ba94da4d047334ba08b8eb9ca3b801dd69cec08dfdd4ae43',\n unread: true,\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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.ERC1155_SENT,\n block_number: 18615206,\n block_timestamp: '1700510003',\n chain_id: 1,\n created_at: '2023-11-20T20:44:10.110706Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 id: 'a09ff9d1-623a-52ab-a3d4-c7c8c9a58362',\n trigger_id: 'e2130f7d-78b8-4c34-999a-3f3d3bb5b03c',\n tx_hash:\n '0x03381aba290facbaf71c123e263c8dc3dd550aac00ef589cce395182eaeff76f',\n unread: true,\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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.ERC1155_RECEIVED,\n block_number: 18615206,\n block_timestamp: '1700510003',\n chain_id: 1,\n created_at: '2023-11-20T20:44:10.110706Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 id: 'b6b93c84-e8dc-54ed-9396-7ea50474843a',\n trigger_id: '710c8abb-43a9-42a5-9d86-9dd258726c82',\n tx_hash:\n '0x03381aba290facbaf71c123e263c8dc3dd550aac00ef589cce395182eaeff76f',\n unread: true,\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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.METAMASK_SWAP_COMPLETED,\n block_number: 18377666,\n block_timestamp: '1697637275',\n chain_id: 1,\n created_at: '2023-10-18T13:58:49.854596Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 id: '7ddfe6a1-ac52-5ffe-aa40-f04242db4b8b',\n trigger_id: 'd2eaa2eb-2e6e-4fd5-8763-b70ea571b46c',\n tx_hash:\n '0xf69074290f3aa11bce567aabc9ca0df7a12559dfae1b80ba1a124e9dfe19ecc5',\n unread: true,\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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.ROCKETPOOL_STAKE_COMPLETED,\n block_number: 18585057,\n block_timestamp: '1700145059',\n chain_id: 1,\n created_at: '2023-11-20T12:02:48.796824Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 id: 'c2a2f225-b2fb-5d6c-ba56-e27a5c71ffb9',\n trigger_id: '5110ff97-acff-40c0-83b4-11d487b8c7b0',\n tx_hash:\n '0xcfc0693bf47995907b0f46ef0644cf16dd9a0de797099b2e00fd481e1b2117d3',\n unread: true,\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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.ROCKETPOOL_UNSTAKE_COMPLETED,\n block_number: 18384336,\n block_timestamp: '1697718011',\n chain_id: 1,\n created_at: '2023-10-19T13:11:10.623042Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 id: '291ec897-f569-4837-b6c0-21001b198dff',\n trigger_id: '291ec897-f569-4837-b6c0-21001b198dff',\n tx_hash:\n '0xc7972a7e409abfc62590ec90e633acd70b9b74e76ad02305be8bf133a0e22d5f',\n unread: true,\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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.LIDO_STAKE_COMPLETED,\n block_number: 18487118,\n block_timestamp: '1698961091',\n chain_id: 1,\n created_at: '2023-11-02T22:28:49.970865Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 id: 'ec10d66a-f78f-461f-83c9-609aada8cc50',\n trigger_id: 'ec10d66a-f78f-461f-83c9-609aada8cc50',\n tx_hash:\n '0x8cc0fa805f7c3b1743b14f3b91c6b824113b094f26d4ccaf6a71ad8547ce6a0f',\n unread: true,\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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.LIDO_WITHDRAWAL_REQUESTED,\n block_number: 18377760,\n block_timestamp: '1697638415',\n chain_id: 1,\n created_at: '2023-10-18T15:04:02.482526Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 id: 'ef003925-3379-4ba7-9e2d-8218690cadc9',\n trigger_id: 'ef003925-3379-4ba7-9e2d-8218690cadc9',\n tx_hash:\n '0x58b5f82e084cb750ea174e02b20fbdfd2ba8d78053deac787f34fc38e5d427aa',\n unread: true,\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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.LIDO_WITHDRAWAL_COMPLETED,\n block_number: 18378208,\n block_timestamp: '1697643851',\n chain_id: 1,\n created_at: '2023-10-18T16:35:03.147606Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 id: 'd73df14d-ce73-4f38-bad3-ab028154042f',\n trigger_id: 'd73df14d-ce73-4f38-bad3-ab028154042f',\n tx_hash:\n '0xe6d210d2e601ef3dd1075c48e71452cf35f2daae3886911e964e3babad8ac657',\n unread: true,\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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.LIDO_STAKE_READY_TO_BE_WITHDRAWN,\n block_number: 18378208,\n block_timestamp: '1697643851',\n chain_id: 1,\n created_at: '2023-10-18T16:35:03.147606Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 id: 'd73df14d-ce73-4f38-bad3-ab028154042e',\n trigger_id: 'd73df14d-ce73-4f38-bad3-ab028154042e',\n tx_hash:\n '0xe6d210d2e601ef3dd1075c48e71452cf35f2daae3886911e964e3babad8ac657',\n unread: true,\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock Aave V3 Health Factor notification\n *\n * @returns Mock raw Aave V3 Health Factor notification\n */\nexport function createMockNotificationAaveV3HealthFactor(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.AAVE_V3_HEALTH_FACTOR,\n chain_id: 1,\n created_at: '2023-10-18T16:35:03.147606Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n data: {\n kind: 'aave_v3_health_factor',\n chainId: 1,\n healthFactor: '3.4',\n threshold: '5.5',\n },\n id: 'd73df14d-ce73-4f38-bad3-ab028154042b',\n trigger_id: 'd73df14d-ce73-4f38-bad3-ab028154042b',\n unread: true,\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock ENS Expiration notification\n *\n * @returns Mock raw ENS Expiration notification\n */\nexport function createMockNotificationEnsExpiration(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.ENS_EXPIRATION,\n chain_id: 1,\n created_at: '2023-10-18T16:35:03.147606Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n data: {\n kind: 'ens_expiration',\n chainId: 1,\n reverseEnsName: 'vitalik.eth',\n expirationDateIso: '2024-01-01T00:00:00Z',\n reminderDelayInSeconds: 86400,\n },\n id: 'f4ef0b7f-5612-537f-9144-0b5c63ae5391',\n trigger_id: 'd73df14d-ce73-4f38-bad3-ab028154042c',\n unread: true,\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock Lido Staking Rewards notification\n *\n * @returns Mock raw Lido Staking Rewards notification\n */\nexport function createMockNotificationLidoStakingRewards(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.LIDO_STAKING_REWARDS,\n chain_id: 1,\n created_at: '2023-10-18T16:35:03.147606Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n data: {\n kind: 'lido_staking_rewards',\n chainId: 1,\n currentStethBalance: '10',\n currentEthValue: '10.5',\n estimatedTotalRewardInPeriod: '0.5',\n daysSinceLastNotification: 30,\n notificationIntervalDays: 30,\n },\n id: 'd73df14d-ce73-4f38-bad3-ab028154042l',\n trigger_id: 'd73df14d-ce73-4f38-bad3-ab028154042l',\n unread: true,\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock Notional Loan Expiration notification\n *\n * @returns Mock raw Notional Loan Expiration notification\n */\nexport function createMockNotificationNotionalLoanExpiration(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.NOTIONAL_LOAN_EXPIRATION,\n chain_id: 1,\n created_at: '2023-10-18T16:35:03.147606Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n data: {\n kind: 'notional_loan_expiration',\n chainId: 1,\n loans: [\n {\n amount: '1.1234',\n symbol: 'ETH',\n maturityDateIso: '2024-01-01T00:00:00Z',\n },\n ],\n reminderDelayInSeconds: 86400,\n },\n id: 'd73df14d-ce73-4f38-bad3-ab028154042n',\n trigger_id: 'd73df14d-ce73-4f38-bad3-ab028154042n',\n unread: true,\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock Rocketpool Staking Rewards notification\n *\n * @returns Mock raw Rocketpool Staking Rewards notification\n */\nexport function createMockNotificationRocketpoolStakingRewards(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.ROCKETPOOL_STAKING_REWARDS,\n chain_id: 1,\n created_at: '2023-10-18T16:35:03.147606Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n data: {\n kind: 'rocketpool_staking_rewards',\n chainId: 1,\n currentRethBalance: '10',\n currentEthValue: '10.5',\n estimatedTotalRewardInPeriod: '0.5',\n daysSinceLastNotification: 30,\n notificationIntervalDays: 30,\n },\n id: 'd73df14d-ce73-4f38-bad3-ab028154042r',\n trigger_id: 'd73df14d-ce73-4f38-bad3-ab028154042r',\n unread: true,\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock SparkFi Health Factor notification\n *\n * @returns Mock raw SparkFi Health Factor notification\n */\nexport function createMockNotificationSparkFiHealthFactor(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.SPARK_FI_HEALTH_FACTOR,\n chain_id: 1,\n created_at: '2023-10-18T16:35:03.147606Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n data: {\n kind: 'spark_fi_health_factor',\n chainId: 1,\n healthFactor: '3.4',\n threshold: '5.5',\n },\n id: 'd73df14d-ce73-4f38-bad3-ab028154042s',\n trigger_id: 'd73df14d-ce73-4f38-bad3-ab028154042s',\n unread: true,\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(): OnChainRawNotification[] {\n return [1, 2, 3].map((id) => {\n const notification = createMockNotificationEthSent();\n notification.id += `-${id}`;\n return notification;\n });\n}\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock-raw-notifications.d.cts","sourceRoot":"","sources":["../../../src/NotificationServicesController/mocks/mock-raw-notifications.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,iEAA6D;AAEnG;;;;GAIG;AACH,wBAAgB,6BAA6B,IAAI,sBAAsB,CA6BtE;AAED;;;;GAIG;AACH,wBAAgB,iCAAiC,IAAI,sBAAsB,CA6B1E;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,IAAI,sBAAsB,CAmCxE;AAED;;;;GAIG;AACH,wBAAgB,mCAAmC,IAAI,sBAAsB,CAmC5E;AAED;;;;GAIG;AACH,wBAAgB,gCAAgC,IAAI,sBAAsB,CAsCzE;AAED;;;;GAIG;AACH,wBAAgB,oCAAoC,IAAI,sBAAsB,CAsC7E;AAED;;;;GAIG;AACH,wBAAgB,iCAAiC,IAAI,sBAAsB,CAsC1E;AAED;;;;GAIG;AACH,wBAAgB,qCAAqC,IAAI,sBAAsB,CAsC9E;AAED;;;;GAIG;AACH,wBAAgB,4CAA4C,IAAI,sBAAsB,CA4CrF;AAED;;;;GAIG;AACH,wBAAgB,8CAA8C,IAAI,sBAAsB,CA2CvF;AAED;;;;GAIG;AACH,wBAAgB,gDAAgD,IAAI,sBAAsB,CA2CzF;AAED;;;;GAIG;AACH,wBAAgB,wCAAwC,IAAI,sBAAsB,CA2CjF;AAED;;;;GAIG;AACH,wBAAgB,6CAA6C,IAAI,sBAAsB,CA2CtF;AAED;;;;GAIG;AACH,wBAAgB,6CAA6C,IAAI,sBAAsB,CA2CtF;AAED;;;;GAIG;AACH,wBAAgB,4CAA4C,IAAI,sBAAsB,CA8BrF;AAED;;;;GAIG;AACH,wBAAgB,wCAAwC,IAAI,sBAAsB,CAkBjF;AAED;;;;GAIG;AACH,wBAAgB,mCAAmC,IAAI,sBAAsB,CAmB5E;AAED;;;;GAIG;AACH,wBAAgB,wCAAwC,IAAI,sBAAsB,CAqBjF;AAED;;;;GAIG;AACH,wBAAgB,4CAA4C,IAAI,sBAAsB,CAwBrF;AAED;;;;GAIG;AACH,wBAAgB,8CAA8C,IAAI,sBAAsB,CAqBvF;AAED;;;;GAIG;AACH,wBAAgB,yCAAyC,IAAI,sBAAsB,CAkBlF;AAED;;;;GAIG;AACH,wBAAgB,iCAAiC,IAAI,sBAAsB,EAAE,CAM5E"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock-raw-notifications.d.mts","sourceRoot":"","sources":["../../../src/NotificationServicesController/mocks/mock-raw-notifications.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,sBAAsB,EAAE,iEAA6D;AAEnG;;;;GAIG;AACH,wBAAgB,6BAA6B,IAAI,sBAAsB,CA6BtE;AAED;;;;GAIG;AACH,wBAAgB,iCAAiC,IAAI,sBAAsB,CA6B1E;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,IAAI,sBAAsB,CAmCxE;AAED;;;;GAIG;AACH,wBAAgB,mCAAmC,IAAI,sBAAsB,CAmC5E;AAED;;;;GAIG;AACH,wBAAgB,gCAAgC,IAAI,sBAAsB,CAsCzE;AAED;;;;GAIG;AACH,wBAAgB,oCAAoC,IAAI,sBAAsB,CAsC7E;AAED;;;;GAIG;AACH,wBAAgB,iCAAiC,IAAI,sBAAsB,CAsC1E;AAED;;;;GAIG;AACH,wBAAgB,qCAAqC,IAAI,sBAAsB,CAsC9E;AAED;;;;GAIG;AACH,wBAAgB,4CAA4C,IAAI,sBAAsB,CA4CrF;AAED;;;;GAIG;AACH,wBAAgB,8CAA8C,IAAI,sBAAsB,CA2CvF;AAED;;;;GAIG;AACH,wBAAgB,gDAAgD,IAAI,sBAAsB,CA2CzF;AAED;;;;GAIG;AACH,wBAAgB,wCAAwC,IAAI,sBAAsB,CA2CjF;AAED;;;;GAIG;AACH,wBAAgB,6CAA6C,IAAI,sBAAsB,CA2CtF;AAED;;;;GAIG;AACH,wBAAgB,6CAA6C,IAAI,sBAAsB,CA2CtF;AAED;;;;GAIG;AACH,wBAAgB,4CAA4C,IAAI,sBAAsB,CA8BrF;AAED;;;;GAIG;AACH,wBAAgB,wCAAwC,IAAI,sBAAsB,CAkBjF;AAED;;;;GAIG;AACH,wBAAgB,mCAAmC,IAAI,sBAAsB,CAmB5E;AAED;;;;GAIG;AACH,wBAAgB,wCAAwC,IAAI,sBAAsB,CAqBjF;AAED;;;;GAIG;AACH,wBAAgB,4CAA4C,IAAI,sBAAsB,CAwBrF;AAED;;;;GAIG;AACH,wBAAgB,8CAA8C,IAAI,sBAAsB,CAqBvF;AAED;;;;GAIG;AACH,wBAAgB,yCAAyC,IAAI,sBAAsB,CAkBlF;AAED;;;;GAIG;AACH,wBAAgB,iCAAiC,IAAI,sBAAsB,EAAE,CAM5E"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock-raw-notifications.mjs","sourceRoot":"","sources":["../../../src/NotificationServicesController/mocks/mock-raw-notifications.ts"],"names":[],"mappings":"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","sourcesContent":["import { TRIGGER_TYPES } from '../constants/notification-schema';\nimport type { OnChainRawNotification } from '../types/on-chain-notification/on-chain-notification';\n\n/**\n * Mocking Utility - create a mock Eth sent notification\n *\n * @returns Mock raw Eth sent notification\n */\nexport function createMockNotificationEthSent(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.ETH_SENT,\n id: '3fa85f64-5717-4562-b3fc-2c963f66afa7',\n trigger_id: '3fa85f64-5717-4562-b3fc-2c963f66afa7',\n chain_id: 1,\n block_number: 17485840,\n block_timestamp: '2022-03-01T00:00:00Z',\n tx_hash:\n '0xb2256b183f2fb3872f99294ab55fb03e6a479b0d4aca556a3b27568b712505a6',\n unread: true,\n created_at: '2022-03-01T00:00:00Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.ETH_RECEIVED,\n id: '3fa85f64-5717-4562-b3fc-2c963f66afa8',\n trigger_id: '3fa85f64-5717-4562-b3fc-2c963f66afa8',\n chain_id: 1,\n block_number: 17485840,\n block_timestamp: '2022-03-01T00:00:00Z',\n tx_hash:\n '0xb2256b183f2fb3872f99294ab55fb03e6a479b0d4aca556a3b27568b712505a6',\n unread: true,\n created_at: '2022-03-01T00:00:00Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.ERC20_SENT,\n id: '3fa85f64-5717-4562-b3fc-2c963f66afa9',\n trigger_id: '3fa85f64-5717-4562-b3fc-2c963f66afa9',\n chain_id: 1,\n block_number: 17485840,\n block_timestamp: '2022-03-01T00:00:00Z',\n tx_hash:\n '0xb2256b183f2fb3872f99294ab55fb03e6a479b0d4aca556a3b27568b712505a6',\n unread: true,\n created_at: '2022-03-01T00:00:00Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.ERC20_RECEIVED,\n id: '3fa85f64-5717-4562-b3fc-2c963f66afa6',\n trigger_id: '3fa85f64-5717-4562-b3fc-2c963f66afa6',\n chain_id: 1,\n block_number: 17485840,\n block_timestamp: '2022-03-01T00:00:00Z',\n tx_hash:\n '0xb2256b183f2fb3872f99294ab55fb03e6a479b0d4aca556a3b27568b712505a6',\n unread: true,\n created_at: '2022-03-01T00:00:00Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.ERC721_SENT,\n block_number: 18576643,\n block_timestamp: '1700043467',\n chain_id: 1,\n created_at: '2023-11-15T11:08:17.895407Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 id: 'a4193058-9814-537e-9df4-79dcac727fb6',\n trigger_id: '028485be-b994-422b-a93b-03fcc01ab715',\n tx_hash:\n '0x0833c69fb41cf972a0f031fceca242939bc3fcf82b964b74606649abcad371bd',\n unread: true,\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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.ERC721_RECEIVED,\n block_number: 18571446,\n block_timestamp: '1699980623',\n chain_id: 1,\n created_at: '2023-11-14T17:40:52.319281Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 id: '00a79d24-befa-57ed-a55a-9eb8696e1654',\n trigger_id: 'd24ac26a-8579-49ec-9947-d04d63592ebd',\n tx_hash:\n '0xe554c9e29e6eeca8ba94da4d047334ba08b8eb9ca3b801dd69cec08dfdd4ae43',\n unread: true,\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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.ERC1155_SENT,\n block_number: 18615206,\n block_timestamp: '1700510003',\n chain_id: 1,\n created_at: '2023-11-20T20:44:10.110706Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 id: 'a09ff9d1-623a-52ab-a3d4-c7c8c9a58362',\n trigger_id: 'e2130f7d-78b8-4c34-999a-3f3d3bb5b03c',\n tx_hash:\n '0x03381aba290facbaf71c123e263c8dc3dd550aac00ef589cce395182eaeff76f',\n unread: true,\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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.ERC1155_RECEIVED,\n block_number: 18615206,\n block_timestamp: '1700510003',\n chain_id: 1,\n created_at: '2023-11-20T20:44:10.110706Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 id: 'b6b93c84-e8dc-54ed-9396-7ea50474843a',\n trigger_id: '710c8abb-43a9-42a5-9d86-9dd258726c82',\n tx_hash:\n '0x03381aba290facbaf71c123e263c8dc3dd550aac00ef589cce395182eaeff76f',\n unread: true,\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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.METAMASK_SWAP_COMPLETED,\n block_number: 18377666,\n block_timestamp: '1697637275',\n chain_id: 1,\n created_at: '2023-10-18T13:58:49.854596Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 id: '7ddfe6a1-ac52-5ffe-aa40-f04242db4b8b',\n trigger_id: 'd2eaa2eb-2e6e-4fd5-8763-b70ea571b46c',\n tx_hash:\n '0xf69074290f3aa11bce567aabc9ca0df7a12559dfae1b80ba1a124e9dfe19ecc5',\n unread: true,\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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.ROCKETPOOL_STAKE_COMPLETED,\n block_number: 18585057,\n block_timestamp: '1700145059',\n chain_id: 1,\n created_at: '2023-11-20T12:02:48.796824Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 id: 'c2a2f225-b2fb-5d6c-ba56-e27a5c71ffb9',\n trigger_id: '5110ff97-acff-40c0-83b4-11d487b8c7b0',\n tx_hash:\n '0xcfc0693bf47995907b0f46ef0644cf16dd9a0de797099b2e00fd481e1b2117d3',\n unread: true,\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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.ROCKETPOOL_UNSTAKE_COMPLETED,\n block_number: 18384336,\n block_timestamp: '1697718011',\n chain_id: 1,\n created_at: '2023-10-19T13:11:10.623042Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 id: '291ec897-f569-4837-b6c0-21001b198dff',\n trigger_id: '291ec897-f569-4837-b6c0-21001b198dff',\n tx_hash:\n '0xc7972a7e409abfc62590ec90e633acd70b9b74e76ad02305be8bf133a0e22d5f',\n unread: true,\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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.LIDO_STAKE_COMPLETED,\n block_number: 18487118,\n block_timestamp: '1698961091',\n chain_id: 1,\n created_at: '2023-11-02T22:28:49.970865Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 id: 'ec10d66a-f78f-461f-83c9-609aada8cc50',\n trigger_id: 'ec10d66a-f78f-461f-83c9-609aada8cc50',\n tx_hash:\n '0x8cc0fa805f7c3b1743b14f3b91c6b824113b094f26d4ccaf6a71ad8547ce6a0f',\n unread: true,\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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.LIDO_WITHDRAWAL_REQUESTED,\n block_number: 18377760,\n block_timestamp: '1697638415',\n chain_id: 1,\n created_at: '2023-10-18T15:04:02.482526Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 id: 'ef003925-3379-4ba7-9e2d-8218690cadc9',\n trigger_id: 'ef003925-3379-4ba7-9e2d-8218690cadc9',\n tx_hash:\n '0x58b5f82e084cb750ea174e02b20fbdfd2ba8d78053deac787f34fc38e5d427aa',\n unread: true,\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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.LIDO_WITHDRAWAL_COMPLETED,\n block_number: 18378208,\n block_timestamp: '1697643851',\n chain_id: 1,\n created_at: '2023-10-18T16:35:03.147606Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 id: 'd73df14d-ce73-4f38-bad3-ab028154042f',\n trigger_id: 'd73df14d-ce73-4f38-bad3-ab028154042f',\n tx_hash:\n '0xe6d210d2e601ef3dd1075c48e71452cf35f2daae3886911e964e3babad8ac657',\n unread: true,\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(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.LIDO_STAKE_READY_TO_BE_WITHDRAWN,\n block_number: 18378208,\n block_timestamp: '1697643851',\n chain_id: 1,\n created_at: '2023-10-18T16:35:03.147606Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\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 id: 'd73df14d-ce73-4f38-bad3-ab028154042e',\n trigger_id: 'd73df14d-ce73-4f38-bad3-ab028154042e',\n tx_hash:\n '0xe6d210d2e601ef3dd1075c48e71452cf35f2daae3886911e964e3babad8ac657',\n unread: true,\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock Aave V3 Health Factor notification\n *\n * @returns Mock raw Aave V3 Health Factor notification\n */\nexport function createMockNotificationAaveV3HealthFactor(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.AAVE_V3_HEALTH_FACTOR,\n chain_id: 1,\n created_at: '2023-10-18T16:35:03.147606Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n data: {\n kind: 'aave_v3_health_factor',\n chainId: 1,\n healthFactor: '3.4',\n threshold: '5.5',\n },\n id: 'd73df14d-ce73-4f38-bad3-ab028154042b',\n trigger_id: 'd73df14d-ce73-4f38-bad3-ab028154042b',\n unread: true,\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock ENS Expiration notification\n *\n * @returns Mock raw ENS Expiration notification\n */\nexport function createMockNotificationEnsExpiration(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.ENS_EXPIRATION,\n chain_id: 1,\n created_at: '2023-10-18T16:35:03.147606Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n data: {\n kind: 'ens_expiration',\n chainId: 1,\n reverseEnsName: 'vitalik.eth',\n expirationDateIso: '2024-01-01T00:00:00Z',\n reminderDelayInSeconds: 86400,\n },\n id: 'f4ef0b7f-5612-537f-9144-0b5c63ae5391',\n trigger_id: 'd73df14d-ce73-4f38-bad3-ab028154042c',\n unread: true,\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock Lido Staking Rewards notification\n *\n * @returns Mock raw Lido Staking Rewards notification\n */\nexport function createMockNotificationLidoStakingRewards(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.LIDO_STAKING_REWARDS,\n chain_id: 1,\n created_at: '2023-10-18T16:35:03.147606Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n data: {\n kind: 'lido_staking_rewards',\n chainId: 1,\n currentStethBalance: '10',\n currentEthValue: '10.5',\n estimatedTotalRewardInPeriod: '0.5',\n daysSinceLastNotification: 30,\n notificationIntervalDays: 30,\n },\n id: 'd73df14d-ce73-4f38-bad3-ab028154042l',\n trigger_id: 'd73df14d-ce73-4f38-bad3-ab028154042l',\n unread: true,\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock Notional Loan Expiration notification\n *\n * @returns Mock raw Notional Loan Expiration notification\n */\nexport function createMockNotificationNotionalLoanExpiration(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.NOTIONAL_LOAN_EXPIRATION,\n chain_id: 1,\n created_at: '2023-10-18T16:35:03.147606Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n data: {\n kind: 'notional_loan_expiration',\n chainId: 1,\n loans: [\n {\n amount: '1.1234',\n symbol: 'ETH',\n maturityDateIso: '2024-01-01T00:00:00Z',\n },\n ],\n reminderDelayInSeconds: 86400,\n },\n id: 'd73df14d-ce73-4f38-bad3-ab028154042n',\n trigger_id: 'd73df14d-ce73-4f38-bad3-ab028154042n',\n unread: true,\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock Rocketpool Staking Rewards notification\n *\n * @returns Mock raw Rocketpool Staking Rewards notification\n */\nexport function createMockNotificationRocketpoolStakingRewards(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.ROCKETPOOL_STAKING_REWARDS,\n chain_id: 1,\n created_at: '2023-10-18T16:35:03.147606Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n data: {\n kind: 'rocketpool_staking_rewards',\n chainId: 1,\n currentRethBalance: '10',\n currentEthValue: '10.5',\n estimatedTotalRewardInPeriod: '0.5',\n daysSinceLastNotification: 30,\n notificationIntervalDays: 30,\n },\n id: 'd73df14d-ce73-4f38-bad3-ab028154042r',\n trigger_id: 'd73df14d-ce73-4f38-bad3-ab028154042r',\n unread: true,\n };\n\n return mockNotification;\n}\n\n/**\n * Mocking Utility - create a mock SparkFi Health Factor notification\n *\n * @returns Mock raw SparkFi Health Factor notification\n */\nexport function createMockNotificationSparkFiHealthFactor(): OnChainRawNotification {\n const mockNotification: OnChainRawNotification = {\n type: TRIGGER_TYPES.SPARK_FI_HEALTH_FACTOR,\n chain_id: 1,\n created_at: '2023-10-18T16:35:03.147606Z',\n address: '0x881D40237659C251811CEC9c364ef91dC08D300C',\n data: {\n kind: 'spark_fi_health_factor',\n chainId: 1,\n healthFactor: '3.4',\n threshold: '5.5',\n },\n id: 'd73df14d-ce73-4f38-bad3-ab028154042s',\n trigger_id: 'd73df14d-ce73-4f38-bad3-ab028154042s',\n unread: true,\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(): OnChainRawNotification[] {\n return [1, 2, 3].map((id) => {\n const notification = createMockNotificationEthSent();\n notification.id += `-${id}`;\n return notification;\n });\n}\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock-snap-notification.cjs","sourceRoot":"","sources":["../../../src/NotificationServicesController/mocks/mock-snap-notification.ts"],"names":[],"mappings":";;;AAAA,sDAA6C;AAG7C;;;;GAIG;AACH,SAAgB,0BAA0B;IACxC,OAAO;QACL,IAAI,EAAE,yBAAa,CAAC,IAAI;QACxB,QAAQ,EAAE,IAAI;QACd,IAAI,EAAE;YACJ,OAAO,EAAE,QAAQ;YACjB,MAAM,EAAE,wBAAwB;YAChC,YAAY,EAAE;gBACZ,KAAK,EAAE,eAAe;gBACtB,WAAW,EAAE,GAAG;gBAChB,UAAU,EAAE;oBACV,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,oBAAoB;iBAC3B;aACF;SACF;KACF,CAAC;AACJ,CAAC;AAjBD,gEAiBC","sourcesContent":["import { TRIGGER_TYPES } from '../constants';\nimport { type RawSnapNotification } from '../types/snaps';\n\n/**\n * Mocking Utility - create a mock raw snap notification\n *\n * @returns Mock Raw Snap Notification\n */\nexport function createMockSnapNotification(): RawSnapNotification {\n return {\n type: TRIGGER_TYPES.SNAP,\n readDate: null,\n data: {\n message: 'fooBar',\n origin: '@metamask/example-snap',\n detailedView: {\n title: 'Detailed View',\n interfaceId: '1',\n footerLink: {\n text: 'Go Home',\n href: 'metamask://client/',\n },\n },\n },\n };\n}\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock-snap-notification.d.cts","sourceRoot":"","sources":["../../../src/NotificationServicesController/mocks/mock-snap-notification.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,mBAAmB,EAAE,iCAAuB;AAE1D;;;;GAIG;AACH,wBAAgB,0BAA0B,IAAI,mBAAmB,CAiBhE"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock-snap-notification.d.mts","sourceRoot":"","sources":["../../../src/NotificationServicesController/mocks/mock-snap-notification.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,mBAAmB,EAAE,iCAAuB;AAE1D;;;;GAIG;AACH,wBAAgB,0BAA0B,IAAI,mBAAmB,CAiBhE"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mock-snap-notification.mjs","sourceRoot":"","sources":["../../../src/NotificationServicesController/mocks/mock-snap-notification.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,+BAAqB;AAG7C;;;;GAIG;AACH,MAAM,UAAU,0BAA0B;IACxC,OAAO;QACL,IAAI,EAAE,aAAa,CAAC,IAAI;QACxB,QAAQ,EAAE,IAAI;QACd,IAAI,EAAE;YACJ,OAAO,EAAE,QAAQ;YACjB,MAAM,EAAE,wBAAwB;YAChC,YAAY,EAAE;gBACZ,KAAK,EAAE,eAAe;gBACtB,WAAW,EAAE,GAAG;gBAChB,UAAU,EAAE;oBACV,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,oBAAoB;iBAC3B;aACF;SACF;KACF,CAAC;AACJ,CAAC","sourcesContent":["import { TRIGGER_TYPES } from '../constants';\nimport { type RawSnapNotification } from '../types/snaps';\n\n/**\n * Mocking Utility - create a mock raw snap notification\n *\n * @returns Mock Raw Snap Notification\n */\nexport function createMockSnapNotification(): RawSnapNotification {\n return {\n type: TRIGGER_TYPES.SNAP,\n readDate: null,\n data: {\n message: 'fooBar',\n origin: '@metamask/example-snap',\n detailedView: {\n title: 'Detailed View',\n interfaceId: '1',\n footerLink: {\n text: 'Go Home',\n href: 'metamask://client/',\n },\n },\n },\n };\n}\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mockResponses.cjs","sourceRoot":"","sources":["../../../src/NotificationServicesController/mocks/mockResponses.ts"],"names":[],"mappings":";;;AAAA,iFAAsF;AACtF,yEAA6E;AAC7E,iFAA6E;AAC7E,iFAI2C;AAQ9B,QAAA,mBAAmB,GAAG,IAAA,mEAAsC,GAAE,CAAC;AAErE,MAAM,kCAAkC,GAAG,GAAG,EAAE;IACrD,OAAO;QACL,GAAG,EAAE,gDAAwB;QAC7B,aAAa,EAAE,KAAK;QACpB,QAAQ,EAAE,2BAAmB;KACP,CAAC;AAC3B,CAAC,CAAC;AANW,QAAA,kCAAkC,sCAM7C;AAEK,MAAM,kCAAkC,GAAG,GAAG,EAAE;IACrD,OAAO;QACL,GAAG,EAAE,kDAA0B;QAC/B,aAAa,EAAE,MAAM;QACrB,QAAQ,EAAE,IAAI;KACQ,CAAC;AAC3B,CAAC,CAAC;AANW,QAAA,kCAAkC,sCAM7C;AAEK,MAAM,kCAAkC,GAAG,GAAG,EAAE;IACrD,OAAO;QACL,GAAG,EAAE,kDAA0B;QAC/B,aAAa,EAAE,QAAQ;QACvB,QAAQ,EAAE,IAAI;KACQ,CAAC;AAC3B,CAAC,CAAC;AANW,QAAA,kCAAkC,sCAM7C;AAEW,QAAA,+BAA+B,GAC1C,IAAA,0DAAiC,GAAE,CAAC;AAE/B,MAAM,gCAAgC,GAAG,GAAG,EAAE;IACnD,OAAO;QACL,GAAG,EAAE,sDAA8B;QACnC,aAAa,EAAE,MAAM;QACrB,QAAQ,EAAE,uCAA+B;KACnB,CAAC;AAC3B,CAAC,CAAC;AANW,QAAA,gCAAgC,oCAM3C;AAEK,MAAM,sCAAsC,GAAG,GAAG,EAAE;IACzD,OAAO;QACL,GAAG,EAAE,kEAA0C;QAC/C,aAAa,EAAE,MAAM;QACrB,QAAQ,EAAE,IAAI;KACQ,CAAC;AAC3B,CAAC,CAAC;AANW,QAAA,sCAAsC,0CAMjD","sourcesContent":["import { createMockFeatureAnnouncementAPIResult } from './mock-feature-announcements';\nimport { createMockRawOnChainNotifications } from './mock-raw-notifications';\nimport { FEATURE_ANNOUNCEMENT_API } from '../services/feature-announcements';\nimport {\n NOTIFICATION_API_LIST_ENDPOINT,\n NOTIFICATION_API_MARK_ALL_AS_READ_ENDPOINT,\n TRIGGER_API_BATCH_ENDPOINT,\n} from '../services/onchain-notifications';\n\ntype MockResponse = {\n url: string;\n requestMethod: 'GET' | 'POST' | 'PUT' | 'DELETE';\n response: unknown;\n};\n\nexport const CONTENTFUL_RESPONSE = createMockFeatureAnnouncementAPIResult();\n\nexport const getMockFeatureAnnouncementResponse = () => {\n return {\n url: FEATURE_ANNOUNCEMENT_API,\n requestMethod: 'GET',\n response: CONTENTFUL_RESPONSE,\n } satisfies MockResponse;\n};\n\nexport const getMockBatchCreateTriggersResponse = () => {\n return {\n url: TRIGGER_API_BATCH_ENDPOINT,\n requestMethod: 'POST',\n response: null,\n } satisfies MockResponse;\n};\n\nexport const getMockBatchDeleteTriggersResponse = () => {\n return {\n url: TRIGGER_API_BATCH_ENDPOINT,\n requestMethod: 'DELETE',\n response: null,\n } satisfies MockResponse;\n};\n\nexport const MOCK_RAW_ON_CHAIN_NOTIFICATIONS =\n createMockRawOnChainNotifications();\n\nexport const getMockListNotificationsResponse = () => {\n return {\n url: NOTIFICATION_API_LIST_ENDPOINT,\n requestMethod: 'POST',\n response: MOCK_RAW_ON_CHAIN_NOTIFICATIONS,\n } satisfies MockResponse;\n};\n\nexport const getMockMarkNotificationsAsReadResponse = () => {\n return {\n url: NOTIFICATION_API_MARK_ALL_AS_READ_ENDPOINT,\n requestMethod: 'POST',\n response: null,\n } satisfies MockResponse;\n};\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mockResponses.d.cts","sourceRoot":"","sources":["../../../src/NotificationServicesController/mocks/mockResponses.ts"],"names":[],"mappings":"AAeA,eAAO,MAAM,mBAAmB,8DAA2C,CAAC;AAE5E,eAAO,MAAM,kCAAkC;;;;CAM9C,CAAC;AAEF,eAAO,MAAM,kCAAkC;;;;CAM9C,CAAC;AAEF,eAAO,MAAM,kCAAkC;;;;CAM9C,CAAC;AAEF,eAAO,MAAM,+BAA+B,uCACP,CAAC;AAEtC,eAAO,MAAM,gCAAgC;;;;CAM5C,CAAC;AAEF,eAAO,MAAM,sCAAsC;;;;CAMlD,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mockResponses.d.mts","sourceRoot":"","sources":["../../../src/NotificationServicesController/mocks/mockResponses.ts"],"names":[],"mappings":"AAeA,eAAO,MAAM,mBAAmB,8DAA2C,CAAC;AAE5E,eAAO,MAAM,kCAAkC;;;;CAM9C,CAAC;AAEF,eAAO,MAAM,kCAAkC;;;;CAM9C,CAAC;AAEF,eAAO,MAAM,kCAAkC;;;;CAM9C,CAAC;AAEF,eAAO,MAAM,+BAA+B,uCACP,CAAC;AAEtC,eAAO,MAAM,gCAAgC;;;;CAM5C,CAAC;AAEF,eAAO,MAAM,sCAAsC;;;;CAMlD,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mockResponses.mjs","sourceRoot":"","sources":["../../../src/NotificationServicesController/mocks/mockResponses.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sCAAsC,EAAE,yCAAqC;AACtF,OAAO,EAAE,iCAAiC,EAAE,qCAAiC;AAC7E,OAAO,EAAE,wBAAwB,EAAE,8CAA0C;AAC7E,OAAO,EACL,8BAA8B,EAC9B,0CAA0C,EAC1C,0BAA0B,EAC3B,8CAA0C;AAQ3C,MAAM,CAAC,MAAM,mBAAmB,GAAG,sCAAsC,EAAE,CAAC;AAE5E,MAAM,CAAC,MAAM,kCAAkC,GAAG,GAAG,EAAE;IACrD,OAAO;QACL,GAAG,EAAE,wBAAwB;QAC7B,aAAa,EAAE,KAAK;QACpB,QAAQ,EAAE,mBAAmB;KACP,CAAC;AAC3B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kCAAkC,GAAG,GAAG,EAAE;IACrD,OAAO;QACL,GAAG,EAAE,0BAA0B;QAC/B,aAAa,EAAE,MAAM;QACrB,QAAQ,EAAE,IAAI;KACQ,CAAC;AAC3B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kCAAkC,GAAG,GAAG,EAAE;IACrD,OAAO;QACL,GAAG,EAAE,0BAA0B;QAC/B,aAAa,EAAE,QAAQ;QACvB,QAAQ,EAAE,IAAI;KACQ,CAAC;AAC3B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,+BAA+B,GAC1C,iCAAiC,EAAE,CAAC;AAEtC,MAAM,CAAC,MAAM,gCAAgC,GAAG,GAAG,EAAE;IACnD,OAAO;QACL,GAAG,EAAE,8BAA8B;QACnC,aAAa,EAAE,MAAM;QACrB,QAAQ,EAAE,+BAA+B;KACnB,CAAC;AAC3B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,sCAAsC,GAAG,GAAG,EAAE;IACzD,OAAO;QACL,GAAG,EAAE,0CAA0C;QAC/C,aAAa,EAAE,MAAM;QACrB,QAAQ,EAAE,IAAI;KACQ,CAAC;AAC3B,CAAC,CAAC","sourcesContent":["import { createMockFeatureAnnouncementAPIResult } from './mock-feature-announcements';\nimport { createMockRawOnChainNotifications } from './mock-raw-notifications';\nimport { FEATURE_ANNOUNCEMENT_API } from '../services/feature-announcements';\nimport {\n NOTIFICATION_API_LIST_ENDPOINT,\n NOTIFICATION_API_MARK_ALL_AS_READ_ENDPOINT,\n TRIGGER_API_BATCH_ENDPOINT,\n} from '../services/onchain-notifications';\n\ntype MockResponse = {\n url: string;\n requestMethod: 'GET' | 'POST' | 'PUT' | 'DELETE';\n response: unknown;\n};\n\nexport const CONTENTFUL_RESPONSE = createMockFeatureAnnouncementAPIResult();\n\nexport const getMockFeatureAnnouncementResponse = () => {\n return {\n url: FEATURE_ANNOUNCEMENT_API,\n requestMethod: 'GET',\n response: CONTENTFUL_RESPONSE,\n } satisfies MockResponse;\n};\n\nexport const getMockBatchCreateTriggersResponse = () => {\n return {\n url: TRIGGER_API_BATCH_ENDPOINT,\n requestMethod: 'POST',\n response: null,\n } satisfies MockResponse;\n};\n\nexport const getMockBatchDeleteTriggersResponse = () => {\n return {\n url: TRIGGER_API_BATCH_ENDPOINT,\n requestMethod: 'DELETE',\n response: null,\n } satisfies MockResponse;\n};\n\nexport const MOCK_RAW_ON_CHAIN_NOTIFICATIONS =\n createMockRawOnChainNotifications();\n\nexport const getMockListNotificationsResponse = () => {\n return {\n url: NOTIFICATION_API_LIST_ENDPOINT,\n requestMethod: 'POST',\n response: MOCK_RAW_ON_CHAIN_NOTIFICATIONS,\n } satisfies MockResponse;\n};\n\nexport const getMockMarkNotificationsAsReadResponse = () => {\n return {\n url: NOTIFICATION_API_MARK_ALL_AS_READ_ENDPOINT,\n requestMethod: 'POST',\n response: null,\n } satisfies MockResponse;\n};\n"]}
@@ -13,22 +13,41 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
13
13
  var __importDefault = (this && this.__importDefault) || function (mod) {
14
14
  return (mod && mod.__esModule) ? mod : { "default": mod };
15
15
  };
16
- var _NotificationServicesPushController_instances, _NotificationServicesPushController_pushListenerUnsubscribe, _NotificationServicesPushController_env, _NotificationServicesPushController_config, _NotificationServicesPushController_registerMessageHandlers, _NotificationServicesPushController_getAndAssertBearerToken;
16
+ var _NotificationServicesPushController_instances, _NotificationServicesPushController_pushListenerUnsubscribe, _NotificationServicesPushController_env, _NotificationServicesPushController_config, _NotificationServicesPushController_registerMessageHandlers, _NotificationServicesPushController_clearLoadingStates, _NotificationServicesPushController_getAndAssertBearerToken, _NotificationServicesPushController_updatePushState;
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.defaultState = void 0;
19
19
  const base_controller_1 = require("@metamask/base-controller");
20
20
  const loglevel_1 = __importDefault(require("loglevel"));
21
- const push_web_1 = require("./services/push/push-web.cjs");
22
21
  const services_1 = require("./services/services.cjs");
23
22
  const controllerName = 'NotificationServicesPushController';
24
23
  exports.defaultState = {
24
+ isPushEnabled: true,
25
25
  fcmToken: '',
26
+ isUpdatingFCMToken: false,
26
27
  };
27
28
  const metadata = {
29
+ isPushEnabled: {
30
+ persist: true,
31
+ anonymous: true,
32
+ },
28
33
  fcmToken: {
29
34
  persist: true,
30
35
  anonymous: true,
31
36
  },
37
+ isUpdatingFCMToken: {
38
+ persist: false,
39
+ anonymous: true,
40
+ },
41
+ };
42
+ const defaultPushEnv = {
43
+ apiKey: '',
44
+ authDomain: '',
45
+ storageBucket: '',
46
+ projectId: '',
47
+ messagingSenderId: '',
48
+ appId: '',
49
+ measurementId: '',
50
+ vapidKey: '',
32
51
  };
33
52
  /**
34
53
  * Manages push notifications for the application, including enabling, disabling, and updating triggers for push notifications.
@@ -49,29 +68,21 @@ class NotificationServicesPushController extends base_controller_1.BaseControlle
49
68
  _NotificationServicesPushController_pushListenerUnsubscribe.set(this, undefined);
50
69
  _NotificationServicesPushController_env.set(this, void 0);
51
70
  _NotificationServicesPushController_config.set(this, void 0);
52
- __classPrivateFieldSet(this, _NotificationServicesPushController_env, env, "f");
71
+ __classPrivateFieldSet(this, _NotificationServicesPushController_env, env ?? defaultPushEnv, "f");
53
72
  __classPrivateFieldSet(this, _NotificationServicesPushController_config, config, "f");
54
73
  __classPrivateFieldGet(this, _NotificationServicesPushController_instances, "m", _NotificationServicesPushController_registerMessageHandlers).call(this);
74
+ __classPrivateFieldGet(this, _NotificationServicesPushController_instances, "m", _NotificationServicesPushController_clearLoadingStates).call(this);
55
75
  }
56
76
  async subscribeToPushNotifications() {
77
+ if (!__classPrivateFieldGet(this, _NotificationServicesPushController_config, "f").isPushFeatureEnabled) {
78
+ return;
79
+ }
57
80
  if (__classPrivateFieldGet(this, _NotificationServicesPushController_pushListenerUnsubscribe, "f")) {
58
81
  __classPrivateFieldGet(this, _NotificationServicesPushController_pushListenerUnsubscribe, "f").call(this);
59
82
  __classPrivateFieldSet(this, _NotificationServicesPushController_pushListenerUnsubscribe, undefined, "f");
60
83
  }
61
84
  try {
62
- __classPrivateFieldSet(this, _NotificationServicesPushController_pushListenerUnsubscribe, await (0, services_1.listenToPushNotifications)({
63
- env: __classPrivateFieldGet(this, _NotificationServicesPushController_env, "f"),
64
- listenToPushReceived: async (n) => {
65
- this.messagingSystem.publish('NotificationServicesPushController:onNewNotifications', n);
66
- await __classPrivateFieldGet(this, _NotificationServicesPushController_config, "f").onPushNotificationReceived(n);
67
- },
68
- listenToPushClicked: (e, n) => {
69
- if (n) {
70
- this.messagingSystem.publish('NotificationServicesPushController:pushNotificationClicked', n);
71
- }
72
- __classPrivateFieldGet(this, _NotificationServicesPushController_config, "f").onPushNotificationClicked(e, n);
73
- },
74
- }), "f");
85
+ __classPrivateFieldSet(this, _NotificationServicesPushController_pushListenerUnsubscribe, (await __classPrivateFieldGet(this, _NotificationServicesPushController_config, "f").pushService.subscribeToPushNotifications(__classPrivateFieldGet(this, _NotificationServicesPushController_env, "f"))) ?? undefined, "f");
75
86
  }
76
87
  catch {
77
88
  // Do nothing, we are silently failing if push notification registration fails
@@ -86,30 +97,29 @@ class NotificationServicesPushController extends base_controller_1.BaseControlle
86
97
  * 3. Sending the FCM token to the server responsible for sending notifications, to register the device.
87
98
  *
88
99
  * @param UUIDs - An array of UUIDs to enable push notifications for.
89
- * @param fcmToken - The optional FCM token to use for push notifications.
90
100
  */
91
- async enablePushNotifications(UUIDs, fcmToken) {
92
- if (!__classPrivateFieldGet(this, _NotificationServicesPushController_config, "f").isPushEnabled) {
101
+ async enablePushNotifications(UUIDs) {
102
+ if (!__classPrivateFieldGet(this, _NotificationServicesPushController_config, "f").isPushFeatureEnabled) {
93
103
  return;
94
104
  }
105
+ this.update((state) => {
106
+ state.isUpdatingFCMToken = true;
107
+ });
95
108
  // Handle creating new reg token (if available)
96
109
  try {
97
110
  const bearerToken = await __classPrivateFieldGet(this, _NotificationServicesPushController_instances, "m", _NotificationServicesPushController_getAndAssertBearerToken).call(this).catch(() => null);
98
111
  // If there is a bearer token, lets try to refresh/create new reg token
99
112
  if (bearerToken) {
100
113
  // Activate Push Notifications
101
- const regToken = await (0, services_1.activatePushNotifications)({
114
+ const fcmToken = await (0, services_1.activatePushNotifications)({
102
115
  bearerToken,
103
116
  triggers: UUIDs,
104
117
  env: __classPrivateFieldGet(this, _NotificationServicesPushController_env, "f"),
105
- fcmToken,
106
- createRegToken: push_web_1.createRegToken,
118
+ createRegToken: __classPrivateFieldGet(this, _NotificationServicesPushController_config, "f").pushService.createRegToken,
107
119
  platform: __classPrivateFieldGet(this, _NotificationServicesPushController_config, "f").platform,
108
120
  }).catch(() => null);
109
- if (regToken) {
110
- this.update((state) => {
111
- state.fcmToken = regToken;
112
- });
121
+ if (fcmToken) {
122
+ __classPrivateFieldGet(this, _NotificationServicesPushController_instances, "m", _NotificationServicesPushController_updatePushState).call(this, { type: 'enable', fcmToken });
113
123
  }
114
124
  }
115
125
  }
@@ -117,22 +127,32 @@ class NotificationServicesPushController extends base_controller_1.BaseControlle
117
127
  // Do nothing, we are silently failing
118
128
  }
119
129
  // New token created, (re)subscribe to push notifications
120
- await this.subscribeToPushNotifications();
130
+ try {
131
+ await this.subscribeToPushNotifications();
132
+ }
133
+ catch {
134
+ // Do nothing we are silently failing
135
+ }
136
+ this.update((state) => {
137
+ state.isUpdatingFCMToken = false;
138
+ });
121
139
  }
122
140
  /**
123
141
  * Disables push notifications for the application.
124
142
  * This removes the registration token on this device, and ensures we unsubscribe from any listeners
125
143
  */
126
144
  async disablePushNotifications() {
127
- if (!__classPrivateFieldGet(this, _NotificationServicesPushController_config, "f").isPushEnabled) {
145
+ if (!__classPrivateFieldGet(this, _NotificationServicesPushController_config, "f").isPushFeatureEnabled) {
128
146
  return;
129
147
  }
130
- let isPushNotificationsDisabled;
148
+ this.update((state) => {
149
+ state.isUpdatingFCMToken = true;
150
+ });
131
151
  try {
132
152
  // Send a request to the server to unregister the token/device
133
- isPushNotificationsDisabled = await (0, services_1.deactivatePushNotifications)({
153
+ await (0, services_1.deactivatePushNotifications)({
134
154
  env: __classPrivateFieldGet(this, _NotificationServicesPushController_env, "f"),
135
- deleteRegToken: push_web_1.deleteRegToken,
155
+ deleteRegToken: __classPrivateFieldGet(this, _NotificationServicesPushController_config, "f").pushService.deleteRegToken,
136
156
  regToken: this.state.fcmToken,
137
157
  });
138
158
  }
@@ -141,18 +161,15 @@ class NotificationServicesPushController extends base_controller_1.BaseControlle
141
161
  loglevel_1.default.error(errorMessage);
142
162
  throw new Error(errorMessage);
143
163
  }
144
- // Remove the FCM token from the state
145
- if (!isPushNotificationsDisabled) {
146
- return;
164
+ finally {
165
+ this.update((state) => {
166
+ state.isUpdatingFCMToken = false;
167
+ });
147
168
  }
148
169
  // Unsubscribe from push notifications
149
170
  __classPrivateFieldGet(this, _NotificationServicesPushController_pushListenerUnsubscribe, "f")?.call(this);
150
171
  // Update State
151
- if (isPushNotificationsDisabled) {
152
- this.update((state) => {
153
- state.fcmToken = '';
154
- });
155
- }
172
+ __classPrivateFieldGet(this, _NotificationServicesPushController_instances, "m", _NotificationServicesPushController_updatePushState).call(this, { type: 'disable' });
156
173
  }
157
174
  /**
158
175
  * Updates the triggers for push notifications.
@@ -162,24 +179,25 @@ class NotificationServicesPushController extends base_controller_1.BaseControlle
162
179
  * @param UUIDs - An array of UUIDs that should trigger push notifications.
163
180
  */
164
181
  async updateTriggerPushNotifications(UUIDs) {
165
- if (!__classPrivateFieldGet(this, _NotificationServicesPushController_config, "f").isPushEnabled) {
182
+ if (!__classPrivateFieldGet(this, _NotificationServicesPushController_config, "f").isPushFeatureEnabled) {
166
183
  return;
167
184
  }
168
- const bearerToken = await __classPrivateFieldGet(this, _NotificationServicesPushController_instances, "m", _NotificationServicesPushController_getAndAssertBearerToken).call(this);
185
+ this.update((state) => {
186
+ state.isUpdatingFCMToken = true;
187
+ });
169
188
  try {
189
+ const bearerToken = await __classPrivateFieldGet(this, _NotificationServicesPushController_instances, "m", _NotificationServicesPushController_getAndAssertBearerToken).call(this);
170
190
  const { fcmToken } = await (0, services_1.updateTriggerPushNotifications)({
171
191
  bearerToken,
172
192
  triggers: UUIDs,
173
193
  env: __classPrivateFieldGet(this, _NotificationServicesPushController_env, "f"),
174
- createRegToken: push_web_1.createRegToken,
175
- deleteRegToken: push_web_1.deleteRegToken,
194
+ createRegToken: __classPrivateFieldGet(this, _NotificationServicesPushController_config, "f").pushService.createRegToken,
195
+ deleteRegToken: __classPrivateFieldGet(this, _NotificationServicesPushController_config, "f").pushService.deleteRegToken,
176
196
  platform: __classPrivateFieldGet(this, _NotificationServicesPushController_config, "f").platform,
177
197
  });
178
198
  // update the state with the new FCM token
179
199
  if (fcmToken) {
180
- this.update((state) => {
181
- state.fcmToken = fcmToken;
182
- });
200
+ __classPrivateFieldGet(this, _NotificationServicesPushController_instances, "m", _NotificationServicesPushController_updatePushState).call(this, { type: 'update', fcmToken });
183
201
  }
184
202
  }
185
203
  catch (error) {
@@ -187,6 +205,11 @@ class NotificationServicesPushController extends base_controller_1.BaseControlle
187
205
  loglevel_1.default.error(errorMessage);
188
206
  throw new Error(errorMessage);
189
207
  }
208
+ finally {
209
+ this.update((state) => {
210
+ state.isUpdatingFCMToken = false;
211
+ });
212
+ }
190
213
  }
191
214
  }
192
215
  _NotificationServicesPushController_pushListenerUnsubscribe = new WeakMap(), _NotificationServicesPushController_env = new WeakMap(), _NotificationServicesPushController_config = new WeakMap(), _NotificationServicesPushController_instances = new WeakSet(), _NotificationServicesPushController_registerMessageHandlers = function _NotificationServicesPushController_registerMessageHandlers() {
@@ -194,6 +217,10 @@ _NotificationServicesPushController_pushListenerUnsubscribe = new WeakMap(), _No
194
217
  this.messagingSystem.registerActionHandler('NotificationServicesPushController:disablePushNotifications', this.disablePushNotifications.bind(this));
195
218
  this.messagingSystem.registerActionHandler('NotificationServicesPushController:updateTriggerPushNotifications', this.updateTriggerPushNotifications.bind(this));
196
219
  this.messagingSystem.registerActionHandler('NotificationServicesPushController:subscribeToPushNotifications', this.subscribeToPushNotifications.bind(this));
220
+ }, _NotificationServicesPushController_clearLoadingStates = function _NotificationServicesPushController_clearLoadingStates() {
221
+ this.update((state) => {
222
+ state.isUpdatingFCMToken = false;
223
+ });
197
224
  }, _NotificationServicesPushController_getAndAssertBearerToken = async function _NotificationServicesPushController_getAndAssertBearerToken() {
198
225
  const bearerToken = await this.messagingSystem.call('AuthenticationController:getBearerToken');
199
226
  if (!bearerToken) {
@@ -201,6 +228,28 @@ _NotificationServicesPushController_pushListenerUnsubscribe = new WeakMap(), _No
201
228
  throw new Error('BearerToken token is missing');
202
229
  }
203
230
  return bearerToken;
231
+ }, _NotificationServicesPushController_updatePushState = function _NotificationServicesPushController_updatePushState(command) {
232
+ if (command.type === 'enable') {
233
+ this.update((state) => {
234
+ state.isPushEnabled = true;
235
+ state.fcmToken = command.fcmToken;
236
+ state.isUpdatingFCMToken = false;
237
+ });
238
+ }
239
+ if (command.type === 'disable') {
240
+ this.update((state) => {
241
+ state.isPushEnabled = false;
242
+ state.fcmToken = '';
243
+ state.isUpdatingFCMToken = false;
244
+ });
245
+ }
246
+ if (command.type === 'update') {
247
+ this.update((state) => {
248
+ state.isPushEnabled = true;
249
+ state.fcmToken = command.fcmToken;
250
+ state.isUpdatingFCMToken = false;
251
+ });
252
+ }
204
253
  };
205
254
  exports.default = NotificationServicesPushController;
206
255
  //# sourceMappingURL=NotificationServicesPushController.cjs.map