| #
1037e824 |
| 14-Nov-2020 |
Stanisław Chmiela <[email protected]> |
[expo-notifications] Add useLastNotificationResponse hook (#10883)
# Why
Idea inspired by @cruzach sounded! https://github.com/expo/expo/pull/10811#pullrequestreview-518819031
# How
- Since
[expo-notifications] Add useLastNotificationResponse hook (#10883)
# Why
Idea inspired by @cruzach sounded! https://github.com/expo/expo/pull/10811#pullrequestreview-518819031
# How
- Since there will be two hooks now that depend on the notification response listener being registered in the global scope I moved it to a `SharedNotificationResponseListener.fx.ts` file
- Changed `useInitialNotificationResponse` implementation to rely on it
- Added the ability to listen for incoming responses to the shared listener
- Implemented `useLastNotificationResponse` which is like a notification response swiss knife:
- if registered early enough judging by its return values states you can deduce whether there was this special "initial notification response" or not
- always returns the latest notification response received (or something falsy, depending on whether you care about the "initiality" or "initialness" of the response you can ignore the difference between `undefined` or `null` or not)
Frankly speaking I'm not 100% sure how big of a deal is leaving a dangling listener active, but I can't think of any reason why it would be a problem.
# Test Plan
I have verified this hook returns latest notification response if the hook is mounted as (early in the app as possible and after some time from starting the app) ✖️ (the app is started in response to notification tap, notification tap while the app is running)
show more ...
|
| #
f6562485 |
| 28-Jul-2020 |
Charlie Cruzan <[email protected]> |
[expo-notifications] feat: add notification categories (interactive notifications) (#9015)
* ios implementation
* add getCategoriesAsync method
* change type and method names based on architec
[expo-notifications] feat: add notification categories (interactive notifications) (#9015)
* ios implementation
* add getCategoriesAsync method
* change type and method names based on architecture proposal
* add android boilerplate code
* Correct typescript layer according to architecture proposal
* first pass at tests
* return category after creating it, and clean up parsing code
* get iOS tests passing
* [ios] add remaining native options functionality
* finalize tests for iOS
* beginning of android implementation
* [android] implement action button feature
* fix remote notification category handling
* support 'options' argument for notification action
* make some changes to follow new additions to architecture proposal
* [android] add functionality for actions that don't foreground the app
* serialize options so they are returned in an object
* change doNotOpenInForeground to opensAppToForeground
* [android] text reply actions functionality
* [android] pass along user text response with notification
* clean up categoryAwareBuilder
* rebase master, re-'yarn build'
* cleanup iOS
* [android] fix test suite tests
* docs and changelog
* fix typescript typo and rebuild
* update readme
* reformat java code
* rename some java variables
* address iOS feedback
* address remaining pieces of android feedback
* fix client build
* docs, readme, and changelog updates
* improve tests, test feedback
* extract interface, create .native and .web files, and the rest of TS feedback
* optimize all java imports
* [ios] add scoped notification categories
* [ios] remove scope prefix from serialized notification in client
* [ios] left this out of previous commit
* serialize category identifer on android
* [android] scope notification categories in android expo client
* fix spelling mistake
* [expo client] run pod install
* Apply suggestions from code review
Co-authored-by: Łukasz Kosmaty <[email protected]>
* add andraid NonNull handling
* [ios] scope notification serializer
* Apply suggestions from code review
fix name of category prefix remover method; spacing fixes
Co-authored-by: Łukasz Kosmaty <[email protected]>
* fix reversed emitted events on iOS, and re- yarn build
* fix iOS client build
* rebuild JS
Co-authored-by: Łukasz Kosmaty <[email protected]>
show more ...
|
| #
44bbe92d |
| 18-May-2020 |
Łukasz Kosmaty <[email protected]> |
[expo-notifications] Add scoped notifications handler (#8268)
* [expo-notifications][ios] Add EXScopedNotificationsHandlerModule
* [expo-notifications][android] Add ScopedNotificationsHandler
[expo-notifications] Add scoped notifications handler (#8268)
* [expo-notifications][ios] Add EXScopedNotificationsHandlerModule
* [expo-notifications][android] Add ScopedNotificationsHandler
* [expo-notification] Fix utils class
* [expo-notifications] Apply requested changes
show more ...
|
| #
e62fb1d4 |
| 18-May-2020 |
Łukasz Kosmaty <[email protected]> |
[expo-notifications] Add scoped event emitter (#8265)
* [expo-notifications][ios] Add scoped emitter
* [expo-notifications][android] Add scoped emitter
* [expo-notifications] Rewrite scoped lo
[expo-notifications] Add scoped event emitter (#8265)
* [expo-notifications][ios] Add scoped emitter
* [expo-notifications][android] Add scoped emitter
* [expo-notifications] Rewrite scoped logic
* [expo-notifications] Move ScopedNotificationScheduler to different PR
* [expo-notifications] Apply requested changes
* [expo-notification] Allow unscoped notification
show more ...
|