Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[User Model] [Fix] Notification permission change event type to boolean #1075

Conversation

jkasten2
Copy link
Member

@jkasten2 jkasten2 commented Aug 1, 2023

Description

1 Line Summary

Correct OneSignal.Notification.addEventListener("permissionChange", function....) to provide a boolean instead of a string.

Details

Validation

Tests

  • Tested on Chrome on macOS, ensuring the event fires with a boolean
  • Added new automated tests

Info

Checklist

  • All the automated tests pass or I explained why that is not possible
  • I have personally tested this on my machine or explained why that is not possible
  • I have included test coverage for these changes or explained why they are not needed

Programming Checklist
Interfaces:

  • Don't use default export
  • New interfaces are in model files

Functions:

  • Don't use default export
  • All function signatures have return types
  • Helpers should not access any data but rather be given the data to operate on.

Typescript:

  • No Typescript warnings
  • Avoid silencing null/undefined warnings with the exclamation point

Other:

  • Iteration: refrain from using elem of array syntax. Prefer forEach or use map
  • Avoid using global OneSignal accessor for context if possible. Instead, we can pass it to function/constructor so that we don't call OneSignal.context

Screenshots

Info

Checklist

  • I have included screenshots/recordings of the intended results or explained why they are not needed

Related Tickets



This change is Reviewable

Improving this readability as we are going to add some more tests using
this in a follow up commit in this PR.
Rename NATIVE_PROMPT_PERMISSIONCHANGED to
NOTIFICATION_PERMISSION_CHANGED_AS_STRING.
This is much more accurate name, also ended with "AS_STRING" as we will
add a "AS_BOOLEAN" copy of this event in the next commit.
Added test to ensure the correct value is fired on the PermissionChange
event. Also test to ensure removeEventListener also works.
Add NOTIFICATION_PERMISSION_CHANGED_AS_BOOLEAN to fire public event.
This closer matches our public API
Base automatically changed from user-model/fix-bell-not-updating-to-subscribed-state to user-model/v1 August 2, 2023 21:42
Copy link
Contributor

@rgomezp rgomezp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall looks great. A couple nits

__test__/support/managers/PermissionManager.ts Outdated Show resolved Hide resolved
src/shared/utils/PermissionUtils.ts Outdated Show resolved Hide resolved
@jkasten2 jkasten2 merged commit efa51db into user-model/v1 Aug 4, 2023
2 checks passed
@jkasten2 jkasten2 deleted the user-model/fix-notification-permission-change-event-type branch August 4, 2023 22:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants