@amazon-devices/expo-notifications 2.0.9000000000-rn-83

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 (686) hide show
  1. package/.eslintrc.js +2 -0
  2. package/CHANGELOG.md +478 -0
  3. package/LICENSE +7 -0
  4. package/README.kepler.md +3 -0
  5. package/README.md +2003 -0
  6. package/THIRD_PARTY_NOTICES.txt +4 -0
  7. package/android/build.gradle +125 -0
  8. package/android/src/main/AndroidManifest.xml +39 -0
  9. package/android/src/main/java/expo/modules/notifications/Exceptions.kt +22 -0
  10. package/android/src/main/java/expo/modules/notifications/NotificationsPackage.java +34 -0
  11. package/android/src/main/java/expo/modules/notifications/Utils.kt +19 -0
  12. package/android/src/main/java/expo/modules/notifications/badge/BadgeHelper.kt +24 -0
  13. package/android/src/main/java/expo/modules/notifications/badge/BadgeModule.kt +22 -0
  14. package/android/src/main/java/expo/modules/notifications/notifications/ArgumentsNotificationContentBuilder.java +149 -0
  15. package/android/src/main/java/expo/modules/notifications/notifications/JSONNotificationContentBuilder.java +203 -0
  16. package/android/src/main/java/expo/modules/notifications/notifications/NotificationManager.java +119 -0
  17. package/android/src/main/java/expo/modules/notifications/notifications/NotificationSerializer.java +202 -0
  18. package/android/src/main/java/expo/modules/notifications/notifications/RemoteMessageSerializer.java +104 -0
  19. package/android/src/main/java/expo/modules/notifications/notifications/SoundResolver.java +58 -0
  20. package/android/src/main/java/expo/modules/notifications/notifications/background/BackgroundRemoteNotificationTaskConsumer.java +123 -0
  21. package/android/src/main/java/expo/modules/notifications/notifications/background/ExpoBackgroundNotificationTasksModule.kt +33 -0
  22. package/android/src/main/java/expo/modules/notifications/notifications/categories/ExpoNotificationCategoriesModule.kt +149 -0
  23. package/android/src/main/java/expo/modules/notifications/notifications/categories/serializers/ExpoNotificationsCategoriesSerializer.java +67 -0
  24. package/android/src/main/java/expo/modules/notifications/notifications/categories/serializers/NotificationsCategoriesSerializer.java +11 -0
  25. package/android/src/main/java/expo/modules/notifications/notifications/channels/AbstractNotificationsChannelsProvider.java +81 -0
  26. package/android/src/main/java/expo/modules/notifications/notifications/channels/AndroidXNotificationsChannelsProvider.java +38 -0
  27. package/android/src/main/java/expo/modules/notifications/notifications/channels/InvalidVibrationPatternException.java +14 -0
  28. package/android/src/main/java/expo/modules/notifications/notifications/channels/NotificationChannelGroupManagerModule.kt +70 -0
  29. package/android/src/main/java/expo/modules/notifications/notifications/channels/NotificationChannelManagerModule.kt +83 -0
  30. package/android/src/main/java/expo/modules/notifications/notifications/channels/NotificationsChannelsProvider.java +13 -0
  31. package/android/src/main/java/expo/modules/notifications/notifications/channels/managers/AndroidXNotificationsChannelGroupManager.java +67 -0
  32. package/android/src/main/java/expo/modules/notifications/notifications/channels/managers/AndroidXNotificationsChannelManager.java +196 -0
  33. package/android/src/main/java/expo/modules/notifications/notifications/channels/managers/NotificationsChannelGroupManager.java +28 -0
  34. package/android/src/main/java/expo/modules/notifications/notifications/channels/managers/NotificationsChannelManager.java +28 -0
  35. package/android/src/main/java/expo/modules/notifications/notifications/channels/serializers/ExpoNotificationsChannelGroupSerializer.java +55 -0
  36. package/android/src/main/java/expo/modules/notifications/notifications/channels/serializers/ExpoNotificationsChannelSerializer.java +101 -0
  37. package/android/src/main/java/expo/modules/notifications/notifications/channels/serializers/NotificationsChannelGroupSerializer.java +20 -0
  38. package/android/src/main/java/expo/modules/notifications/notifications/channels/serializers/NotificationsChannelSerializer.java +35 -0
  39. package/android/src/main/java/expo/modules/notifications/notifications/emitting/NotificationsEmitter.kt +78 -0
  40. package/android/src/main/java/expo/modules/notifications/notifications/enums/AudioContentType.java +45 -0
  41. package/android/src/main/java/expo/modules/notifications/notifications/enums/AudioUsage.java +55 -0
  42. package/android/src/main/java/expo/modules/notifications/notifications/enums/NotificationImportance.java +48 -0
  43. package/android/src/main/java/expo/modules/notifications/notifications/enums/NotificationPriority.java +51 -0
  44. package/android/src/main/java/expo/modules/notifications/notifications/enums/NotificationVisibility.java +44 -0
  45. package/android/src/main/java/expo/modules/notifications/notifications/handling/NotificationsHandler.kt +127 -0
  46. package/android/src/main/java/expo/modules/notifications/notifications/handling/SingleNotificationHandlerTask.java +131 -0
  47. package/android/src/main/java/expo/modules/notifications/notifications/interfaces/NotificationBuilder.java +35 -0
  48. package/android/src/main/java/expo/modules/notifications/notifications/interfaces/NotificationListener.java +37 -0
  49. package/android/src/main/java/expo/modules/notifications/notifications/interfaces/NotificationManager.java +22 -0
  50. package/android/src/main/java/expo/modules/notifications/notifications/interfaces/NotificationPresentationEffect.java +11 -0
  51. package/android/src/main/java/expo/modules/notifications/notifications/interfaces/NotificationPresentationEffectsManager.java +7 -0
  52. package/android/src/main/java/expo/modules/notifications/notifications/interfaces/NotificationTrigger.java +19 -0
  53. package/android/src/main/java/expo/modules/notifications/notifications/interfaces/SchedulableNotificationTrigger.java +20 -0
  54. package/android/src/main/java/expo/modules/notifications/notifications/model/Notification.java +59 -0
  55. package/android/src/main/java/expo/modules/notifications/notifications/model/NotificationAction.java +63 -0
  56. package/android/src/main/java/expo/modules/notifications/notifications/model/NotificationBehavior.java +84 -0
  57. package/android/src/main/java/expo/modules/notifications/notifications/model/NotificationCategory.java +61 -0
  58. package/android/src/main/java/expo/modules/notifications/notifications/model/NotificationContent.java +356 -0
  59. package/android/src/main/java/expo/modules/notifications/notifications/model/NotificationRequest.java +66 -0
  60. package/android/src/main/java/expo/modules/notifications/notifications/model/NotificationResponse.java +60 -0
  61. package/android/src/main/java/expo/modules/notifications/notifications/model/TextInputNotificationAction.java +42 -0
  62. package/android/src/main/java/expo/modules/notifications/notifications/model/TextInputNotificationResponse.java +42 -0
  63. package/android/src/main/java/expo/modules/notifications/notifications/model/triggers/FirebaseNotificationTrigger.java +61 -0
  64. package/android/src/main/java/expo/modules/notifications/notifications/presentation/ExpoNotificationPresentationEffectsManager.java +63 -0
  65. package/android/src/main/java/expo/modules/notifications/notifications/presentation/ExpoNotificationPresentationModule.kt +113 -0
  66. package/android/src/main/java/expo/modules/notifications/notifications/presentation/builders/BaseNotificationBuilder.java +50 -0
  67. package/android/src/main/java/expo/modules/notifications/notifications/presentation/builders/CategoryAwareNotificationBuilder.java +80 -0
  68. package/android/src/main/java/expo/modules/notifications/notifications/presentation/builders/ChannelAwareNotificationBuilder.java +135 -0
  69. package/android/src/main/java/expo/modules/notifications/notifications/presentation/builders/ExpoNotificationBuilder.java +295 -0
  70. package/android/src/main/java/expo/modules/notifications/notifications/presentation/effects/BaseNotificationEffect.java +53 -0
  71. package/android/src/main/java/expo/modules/notifications/notifications/scheduling/NotificationScheduler.kt +235 -0
  72. package/android/src/main/java/expo/modules/notifications/notifications/triggers/ChannelAwareTrigger.java +49 -0
  73. package/android/src/main/java/expo/modules/notifications/notifications/triggers/DailyTrigger.java +76 -0
  74. package/android/src/main/java/expo/modules/notifications/notifications/triggers/DateTrigger.java +64 -0
  75. package/android/src/main/java/expo/modules/notifications/notifications/triggers/TimeIntervalTrigger.java +87 -0
  76. package/android/src/main/java/expo/modules/notifications/notifications/triggers/WeeklyTrigger.java +85 -0
  77. package/android/src/main/java/expo/modules/notifications/notifications/triggers/YearlyTrigger.java +94 -0
  78. package/android/src/main/java/expo/modules/notifications/permissions/NotificationPermissionsModule.kt +124 -0
  79. package/android/src/main/java/expo/modules/notifications/serverregistration/InstallationId.java +134 -0
  80. package/android/src/main/java/expo/modules/notifications/serverregistration/RegistrationInfo.kt +24 -0
  81. package/android/src/main/java/expo/modules/notifications/serverregistration/ServerRegistrationModule.kt +32 -0
  82. package/android/src/main/java/expo/modules/notifications/service/ExpoFirebaseMessagingService.kt +15 -0
  83. package/android/src/main/java/expo/modules/notifications/service/NotificationForwarderActivity.kt +33 -0
  84. package/android/src/main/java/expo/modules/notifications/service/NotificationsService.kt +780 -0
  85. package/android/src/main/java/expo/modules/notifications/service/delegates/Base64Serialization.kt +33 -0
  86. package/android/src/main/java/expo/modules/notifications/service/delegates/ExpoCategoriesDelegate.kt +21 -0
  87. package/android/src/main/java/expo/modules/notifications/service/delegates/ExpoHandlingDelegate.kt +146 -0
  88. package/android/src/main/java/expo/modules/notifications/service/delegates/ExpoPresentationDelegate.kt +193 -0
  89. package/android/src/main/java/expo/modules/notifications/service/delegates/ExpoSchedulingDelegate.kt +117 -0
  90. package/android/src/main/java/expo/modules/notifications/service/delegates/FirebaseMessagingDelegate.kt +126 -0
  91. package/android/src/main/java/expo/modules/notifications/service/delegates/SharedPreferencesNotificationCategoriesStore.kt +106 -0
  92. package/android/src/main/java/expo/modules/notifications/service/delegates/SharedPreferencesNotificationsStore.kt +119 -0
  93. package/android/src/main/java/expo/modules/notifications/service/interfaces/CategoriesDelegate.kt +14 -0
  94. package/android/src/main/java/expo/modules/notifications/service/interfaces/FirebaseMessagingDelegate.kt +20 -0
  95. package/android/src/main/java/expo/modules/notifications/service/interfaces/HandlingDelegate.kt +10 -0
  96. package/android/src/main/java/expo/modules/notifications/service/interfaces/PresentationDelegate.kt +11 -0
  97. package/android/src/main/java/expo/modules/notifications/service/interfaces/SchedulingDelegate.kt +13 -0
  98. package/android/src/main/java/expo/modules/notifications/tokens/PushTokenManager.java +88 -0
  99. package/android/src/main/java/expo/modules/notifications/tokens/PushTokenModule.kt +91 -0
  100. package/android/src/main/java/expo/modules/notifications/tokens/interfaces/FirebaseTokenListener.java +16 -0
  101. package/android/src/main/java/expo/modules/notifications/tokens/interfaces/PushTokenListener.java +14 -0
  102. package/android/src/main/java/expo/modules/notifications/tokens/interfaces/PushTokenManager.java +22 -0
  103. package/android/src/main/res/values/strings.xml +4 -0
  104. package/app.plugin.js +1 -0
  105. package/build/BackgroundNotificationTasksModule.d.ts +4 -0
  106. package/build/BackgroundNotificationTasksModule.d.ts.map +1 -0
  107. package/build/BackgroundNotificationTasksModule.js +7 -0
  108. package/build/BackgroundNotificationTasksModule.js.map +1 -0
  109. package/build/BackgroundNotificationTasksModule.kepler.d.ts +3 -0
  110. package/build/BackgroundNotificationTasksModule.kepler.d.ts.map +1 -0
  111. package/build/BackgroundNotificationTasksModule.kepler.js +9 -0
  112. package/build/BackgroundNotificationTasksModule.kepler.js.map +1 -0
  113. package/build/BackgroundNotificationTasksModule.native.d.ts +4 -0
  114. package/build/BackgroundNotificationTasksModule.native.d.ts.map +1 -0
  115. package/build/BackgroundNotificationTasksModule.native.js +3 -0
  116. package/build/BackgroundNotificationTasksModule.native.js.map +1 -0
  117. package/build/BackgroundNotificationTasksModule.types.d.ts +11 -0
  118. package/build/BackgroundNotificationTasksModule.types.d.ts.map +1 -0
  119. package/build/BackgroundNotificationTasksModule.types.js +7 -0
  120. package/build/BackgroundNotificationTasksModule.types.js.map +1 -0
  121. package/build/BackgroundNotificationTasksModule.web.d.ts +6 -0
  122. package/build/BackgroundNotificationTasksModule.web.d.ts.map +1 -0
  123. package/build/BackgroundNotificationTasksModule.web.js +9 -0
  124. package/build/BackgroundNotificationTasksModule.web.js.map +1 -0
  125. package/build/BadgeModule.d.ts +4 -0
  126. package/build/BadgeModule.d.ts.map +1 -0
  127. package/build/BadgeModule.js +5 -0
  128. package/build/BadgeModule.js.map +1 -0
  129. package/build/BadgeModule.kepler.d.ts +3 -0
  130. package/build/BadgeModule.kepler.d.ts.map +1 -0
  131. package/build/BadgeModule.kepler.js +9 -0
  132. package/build/BadgeModule.kepler.js.map +1 -0
  133. package/build/BadgeModule.native.d.ts +4 -0
  134. package/build/BadgeModule.native.d.ts.map +1 -0
  135. package/build/BadgeModule.native.js +12 -0
  136. package/build/BadgeModule.native.js.map +1 -0
  137. package/build/BadgeModule.types.d.ts +10 -0
  138. package/build/BadgeModule.types.d.ts.map +1 -0
  139. package/build/BadgeModule.types.js +2 -0
  140. package/build/BadgeModule.types.js.map +1 -0
  141. package/build/BadgeModule.web.d.ts +4 -0
  142. package/build/BadgeModule.web.d.ts.map +1 -0
  143. package/build/BadgeModule.web.js +26 -0
  144. package/build/BadgeModule.web.js.map +1 -0
  145. package/build/DevicePushTokenAutoRegistration.fx.d.ts +15 -0
  146. package/build/DevicePushTokenAutoRegistration.fx.d.ts.map +1 -0
  147. package/build/DevicePushTokenAutoRegistration.fx.js +87 -0
  148. package/build/DevicePushTokenAutoRegistration.fx.js.map +1 -0
  149. package/build/NotificationCategoriesModule.d.ts +4 -0
  150. package/build/NotificationCategoriesModule.d.ts.map +1 -0
  151. package/build/NotificationCategoriesModule.js +13 -0
  152. package/build/NotificationCategoriesModule.js.map +1 -0
  153. package/build/NotificationCategoriesModule.kepler.d.ts +3 -0
  154. package/build/NotificationCategoriesModule.kepler.d.ts.map +1 -0
  155. package/build/NotificationCategoriesModule.kepler.js +10 -0
  156. package/build/NotificationCategoriesModule.kepler.js.map +1 -0
  157. package/build/NotificationCategoriesModule.native.d.ts +4 -0
  158. package/build/NotificationCategoriesModule.native.d.ts.map +1 -0
  159. package/build/NotificationCategoriesModule.native.js +3 -0
  160. package/build/NotificationCategoriesModule.native.js.map +1 -0
  161. package/build/NotificationCategoriesModule.types.d.ts +17 -0
  162. package/build/NotificationCategoriesModule.types.d.ts.map +1 -0
  163. package/build/NotificationCategoriesModule.types.js +2 -0
  164. package/build/NotificationCategoriesModule.types.js.map +1 -0
  165. package/build/NotificationCategoriesModule.web.d.ts +8 -0
  166. package/build/NotificationCategoriesModule.web.d.ts.map +1 -0
  167. package/build/NotificationCategoriesModule.web.js +12 -0
  168. package/build/NotificationCategoriesModule.web.js.map +1 -0
  169. package/build/NotificationChannelGroupManager.d.ts +4 -0
  170. package/build/NotificationChannelGroupManager.d.ts.map +1 -0
  171. package/build/NotificationChannelGroupManager.js +5 -0
  172. package/build/NotificationChannelGroupManager.js.map +1 -0
  173. package/build/NotificationChannelGroupManager.kepler.d.ts +3 -0
  174. package/build/NotificationChannelGroupManager.kepler.d.ts.map +1 -0
  175. package/build/NotificationChannelGroupManager.kepler.js +9 -0
  176. package/build/NotificationChannelGroupManager.kepler.js.map +1 -0
  177. package/build/NotificationChannelGroupManager.native.d.ts +4 -0
  178. package/build/NotificationChannelGroupManager.native.d.ts.map +1 -0
  179. package/build/NotificationChannelGroupManager.native.js +3 -0
  180. package/build/NotificationChannelGroupManager.native.js.map +1 -0
  181. package/build/NotificationChannelGroupManager.types.d.ts +28 -0
  182. package/build/NotificationChannelGroupManager.types.d.ts.map +1 -0
  183. package/build/NotificationChannelGroupManager.types.js +2 -0
  184. package/build/NotificationChannelGroupManager.types.js.map +1 -0
  185. package/build/NotificationChannelManager.d.ts +4 -0
  186. package/build/NotificationChannelManager.d.ts.map +1 -0
  187. package/build/NotificationChannelManager.js +5 -0
  188. package/build/NotificationChannelManager.js.map +1 -0
  189. package/build/NotificationChannelManager.kepler.d.ts +3 -0
  190. package/build/NotificationChannelManager.kepler.d.ts.map +1 -0
  191. package/build/NotificationChannelManager.kepler.js +9 -0
  192. package/build/NotificationChannelManager.kepler.js.map +1 -0
  193. package/build/NotificationChannelManager.native.d.ts +4 -0
  194. package/build/NotificationChannelManager.native.d.ts.map +1 -0
  195. package/build/NotificationChannelManager.native.js +3 -0
  196. package/build/NotificationChannelManager.native.js.map +1 -0
  197. package/build/NotificationChannelManager.types.d.ts +91 -0
  198. package/build/NotificationChannelManager.types.d.ts.map +1 -0
  199. package/build/NotificationChannelManager.types.js +53 -0
  200. package/build/NotificationChannelManager.types.js.map +1 -0
  201. package/build/NotificationPermissions.d.ts +56 -0
  202. package/build/NotificationPermissions.d.ts.map +1 -0
  203. package/build/NotificationPermissions.js +79 -0
  204. package/build/NotificationPermissions.js.map +1 -0
  205. package/build/NotificationPermissions.types.d.ts +94 -0
  206. package/build/NotificationPermissions.types.d.ts.map +1 -0
  207. package/build/NotificationPermissions.types.js +21 -0
  208. package/build/NotificationPermissions.types.js.map +1 -0
  209. package/build/NotificationPermissionsModule.d.ts +4 -0
  210. package/build/NotificationPermissionsModule.d.ts.map +1 -0
  211. package/build/NotificationPermissionsModule.js +67 -0
  212. package/build/NotificationPermissionsModule.js.map +1 -0
  213. package/build/NotificationPermissionsModule.kepler.d.ts +3 -0
  214. package/build/NotificationPermissionsModule.kepler.d.ts.map +1 -0
  215. package/build/NotificationPermissionsModule.kepler.js +9 -0
  216. package/build/NotificationPermissionsModule.kepler.js.map +1 -0
  217. package/build/NotificationPermissionsModule.native.d.ts +4 -0
  218. package/build/NotificationPermissionsModule.native.d.ts.map +1 -0
  219. package/build/NotificationPermissionsModule.native.js +3 -0
  220. package/build/NotificationPermissionsModule.native.js.map +1 -0
  221. package/build/NotificationPermissionsModule.types.d.ts +7 -0
  222. package/build/NotificationPermissionsModule.types.d.ts.map +1 -0
  223. package/build/NotificationPermissionsModule.types.js +2 -0
  224. package/build/NotificationPermissionsModule.types.js.map +1 -0
  225. package/build/NotificationPresenterModule.d.ts +4 -0
  226. package/build/NotificationPresenterModule.d.ts.map +1 -0
  227. package/build/NotificationPresenterModule.js +5 -0
  228. package/build/NotificationPresenterModule.js.map +1 -0
  229. package/build/NotificationPresenterModule.kepler.d.ts +4 -0
  230. package/build/NotificationPresenterModule.kepler.d.ts.map +1 -0
  231. package/build/NotificationPresenterModule.kepler.js +55 -0
  232. package/build/NotificationPresenterModule.kepler.js.map +1 -0
  233. package/build/NotificationPresenterModule.native.d.ts +4 -0
  234. package/build/NotificationPresenterModule.native.d.ts.map +1 -0
  235. package/build/NotificationPresenterModule.native.js +3 -0
  236. package/build/NotificationPresenterModule.native.js.map +1 -0
  237. package/build/NotificationPresenterModule.types.d.ts +9 -0
  238. package/build/NotificationPresenterModule.types.d.ts.map +1 -0
  239. package/build/NotificationPresenterModule.types.js +2 -0
  240. package/build/NotificationPresenterModule.types.js.map +1 -0
  241. package/build/NotificationScheduler.d.ts +4 -0
  242. package/build/NotificationScheduler.d.ts.map +1 -0
  243. package/build/NotificationScheduler.js +5 -0
  244. package/build/NotificationScheduler.js.map +1 -0
  245. package/build/NotificationScheduler.kepler.d.ts +4 -0
  246. package/build/NotificationScheduler.kepler.d.ts.map +1 -0
  247. package/build/NotificationScheduler.kepler.js +50 -0
  248. package/build/NotificationScheduler.kepler.js.map +1 -0
  249. package/build/NotificationScheduler.native.d.ts +4 -0
  250. package/build/NotificationScheduler.native.d.ts.map +1 -0
  251. package/build/NotificationScheduler.native.js +3 -0
  252. package/build/NotificationScheduler.native.js.map +1 -0
  253. package/build/NotificationScheduler.types.d.ts +65 -0
  254. package/build/NotificationScheduler.types.d.ts.map +1 -0
  255. package/build/NotificationScheduler.types.js +2 -0
  256. package/build/NotificationScheduler.types.js.map +1 -0
  257. package/build/Notifications.types.d.ts +666 -0
  258. package/build/Notifications.types.d.ts.map +1 -0
  259. package/build/Notifications.types.js +12 -0
  260. package/build/Notifications.types.js.map +1 -0
  261. package/build/NotificationsEmitter.d.ts +75 -0
  262. package/build/NotificationsEmitter.d.ts.map +1 -0
  263. package/build/NotificationsEmitter.js +95 -0
  264. package/build/NotificationsEmitter.js.map +1 -0
  265. package/build/NotificationsEmitterModule.d.ts +4 -0
  266. package/build/NotificationsEmitterModule.d.ts.map +1 -0
  267. package/build/NotificationsEmitterModule.js +12 -0
  268. package/build/NotificationsEmitterModule.js.map +1 -0
  269. package/build/NotificationsEmitterModule.kepler.d.ts +3 -0
  270. package/build/NotificationsEmitterModule.kepler.d.ts.map +1 -0
  271. package/build/NotificationsEmitterModule.kepler.js +9 -0
  272. package/build/NotificationsEmitterModule.kepler.js.map +1 -0
  273. package/build/NotificationsEmitterModule.native.d.ts +4 -0
  274. package/build/NotificationsEmitterModule.native.d.ts.map +1 -0
  275. package/build/NotificationsEmitterModule.native.js +3 -0
  276. package/build/NotificationsEmitterModule.native.js.map +1 -0
  277. package/build/NotificationsEmitterModule.types.d.ts +6 -0
  278. package/build/NotificationsEmitterModule.types.d.ts.map +1 -0
  279. package/build/NotificationsEmitterModule.types.js +2 -0
  280. package/build/NotificationsEmitterModule.types.js.map +1 -0
  281. package/build/NotificationsHandler.d.ts +60 -0
  282. package/build/NotificationsHandler.d.ts.map +1 -0
  283. package/build/NotificationsHandler.js +72 -0
  284. package/build/NotificationsHandler.js.map +1 -0
  285. package/build/NotificationsHandlerModule.d.ts +4 -0
  286. package/build/NotificationsHandlerModule.d.ts.map +1 -0
  287. package/build/NotificationsHandlerModule.js +12 -0
  288. package/build/NotificationsHandlerModule.js.map +1 -0
  289. package/build/NotificationsHandlerModule.kepler.d.ts +3 -0
  290. package/build/NotificationsHandlerModule.kepler.d.ts.map +1 -0
  291. package/build/NotificationsHandlerModule.kepler.js +9 -0
  292. package/build/NotificationsHandlerModule.kepler.js.map +1 -0
  293. package/build/NotificationsHandlerModule.native.d.ts +4 -0
  294. package/build/NotificationsHandlerModule.native.d.ts.map +1 -0
  295. package/build/NotificationsHandlerModule.native.js +3 -0
  296. package/build/NotificationsHandlerModule.native.js.map +1 -0
  297. package/build/NotificationsHandlerModule.types.d.ts +6 -0
  298. package/build/NotificationsHandlerModule.types.d.ts.map +1 -0
  299. package/build/NotificationsHandlerModule.types.js +2 -0
  300. package/build/NotificationsHandlerModule.types.js.map +1 -0
  301. package/build/PushTokenManager.d.ts +4 -0
  302. package/build/PushTokenManager.d.ts.map +1 -0
  303. package/build/PushTokenManager.js +12 -0
  304. package/build/PushTokenManager.js.map +1 -0
  305. package/build/PushTokenManager.kepler.d.ts +3 -0
  306. package/build/PushTokenManager.kepler.d.ts.map +1 -0
  307. package/build/PushTokenManager.kepler.js +9 -0
  308. package/build/PushTokenManager.kepler.js.map +1 -0
  309. package/build/PushTokenManager.native.d.ts +4 -0
  310. package/build/PushTokenManager.native.d.ts.map +1 -0
  311. package/build/PushTokenManager.native.js +3 -0
  312. package/build/PushTokenManager.native.js.map +1 -0
  313. package/build/PushTokenManager.types.d.ts +6 -0
  314. package/build/PushTokenManager.types.d.ts.map +1 -0
  315. package/build/PushTokenManager.types.js +2 -0
  316. package/build/PushTokenManager.types.js.map +1 -0
  317. package/build/ServerRegistrationModule.d.ts +4 -0
  318. package/build/ServerRegistrationModule.d.ts.map +1 -0
  319. package/build/ServerRegistrationModule.js +5 -0
  320. package/build/ServerRegistrationModule.js.map +1 -0
  321. package/build/ServerRegistrationModule.kepler.d.ts +3 -0
  322. package/build/ServerRegistrationModule.kepler.d.ts.map +1 -0
  323. package/build/ServerRegistrationModule.kepler.js +9 -0
  324. package/build/ServerRegistrationModule.kepler.js.map +1 -0
  325. package/build/ServerRegistrationModule.native.d.ts +4 -0
  326. package/build/ServerRegistrationModule.native.d.ts.map +1 -0
  327. package/build/ServerRegistrationModule.native.js +3 -0
  328. package/build/ServerRegistrationModule.native.js.map +1 -0
  329. package/build/ServerRegistrationModule.types.d.ts +7 -0
  330. package/build/ServerRegistrationModule.types.d.ts.map +1 -0
  331. package/build/ServerRegistrationModule.types.js +2 -0
  332. package/build/ServerRegistrationModule.types.js.map +1 -0
  333. package/build/ServerRegistrationModule.web.d.ts +4 -0
  334. package/build/ServerRegistrationModule.web.d.ts.map +1 -0
  335. package/build/ServerRegistrationModule.web.js +50 -0
  336. package/build/ServerRegistrationModule.web.js.map +1 -0
  337. package/build/TokenEmitter.d.ts +42 -0
  338. package/build/TokenEmitter.d.ts.map +1 -0
  339. package/build/TokenEmitter.js +44 -0
  340. package/build/TokenEmitter.js.map +1 -0
  341. package/build/Tokens.types.d.ts +99 -0
  342. package/build/Tokens.types.d.ts.map +1 -0
  343. package/build/Tokens.types.js +2 -0
  344. package/build/Tokens.types.js.map +1 -0
  345. package/build/cancelAllScheduledNotificationsAsync.d.ts +7 -0
  346. package/build/cancelAllScheduledNotificationsAsync.d.ts.map +1 -0
  347. package/build/cancelAllScheduledNotificationsAsync.js +14 -0
  348. package/build/cancelAllScheduledNotificationsAsync.js.map +1 -0
  349. package/build/cancelScheduledNotificationAsync.d.ts +22 -0
  350. package/build/cancelScheduledNotificationAsync.d.ts.map +1 -0
  351. package/build/cancelScheduledNotificationAsync.js +29 -0
  352. package/build/cancelScheduledNotificationAsync.js.map +1 -0
  353. package/build/deleteNotificationCategoryAsync.d.ts +11 -0
  354. package/build/deleteNotificationCategoryAsync.d.ts.map +1 -0
  355. package/build/deleteNotificationCategoryAsync.js +19 -0
  356. package/build/deleteNotificationCategoryAsync.js.map +1 -0
  357. package/build/deleteNotificationChannelAsync.android.d.ts +2 -0
  358. package/build/deleteNotificationChannelAsync.android.d.ts.map +1 -0
  359. package/build/deleteNotificationChannelAsync.android.js +9 -0
  360. package/build/deleteNotificationChannelAsync.android.js.map +1 -0
  361. package/build/deleteNotificationChannelAsync.d.ts +9 -0
  362. package/build/deleteNotificationChannelAsync.d.ts.map +1 -0
  363. package/build/deleteNotificationChannelAsync.js +11 -0
  364. package/build/deleteNotificationChannelAsync.js.map +1 -0
  365. package/build/deleteNotificationChannelGroupAsync.android.d.ts +2 -0
  366. package/build/deleteNotificationChannelGroupAsync.android.d.ts.map +1 -0
  367. package/build/deleteNotificationChannelGroupAsync.android.js +9 -0
  368. package/build/deleteNotificationChannelGroupAsync.android.js.map +1 -0
  369. package/build/deleteNotificationChannelGroupAsync.d.ts +9 -0
  370. package/build/deleteNotificationChannelGroupAsync.d.ts.map +1 -0
  371. package/build/deleteNotificationChannelGroupAsync.js +11 -0
  372. package/build/deleteNotificationChannelGroupAsync.js.map +1 -0
  373. package/build/dismissAllNotificationsAsync.d.ts +7 -0
  374. package/build/dismissAllNotificationsAsync.d.ts.map +1 -0
  375. package/build/dismissAllNotificationsAsync.js +14 -0
  376. package/build/dismissAllNotificationsAsync.js.map +1 -0
  377. package/build/dismissNotificationAsync.d.ts +8 -0
  378. package/build/dismissNotificationAsync.d.ts.map +1 -0
  379. package/build/dismissNotificationAsync.js +15 -0
  380. package/build/dismissNotificationAsync.js.map +1 -0
  381. package/build/getAllScheduledNotificationsAsync.d.ts +8 -0
  382. package/build/getAllScheduledNotificationsAsync.d.ts.map +1 -0
  383. package/build/getAllScheduledNotificationsAsync.js +14 -0
  384. package/build/getAllScheduledNotificationsAsync.js.map +1 -0
  385. package/build/getBadgeCountAsync.d.ts +8 -0
  386. package/build/getBadgeCountAsync.d.ts.map +1 -0
  387. package/build/getBadgeCountAsync.js +15 -0
  388. package/build/getBadgeCountAsync.js.map +1 -0
  389. package/build/getDevicePushTokenAsync.d.ts +8 -0
  390. package/build/getDevicePushTokenAsync.d.ts.map +1 -0
  391. package/build/getDevicePushTokenAsync.js +27 -0
  392. package/build/getDevicePushTokenAsync.js.map +1 -0
  393. package/build/getDevicePushTokenAsync.web.d.ts +3 -0
  394. package/build/getDevicePushTokenAsync.web.d.ts.map +1 -0
  395. package/build/getDevicePushTokenAsync.web.js +84 -0
  396. package/build/getDevicePushTokenAsync.web.js.map +1 -0
  397. package/build/getExpoPushTokenAsync.d.ts +40 -0
  398. package/build/getExpoPushTokenAsync.d.ts.map +1 -0
  399. package/build/getExpoPushTokenAsync.js +177 -0
  400. package/build/getExpoPushTokenAsync.js.map +1 -0
  401. package/build/getNextTriggerDateAsync.d.ts +26 -0
  402. package/build/getNextTriggerDateAsync.d.ts.map +1 -0
  403. package/build/getNextTriggerDateAsync.js +33 -0
  404. package/build/getNextTriggerDateAsync.js.map +1 -0
  405. package/build/getNotificationCategoriesAsync.d.ts +11 -0
  406. package/build/getNotificationCategoriesAsync.d.ts.map +1 -0
  407. package/build/getNotificationCategoriesAsync.js +18 -0
  408. package/build/getNotificationCategoriesAsync.js.map +1 -0
  409. package/build/getNotificationChannelAsync.android.d.ts +3 -0
  410. package/build/getNotificationChannelAsync.android.d.ts.map +1 -0
  411. package/build/getNotificationChannelAsync.android.js +9 -0
  412. package/build/getNotificationChannelAsync.android.js.map +1 -0
  413. package/build/getNotificationChannelAsync.d.ts +11 -0
  414. package/build/getNotificationChannelAsync.d.ts.map +1 -0
  415. package/build/getNotificationChannelAsync.js +13 -0
  416. package/build/getNotificationChannelAsync.js.map +1 -0
  417. package/build/getNotificationChannelGroupAsync.android.d.ts +3 -0
  418. package/build/getNotificationChannelGroupAsync.android.d.ts.map +1 -0
  419. package/build/getNotificationChannelGroupAsync.android.js +9 -0
  420. package/build/getNotificationChannelGroupAsync.android.js.map +1 -0
  421. package/build/getNotificationChannelGroupAsync.d.ts +12 -0
  422. package/build/getNotificationChannelGroupAsync.d.ts.map +1 -0
  423. package/build/getNotificationChannelGroupAsync.js +14 -0
  424. package/build/getNotificationChannelGroupAsync.js.map +1 -0
  425. package/build/getNotificationChannelGroupsAsync.android.d.ts +3 -0
  426. package/build/getNotificationChannelGroupsAsync.android.d.ts.map +1 -0
  427. package/build/getNotificationChannelGroupsAsync.android.js +9 -0
  428. package/build/getNotificationChannelGroupsAsync.android.js.map +1 -0
  429. package/build/getNotificationChannelGroupsAsync.d.ts +10 -0
  430. package/build/getNotificationChannelGroupsAsync.d.ts.map +1 -0
  431. package/build/getNotificationChannelGroupsAsync.js +12 -0
  432. package/build/getNotificationChannelGroupsAsync.js.map +1 -0
  433. package/build/getNotificationChannelsAsync.android.d.ts +3 -0
  434. package/build/getNotificationChannelsAsync.android.d.ts.map +1 -0
  435. package/build/getNotificationChannelsAsync.android.js +9 -0
  436. package/build/getNotificationChannelsAsync.android.js.map +1 -0
  437. package/build/getNotificationChannelsAsync.d.ts +10 -0
  438. package/build/getNotificationChannelsAsync.d.ts.map +1 -0
  439. package/build/getNotificationChannelsAsync.js +12 -0
  440. package/build/getNotificationChannelsAsync.js.map +1 -0
  441. package/build/getPresentedNotificationsAsync.d.ts +9 -0
  442. package/build/getPresentedNotificationsAsync.d.ts.map +1 -0
  443. package/build/getPresentedNotificationsAsync.js +15 -0
  444. package/build/getPresentedNotificationsAsync.js.map +1 -0
  445. package/build/index.d.ts +39 -0
  446. package/build/index.d.ts.map +1 -0
  447. package/build/index.js +39 -0
  448. package/build/index.js.map +1 -0
  449. package/build/kepler/NotificationContent.d.ts +43 -0
  450. package/build/kepler/NotificationContent.d.ts.map +1 -0
  451. package/build/kepler/NotificationContent.js +96 -0
  452. package/build/kepler/NotificationContent.js.map +1 -0
  453. package/build/kepler/index.d.ts +3 -0
  454. package/build/kepler/index.d.ts.map +1 -0
  455. package/build/kepler/index.js +15 -0
  456. package/build/kepler/index.js.map +1 -0
  457. package/build/kepler/native-notification-manager.d.ts +3 -0
  458. package/build/kepler/native-notification-manager.d.ts.map +1 -0
  459. package/build/kepler/native-notification-manager.js +10 -0
  460. package/build/kepler/native-notification-manager.js.map +1 -0
  461. package/build/kepler/types/NotificationManagerTypes.d.ts +373 -0
  462. package/build/kepler/types/NotificationManagerTypes.d.ts.map +1 -0
  463. package/build/kepler/types/NotificationManagerTypes.js +279 -0
  464. package/build/kepler/types/NotificationManagerTypes.js.map +1 -0
  465. package/build/kepler/types/index.d.ts +3 -0
  466. package/build/kepler/types/index.d.ts.map +1 -0
  467. package/build/kepler/types/index.js +15 -0
  468. package/build/kepler/types/index.js.map +1 -0
  469. package/build/presentNotificationAsync.d.ts +11 -0
  470. package/build/presentNotificationAsync.d.ts.map +1 -0
  471. package/build/presentNotificationAsync.js +22 -0
  472. package/build/presentNotificationAsync.js.map +1 -0
  473. package/build/registerTaskAsync.d.ts +29 -0
  474. package/build/registerTaskAsync.d.ts.map +1 -0
  475. package/build/registerTaskAsync.js +37 -0
  476. package/build/registerTaskAsync.js.map +1 -0
  477. package/build/scheduleNotificationAsync.d.ts +60 -0
  478. package/build/scheduleNotificationAsync.d.ts.map +1 -0
  479. package/build/scheduleNotificationAsync.js +261 -0
  480. package/build/scheduleNotificationAsync.js.map +1 -0
  481. package/build/setBadgeCountAsync.d.ts +19 -0
  482. package/build/setBadgeCountAsync.d.ts.map +1 -0
  483. package/build/setBadgeCountAsync.js +19 -0
  484. package/build/setBadgeCountAsync.js.map +1 -0
  485. package/build/setNotificationCategoryAsync.d.ts +15 -0
  486. package/build/setNotificationCategoryAsync.d.ts.map +1 -0
  487. package/build/setNotificationCategoryAsync.js +22 -0
  488. package/build/setNotificationCategoryAsync.js.map +1 -0
  489. package/build/setNotificationChannelAsync.android.d.ts +3 -0
  490. package/build/setNotificationChannelAsync.android.d.ts.map +1 -0
  491. package/build/setNotificationChannelAsync.android.js +9 -0
  492. package/build/setNotificationChannelAsync.android.js.map +1 -0
  493. package/build/setNotificationChannelAsync.d.ts +22 -0
  494. package/build/setNotificationChannelAsync.d.ts.map +1 -0
  495. package/build/setNotificationChannelAsync.js +24 -0
  496. package/build/setNotificationChannelAsync.js.map +1 -0
  497. package/build/setNotificationChannelGroupAsync.android.d.ts +3 -0
  498. package/build/setNotificationChannelGroupAsync.android.d.ts.map +1 -0
  499. package/build/setNotificationChannelGroupAsync.android.js +9 -0
  500. package/build/setNotificationChannelGroupAsync.android.js.map +1 -0
  501. package/build/setNotificationChannelGroupAsync.d.ts +12 -0
  502. package/build/setNotificationChannelGroupAsync.d.ts.map +1 -0
  503. package/build/setNotificationChannelGroupAsync.js +14 -0
  504. package/build/setNotificationChannelGroupAsync.js.map +1 -0
  505. package/build/unregisterForNotificationsAsync.d.ts +2 -0
  506. package/build/unregisterForNotificationsAsync.d.ts.map +1 -0
  507. package/build/unregisterForNotificationsAsync.js +10 -0
  508. package/build/unregisterForNotificationsAsync.js.map +1 -0
  509. package/build/unregisterTaskAsync.d.ts +7 -0
  510. package/build/unregisterTaskAsync.d.ts.map +1 -0
  511. package/build/unregisterTaskAsync.js +15 -0
  512. package/build/unregisterTaskAsync.js.map +1 -0
  513. package/build/useLastNotificationResponse.d.ts +38 -0
  514. package/build/useLastNotificationResponse.d.ts.map +1 -0
  515. package/build/useLastNotificationResponse.js +63 -0
  516. package/build/useLastNotificationResponse.js.map +1 -0
  517. package/build/utils/keplerUuidUtils.d.ts +5 -0
  518. package/build/utils/keplerUuidUtils.d.ts.map +1 -0
  519. package/build/utils/keplerUuidUtils.js +15 -0
  520. package/build/utils/keplerUuidUtils.js.map +1 -0
  521. package/build/utils/updateDevicePushTokenAsync.d.ts +3 -0
  522. package/build/utils/updateDevicePushTokenAsync.d.ts.map +1 -0
  523. package/build/utils/updateDevicePushTokenAsync.js +115 -0
  524. package/build/utils/updateDevicePushTokenAsync.js.map +1 -0
  525. package/expo-module.config.json +20 -0
  526. package/ios/EXNotifications/Building/EXNotificationBuilder.h +19 -0
  527. package/ios/EXNotifications/Building/EXNotificationBuilder.m +91 -0
  528. package/ios/EXNotifications/EXBadgeModule.h +11 -0
  529. package/ios/EXNotifications/EXBadgeModule.m +36 -0
  530. package/ios/EXNotifications/EXServerRegistrationModule.h +19 -0
  531. package/ios/EXNotifications/EXServerRegistrationModule.m +194 -0
  532. package/ios/EXNotifications/Notifications/Background/EXBackgroundNotificationTasksModule.h +16 -0
  533. package/ios/EXNotifications/Notifications/Background/EXBackgroundNotificationTasksModule.m +62 -0
  534. package/ios/EXNotifications/Notifications/Background/EXBackgroundRemoteNotificationConsumer.h +14 -0
  535. package/ios/EXNotifications/Notifications/Background/EXBackgroundRemoteNotificationConsumer.m +51 -0
  536. package/ios/EXNotifications/Notifications/Categories/EXNotificationCategoriesModule.h +25 -0
  537. package/ios/EXNotifications/Notifications/Categories/EXNotificationCategoriesModule.m +217 -0
  538. package/ios/EXNotifications/Notifications/EXNotificationCenterDelegate.h +29 -0
  539. package/ios/EXNotifications/Notifications/EXNotificationCenterDelegate.m +209 -0
  540. package/ios/EXNotifications/Notifications/EXNotificationSerializer.h +16 -0
  541. package/ios/EXNotifications/Notifications/EXNotificationSerializer.m +232 -0
  542. package/ios/EXNotifications/Notifications/EXNotificationsDelegate.h +27 -0
  543. package/ios/EXNotifications/Notifications/Emitter/EXNotificationsEmitter.h +17 -0
  544. package/ios/EXNotifications/Notifications/Emitter/EXNotificationsEmitter.m +114 -0
  545. package/ios/EXNotifications/Notifications/Handler/EXNotificationsHandlerModule.h +12 -0
  546. package/ios/EXNotifications/Notifications/Handler/EXNotificationsHandlerModule.m +109 -0
  547. package/ios/EXNotifications/Notifications/Handler/EXSingleNotificationHandlerTask.h +33 -0
  548. package/ios/EXNotifications/Notifications/Handler/EXSingleNotificationHandlerTask.m +124 -0
  549. package/ios/EXNotifications/Notifications/NSDictionary+EXNotificationsVerifyingClass.h +7 -0
  550. package/ios/EXNotifications/Notifications/NSDictionary+EXNotificationsVerifyingClass.m +19 -0
  551. package/ios/EXNotifications/Notifications/Presenting/EXNotificationPresentationModule.h +13 -0
  552. package/ios/EXNotifications/Notifications/Presenting/EXNotificationPresentationModule.m +124 -0
  553. package/ios/EXNotifications/Notifications/Scheduling/EXNotificationSchedulerModule.h +21 -0
  554. package/ios/EXNotifications/Notifications/Scheduling/EXNotificationSchedulerModule.m +263 -0
  555. package/ios/EXNotifications/Permissions/EXLegacyRemoteNotificationPermissionRequester.h +13 -0
  556. package/ios/EXNotifications/Permissions/EXLegacyRemoteNotificationPermissionRequester.m +135 -0
  557. package/ios/EXNotifications/Permissions/EXNotificationPermissionsModule.h +8 -0
  558. package/ios/EXNotifications/Permissions/EXNotificationPermissionsModule.m +67 -0
  559. package/ios/EXNotifications/Permissions/EXRemoteNotificationPermissionSingletonModule.h +29 -0
  560. package/ios/EXNotifications/Permissions/EXRemoteNotificationPermissionSingletonModule.m +68 -0
  561. package/ios/EXNotifications/Permissions/EXUserFacingNotificationsPermissionsRequester.h +15 -0
  562. package/ios/EXNotifications/Permissions/EXUserFacingNotificationsPermissionsRequester.m +202 -0
  563. package/ios/EXNotifications/PushToken/EXPushTokenListener.h +14 -0
  564. package/ios/EXNotifications/PushToken/EXPushTokenManager.h +24 -0
  565. package/ios/EXNotifications/PushToken/EXPushTokenManager.m +63 -0
  566. package/ios/EXNotifications/PushToken/EXPushTokenModule.h +9 -0
  567. package/ios/EXNotifications/PushToken/EXPushTokenModule.m +154 -0
  568. package/ios/EXNotifications.podspec +25 -0
  569. package/package.json +67 -0
  570. package/plugin/build/withNotifications.d.ts +28 -0
  571. package/plugin/build/withNotifications.js +12 -0
  572. package/plugin/build/withNotificationsAndroid.d.ts +42 -0
  573. package/plugin/build/withNotificationsAndroid.js +184 -0
  574. package/plugin/build/withNotificationsIOS.d.ts +14 -0
  575. package/plugin/build/withNotificationsIOS.js +58 -0
  576. package/plugin/jest.config.js +1 -0
  577. package/plugin/src/withNotifications.ts +40 -0
  578. package/plugin/src/withNotificationsAndroid.ts +239 -0
  579. package/plugin/src/withNotificationsIOS.ts +78 -0
  580. package/plugin/tsconfig.json +9 -0
  581. package/src/BackgroundNotificationTasksModule.kepler.ts +8 -0
  582. package/src/BackgroundNotificationTasksModule.native.ts +7 -0
  583. package/src/BackgroundNotificationTasksModule.ts +8 -0
  584. package/src/BackgroundNotificationTasksModule.types.ts +12 -0
  585. package/src/BackgroundNotificationTasksModule.web.ts +8 -0
  586. package/src/BadgeModule.kepler.ts +8 -0
  587. package/src/BadgeModule.native.ts +15 -0
  588. package/src/BadgeModule.ts +6 -0
  589. package/src/BadgeModule.types.ts +11 -0
  590. package/src/BadgeModule.web.ts +28 -0
  591. package/src/DevicePushTokenAutoRegistration.fx.ts +119 -0
  592. package/src/NotificationCategoriesModule.kepler.ts +10 -0
  593. package/src/NotificationCategoriesModule.native.ts +7 -0
  594. package/src/NotificationCategoriesModule.ts +15 -0
  595. package/src/NotificationCategoriesModule.types.ts +22 -0
  596. package/src/NotificationCategoriesModule.web.ts +17 -0
  597. package/src/NotificationChannelGroupManager.kepler.ts +8 -0
  598. package/src/NotificationChannelGroupManager.native.ts +7 -0
  599. package/src/NotificationChannelGroupManager.ts +6 -0
  600. package/src/NotificationChannelGroupManager.types.ts +34 -0
  601. package/src/NotificationChannelManager.kepler.ts +8 -0
  602. package/src/NotificationChannelManager.native.ts +5 -0
  603. package/src/NotificationChannelManager.ts +6 -0
  604. package/src/NotificationChannelManager.types.ts +115 -0
  605. package/src/NotificationPermissions.ts +91 -0
  606. package/src/NotificationPermissions.types.ts +102 -0
  607. package/src/NotificationPermissionsModule.kepler.ts +8 -0
  608. package/src/NotificationPermissionsModule.native.ts +7 -0
  609. package/src/NotificationPermissionsModule.ts +83 -0
  610. package/src/NotificationPermissionsModule.types.ts +13 -0
  611. package/src/NotificationPresenterModule.kepler.ts +67 -0
  612. package/src/NotificationPresenterModule.native.ts +5 -0
  613. package/src/NotificationPresenterModule.ts +6 -0
  614. package/src/NotificationPresenterModule.types.ts +13 -0
  615. package/src/NotificationScheduler.kepler.ts +63 -0
  616. package/src/NotificationScheduler.native.ts +5 -0
  617. package/src/NotificationScheduler.ts +6 -0
  618. package/src/NotificationScheduler.types.ts +89 -0
  619. package/src/Notifications.types.ts +722 -0
  620. package/src/NotificationsEmitter.ts +111 -0
  621. package/src/NotificationsEmitterModule.kepler.ts +8 -0
  622. package/src/NotificationsEmitterModule.native.ts +5 -0
  623. package/src/NotificationsEmitterModule.ts +17 -0
  624. package/src/NotificationsEmitterModule.types.ts +7 -0
  625. package/src/NotificationsHandler.ts +120 -0
  626. package/src/NotificationsHandlerModule.kepler.ts +8 -0
  627. package/src/NotificationsHandlerModule.native.ts +5 -0
  628. package/src/NotificationsHandlerModule.ts +17 -0
  629. package/src/NotificationsHandlerModule.types.ts +10 -0
  630. package/src/PushTokenManager.kepler.ts +8 -0
  631. package/src/PushTokenManager.native.ts +5 -0
  632. package/src/PushTokenManager.ts +17 -0
  633. package/src/PushTokenManager.types.ts +6 -0
  634. package/src/ServerRegistrationModule.kepler.ts +8 -0
  635. package/src/ServerRegistrationModule.native.ts +7 -0
  636. package/src/ServerRegistrationModule.ts +6 -0
  637. package/src/ServerRegistrationModule.types.ts +7 -0
  638. package/src/ServerRegistrationModule.web.ts +56 -0
  639. package/src/TokenEmitter.ts +56 -0
  640. package/src/Tokens.types.ts +110 -0
  641. package/src/cancelAllScheduledNotificationsAsync.ts +16 -0
  642. package/src/cancelScheduledNotificationAsync.ts +31 -0
  643. package/src/deleteNotificationCategoryAsync.ts +23 -0
  644. package/src/deleteNotificationChannelAsync.android.ts +11 -0
  645. package/src/deleteNotificationChannelAsync.ts +10 -0
  646. package/src/deleteNotificationChannelGroupAsync.android.ts +11 -0
  647. package/src/deleteNotificationChannelGroupAsync.ts +10 -0
  648. package/src/dismissAllNotificationsAsync.ts +16 -0
  649. package/src/dismissNotificationAsync.ts +19 -0
  650. package/src/getAllScheduledNotificationsAsync.ts +17 -0
  651. package/src/getBadgeCountAsync.ts +17 -0
  652. package/src/getDevicePushTokenAsync.ts +31 -0
  653. package/src/getDevicePushTokenAsync.web.ts +122 -0
  654. package/src/getExpoPushTokenAsync.ts +238 -0
  655. package/src/getNextTriggerDateAsync.ts +38 -0
  656. package/src/getNotificationCategoriesAsync.ts +21 -0
  657. package/src/getNotificationChannelAsync.android.ts +13 -0
  658. package/src/getNotificationChannelAsync.ts +16 -0
  659. package/src/getNotificationChannelGroupAsync.android.ts +14 -0
  660. package/src/getNotificationChannelGroupAsync.ts +17 -0
  661. package/src/getNotificationChannelGroupsAsync.android.ts +13 -0
  662. package/src/getNotificationChannelGroupsAsync.ts +15 -0
  663. package/src/getNotificationChannelsAsync.android.ts +11 -0
  664. package/src/getNotificationChannelsAsync.ts +13 -0
  665. package/src/getPresentedNotificationsAsync.ts +18 -0
  666. package/src/index.ts +38 -0
  667. package/src/kepler/NotificationContent.ts +119 -0
  668. package/src/kepler/index.ts +16 -0
  669. package/src/kepler/native-notification-manager.ts +10 -0
  670. package/src/kepler/types/NotificationManagerTypes.ts +508 -0
  671. package/src/kepler/types/index.ts +16 -0
  672. package/src/presentNotificationAsync.ts +32 -0
  673. package/src/registerTaskAsync.ts +39 -0
  674. package/src/scheduleNotificationAsync.ts +335 -0
  675. package/src/setBadgeCountAsync.ts +32 -0
  676. package/src/setNotificationCategoryAsync.ts +37 -0
  677. package/src/setNotificationChannelAsync.android.ts +15 -0
  678. package/src/setNotificationChannelAsync.ts +28 -0
  679. package/src/setNotificationChannelGroupAsync.android.ts +18 -0
  680. package/src/setNotificationChannelGroupAsync.ts +21 -0
  681. package/src/unregisterForNotificationsAsync.ts +11 -0
  682. package/src/unregisterTaskAsync.ts +17 -0
  683. package/src/useLastNotificationResponse.ts +70 -0
  684. package/src/utils/keplerUuidUtils.ts +29 -0
  685. package/src/utils/updateDevicePushTokenAsync.ts +147 -0
  686. package/tsconfig.json +9 -0
@@ -0,0 +1,279 @@
1
+ /*
2
+ * Copyright 2024 Amazon.com, Inc. or its affiliates. All rights reserved.
3
+ *
4
+ * AMAZON PROPRIETARY/CONFIDENTIAL
5
+ *
6
+ * You may not use this file except in compliance with the terms and
7
+ * conditions set forth in the accompanying LICENSE.TXT file.
8
+ *
9
+ * THESE MATERIALS ARE PROVIDED ON AN "AS IS" BASIS. AMAZON SPECIFICALLY
10
+ * DISCLAIMS, WITH RESPECT TO THESE MATERIALS, ALL WARRANTIES, EXPRESS,
11
+ * IMPLIED, OR STATUTORY, INCLUDING THE IMPLIED WARRANTIES OF MERCHANTABILITY,
12
+ * FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
13
+ */
14
+ import NotificationContent from '../NotificationContent';
15
+ /**
16
+ * @brief Id key for notification
17
+ *
18
+ */
19
+ export class Uuid {
20
+ bytes;
21
+ constructor(id) {
22
+ if (id.length !== 16) {
23
+ throw new Error('Size of id should be 16');
24
+ }
25
+ this.bytes = id;
26
+ }
27
+ }
28
+ /**
29
+ * Describes the importance of a notification.
30
+ */
31
+ export class Importance {
32
+ /**
33
+ * General information
34
+ * Example: weather update
35
+ */
36
+ static IMPORTANCE_MIN = 'MIN';
37
+ /**
38
+ * Non-time sensitive information
39
+ * Example: new movie recommendation
40
+ */
41
+ static IMPORTANCE_LOW = 'LOW';
42
+ /**
43
+ * Information relevant to the user, non-urgent
44
+ * Example: App download ready
45
+ */
46
+ static IMPORTANCE_NORMAL = 'NORMAL';
47
+ /**
48
+ * Time-Critical information
49
+ * Example: Alarm, phonecall
50
+ * @privilege 'com.amazon.permission.notification.importance_high
51
+ */
52
+ static IMPORTANCE_HIGH = 'HIGH';
53
+ /**
54
+ * Urgent notification that requires an action
55
+ * Example: remote disconnected, device heating up
56
+ * @privilege 'com.amazon.permission.notification.system
57
+ */
58
+ static IMPORTANCE_MAX = 'MAX';
59
+ /**
60
+ * Importance level set on creation of the
61
+ * importance object.
62
+ */
63
+ importance = Importance.IMPORTANCE_NORMAL;
64
+ }
65
+ /**
66
+ * Class to build the notification content. A notification
67
+ * requires a title, description, iconUri, and channel.
68
+ * built from: 'INotificationManager::makeNotificationContentBuilder()'
69
+ */
70
+ export class NotificationContentBuilder {
71
+ mTitle;
72
+ mDescription;
73
+ mFootnote;
74
+ mChannel;
75
+ mLaunchTargets;
76
+ mIconUri;
77
+ mSmallIconUri;
78
+ mLargeIconUri;
79
+ mProgress;
80
+ mTimeout;
81
+ mExtras;
82
+ mPriorityHint;
83
+ /**
84
+ * Sets the title of the notification. This is the short overview of
85
+ * the notification.
86
+ *
87
+ * @param title Title of the notification. Required param
88
+ */
89
+ title(title) {
90
+ this.mTitle = title;
91
+ return this;
92
+ }
93
+ /**
94
+ * Sets the description of the notification. This is the main content of
95
+ * the notification. Required param
96
+ *
97
+ * @param description Description of the notification.
98
+ */
99
+ description(description) {
100
+ this.mDescription = description;
101
+ return this;
102
+ }
103
+ /**
104
+ * Sets the footnote of the notification
105
+ *
106
+ * @param footnote Footnote of the notification. Optional param
107
+ */
108
+ footnote(footnote) {
109
+ this.mFootnote = footnote;
110
+ return this;
111
+ }
112
+ /**
113
+ * Sets the icon uri of the notification. This is the normal icon
114
+ * to be displayed with the notification.
115
+ * Displayed as the icon of the notification.
116
+ * Example is 'https://m.media-amazon.com/rockstar.png'
117
+ *
118
+ * @param iconUri Icon uri for the notification. Required param
119
+ */
120
+ iconUri(iconUri) {
121
+ this.mIconUri = iconUri;
122
+ return this;
123
+ }
124
+ /**
125
+ * Sets the small icon uri. Small instance of the icon to be displayed
126
+ * when the notification is small.
127
+ * Example is 'https://m.media-amazon.com/rockstarSmall.png'
128
+ *
129
+ * @param iconUri small icon uri. Optional param
130
+ */
131
+ smallIconUri(smallIconUri) {
132
+ this.mSmallIconUri = smallIconUri;
133
+ return this;
134
+ }
135
+ /**
136
+ * Sets the large icon uri of the notification. Optional param
137
+ * Large version of the icon to be the an additional image displayed
138
+ * in the notification
139
+ * Example is 'https://m.media-amazon.com/rockstarLarge.png'
140
+ *
141
+ * @param iconUri Large Icon Uri of the notification
142
+ */
143
+ largeIconUri(largeIconUri) {
144
+ this.mLargeIconUri = largeIconUri;
145
+ return this;
146
+ }
147
+ /**
148
+ * Sets the channel this notification will be associated with. Required param
149
+ * @param channel Channel the notification is associated with
150
+ */
151
+ channel(channel) {
152
+ this.mChannel = channel;
153
+ return this;
154
+ }
155
+ /**
156
+ * Sets how long a notification will exist before being removed.
157
+ * Timeout value is in seconds. Notifications with the timeout value
158
+ * set to 0 or a negative values will not be automatically removed
159
+ * Optional param
160
+ */
161
+ timeout(timeout) {
162
+ this.mTimeout = timeout;
163
+ return this;
164
+ }
165
+ /**
166
+ * Sets the priority of the notification in its channel. Used as a hint
167
+ * for how the renderer should prioritize displaying notifications in the
168
+ * channel. Optional param
169
+ * @param priority How important is the notification among other
170
+ * notifications in its channel.
171
+ */
172
+ priorityHint(priorityHint) {
173
+ this.mPriorityHint = priorityHint;
174
+ return this;
175
+ }
176
+ /**
177
+ * Sets the values for a progress bar in the notification. Optional param
178
+ * Updated using the update function
179
+ */
180
+ progress(progress) {
181
+ this.mProgress = progress;
182
+ return this;
183
+ }
184
+ /**
185
+ * Sets an array of extra properties/hints for the renderer.
186
+ * These extras have no guarantee of being used.
187
+ * Limited to 512 extras in array. Optional param
188
+ */
189
+ extras(extras) {
190
+ this.mExtras = extras;
191
+ return this;
192
+ }
193
+ /**
194
+ * Sets the apps/services that can be launched by the notification when
195
+ * interacted with.
196
+ * Optional param
197
+ */
198
+ launchTargets(launchTargets) {
199
+ this.mLaunchTargets = launchTargets;
200
+ return this;
201
+ }
202
+ /**
203
+ * Builds the immutable notification content instance.
204
+ * Finalizes the INotificationContent object and returns an
205
+ * instance.
206
+ * @throws Error if the required params aren't set
207
+ */
208
+ build() {
209
+ if (this.mTitle === undefined) {
210
+ throw Error('Missing Title');
211
+ }
212
+ if (this.mDescription === undefined) {
213
+ throw Error('Missing Description');
214
+ }
215
+ if (this.mIconUri === undefined) {
216
+ throw Error('Missing IconUri');
217
+ }
218
+ if (this.mChannel === undefined) {
219
+ throw Error('Missing Channel');
220
+ }
221
+ return new NotificationContent(this.mTitle, this.mDescription, this.mFootnote, this.mChannel, this.mLaunchTargets, this.mIconUri, this.mSmallIconUri, this.mLargeIconUri, this.mProgress, this.mTimeout, this.mPriorityHint, this.mExtras);
222
+ }
223
+ }
224
+ var kindDescriptor;
225
+ (function (kindDescriptor) {
226
+ kindDescriptor[kindDescriptor["KIND"] = 0] = "KIND";
227
+ kindDescriptor[kindDescriptor["ACTION_REQUIRED"] = 1] = "ACTION_REQUIRED";
228
+ kindDescriptor[kindDescriptor["INFORMATION"] = 2] = "INFORMATION";
229
+ kindDescriptor[kindDescriptor["ON_GOING"] = 3] = "ON_GOING";
230
+ kindDescriptor[kindDescriptor["SYSTEM"] = 4] = "SYSTEM";
231
+ kindDescriptor[kindDescriptor["TOAST"] = 5] = "TOAST";
232
+ })(kindDescriptor || (kindDescriptor = {}));
233
+ /**
234
+ * Class describing the base Kind. Kinds are used to
235
+ * describe the notification. Kinds may include extra properties
236
+ * relevant only to their kind.
237
+ */
238
+ export class NotificationKind {
239
+ kindDescriptor = kindDescriptor.KIND;
240
+ /**
241
+ * Used to visit the 'kind' in a type safe way
242
+ * @param visitor Implementation of a visitor
243
+ * implementing functions that perform different tasks
244
+ * depending on the type of 'kind'
245
+ */
246
+ visit(visitor) {
247
+ visitor.visitUnknown(this);
248
+ }
249
+ }
250
+ /**
251
+ * Kind used to indicate this is an information notification
252
+ * Information notifications are notifications to provide
253
+ * information to the user.
254
+ */
255
+ export class InformationKind extends NotificationKind {
256
+ kindDescriptor = kindDescriptor.INFORMATION;
257
+ /**
258
+ * Returns true if the notification should be displayed
259
+ * on top of the foreground app.
260
+ * example: SMS notification
261
+ */
262
+ isImportant = false;
263
+ /**
264
+ * Returns true if the notification is immediately relevant
265
+ * to the app currently being displayed.
266
+ * Example: Uploading items failed
267
+ */
268
+ isShowIfAppDisplayed = false;
269
+ /**
270
+ * Used to visit the 'kind' in a type safe way
271
+ * @param visitor Implementation of a visitor
272
+ * implementing functions that perform different tasks
273
+ * depending on the type of 'kind'
274
+ */
275
+ visit(visitor) {
276
+ visitor.visitInformation(this);
277
+ }
278
+ }
279
+ //# sourceMappingURL=NotificationManagerTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NotificationManagerTypes.js","sourceRoot":"","sources":["../../../src/kepler/types/NotificationManagerTypes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,mBAAmB,MAAM,wBAAwB,CAAC;AAEzD;;;GAGG;AACH,MAAM,OAAO,IAAI;IACf,KAAK,CAAgB;IACrB,YAAY,EAAiB;QAC3B,IAAI,EAAE,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;IAClB,CAAC;CACF;AAsBD;;GAEG;AACH,MAAM,OAAO,UAAU;IACrB;;;OAGG;IACH,MAAM,CAAC,cAAc,GAAW,KAAK,CAAC;IAEtC;;;OAGG;IACH,MAAM,CAAC,cAAc,GAAW,KAAK,CAAC;IAEtC;;;OAGG;IACH,MAAM,CAAC,iBAAiB,GAAW,QAAQ,CAAC;IAE5C;;;;OAIG;IACH,MAAM,CAAC,eAAe,GAAW,MAAM,CAAC;IAExC;;;;OAIG;IACH,MAAM,CAAC,cAAc,GAAW,KAAK,CAAC;IAEtC;;;OAGG;IACH,UAAU,GAAW,UAAU,CAAC,iBAAiB,CAAC;;AA4JpD;;;;GAIG;AACH,MAAM,OAAO,0BAA0B;IAC7B,MAAM,CAAU;IAChB,YAAY,CAAU;IACtB,SAAS,CAAU;IACnB,QAAQ,CAAW;IACnB,cAAc,CAAc;IAC5B,QAAQ,CAAU;IAClB,aAAa,CAAU;IACvB,aAAa,CAAU;IACvB,SAAS,CAAY;IACrB,QAAQ,CAAU;IAClB,OAAO,CAAgB;IACvB,aAAa,CAAU;IAE/B;;;;;OAKG;IACI,KAAK,CAAC,KAAa;QACxB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACI,WAAW,CAAC,WAAmB;QACpC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACI,QAAQ,CAAC,QAAgB;QAC9B,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;OAOG;IACI,OAAO,CAAC,OAAe;QAC5B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;OAMG;IACI,YAAY,CAAC,YAAoB;QACtC,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;OAOG;IACI,YAAY,CAAC,YAAoB;QACtC,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACI,OAAO,CAAC,OAAgB;QAC7B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACI,OAAO,CAAC,OAAe;QAC5B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;OAMG;IACI,YAAY,CAAC,YAAoB;QACtC,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;QAClC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACI,QAAQ,CAAC,QAAkB;QAChC,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,MAAoB;QAChC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACI,aAAa,CAAC,aAAyB;QAC5C,IAAI,CAAC,cAAc,GAAG,aAAa,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACI,KAAK;QACV,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,KAAK,CAAC,eAAe,CAAC,CAAC;QAC/B,CAAC;QACD,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YACpC,MAAM,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACjC,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACjC,CAAC;QACD,OAAO,IAAI,mBAAmB,CAC5B,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,OAAO,CACb,CAAC;IACJ,CAAC;CACF;AAkBD,IAAK,cAOJ;AAPD,WAAK,cAAc;IACjB,mDAAI,CAAA;IACJ,yEAAe,CAAA;IACf,iEAAW,CAAA;IACX,2DAAQ,CAAA;IACR,uDAAM,CAAA;IACN,qDAAK,CAAA;AACP,CAAC,EAPI,cAAc,KAAd,cAAc,QAOlB;AAED;;;;GAIG;AACH,MAAM,OAAO,gBAAgB;IAC3B,cAAc,GAAmB,cAAc,CAAC,IAAI,CAAC;IAErD;;;;;OAKG;IACH,KAAK,CAAC,OAAY;QAChB,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,OAAO,eAAgB,SAAQ,gBAAgB;IACnD,cAAc,GAAmB,cAAc,CAAC,WAAW,CAAC;IAE5D;;;;OAIG;IACH,WAAW,GAAY,KAAK,CAAC;IAE7B;;;;OAIG;IACH,oBAAoB,GAAY,KAAK,CAAC;IAEtC;;;;;OAKG;IACH,KAAK,CAAC,OAAY;QAChB,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;CACF","sourcesContent":["/*\n * Copyright 2024 Amazon.com, Inc. or its affiliates. All rights reserved.\n *\n * AMAZON PROPRIETARY/CONFIDENTIAL\n *\n * You may not use this file except in compliance with the terms and\n * conditions set forth in the accompanying LICENSE.TXT file.\n *\n * THESE MATERIALS ARE PROVIDED ON AN \"AS IS\" BASIS. AMAZON SPECIFICALLY\n * DISCLAIMS, WITH RESPECT TO THESE MATERIALS, ALL WARRANTIES, EXPRESS,\n * IMPLIED, OR STATUTORY, INCLUDING THE IMPLIED WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT.\n */\n\nimport NotificationContent from '../NotificationContent';\n\n/**\n * @brief Id key for notification\n *\n */\nexport class Uuid {\n bytes: Array<number>;\n constructor(id: Array<number>) {\n if (id.length !== 16) {\n throw new Error('Size of id should be 16');\n }\n this.bytes = id;\n }\n}\n\n/**\n * Describes a progress bar to be displayed in a notification.\n * Progress must be less than or equal to max. Values must be greater than\n * or equal to 0.\n */\nexport interface Progress {\n /**\n * Progress value of the task at the time of the call.\n * This is how far into the task the progress is.\n */\n progress: number;\n\n /**\n * Max value of the progress bar\n * Value doesn't need to be 100.\n * Example: 9/25 files downloaded\n */\n max: number;\n}\n\n/**\n * Describes the importance of a notification.\n */\nexport class Importance {\n /**\n * General information\n * Example: weather update\n */\n static IMPORTANCE_MIN: string = 'MIN';\n\n /**\n * Non-time sensitive information\n * Example: new movie recommendation\n */\n static IMPORTANCE_LOW: string = 'LOW';\n\n /**\n * Information relevant to the user, non-urgent\n * Example: App download ready\n */\n static IMPORTANCE_NORMAL: string = 'NORMAL';\n\n /**\n * Time-Critical information\n * Example: Alarm, phonecall\n * @privilege 'com.amazon.permission.notification.importance_high\n */\n static IMPORTANCE_HIGH: string = 'HIGH';\n\n /**\n * Urgent notification that requires an action\n * Example: remote disconnected, device heating up\n * @privilege 'com.amazon.permission.notification.system\n */\n static IMPORTANCE_MAX: string = 'MAX';\n\n /**\n * Importance level set on creation of the\n * importance object.\n */\n importance: string = Importance.IMPORTANCE_NORMAL;\n}\n\n/**\n * Interface to define an extra property in a notification.\n * These properties are hints to the renderer and there are no\n * guarantees any particular key/value pair will be used when\n * renderering the notification.\n */\nexport interface Extra {\n /**\n * Name of the extra property.\n * Cannot be empty, limited to 128 bytes.\n * Example: \"videoUri\"\n */\n name: string;\n\n /**\n * Value of the extra property.\n * Cannot be empty, limited to 512 bytes.\n * Example: \"www.amazon.com\"\n */\n value: string;\n}\n\n/**\n * Used to group similar types of notifications from a single app. A channel\n * is specific to the app that created it and is used\n * All notifications in the channel have a shared level of importance.\n * An example is grouping all order notifications from Amazon\n * and marking them as 'High' importance.\n */\nexport interface Channel {\n /**\n * Id of the Notification Channel. Name\n * is specified by user while creating the channel.\n */\n name: string;\n\n /**\n * Description of what notifications are in this channel.\n */\n description: string;\n\n /**\n * Uri of the app that this channel is associated with\n */\n appUri?: string;\n\n /**\n * Level of importance of the notifications\n * in this channel.\n */\n importance: Importance;\n\n /**\n * Kind of notification. Used to describe different\n * kinds of notifications from a standard one. Different kinds\n * may contain extra pieces of content or preferred ways to display\n * the notification\n */\n kind: any;\n}\n\n/**\n * Interface to define the contents of a notification. Describes what\n * information will be included in the displayed notification.\n * Built by NotificationContentBuilder\n */\nexport interface INotificationContent {\n /**\n * Title of the notification. Brief overview\n * of the notification. First line of text\n */\n title: string;\n\n /**\n * Description of the notification\n * Line of text after the title.\n */\n description: string;\n\n /**\n * Footnote of the notification.\n * Line of text after the footnote.\n */\n footnote?: string;\n\n /**\n * Channel of the notification\n * Describes which channel the notification is grouped in.\n */\n channel: Channel;\n\n /**\n * Sets the apps/services that can be launched by the notification when\n * interacted with. Targets will attempt to be launched on interaction.\n * Only the first one is guaranteed to be launched.\n */\n launchTargets?: Array<any>;\n\n /**\n * Sets the icon uri of the notification. This is the normal icon\n * to be displayed with the notification.\n * Displayed as the icon of the notification.\n * Example is 'https://m.media-amazon.com/rockstar.png'\n */\n iconUri: string;\n\n /**\n * Sets the small icon uri. Small instance of the icon to be displayed\n * when the notification is small.\n * Example is 'https://m.media-amazon.com/rockstarSmall.png'\n */\n smallIconUri?: string;\n\n /**\n * Sets the large icon uri of the notification. Optional param\n * Large version of the icon to be the an additional image displayed\n * in the notification\n * Example is 'https://m.media-amazon.com/rockstarLarge.png'\n */\n largeIconUri?: string;\n\n /**\n * Progress of the notification\n * Used if the notification has progress to\n * inform the user about.\n */\n progress?: Progress;\n\n /**\n * Timeout of the notification\n * Used to describe the how long before\n * the notification is removed in seconds.\n * Defaults to no timeout.\n */\n timeout?: number;\n\n /**\n * List of extra properties that are hints\n * that the renderer may use to render the notification.\n * There is no guarantee that these extras will be used\n * by the renderer.\n */\n extras?: Array<Extra>;\n\n /**\n * Priority of the notification in the channel.\n * Potentially used by renderer to determine priority of\n * notifications to display within an app's channel.\n * Default returns 0, higher value is higher priority.\n */\n priorityHint?: number;\n}\n\n/**\n * Class to build the notification content. A notification\n * requires a title, description, iconUri, and channel.\n * built from: 'INotificationManager::makeNotificationContentBuilder()'\n */\nexport class NotificationContentBuilder {\n private mTitle?: string;\n private mDescription?: string;\n private mFootnote?: string;\n private mChannel?: Channel;\n private mLaunchTargets?: Array<any>;\n private mIconUri?: string;\n private mSmallIconUri?: string;\n private mLargeIconUri?: string;\n private mProgress?: Progress;\n private mTimeout?: number;\n private mExtras?: Array<Extra>;\n private mPriorityHint?: number;\n\n /**\n * Sets the title of the notification. This is the short overview of\n * the notification.\n *\n * @param title Title of the notification. Required param\n */\n public title(title: string): NotificationContentBuilder {\n this.mTitle = title;\n return this;\n }\n\n /**\n * Sets the description of the notification. This is the main content of\n * the notification. Required param\n *\n * @param description Description of the notification.\n */\n public description(description: string): NotificationContentBuilder {\n this.mDescription = description;\n return this;\n }\n\n /**\n * Sets the footnote of the notification\n *\n * @param footnote Footnote of the notification. Optional param\n */\n public footnote(footnote: string): NotificationContentBuilder {\n this.mFootnote = footnote;\n return this;\n }\n\n /**\n * Sets the icon uri of the notification. This is the normal icon\n * to be displayed with the notification.\n * Displayed as the icon of the notification.\n * Example is 'https://m.media-amazon.com/rockstar.png'\n *\n * @param iconUri Icon uri for the notification. Required param\n */\n public iconUri(iconUri: string): NotificationContentBuilder {\n this.mIconUri = iconUri;\n return this;\n }\n\n /**\n * Sets the small icon uri. Small instance of the icon to be displayed\n * when the notification is small.\n * Example is 'https://m.media-amazon.com/rockstarSmall.png'\n *\n * @param iconUri small icon uri. Optional param\n */\n public smallIconUri(smallIconUri: string): NotificationContentBuilder {\n this.mSmallIconUri = smallIconUri;\n return this;\n }\n\n /**\n * Sets the large icon uri of the notification. Optional param\n * Large version of the icon to be the an additional image displayed\n * in the notification\n * Example is 'https://m.media-amazon.com/rockstarLarge.png'\n *\n * @param iconUri Large Icon Uri of the notification\n */\n public largeIconUri(largeIconUri: string): NotificationContentBuilder {\n this.mLargeIconUri = largeIconUri;\n return this;\n }\n\n /**\n * Sets the channel this notification will be associated with. Required param\n * @param channel Channel the notification is associated with\n */\n public channel(channel: Channel): NotificationContentBuilder {\n this.mChannel = channel;\n return this;\n }\n\n /**\n * Sets how long a notification will exist before being removed.\n * Timeout value is in seconds. Notifications with the timeout value\n * set to 0 or a negative values will not be automatically removed\n * Optional param\n */\n public timeout(timeout: number): NotificationContentBuilder {\n this.mTimeout = timeout;\n return this;\n }\n\n /**\n * Sets the priority of the notification in its channel. Used as a hint\n * for how the renderer should prioritize displaying notifications in the\n * channel. Optional param\n * @param priority How important is the notification among other\n * notifications in its channel.\n */\n public priorityHint(priorityHint: number): NotificationContentBuilder {\n this.mPriorityHint = priorityHint;\n return this;\n }\n\n /**\n * Sets the values for a progress bar in the notification. Optional param\n * Updated using the update function\n */\n public progress(progress: Progress): NotificationContentBuilder {\n this.mProgress = progress;\n return this;\n }\n\n /**\n * Sets an array of extra properties/hints for the renderer.\n * These extras have no guarantee of being used.\n * Limited to 512 extras in array. Optional param\n */\n public extras(extras: Array<Extra>): NotificationContentBuilder {\n this.mExtras = extras;\n return this;\n }\n\n /**\n * Sets the apps/services that can be launched by the notification when\n * interacted with.\n * Optional param\n */\n public launchTargets(launchTargets: Array<any>): NotificationContentBuilder {\n this.mLaunchTargets = launchTargets;\n return this;\n }\n\n /**\n * Builds the immutable notification content instance.\n * Finalizes the INotificationContent object and returns an\n * instance.\n * @throws Error if the required params aren't set\n */\n public build(): NotificationContent {\n if (this.mTitle === undefined) {\n throw Error('Missing Title');\n }\n if (this.mDescription === undefined) {\n throw Error('Missing Description');\n }\n if (this.mIconUri === undefined) {\n throw Error('Missing IconUri');\n }\n if (this.mChannel === undefined) {\n throw Error('Missing Channel');\n }\n return new NotificationContent(\n this.mTitle,\n this.mDescription,\n this.mFootnote,\n this.mChannel,\n this.mLaunchTargets,\n this.mIconUri,\n this.mSmallIconUri,\n this.mLargeIconUri,\n this.mProgress,\n this.mTimeout,\n this.mPriorityHint,\n this.mExtras\n );\n }\n}\n\n/**\n * Used to correlate the notification content with the\n * id generated from posting the content\n */\nexport interface Notification {\n /**\n * Content of the notification\n */\n notificationContent: NotificationContent;\n\n /**\n * The id of the notification\n */\n id: Uuid;\n}\n\nenum kindDescriptor {\n KIND,\n ACTION_REQUIRED,\n INFORMATION,\n ON_GOING,\n SYSTEM,\n TOAST,\n}\n\n/**\n * Class describing the base Kind. Kinds are used to\n * describe the notification. Kinds may include extra properties\n * relevant only to their kind.\n */\nexport class NotificationKind {\n kindDescriptor: kindDescriptor = kindDescriptor.KIND;\n\n /**\n * Used to visit the 'kind' in a type safe way\n * @param visitor Implementation of a visitor\n * implementing functions that perform different tasks\n * depending on the type of 'kind'\n */\n visit(visitor: any): any {\n visitor.visitUnknown(this);\n }\n}\n\n/**\n * Kind used to indicate this is an information notification\n * Information notifications are notifications to provide\n * information to the user.\n */\nexport class InformationKind extends NotificationKind {\n kindDescriptor: kindDescriptor = kindDescriptor.INFORMATION;\n\n /**\n * Returns true if the notification should be displayed\n * on top of the foreground app.\n * example: SMS notification\n */\n isImportant: boolean = false;\n\n /**\n * Returns true if the notification is immediately relevant\n * to the app currently being displayed.\n * Example: Uploading items failed\n */\n isShowIfAppDisplayed: boolean = false;\n\n /**\n * Used to visit the 'kind' in a type safe way\n * @param visitor Implementation of a visitor\n * implementing functions that perform different tasks\n * depending on the type of 'kind'\n */\n visit(visitor: any): any {\n visitor.visitInformation(this);\n }\n}\n"]}
@@ -0,0 +1,3 @@
1
+ export type { Channel, Extra, INotificationContent, Progress } from './NotificationManagerTypes';
2
+ export { Importance, InformationKind, Uuid } from './NotificationManagerTypes';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/kepler/types/index.ts"],"names":[],"mappings":"AAcA,YAAY,EAAE,OAAO,EAAE,KAAK,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACjG,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC"}
@@ -0,0 +1,15 @@
1
+ /*
2
+ * Copyright 2024 Amazon.com, Inc. or its affiliates. All rights reserved.
3
+ *
4
+ * AMAZON PROPRIETARY/CONFIDENTIAL
5
+ *
6
+ * You may not use this file except in compliance with the terms and
7
+ * conditions set forth in the accompanying LICENSE.TXT file.
8
+ *
9
+ * THESE MATERIALS ARE PROVIDED ON AN "AS IS" BASIS. AMAZON SPECIFICALLY
10
+ * DISCLAIMS, WITH RESPECT TO THESE MATERIALS, ALL WARRANTIES, EXPRESS,
11
+ * IMPLIED, OR STATUTORY, INCLUDING THE IMPLIED WARRANTIES OF MERCHANTABILITY,
12
+ * FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
13
+ */
14
+ export { Importance, InformationKind, Uuid } from './NotificationManagerTypes';
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/kepler/types/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC","sourcesContent":["/*\n * Copyright 2024 Amazon.com, Inc. or its affiliates. All rights reserved.\n *\n * AMAZON PROPRIETARY/CONFIDENTIAL\n *\n * You may not use this file except in compliance with the terms and\n * conditions set forth in the accompanying LICENSE.TXT file.\n *\n * THESE MATERIALS ARE PROVIDED ON AN \"AS IS\" BASIS. AMAZON SPECIFICALLY\n * DISCLAIMS, WITH RESPECT TO THESE MATERIALS, ALL WARRANTIES, EXPRESS,\n * IMPLIED, OR STATUTORY, INCLUDING THE IMPLIED WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT.\n */\n\nexport type { Channel, Extra, INotificationContent, Progress } from './NotificationManagerTypes';\nexport { Importance, InformationKind, Uuid } from './NotificationManagerTypes';\n"]}
@@ -0,0 +1,11 @@
1
+ import { NotificationContentInput } from './Notifications.types';
2
+ /**
3
+ * Schedules a notification for immediate trigger.
4
+ * @param content An object representing the notification content.
5
+ * @param identifier
6
+ * @return It returns a Promise resolving with the notification's identifier once the notification is successfully scheduled for immediate display.
7
+ * @header schedule
8
+ * @deprecated This method has been deprecated in favor of using an explicit `NotificationHandler` and the [`scheduleNotificationAsync`](#notificationsschedulenotificationasyncrequest) method. More information can be found in our [FYI document](https://expo.fyi/presenting-notifications-deprecated).
9
+ */
10
+ export default function presentNotificationAsync(content: NotificationContentInput, identifier?: string): Promise<string>;
11
+ //# sourceMappingURL=presentNotificationAsync.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"presentNotificationAsync.d.ts","sourceRoot":"","sources":["../src/presentNotificationAsync.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAIjE;;;;;;;GAOG;AACH,wBAA8B,wBAAwB,CACpD,OAAO,EAAE,wBAAwB,EACjC,UAAU,GAAE,MAAkB,GAC7B,OAAO,CAAC,MAAM,CAAC,CAajB"}
@@ -0,0 +1,22 @@
1
+ import { UnavailabilityError, uuid } from 'expo-modules-core';
2
+ import NotificationPresenter from './NotificationPresenterModule';
3
+ let warningMessageShown = false;
4
+ /**
5
+ * Schedules a notification for immediate trigger.
6
+ * @param content An object representing the notification content.
7
+ * @param identifier
8
+ * @return It returns a Promise resolving with the notification's identifier once the notification is successfully scheduled for immediate display.
9
+ * @header schedule
10
+ * @deprecated This method has been deprecated in favor of using an explicit `NotificationHandler` and the [`scheduleNotificationAsync`](#notificationsschedulenotificationasyncrequest) method. More information can be found in our [FYI document](https://expo.fyi/presenting-notifications-deprecated).
11
+ */
12
+ export default async function presentNotificationAsync(content, identifier = uuid.v4()) {
13
+ if (__DEV__ && !warningMessageShown) {
14
+ console.warn('`presentNotificationAsync` has been deprecated in favor of using `scheduleNotificationAsync` + an explicit notification handler. Read more at https://expo.fyi/presenting-notifications-deprecated.');
15
+ warningMessageShown = true;
16
+ }
17
+ if (!NotificationPresenter.presentNotificationAsync) {
18
+ throw new UnavailabilityError('Notifications', 'presentNotificationAsync');
19
+ }
20
+ return await NotificationPresenter.presentNotificationAsync(identifier, content);
21
+ }
22
+ //# sourceMappingURL=presentNotificationAsync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"presentNotificationAsync.js","sourceRoot":"","sources":["../src/presentNotificationAsync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAE9D,OAAO,qBAAqB,MAAM,+BAA+B,CAAC;AAGlE,IAAI,mBAAmB,GAAG,KAAK,CAAC;AAEhC;;;;;;;GAOG;AACH,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,wBAAwB,CACpD,OAAiC,EACjC,aAAqB,IAAI,CAAC,EAAE,EAAE;IAE9B,IAAI,OAAO,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACpC,OAAO,CAAC,IAAI,CACV,qMAAqM,CACtM,CAAC;QACF,mBAAmB,GAAG,IAAI,CAAC;IAC7B,CAAC;IAED,IAAI,CAAC,qBAAqB,CAAC,wBAAwB,EAAE,CAAC;QACpD,MAAM,IAAI,mBAAmB,CAAC,eAAe,EAAE,0BAA0B,CAAC,CAAC;IAC7E,CAAC;IAED,OAAO,MAAM,qBAAqB,CAAC,wBAAwB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;AACnF,CAAC","sourcesContent":["import { UnavailabilityError, uuid } from 'expo-modules-core';\n\nimport NotificationPresenter from './NotificationPresenterModule';\nimport { NotificationContentInput } from './Notifications.types';\n\nlet warningMessageShown = false;\n\n/**\n * Schedules a notification for immediate trigger.\n * @param content An object representing the notification content.\n * @param identifier\n * @return It returns a Promise resolving with the notification's identifier once the notification is successfully scheduled for immediate display.\n * @header schedule\n * @deprecated This method has been deprecated in favor of using an explicit `NotificationHandler` and the [`scheduleNotificationAsync`](#notificationsschedulenotificationasyncrequest) method. More information can be found in our [FYI document](https://expo.fyi/presenting-notifications-deprecated).\n */\nexport default async function presentNotificationAsync(\n content: NotificationContentInput,\n identifier: string = uuid.v4()\n): Promise<string> {\n if (__DEV__ && !warningMessageShown) {\n console.warn(\n '`presentNotificationAsync` has been deprecated in favor of using `scheduleNotificationAsync` + an explicit notification handler. Read more at https://expo.fyi/presenting-notifications-deprecated.'\n );\n warningMessageShown = true;\n }\n\n if (!NotificationPresenter.presentNotificationAsync) {\n throw new UnavailabilityError('Notifications', 'presentNotificationAsync');\n }\n\n return await NotificationPresenter.presentNotificationAsync(identifier, content);\n}\n"]}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * When a notification is received while the app is backgrounded, using this function you can set a callback that will be run in response to that notification.
3
+ * Under the hood, this function is run using `expo-task-manager`. You **must** define the task first, with [`TaskManager.defineTask`](./task-manager#taskmanagerdefinetasktaskname-taskexecutor).
4
+ * Make sure you define it in the global scope.
5
+ *
6
+ * The callback function you define with `TaskManager.defineTask` will receive an object with the following fields:
7
+ * - `data`: The remote payload delivered by either FCM (Android) or APNs (iOS). See [`PushNotificationTrigger`](#pushnotificationtrigger) for details.
8
+ * - `error`: The error (if any) that occurred during execution of the task.
9
+ * - `executionInfo`: JSON object of additional info related to the task, including the `taskName`.
10
+ * @param taskName The string you passed to `TaskManager.defineTask` as the `taskName` parameter.
11
+ *
12
+ * @example
13
+ * ```ts
14
+ * import * as TaskManager from '@amazon-devices/expo-task-manager';
15
+ * import * as Notifications from '@amazon-devices/expo-notifications';
16
+ *
17
+ * const BACKGROUND_NOTIFICATION_TASK = 'BACKGROUND-NOTIFICATION-TASK';
18
+ *
19
+ * TaskManager.defineTask(BACKGROUND_NOTIFICATION_TASK, ({ data, error, executionInfo }) => {
20
+ * console.log('Received a notification in the background!');
21
+ * // Do something with the notification data
22
+ * });
23
+ *
24
+ * Notifications.registerTaskAsync(BACKGROUND_NOTIFICATION_TASK);
25
+ * ```
26
+ * @header inBackground
27
+ */
28
+ export default function registerTaskAsync(taskName: string): Promise<null>;
29
+ //# sourceMappingURL=registerTaskAsync.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registerTaskAsync.d.ts","sourceRoot":"","sources":["../src/registerTaskAsync.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAA8B,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAM/E"}
@@ -0,0 +1,37 @@
1
+ import { UnavailabilityError } from 'expo-modules-core';
2
+ // @amznmod_react - Changed .native import to one without postfix
3
+ import BackgroundNotificationTasksModule from './BackgroundNotificationTasksModule';
4
+ /**
5
+ * When a notification is received while the app is backgrounded, using this function you can set a callback that will be run in response to that notification.
6
+ * Under the hood, this function is run using `expo-task-manager`. You **must** define the task first, with [`TaskManager.defineTask`](./task-manager#taskmanagerdefinetasktaskname-taskexecutor).
7
+ * Make sure you define it in the global scope.
8
+ *
9
+ * The callback function you define with `TaskManager.defineTask` will receive an object with the following fields:
10
+ * - `data`: The remote payload delivered by either FCM (Android) or APNs (iOS). See [`PushNotificationTrigger`](#pushnotificationtrigger) for details.
11
+ * - `error`: The error (if any) that occurred during execution of the task.
12
+ * - `executionInfo`: JSON object of additional info related to the task, including the `taskName`.
13
+ * @param taskName The string you passed to `TaskManager.defineTask` as the `taskName` parameter.
14
+ *
15
+ * @example
16
+ * ```ts
17
+ * import * as TaskManager from '@amazon-devices/expo-task-manager';
18
+ * import * as Notifications from '@amazon-devices/expo-notifications';
19
+ *
20
+ * const BACKGROUND_NOTIFICATION_TASK = 'BACKGROUND-NOTIFICATION-TASK';
21
+ *
22
+ * TaskManager.defineTask(BACKGROUND_NOTIFICATION_TASK, ({ data, error, executionInfo }) => {
23
+ * console.log('Received a notification in the background!');
24
+ * // Do something with the notification data
25
+ * });
26
+ *
27
+ * Notifications.registerTaskAsync(BACKGROUND_NOTIFICATION_TASK);
28
+ * ```
29
+ * @header inBackground
30
+ */
31
+ export default async function registerTaskAsync(taskName) {
32
+ if (!BackgroundNotificationTasksModule.registerTaskAsync) {
33
+ throw new UnavailabilityError('Notifications', 'registerTaskAsync');
34
+ }
35
+ return await BackgroundNotificationTasksModule.registerTaskAsync(taskName);
36
+ }
37
+ //# sourceMappingURL=registerTaskAsync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registerTaskAsync.js","sourceRoot":"","sources":["../src/registerTaskAsync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,iEAAiE;AACjE,OAAO,iCAAiC,MAAM,qCAAqC,CAAC;AAEpF;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,iBAAiB,CAAC,QAAgB;IAC9D,IAAI,CAAC,iCAAiC,CAAC,iBAAiB,EAAE,CAAC;QACzD,MAAM,IAAI,mBAAmB,CAAC,eAAe,EAAE,mBAAmB,CAAC,CAAC;IACtE,CAAC;IAED,OAAO,MAAM,iCAAiC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;AAC7E,CAAC","sourcesContent":["import { UnavailabilityError } from 'expo-modules-core';\n\n// @amznmod_react - Changed .native import to one without postfix\nimport BackgroundNotificationTasksModule from './BackgroundNotificationTasksModule';\n\n/**\n * When a notification is received while the app is backgrounded, using this function you can set a callback that will be run in response to that notification.\n * Under the hood, this function is run using `expo-task-manager`. You **must** define the task first, with [`TaskManager.defineTask`](./task-manager#taskmanagerdefinetasktaskname-taskexecutor).\n * Make sure you define it in the global scope.\n *\n * The callback function you define with `TaskManager.defineTask` will receive an object with the following fields:\n * - `data`: The remote payload delivered by either FCM (Android) or APNs (iOS). See [`PushNotificationTrigger`](#pushnotificationtrigger) for details.\n * - `error`: The error (if any) that occurred during execution of the task.\n * - `executionInfo`: JSON object of additional info related to the task, including the `taskName`.\n * @param taskName The string you passed to `TaskManager.defineTask` as the `taskName` parameter.\n *\n * @example\n * ```ts\n * import * as TaskManager from '@amazon-devices/expo-task-manager';\n * import * as Notifications from '@amazon-devices/expo-notifications';\n *\n * const BACKGROUND_NOTIFICATION_TASK = 'BACKGROUND-NOTIFICATION-TASK';\n *\n * TaskManager.defineTask(BACKGROUND_NOTIFICATION_TASK, ({ data, error, executionInfo }) => {\n * console.log('Received a notification in the background!');\n * // Do something with the notification data\n * });\n *\n * Notifications.registerTaskAsync(BACKGROUND_NOTIFICATION_TASK);\n * ```\n * @header inBackground\n */\nexport default async function registerTaskAsync(taskName: string): Promise<null> {\n if (!BackgroundNotificationTasksModule.registerTaskAsync) {\n throw new UnavailabilityError('Notifications', 'registerTaskAsync');\n }\n\n return await BackgroundNotificationTasksModule.registerTaskAsync(taskName);\n}\n"]}
@@ -0,0 +1,60 @@
1
+ import { NotificationTriggerInput as NativeNotificationTriggerInput } from './NotificationScheduler.types';
2
+ import { NotificationRequestInput, NotificationTriggerInput } from './Notifications.types';
3
+ /**
4
+ * Schedules a notification to be triggered in the future.
5
+ * > **Note:** Please note that this does not mean that the notification will be presented when it is triggered.
6
+ * For the notification to be presented you have to set a notification handler with [`setNotificationHandler`](#notificationssetnotificationhandlerhandler)
7
+ * that will return an appropriate notification behavior. For more information see the example below.
8
+ * @param request An object describing the notification to be triggered.
9
+ * @return Returns a Promise resolving to a string which is a notification identifier you can later use to cancel the notification or to identify an incoming notification.
10
+ * @example
11
+ * # Schedule the notification that will trigger once, in one minute from now
12
+ * ```ts
13
+ * import * as Notifications from '@amazon-devices/expo-notifications';
14
+ *
15
+ * Notifications.scheduleNotificationAsync({
16
+ * content: {
17
+ * title: "Time's up!",
18
+ * body: 'Change sides!',
19
+ * },
20
+ * trigger: {
21
+ * seconds: 60,
22
+ * },
23
+ * });
24
+ * ```
25
+ *
26
+ * # Schedule the notification that will trigger repeatedly, every 20 minutes
27
+ * ```ts
28
+ * import * as Notifications from '@amazon-devices/expo-notifications';
29
+ *
30
+ * Notifications.scheduleNotificationAsync({
31
+ * content: {
32
+ * title: 'Remember to drink water!',
33
+ * },
34
+ * trigger: {
35
+ * seconds: 60 * 20,
36
+ * repeats: true,
37
+ * },
38
+ * });
39
+ * ```
40
+ *
41
+ * # Schedule the notification that will trigger once, at the beginning of next hour
42
+ * ```ts
43
+ * import * as Notifications from '@amazon-devices/expo-notifications';
44
+ *
45
+ * const trigger = new Date(Date.now() + 60 * 60 * 1000);
46
+ * trigger.setMinutes(0);
47
+ * trigger.setSeconds(0);
48
+ *
49
+ * Notifications.scheduleNotificationAsync({
50
+ * content: {
51
+ * title: 'Happy new hour!',
52
+ * },
53
+ * trigger,
54
+ * });
55
+ * ```
56
+ * @header schedule
57
+ */
58
+ export default function scheduleNotificationAsync(request: NotificationRequestInput): Promise<string>;
59
+ export declare function parseTrigger(userFacingTrigger: NotificationTriggerInput): NativeNotificationTriggerInput;
60
+ //# sourceMappingURL=scheduleNotificationAsync.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scheduleNotificationAsync.d.ts","sourceRoot":"","sources":["../src/scheduleNotificationAsync.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,wBAAwB,IAAI,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAC3G,OAAO,EACL,wBAAwB,EACxB,wBAAwB,EASzB,MAAM,uBAAuB,CAAC;AAE/B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AACH,wBAA8B,yBAAyB,CACrD,OAAO,EAAE,wBAAwB,GAChC,OAAO,CAAC,MAAM,CAAC,CAUjB;AAoBD,wBAAgB,YAAY,CAC1B,iBAAiB,EAAE,wBAAwB,GAC1C,8BAA8B,CA4DhC"}