Commit Graph

77 Commits

Author SHA1 Message Date
dependabot[bot]
533bff5f9f
chore(deps-dev): bump vite from 5.0.12 to 5.0.13 (#250)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 5.0.12 to 5.0.13.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v5.0.13/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v5.0.13/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-03 18:07:23 -05:00
Jeremy Kahn
547564d921
fix: upgrade @mui/material from 5.15.11 to 5.15.12 (#245)
Snyk has created this PR to upgrade @mui/material from 5.15.11 to 5.15.12.

See this package in npm:
https://www.npmjs.com/package/@mui/material

See this project in Snyk:
https://app.snyk.io/org/jeremyckahn/project/d52c3b0d-59ff-42e3-89e1-b97ee832bf9a?utm_source=github&utm_medium=referral&page=upgrade-pr

Co-authored-by: snyk-bot <snyk-bot@snyk.io>
2024-03-27 20:24:47 -05:00
Jeremy Kahn
915ea21316
fix: upgrade react-router-dom from 6.22.1 to 6.22.2 (#243)
Snyk has created this PR to upgrade react-router-dom from 6.22.1 to 6.22.2.

See this package in npm:
https://www.npmjs.com/package/react-router-dom

See this project in Snyk:
https://app.snyk.io/org/jeremyckahn/project/d52c3b0d-59ff-42e3-89e1-b97ee832bf9a?utm_source=github&utm_medium=referral&page=upgrade-pr

Co-authored-by: snyk-bot <snyk-bot@snyk.io>
2024-03-21 19:02:57 -05:00
Jeremy Kahn
042c447b55
fix: upgrade @emotion/react from 11.11.3 to 11.11.4 (#242)
Snyk has created this PR to upgrade @emotion/react from 11.11.3 to 11.11.4.

See this package in npm:
https://www.npmjs.com/package/@emotion/react

See this project in Snyk:
https://app.snyk.io/org/jeremyckahn/project/d52c3b0d-59ff-42e3-89e1-b97ee832bf9a?utm_source=github&utm_medium=referral&page=upgrade-pr

Co-authored-by: snyk-bot <snyk-bot@snyk.io>
2024-03-20 20:54:31 -05:00
Jeremy Kahn
7ecb17d0a1
fix: upgrade @mui/material from 5.15.10 to 5.15.11 (#241)
Snyk has created this PR to upgrade @mui/material from 5.15.10 to 5.15.11.

See this package in npm:
https://www.npmjs.com/package/@mui/material

See this project in Snyk:
https://app.snyk.io/org/jeremyckahn/project/d52c3b0d-59ff-42e3-89e1-b97ee832bf9a?utm_source=github&utm_medium=referral&page=upgrade-pr

Co-authored-by: snyk-bot <snyk-bot@snyk.io>
2024-03-18 21:11:16 -05:00
Jeremy Kahn
0eb5b596dd
fix: upgrade secure-file-transfer from 0.0.7 to 0.0.8 (#240)
Snyk has created this PR to upgrade secure-file-transfer from 0.0.7 to 0.0.8.

See this package in npm:
https://www.npmjs.com/package/secure-file-transfer

See this project in Snyk:
https://app.snyk.io/org/jeremyckahn/project/d52c3b0d-59ff-42e3-89e1-b97ee832bf9a?utm_source=github&utm_medium=referral&page=upgrade-pr

Co-authored-by: snyk-bot <snyk-bot@snyk.io>
2024-03-17 10:12:54 -05:00
Jeremy Kahn
d81e930da6 chore(deps): upgrade to Trystero@0.18.0 2024-03-14 21:35:51 -05:00
Jeremy Kahn
5d4619965c chore(deps): upgrade react, node and MUI icons 2024-03-14 20:55:51 -05:00
Jeremy Kahn
5f2444f9c9
fix: upgrade @types/node from 18.19.10 to 18.19.17 (#233)
Snyk has created this PR to upgrade @types/node from 18.19.10 to 18.19.17.

See this package in npm:
https://www.npmjs.com/package/@types/node

See this project in Snyk:
https://app.snyk.io/org/jeremyckahn/project/d52c3b0d-59ff-42e3-89e1-b97ee832bf9a?utm_source=github&utm_medium=referral&page=upgrade-pr

Co-authored-by: snyk-bot <snyk-bot@snyk.io>
2024-03-14 07:50:16 -05:00
Jeremy Kahn
f9768627ee
fix: upgrade @mui/material from 5.15.6 to 5.15.10 (#235)
Snyk has created this PR to upgrade @mui/material from 5.15.6 to 5.15.10.

See this package in npm:
https://www.npmjs.com/package/@mui/material

See this project in Snyk:
https://app.snyk.io/org/jeremyckahn/project/d52c3b0d-59ff-42e3-89e1-b97ee832bf9a?utm_source=github&utm_medium=referral&page=upgrade-pr

Co-authored-by: snyk-bot <snyk-bot@snyk.io>
2024-03-14 07:48:30 -05:00
Jeremy Kahn
e644b20f4e
fix: upgrade react-router-dom from 6.21.3 to 6.22.1 (#236)
Snyk has created this PR to upgrade react-router-dom from 6.21.3 to 6.22.1.

See this package in npm:
https://www.npmjs.com/package/react-router-dom

See this project in Snyk:
https://app.snyk.io/org/jeremyckahn/project/d52c3b0d-59ff-42e3-89e1-b97ee832bf9a?utm_source=github&utm_medium=referral&page=upgrade-pr

Co-authored-by: snyk-bot <snyk-bot@snyk.io>
2024-03-14 07:47:17 -05:00
Jeremy Kahn
ea34058fa7
chore: Migrate from Create React App to Vite (#231)
* chore(vite): use vite

* fix(vite): alias lib directory

* chore(vite): set type: module

* chore: update vite and MUI

* fix(vite): make MUI components load

* fix: use node path resolution

* chore(vite): add svg support

* fix(vite): polyfill global

* fix(vite): use import.meta

* fix(vite): use correct svg module resolution

* chore(vite): migrate to vitest

* fix(vite): remove PUBLIC_URL

* fix(tests): mock audio service

* chore(deps): upgrade to react test library 14

* refactor(tests): simplify room test setup

* refactor(tests): make Date.now() mockable

* refactor(vite): remove bootstrap shim

* chore(deps): drop react-scripts

* chore(deps): remove source-map-explorer

Source maps do not currently work with MUI and Vite:
https://github.com/vitejs/vite/issues/15012

Because of this, source map utilities are currently removed.

* refactor(vite): use TypeScript for Vite config

* chore(actions): update actions config for new paths

* fix(service-worker): use VITE_HOMEPAGE for service worker resolution

* fix(vercel): use quotes for build command

* fix(vite): use import.meta.env.MODE

* fix(service-worker): use correct definition for publicUrl

* feat(vite): use vite-plugin-pwa

* fix(pwa): make update prompt work

* fix(types): use vite/client types

* docs(readme): update building instructions

* refactor(vite): simplify theme loading workaround

* refactor(vite): use manifest object

* docs(readme): update tool references

* chore(deps): run `npm audit fix`

* fix(vite): make syntax highlighter work consistently

See: https://github.com/react-syntax-highlighter/react-syntax-highlighter/issues/513

* fix(pwa): remove manifest.json references

* refactor(deps): remove jest references

* refactor(types): remove react-scripts reference

* chore(deps): use TypeScript 5

* refactor(tests): improve persisted storage mocking
2024-03-12 21:44:43 -05:00
Jeremy Kahn
e962c403a5
feat(profile) [closes #219] Import and export user profile (#220)
* feat(profile): implement profile export
* feat(profile): load user-selected file
* feat(profile): import loaded profile
* feat(profile): validate public/private keys
* refactor(settings): remove unnecessary theme functions
* refactor(settings): use theme hook
* feat(settings): show error alert if profile export fails
2023-12-10 19:43:32 -06:00
Jeremy Kahn
1cf4b50ac2 chore(deps): use trystero@0.15.0 2023-11-20 19:07:36 -06:00
Jeremy Kahn
4607562b7e
chore(deps): use recommended versions (#195)
@types/react@18.2.25 @mui/material@5.14.12 react-router-dom@6.16.0 typescript@4.9.5 @types/node@18.18.4
2023-10-29 15:46:21 -05:00
Jeremy Kahn
54f7b2dd93
fix(deps): [fixes #185] Upgrade vulnerable versions and remove ipfs-core (#193)
* fix(deps): omit ipfs-core
* fix(deps): use @svgr/plugin-svgo/nth-check@2.0.1
* fix(deps): use resolve-url-loader/postcss@8.4.31
* chore(deps): rebuild package-lock.json
* chore(actions): update actions
2023-10-29 14:49:49 -05:00
Jeremy Kahn
f6a3e30da2
feat(sdk): Implement Chitchatter SDK (#183)
* feat(sdk): render iframe in chat-room component
* fix(ci): install optional dependencies
* feat(sdk): allow subset of attributes
* feat(sdk): accept root-domain attribute
* feat(sdk): accept custom room name or use sane default
* feat(sdk): set allowed features
* feat(sdk): add sdk instructions to embed code dialog
* fix(sdk): use dynamic rootUrl
* fix(sdk): use static defaultRoot
* feat(sdk): send config from SDK to chat
* fix(sdk): expire poller
* fix(sdk): pass parent domain to iframe via query param
* refactor(sdk): type message event data
* feat(sdk): send user id to chat frame
* feat(sdk): handle some attribute updates
* chore(package): add build:sdk:watch script
* refactor(sdk): move more code to updateIframeAttributes
* feat(sdk): support changing rooms
* feat(sdk): support more user settings
* docs(sdk): add SDK section to README
* feat(sdk): render root-url in embed code if necessary
* refactor(sdk): use map for chat room attributes
* fix(sdk): unbind event listener when chat-room is disconnected
* fix(sdk): properly tear down receipt listener
* fix(sdk): send config when frame reloads
* feat(sdk): listen for config updates
* feat(sdk): request config from sdk instead of sending it repeatedly
* refactor(sdk): use type guard for config message
* fix(sdk): use settings from SDK when there is no preexisting persisted data
* fix(sdk): observe all iframe attributes
* refactor(sdk): simplify bootup logic
* feat(sdk): improve embed code display
2023-10-28 11:42:58 -05:00
Jeremy Kahn
0d47fe7937 chore(deps): use trystero@0.13.1 2023-10-24 09:12:45 -05:00
Jeremy Kahn
d3630e082e chore(package): add analyze script 2023-10-11 07:42:13 -05:00
dependabot[bot]
1b43b4aa00
chore(deps-dev): bump postcss from 8.4.16 to 8.4.31 (#172)
Bumps [postcss](https://github.com/postcss/postcss) from 8.4.16 to 8.4.31.
- [Release notes](https://github.com/postcss/postcss/releases)
- [Changelog](https://github.com/postcss/postcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/postcss/postcss/compare/8.4.16...8.4.31)

---
updated-dependencies:
- dependency-name: postcss
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-05 17:04:06 -05:00
Jeremy Kahn
f150915170
fix(routing): [for #168] set router basename (#169) 2023-09-28 20:57:49 -05:00
Jeremy Kahn
e597a667a1
feat(chat): [closes #13] Active typing indicators (#133)
* feat(typing-indicator): wire up handleMessageChange
* feat(typing-indicator): send typing: true status
* feat(typing-indicator): expire typing state
* feat(typing-indicator): update typing state received from peers
* refactor(shell): add updatePeer utility
* feat(typing-indicator): display peer typing status
* feat(typing-indicator): reset typing status when a message is sent
* feat(typing-indicator): move indicator below message form
* feat(typing-indicator): keep status text to one line
2023-07-27 21:06:35 -05:00
Jeremy Kahn
67dcf2a1f8 chore(deps): use trystero@0.13.0 2023-07-20 09:19:47 -05:00
Jeremy Kahn
291ed0c2b9
feat(connection-test): Display tracker connection status (#128)
* feat(ConnectionTest): track tracker state
* feat(ConnectionTest): show tracker searching state
* chore(deps): use github:jeremyckahn/trystero#feature/get-tracker-connections
* feat(connection-test): hide network indicator in non-room routes
* feat(connection-test): show peer searching status
* feat(connection-test): hide peer searching UI when not in a room
2023-07-13 09:50:54 -05:00
Jeremy Kahn
ca2c98dcb8 chore(deps): use node 18 2023-07-01 21:46:52 -05:00
Jeremy Kahn
6591fc8819 chore(deps): use trystero@0.12.1 2023-06-29 09:14:09 -05:00
Jeremy Kahn
3977a82224
feat: Connection status (#119)
* feat: implement ConnectionTest
* feat: display connection results
* feat: keep network status up to date
2023-03-27 21:51:33 -05:00
Jeremy Kahn
456581bf0a chore: use trystero@0.12.0 2023-03-22 09:19:47 -05:00
Jeremy Kahn
35c3f2fee3
feat: [ closes #91] Render YouTube embeds (#96)
* feat: [#91] embed YouTube videos
2023-03-06 20:40:45 -06:00
Jeremy Kahn
37af59f89e
feat: [closes #94] Show build hash (#95)
* feat: show build hash in Drawer
* feat: add link to GitHub commit for build
2023-03-05 12:22:02 -06:00
Jeremy Kahn
99a9ab7838 fix: use rtcConfig for file transfers 2023-02-22 09:48:51 -06:00
Jeremy Kahn
9d9afaa4dd chore: use secure-file-transfer@0.0.4 2023-02-20 12:39:11 -06:00
Jeremy Kahn
fa542fc507 fix: download files before opening write stream 2023-02-19 17:48:03 -06:00
Jeremy Kahn
efde30c386 refactor: use secure-file-transfer@0.0.2 2023-02-19 13:38:17 -06:00
Jeremy Kahn
ebb8efb3f6 refactor: use secure-file-transfer@0.0.1 2023-02-19 12:33:45 -06:00
Jeremy Kahn
c21b62adbe chore: update mprocs to 0.6.4 2023-02-16 09:30:17 -06:00
Jeremy Kahn
44ba2181be fix: [#86 post-fix] don't create redundant data before transferring files 2023-02-15 21:48:57 -06:00
Jeremy Kahn
50aecb4af9
fix: [#86 post-fix] Reduce file transfer memory usage (#88)
* fix: [#86] don't bloat memory when seeding files
2023-02-15 09:45:45 -06:00
Jeremy Kahn
d7287b5f6d
feat: [closes #86] Encrypted file transfers (#87)
* feat: [#86] encrypt torrent data before upload
* feat: [#86] decrypt torrent data after download
* feat: [#86] use room ID as encryption key
* feat: [#86] show alerts for encryption activity
* feat: [#86] show progress indicator while encrypting files
2023-02-11 17:29:57 -06:00
Nasal Daemon
8493ddade5
Give video display as much space as possible (#84)
* Move room tools to top of page to use full width
Allow messages to be hidden while video is displaying
Allow video display to utilise all available width
Track unread messages while they are hidden
* Better portrait behaviour
* Show room controls by default
* Show room controls at same time as app bar
Improve video height calc.

Co-authored-by: Jeremy Kahn <jeremyckahn@gmail.com>
2023-01-23 21:50:14 -06:00
Jeremy Kahn
fcedb1ba55
feat: Improve peer reconnections
* feat: use trystero@github:jeremyckahn/trystero#bugfix/29__clean-up-peers
2022-12-04 20:58:34 -06:00
Jeremy Kahn
ac4cb2d7e0 chore: use webtorrent 1.9.4 2022-11-28 20:46:03 -06:00
Jeremy Kahn
d10c047fec refactor: load webtorrent source 2022-11-28 20:45:45 -06:00
Jeremy Kahn
f006e76e80
feat: [closes #21] File sharing (#72)
* feat: [#21] stand up file sharing controls UI
* feat: [#21] implement basic file transfer
* feat: [#21] save transferred file
* feat: [#21] transfer file via WebTorrent
* fix: use external streamsaver assets
* feat: [#21] initiate download by receiver click
* fix: enable re-downloading of shared files
* feat: [#21] implement sharing of multiple files
* chore: enable offline development
* feat: cache torrents in IndexedDB
* feat: show alert when download is aborted
* feat: [#21] clean up torrent data when principal offerer rescinds it
* feat: clean up cached torrents on page unload
* feat: show file transfer progress
* fix: download files sequentially
* feat: clean up file transfers when leaving the room
* feat: clean up broken downloads upon leaving the page
* fix: allow download animation to complete
* feat: show tooltip for download button
* feat: make file transfers work in browser private modes
* feat: disable file share controls while creating offer
2022-11-24 00:16:34 -06:00
Jeremy Kahn
75a804abbd
feat: [closes #67] Screen sharing (#68)
* feat: [#67] stand up useRoomScreenShare hook
* feat: [#67] stand up RoomScreenShareControls
* feat: [#67] display screen share streams
* fix: [#67] don't flip screen share preview
* feat: don't display screen share controls in unsupported environments
* fix: [#67] always remove media streams for exiting peers
2022-11-13 17:11:09 -06:00
krayste
d4e565815c
feat: [closes #12] add qr code support (#63)
* Add initial QRCode implementation
2022-11-05 20:41:24 -05:00
Jeremy Kahn
ee7d528f01
feat: [closes #40] Disclaimer (#42)
* feat: [#40] stand up disclaimer page
* chore: use mui-markdown for disclaimer copy
* feat: [#40] add more disclaimer copy
* feat: style lists in messages
* refactor: author About page with Markdown
* feat: improve About page formatting
2022-10-16 21:49:04 -05:00
Jeremy Kahn
ebb80c3e6c chore: use trystero@0.11.4 2022-10-04 09:14:34 -05:00
Jeremy Kahn
b7c8ee6441 chore: upgrade to trystero 0.11.3 2022-09-19 11:51:49 -05:00
Jeremy Kahn
f884bf69ae chore: [#5] use Node 16
This is necessary for compatibility with Vercel, the platform being used
for preview deployments.
2022-09-10 18:34:11 -05:00