Commit Graph

94 Commits (4e44b034bde0dc760072d7a59e534c007b34c3b5)

Author SHA1 Message Date
binwiederhier 1abcc88fce Add subscription_topic table, change updated_at type to INT, split expire function 2023-06-09 23:17:48 -04:00
binwiederhier 966ffe1669 More refactor 2023-06-08 23:09:38 -04:00
binwiederhier 75a4b5bd88 Small refactor 2023-06-08 12:20:12 -04:00
nimbleghost 0f0074cbab Implement push subscription expiry 2023-06-07 21:09:13 +02:00
nimbleghost 47ad024ec7 Simplify web push UX and updates
- Use a single endpoint
- Use a declarative web push sync hook. This thus handles all edge cases
  that had to be manually handled before: logout, login, account sync,
  etc.
- Simplify UX: browser notifications are always enabled (unless denied),
  web push toggle only shows up if permissions are already granted.
2023-06-07 20:38:21 +02:00
nimbleghost 4648f83669 Format emojis in the service worker directly 2023-06-07 20:38:21 +02:00
binwiederhier e8139ad655 Move web-push-config endpoint to config.js 2023-06-07 20:38:21 +02:00
binwiederhier 9e0687e142 Random tiny changes 2023-06-07 20:38:21 +02:00
nimbleghost ff5c854192 Add PWA, service worker and Web Push
- Use new notification request/opt-in flow for push
- Implement unsubscribing
- Implement muting
- Implement emojis in title
- Add iOS specific PWA warning
- Don’t use websockets when web push is enabled
- Fix duplicate notifications
- Implement default web push setting
- Implement changing subscription type
- Implement web push subscription refresh
- Implement web push notification click
2023-06-07 20:38:20 +02:00
binwiederhier 168ad8bf1b Support encoding any header as RFC 2047 2023-05-21 20:56:56 -04:00
binwiederhier 92c384374a More self-review 2023-05-17 10:58:28 -04:00
binwiederhier ac029c389e Self-review 2023-05-17 10:39:15 -04:00
binwiederhier 2c81773d01 Add call verification 2023-05-16 22:27:48 -04:00
binwiederhier 496d6e74b0 Staticcheck 2023-05-16 15:12:18 -04:00
binwiederhier 7c574d73de Cont'd Twilio stuff 2023-05-16 14:15:58 -04:00
binwiederhier 69b01bc468 Merge branch 'main' into twilio 2023-05-15 20:02:51 -04:00
binwiederhier f14f0aaa26 Add tests for users, slightly change API a bit 2023-05-15 10:42:24 -04:00
binwiederhier 97fc287b78 User endpoint 2023-05-13 22:07:54 -04:00
binwiederhier 625b13280f WIP: Access API 2023-05-13 14:39:31 -04:00
binwiederhier cea434a57c WIP Twilio 2023-05-12 21:47:41 -04:00
binwiederhier f99159ee5b WIP calls, remove SMS 2023-05-12 20:01:12 -04:00
binwiederhier d4767caf30 Verify 2023-05-11 13:50:10 -04:00
binwiederhier eb0805a470 Update web app with SMS and calls stuff 2023-05-07 22:28:07 -04:00
binwiederhier f9e2d6ddcb Add limiters and database changes 2023-05-07 11:59:15 -04:00
binwiederhier 6be95f8285 WIP: persist message stats 2023-04-20 22:04:11 -04:00
binwiederhier fe3a225f8f Add `billing-contact` config option 2023-02-28 14:38:31 -05:00
binwiederhier 8215b66db3 Logging improvements, etc. 2023-02-25 20:23:22 -05:00
binwiederhier ef9d6d9f6c Support for annual billing intervals 2023-02-21 22:44:30 -05:00
binwiederhier 2f0fdf1252 Make logging more efficient 2023-02-07 22:10:51 -05:00
binwiederhier 7cc8c81bd8 Continued logging work 2023-02-05 23:34:27 -05:00
binwiederhier a6641980c2 WIP: Logging 2023-02-03 22:21:50 -05:00
binwiederhier e596834096 Add "last access" to access tokens 2023-01-28 20:29:06 -05:00
binwiederhier 16c14bf709 Add Access Tokens UI 2023-01-27 23:10:59 -05:00
binwiederhier 236254d907 Add bandwidth limit to tier; fix display name sync issues 2023-01-25 10:05:54 -05:00
binwiederhier e82a2e518c Add password confirmation to account delete dialog, v1/tiers test 2023-01-23 10:58:39 -05:00
binwiederhier 954d919361 Delayed deletion 2023-01-22 22:21:30 -05:00
binwiederhier 88abd8872d Changing password should confirm the old password 2023-01-21 20:52:16 -05:00
binwiederhier 3bd6518309 Fix a bunch of FIXMEs 2023-01-18 15:50:06 -05:00
binwiederhier 4092f7fd51 Upgrade dialog looks nice now 2023-01-17 19:40:03 -05:00
binwiederhier 695c1349e8 Upgrade dialog 2023-01-17 10:09:37 -05:00
binwiederhier 83de879894 publishSyncEvent, Stripe endpoint changes 2023-01-16 16:35:37 -05:00
binwiederhier 7faed3ee1e Add "Canceled" banner 2023-01-16 10:35:12 -05:00
binwiederhier c06bfb989e Payment stuff, cont'd 2023-01-15 23:29:46 -05:00
binwiederhier 01fd4754f9 WIP: Stripe integration 2023-01-14 06:43:44 -05:00
binwiederhier 7007c0a0bd Docs 2023-01-12 12:04:18 -05:00
binwiederhier 3dd8dd4288 Stats resetter at midnight UTC 2023-01-10 22:51:51 -05:00
binwiederhier 7e528d9c10 Sync topic (begin), rename user fields 2023-01-09 21:53:21 -05:00
binwiederhier b27c608508 useContext work in JS 2023-01-09 20:37:13 -05:00
binwiederhier 3aba7404fc Tiers make sense for admins now 2023-01-09 15:40:46 -05:00
binwiederhier 1f54adad71 Rename plan->tier, topics->reservations, more tests, more todos 2023-01-07 21:04:13 -05:00