Sorin Davidoi
0c7c188c45
Web Push Notifications (#3243)
* feat: Register push subscription
* feat: Notify when mentioned
* feat: Boost, favourite, reply, follow, follow request
* feat: Notification interaction
* feat: Handle change of public key
* feat: Unsubscribe if things go wrong
* feat: Do not send normal notifications if push is enabled
* feat: Focus client if open
* refactor: Move push logic to WebPushSubscription
* feat: Better title and body
* feat: Localize messages
* chore: Fix lint errors
* feat: Settings
* refactor: Lazy load
* fix: Check if push settings exist
* feat: Device-based preferences
* refactor: Simplify logic
* refactor: Pull request feedback
* refactor: Pull request feedback
* refactor: Create /api/web/push_subscriptions endpoint
* feat: Spec PushSubscriptionController
* refactor: WebPushSubscription => Web::PushSubscription
* feat: Spec Web::PushSubscription
* feat: Display first media attachment
* feat: Support direction
* fix: Stuff broken while rebasing
* refactor: Integration with session activations
* refactor: Cleanup
* refactor: Simplify implementation
* feat: Set VAPID keys via environment
* chore: Comments
* fix: Crash when no alerts
* fix: Set VAPID keys in testing environment
* fix: Follow link
* feat: Notification actions
* fix: Delete previous subscription
* chore: Temporary logs
* refactor: Move migration to a later date
* fix: Fetch the correct session activation and misc bugs
* refactor: Move migration to a later date
* fix: Remove follow request (no notifications)
* feat: Send administrator contact to push service
* feat: Set time-to-live
* fix: Do not show sensitive images
* fix: Reducer crash in error handling
* feat: Add badge
* chore: Fix lint error
* fix: Checkbox label overlap
* fix: Check for payload support
* fix: Rename action "type" (crash in latest Chrome)
* feat: Action to expand notification
* fix: Lint errors
* fix: Unescape notification body
* fix: Do not allow boosting if the status is hidden
* feat: Add VAPID keys to the production sample environment
* fix: Strip HTML tags from status
* refactor: Better error messages
* refactor: Handle browser not implementing the VAPID protocol (Samsung Internet)
* fix: Error when target_status is nil
* fix: Handle lack of image
* fix: Delete reference to invalid subscriptions
* feat: Better error handling
* fix: Unescape HTML characters after tags are striped
* refactor: Simpify code
* fix: Modify to work with #4091
* Sort strings alphabetically
* i18n: Updated Polish translation
it annoys me that it's not fully localized :P
* refactor: Use current_session in PushSubscriptionController
* fix: Rebase mistake
* fix: Set cacheName to mastodon
* refactor: Pull request feedback
* refactor: Remove logging statements
* chore(yarn): Fix conflicts with master
* chore(yarn): Copy latest from master
* chore(yarn): Readd offline-plugin
* refactor: Use save! and update!
* refactor: Send notifications async
* fix: Allow retry when push fails
* fix: Save track for failed pushes
* fix: Minify sw.js
* fix: Remove account_id from fabricator
2017-07-13 22:15:32 +02:00
..
2017-05-20 17:50:11 +02:00
2017-04-26 02:16:30 +02:00
2017-05-22 00:20:13 +02:00
2017-07-08 01:27:22 +02:00
2017-05-02 08:54:35 -04:00
2017-04-30 11:35:15 -04:00
2017-05-01 18:14:51 +02:00
2017-06-28 16:45:21 +02:00
2017-05-09 14:01:45 +02:00
2017-05-02 20:55:14 +02:00
2017-06-28 14:07:53 +02:00
2017-05-22 16:03:50 +02:00
2017-05-08 15:56:00 +02:00
2017-05-08 01:46:36 +02:00
2017-07-11 15:27:59 +02:00
2017-07-11 15:27:59 +02:00
2017-07-12 03:24:04 +02:00
2017-07-12 03:24:04 +02:00
2017-04-23 05:58:47 +02:00
2017-04-13 13:16:28 +02:00
2017-05-17 00:25:10 +02:00
2017-04-03 19:01:17 +02:00
2017-05-17 02:55:37 +02:00
2017-04-03 20:22:50 +02:00
2016-11-19 18:31:36 +01:00
2017-05-04 18:32:05 +02:00
2017-04-11 21:41:29 +02:00
2017-07-08 01:27:22 +02:00
2017-05-19 11:42:02 +02:00
2017-04-13 19:18:32 +02:00
2016-11-25 13:57:37 +01:00
2017-04-21 19:16:26 +02:00
2017-04-21 19:15:25 +02:00
2017-04-13 22:26:32 +02:00
2017-05-16 00:12:07 +02:00
2017-05-08 23:11:12 +02:00
2017-04-15 02:33:37 +02:00
2017-06-17 20:21:25 +02:00
2017-06-27 23:14:02 +02:00
2017-04-17 10:38:27 +02:00
2017-04-17 10:38:27 +02:00
2017-05-08 01:46:36 +02:00
2017-05-08 15:56:00 +02:00
2017-05-13 17:13:17 +02:00
2017-05-08 01:46:36 +02:00
2017-05-08 01:46:36 +02:00
2017-04-15 02:48:30 +02:00
2017-04-15 02:49:43 +02:00
2017-05-12 14:32:13 +02:00
2017-04-13 13:16:28 +02:00
2017-05-17 00:25:10 +02:00
2017-04-26 15:46:14 +02:00
2017-03-26 13:22:38 +02:00
2017-04-03 20:22:50 +02:00
2017-04-15 02:31:16 +02:00
2017-05-04 18:32:05 +02:00
2017-04-03 14:56:13 +02:00
2017-07-08 01:27:22 +02:00
2017-05-02 08:54:35 -04:00
2017-04-13 13:38:44 +02:00
2016-11-25 13:57:37 +01:00
2017-04-30 11:35:15 -04:00
2017-04-21 19:15:25 +02:00
2017-04-13 15:27:56 +02:00
2017-04-13 13:23:45 +02:00
2017-04-18 00:16:03 +02:00
2017-04-15 02:33:37 +02:00
2017-06-22 13:39:13 +02:00
2017-04-15 02:22:46 +02:00
2017-04-17 10:38:27 +02:00
2017-04-17 10:38:27 +02:00
2017-04-10 12:52:06 +02:00
2017-05-08 15:56:00 +02:00
2017-05-07 23:47:19 +02:00
2017-05-08 01:46:36 +02:00
2017-05-05 18:48:54 +02:00
2017-04-15 02:49:43 +02:00
2017-07-13 22:15:32 +02:00
2017-07-11 15:27:59 +02:00
2017-07-11 15:27:59 +02:00
2017-07-12 03:24:04 +02:00
2017-07-11 15:27:59 +02:00
2017-07-12 03:24:04 +02:00
2017-07-12 03:24:04 +02:00
2017-07-11 15:27:59 +02:00
2017-05-16 00:41:09 +02:00
2017-07-12 03:24:04 +02:00
2017-07-12 03:24:04 +02:00
2017-07-11 15:27:59 +02:00
2017-07-12 14:50:07 +02:00
2017-07-12 03:24:04 +02:00
2017-07-12 03:24:04 +02:00
2017-07-12 03:24:04 +02:00
2017-07-12 03:24:04 +02:00
2017-07-13 22:15:32 +02:00
2017-07-12 03:24:04 +02:00
2017-07-12 03:24:04 +02:00
2017-07-12 03:24:04 +02:00
2017-05-22 04:45:55 +02:00
2017-04-13 13:16:28 +02:00
2017-06-19 10:29:18 +02:00
2017-05-22 04:45:55 +02:00
2017-07-12 14:50:07 +02:00
2017-04-15 16:46:48 +02:00
2017-04-15 13:25:00 +02:00
2017-05-22 00:20:13 +02:00
2017-04-05 09:57:25 +02:00
2017-07-08 01:27:22 +02:00
2017-05-23 13:08:16 +02:00
2017-04-21 03:30:15 +02:00
2016-11-30 21:34:59 +01:00
2017-04-21 19:16:26 +02:00
2017-04-21 19:15:25 +02:00
2017-04-13 22:26:32 +02:00
2017-07-10 16:32:17 +02:00
2017-07-04 16:48:22 +02:00
2017-05-27 16:28:32 +02:00
2017-05-09 14:01:45 +02:00
2017-06-08 14:58:22 +02:00
2017-07-10 18:04:43 +02:00
2017-05-22 04:45:55 +02:00
2017-04-17 10:38:27 +02:00
2017-06-14 18:01:27 +02:00
2017-05-22 04:45:55 +02:00
2017-05-22 04:45:55 +02:00
2017-05-22 04:45:55 +02:00
2017-05-21 11:23:59 +02:00
2017-05-21 11:23:59 +02:00
2017-05-21 11:23:59 +02:00
2017-07-12 03:24:04 +02:00
2017-07-12 03:24:04 +02:00
2017-07-12 03:24:04 +02:00
2017-07-12 03:24:04 +02:00
2017-07-12 03:24:04 +02:00
2017-07-12 03:24:04 +02:00