Gabe Kangas
20e9d030ed
Fix logo alignment for mobile. Closes #2263
2022-11-06 16:09:05 -08:00
Gabe Kangas
b9f5b1da19
Fix change name modal story not rendering. Closes #2255
2022-11-06 15:33:21 -08:00
Gabe Kangas
4cdbcc642d
Tweak Chromatic diffThreshold to reduce false negative tests
2022-11-05 17:27:44 -07:00
Gabe Kangas
352447e3d4
Web UI frontend automated browser tests ( #2223 )
...
* First pass at basic browser tests for #1926
* Run tests against dev web server not go server
* Bundle the web code into the server before running tests
* Move cypress UI tests into its own npm project + add tests
* Add additional tests + wire up with cypress dashboard
* Limit concurrency of workflow jobs
* Temporarily comment out some tests that do not pass in mobile. Will fix later.
2022-11-04 20:04:13 -07:00
Gabe Kangas
595865c11d
Fix infinite load on first launch. Closes #2302
2022-11-04 18:35:50 -07:00
Matthew Heller
3021dd7795
Always show the 'send chat message' button. Re #2293 . ( #2298 )
2022-11-03 10:36:03 -07:00
Matthew Heller
64b20cf070
Use 16px font size to prevent auto zoom on iOS Safari. Shorten the 'type here' message so it doesn't wrap to a second line when the chat pane becomes a column on the right side of larger screens. Re #2276 . ( #2294 )
2022-11-02 12:34:57 -07:00
Gabe Kangas
50f23a0807
Changes to troubleshoot #2291
2022-11-02 00:02:32 -07:00
Gabe Kangas
a89bceea37
Do not show empty state when loading followers. Closes #2249
2022-11-01 21:10:55 -07:00
Matthew Heller
8320f282d8
More renames from 'visible' to 'open'. ( #2290 )
2022-11-01 14:50:23 -07:00
Gabe Kangas
0e8f14a58a
Fix text input width. Closes #2184
2022-10-28 22:47:21 -07:00
Gabe Kangas
e0b7ae5b3a
Fix auth modal story not rendering. Closes #2254
2022-10-28 22:22:56 -07:00
Gabe Kangas
628d70e37c
Add rel=me to social links. Closes #2269
2022-10-28 20:16:30 -07:00
Gabe Kangas
d91f682d21
Lazy load chat container
2022-10-28 12:19:39 -07:00
Gabe Kangas
2e7787f70b
Force the bundler to build the player as its own file
2022-10-28 12:19:39 -07:00
Gabe Kangas
65fcbb9d3f
Use Next Image component for social links
2022-10-28 12:19:38 -07:00
Matthew Heller
8d222860f0
On narrow screens, bump the footer links to a second row. Re #2260 . ( #2267 )
...
* On narrow screens, bump the footer links to a second row. Re #2260 . Thanks to @kittee for CSS assistance.
* Prettified Code!
Co-authored-by: heller <heller@users.noreply.github.com>
2022-10-26 15:23:49 -07:00
Matthew Heller
125343808d
Fix display of auth modal. Re #2262 . ( #2265 )
2022-10-26 14:35:46 -07:00
Gabe Kangas
e7a4d53453
Remove buttons from offline banner and add inline links. Closes #2261
2022-10-24 22:24:14 -07:00
Gabe Kangas
952b28f8bf
Explicitly set state for config+status when hydrated
2022-10-24 21:26:03 -07:00
Gabe Kangas
da66f3b051
Do not display go template tag in dev
2022-10-24 18:27:01 -07:00
Gabe Kangas
a0093fb0c9
Fix server rendered title tag. Closes #2251
2022-10-23 23:09:21 -07:00
Gabe Kangas
77369a3cbe
Add follow+notify to actions menu and refactor how those modals are displayed. Closes #2247
2022-10-23 21:59:25 -07:00
Gabe Kangas
8aed27e44d
Refactor server-rendered tags. Closes #2246
2022-10-22 16:51:09 -07:00
t1enne
b285115a3e
fixed linter error
2022-10-22 22:38:44 +02:00
t1enne
bddb895189
styled the default button and the mobile dropdown
2022-10-22 22:36:48 +02:00
t1enne
b7795f275c
corrected media query
2022-10-22 22:36:48 +02:00
t1enne
917248fc5b
moved footer to layout. changed some css
2022-10-22 10:46:17 +02:00
t1enne
f6e158ab88
reduced font weight of message text
2022-10-22 10:46:17 +02:00
t1enne
7c0474f14a
made trigger button antd component
2022-10-22 10:46:17 +02:00
Gabe Kangas
f2f3dcfea7
Add mobile actions dropdown menu. Closes #2231
2022-10-21 23:58:39 -07:00
Gabe Kangas
3fbbecc0e8
Refactor action buttons callback
2022-10-21 22:24:29 -07:00
Gabe Kangas
fb9001949b
Fix follow modal height. Closes #2235
2022-10-20 20:36:44 -07:00
Gabe Kangas
420d6c835d
Add missing slashes
2022-10-20 20:36:44 -07:00
Gabe Kangas
4ca0e69be6
Open all links in a new tab. Closes #2160
2022-10-20 20:13:18 -07:00
Gabe Kangas
5e761b13c4
Fix storybook build
2022-10-20 19:48:00 -07:00
Gabe Kangas
2c45b420e5
Import server-rendered template as plain text + add title tag. Closes #2161
2022-10-20 19:40:33 -07:00
Gabe Kangas
c6364959c9
Experiment with showing footer on about tab for mobile
2022-10-20 18:00:13 -07:00
t1enne
f603979ad9
added hook to calculate height for btm content
2022-10-20 21:53:16 +02:00
t1enne
fece33ccaf
small css adjustments
2022-10-20 20:25:54 +02:00
t1enne
0ff49f1c32
changed statusbar colors
2022-10-20 20:25:54 +02:00
t1enne
ecfb4a4c53
fixed mobile ui overflowing
2022-10-20 20:25:54 +02:00
t1enne
5eebb10fe6
action buttons now wrap
2022-10-20 20:25:54 +02:00
Matthew Heller
b8ce91d39a
Coerce the iframe to fill the Modal a little better. ( #2229 )
2022-10-19 15:44:24 -07:00
Gabe Kangas
de90e6a74c
Fix some broken social icons in frontend and admin
2022-10-18 23:38:26 -07:00
Gabe Kangas
e75b20d6ca
Support customSocketOverride value for websocket. Closes #2225
2022-10-18 20:43:23 -07:00
Gabe Kangas
91c7bed0e8
Add action message type to chat. Closes #2226
2022-10-18 19:47:38 -07:00
Gabe Kangas
a58d4d6997
Remove debug logging
2022-10-18 19:44:46 -07:00
Gabe Kangas
37cdbb8dbd
Add backgrounded stream+messages title notifier. Closes #2208
2022-10-18 19:21:08 -07:00
Gabe Kangas
3e89937d2b
Handle websocket errors and reconnection. Closes #1869
2022-10-18 16:39:49 -07:00
Mahlangu
ad188f2742
fix purple background color for notification reminder pop up & fix failing build ( #2224 )
...
* fix notification reminder popup -> purple background
* Prettified Code!
* resolved color to color variables
* Prettified Code!
* fix purple bgcolor for notification reminder popp up & fix failing build
Co-authored-by: unclebinary1001 <unclebinary1001@users.noreply.github.com>
2022-10-17 21:54:26 -07:00
Pranav Joglekar
eb2c11b077
fix followers: align the followers to the left ( #2211 )
...
Co-authored-by: Gabe Kangas <gabek@real-ity.com>
2022-10-16 23:18:05 -07:00
Pranav Joglekar
ee08c42c6d
improv ui: make footer sit at bottom ( #2212 )
...
This commit makes the footer always attach to the bottom of the screen.
This is done by setting the minWidth of the main antd layout component
to 100vh and moving the footer component outside the spinner, since antd
does not allow granular component inside the spin component.
This commit also removes some styles which were not being used due to
invalid antd api.
Co-authored-by: Gabe Kangas <gabek@real-ity.com>
2022-10-16 23:07:21 -07:00
Gabe Kangas
e3c038f48d
Revert "fix notification reminder popup -> purple background ( #2209 )"
...
This reverts commit ab573f67e9
.
2022-10-16 22:49:43 -07:00
Gabe Kangas
a2a294bc4c
No longer lazy load followers
2022-10-16 22:40:17 -07:00
Mahlangu
ab573f67e9
fix notification reminder popup -> purple background ( #2209 )
...
* fix notification reminder popup -> purple background
* Prettified Code!
* resolved color to color variables
* Prettified Code!
Co-authored-by: unclebinary1001 <unclebinary1001@users.noreply.github.com>
2022-10-16 22:37:03 -07:00
Gabe Kangas
27565c2b02
Show play button on player pause. Closes #2206
2022-10-12 19:24:41 -07:00
Gabe Kangas
ee283311ec
Do not render icon of action button if icon is not set. Closes #2203 #2202
2022-10-12 19:15:47 -07:00
Gabe Kangas
d40e66b7ef
Stop playback metrics on player unmount
2022-10-12 19:15:47 -07:00
Gabe Kangas
88bb8336f3
Fix player not staying inline on iOS. Closes #2097
2022-10-12 17:53:37 -07:00
Gabe Kangas
61e1a49fd4
Replace markdown editor with CodeMirror
2022-10-10 20:16:14 -07:00
Gabe Kangas
e1416e90e5
Use a real code editor for CSS editing. Closes #1843
2022-10-10 19:49:06 -07:00
Gabe Kangas
7967106fcc
Restore the loading state of the app. Closes #2195
2022-10-10 18:33:22 -07:00
Gabe Kangas
a526decef4
Refactor use of antd tab component. Closes #2098
2022-10-10 17:54:03 -07:00
Matthew Heller
6e54ec7695
Antd updates ( #2194 )
...
* Fix antd Modal.visible warning by using updated attribute name 'open'.
* Update more attributes (onVisibleChange => onOpenChange, defaultVisible => defaultOpen) to fix browser console warnings.
* Update ModalProps property from 'visible' to 'open' to match the change in antd.
* Update variable names to match the antd change from 'visible' to 'open'.
* Inline this for the linter.
* One more visible => open reference.
2022-10-10 17:11:29 -07:00
Gabe Kangas
aa1b4819bb
Fix hook count error
2022-10-10 16:57:11 -07:00
Gabe Kangas
80a012a3c7
Add current user object that holds user session values instead of standalone getters. Closes #2050
2022-10-10 16:40:13 -07:00
Gabe Kangas
4c13c3618d
Remove admin stylesheets from loading with app. Closes #2183
2022-10-10 13:31:37 -07:00
Gabe Kangas
dd5b8e7ce5
Start of empty follower tab state. For #1913
2022-10-09 20:31:14 -07:00
Gabe Kangas
7843487b76
Fix followers request
2022-10-09 18:52:45 -07:00
Gabe Kangas
34a5104a6d
Add and use additional light background color for custom page content
2022-10-09 18:41:52 -07:00
Gabe Kangas
7788fe3327
Support custom text in notify button
2022-10-09 14:45:42 -07:00
juliana-mol
9f2aa66527
chat story controls ( #2181 )
...
* chat story controls
* Prettified Code!
Co-authored-by: juliana-mol <juliana-mol@users.noreply.github.com>
2022-10-09 11:25:48 -07:00
Gabe Kangas
9c1fac7468
Do not show raw error in the fatal error modal
2022-10-08 23:15:38 -07:00
Gabe Kangas
cd3722d9f1
Limit chat input to max characters. Closes #2109
2022-10-08 22:33:50 -07:00
Gabe Kangas
8a946b8444
Do not show status bar unless live
2022-10-08 18:53:45 -07:00
Gabe Kangas
7e284aa4df
Remove the restricted width of the page content
2022-10-08 18:53:45 -07:00
Gabe Kangas
23b5468ed4
Fix error thrown by player after player is unmounted
2022-10-08 17:51:17 -07:00
Gabe Kangas
6773fc37a5
Fix space bar moving page. Closes #2110
2022-10-08 17:15:19 -07:00
Gabe Kangas
ded47a0c25
Make live indicator use our theme colors. For #1899
2022-10-08 16:51:49 -07:00
Gabe Kangas
2de23a3458
Only client-render server-rendered templates in production builds. Closes #2176
2022-10-08 15:34:11 -07:00
Gabe Kangas
6c2e25e597
Update the offline banner. Filed #2179 to discuss text
2022-10-08 15:05:52 -07:00
Cleo John
34f35974e0
Change Airplay to SVG and refactor ( #2156 )
...
* Replaced airplay.png with airplay.svg
* Refactor VideoJS.scss to propper scss syntax
* Fix for the messup I made during the refactor
* fix airplay size
* hotfix fixed aircast styling
2022-10-06 18:57:49 -07:00
Gabe Kangas
19e4e99127
First pass at the social/federated chat component. Closes #2172
2022-10-05 22:43:24 -07:00
Gabe Kangas
45c7fa4f7e
Only show chat send button on mobile
2022-10-04 19:14:50 -07:00
Gabe Kangas
6c9f9f6507
Add additional example chat items to story
2022-10-04 19:14:50 -07:00
Gabe Kangas
5742845b7c
Fix values in the follow form
2022-10-04 18:43:15 -07:00
Evgeniy Kosov
d2024d30d2
Add ability to move social handles up/down ( #2168 )
2022-10-04 11:22:01 -07:00
Gabe Kangas
b1484f4c9f
Lazy load some components that aren't needed at load. For #2167
2022-10-03 21:06:46 -07:00
t1enne
b87076759c
styled chat join messages
2022-10-03 10:15:41 +02:00
t1enne
91bc45dbef
moved borders to the right for own msgs. Closes #2074
2022-10-03 09:51:28 +02:00
Gabe Kangas
a931fe0ddf
Update the chat moderation modal with slightly better layout. Closes #2073
2022-10-02 11:02:33 -07:00
Cleo John
765cfa4f5a
Added Modal to notify user how to disable notifications ( #2154 )
...
* Added Modal to notify user how to disable notifications
* add comment for notification permissions
This adds a comment to describe the behavior of showing the modal on how to disable them if wanted.
Also changed other comment to comply with the new one.
Co-authored-by: Waterdev <wolfistgeil@gmail.com>
2022-10-02 09:42:06 -07:00
t1enne
adea618a44
improved ui of chat text input
2022-10-01 10:34:59 +02:00
t1enne
44ef64b3b5
fixed chat container not showing in SB + minor changes
2022-09-30 13:17:22 +02:00
t1enne
892532dfa2
moved scroll to bottom btn to own comp
2022-09-30 13:16:35 +02:00
t1enne
f90295269e
Updated styles to match design for chat msgs
2022-09-30 09:57:12 +02:00
t1enne
a9f97346a7
added chat bg variable and updated bg color to match design
2022-09-30 09:56:10 +02:00
t1enne
683399c340
Removed fixed *px sizes in favor or *rem
2022-09-19 22:04:58 +02:00
James Young
2ea638909d
docs: add how-to docs for creating components ( #2124 )
...
* docs: add HOW-TO docs for creating components
* Prettified Code!
Co-authored-by: jamescallumyoung <jamescallumyoung@users.noreply.github.com>
2022-09-16 09:19:55 -07:00
t1enne
0b35919357
Fixed messages not wrapping + changed some styles to accomodate scrollbar better
2022-09-13 08:43:59 +02:00
Gabe Kangas
b42876e34e
Update max width of custom content. Closes #2092
2022-09-10 20:16:36 -07:00
Gabe Kangas
8ee9be5d88
Support disabled chat. Closes #1979
2022-09-10 20:03:58 -07:00
Gabe Kangas
8d02f4068d
Polish up the initial loading experience
2022-09-10 18:08:56 -07:00
Gabe Kangas
42ff0cdb01
Add server-side hydration of initial config+status. Closes #1964
2022-09-10 15:37:07 -07:00
Gabe Kangas
0430adc502
Add mobile-specific tabs+content
2022-09-10 12:08:28 -07:00
Gabe Kangas
20ea5d051f
Clean up some styles and fix mobile rendering
2022-09-09 23:23:24 -07:00
Gabe Kangas
02de9cf6df
Support clickable links in description
2022-09-09 23:03:49 -07:00
Gabe Kangas
129d08144b
Fix bad default bool
2022-09-08 22:23:43 -07:00
Gabe Kangas
b914408a11
Make footer not translucent
2022-09-08 22:23:28 -07:00
Gabe Kangas
2774f4260a
Add FediAuth modal
2022-09-08 21:44:52 -07:00
Gabe Kangas
0def4fe66a
Increase change threshold for Chromatic UI tests
2022-09-08 13:09:11 -07:00
James Young
d1f3fffe2f
reafctor: normalize component formatting ( #2082 )
...
* refactor: move/rename BanUserButton file
* refactor: move/rename Chart file
* refactor: update generic component filenames to PascalCase
* refactor: update config component filenames to PascalCase
* refactor: update AdminLayout component filename to PascalCase
* refactor: update/move VideoJS component
* chore(eslint): disable bad react/require-default-props rule
* refactor: normalize ActionButton component
* refactor: normalize ActionButtonRow component
* refactor: normalize FollowButton component
* refactor: normalize NotifyButton component
* refactor: normalize ChatActionMessage component
* refactor: normalize ChatContainer component
* refactor: normalize ChatJoinMessage component
* refactor: normalize ChatModerationActionMenu component
* refactor: normalize ChatModerationDetailsModal component
* refactor: normalize ChatModeratorNotification component
* refactor: normalize ChatSocialMessage component
* refactor: normalize ChatSystemMessage component
* refactor: normalize ChatTextField component
* refactor: normalize ChatUserBadge component
* refactor: normalize ChatUserMessage component
* refactor: normalize ContentHeader component
* refactor: normalize OwncastLogo component
* refactor: normalize UserDropdown component
* chore(eslint): modify react/function-component-definition rule
* refactor: normalize CodecSelector component
* refactor: update a bunch of functional components using eslint
* refactor: update a bunch of functional components using eslint, pt2
* refactor: update a bunch of functional components using eslint, pt3
* refactor: replace all component->component default imports with named imports
* refactor: replace all component-stories->component default imports with named imports
* refactor: remove default exports from most components
* chore(eslint): add eslint config files for the components and pages dirs
* fix: use-before-define error in ChatContainer
* Fix ChatContainer import
* Only process .tsx files in Next builds
Co-authored-by: Gabe Kangas <gabek@real-ity.com>
2022-09-07 00:00:28 -07:00
Gabe Kangas
121c9415f1
Wire up emoji+custom emote selector to text input. Closes #1887
2022-09-06 17:52:09 -07:00
Gabe Kangas
065c36a0a6
Fix invalid linter error about onLoad on an iframe
2022-09-04 22:52:32 -07:00
Gabe Kangas
c61bea29ee
Add read-only chat embed page. Closes #1905
2022-09-04 21:53:04 -07:00
Gabe Kangas
b8a108ba03
Fix chat message story
2022-09-04 18:09:30 -07:00
Gabe Kangas
ac7e095fdf
Handle hide/show chat messages via moderation. Closes #1986
2022-09-04 17:58:06 -07:00
James Young
5ebbbb8bf2
refactor(stories): co-locate stories with components ( #2078 )
...
* refactor: move ActionButton component
* refactor: move BanUserButton component
* refactor: move ChatActionMessage component
* refactor: move ChatContainer component
* refactor: move AuthModal component
* refactor: move BrowserNotifyModal component
* refactor: move ChatUserMessage component
* refactor: move ChatJoinMessage component
* refactor: move ChatTextField component
* refactor: move ChatUserBadge component
* refactor: move FollowerCollection and SingleFollower components
* fix: bad import path
* refactor: move FollowModal component
* refactor: move Modal component
* refactor: move ContentHeader component
* refactor: move ChatSystemMessage component
* refactor: move Header component
* refactor: move Footer component
* refactor: move StatusBar component
* refactor: move OfflineBanner component
* refactor: move OwncastPlayer component
* refactor: move IndieAuthModal component
* refactor: move SocialLinks component
* refactor: move VideoPoster component
* refactor: move FollowModal component
* refactor: move FediAuthModal.tsx component
* refactor: move UserDropdown component
* refactor: move ChatSocialMessage component
* refactor: move Logo component
* refactor: move NotifyReminderPopup component
* refactor: move NameChangeModal component
* refactor: move FatalErrorStateModal component
* refactor: move ChatModeratorNotification component
* refactor: move ChatModerationActionMenu and ChatModerationDetailsModal components
* refactor: move CustomPageContent component
* refactor: move storybook Introduction file
* refactor: update storybook story import path
* refactor: move storybook preview styles
* refactor: move storybook doc pages
* refactor: move Color and ImageAsset components
* fix: bad import path
* fix: bad import path in story file
2022-09-03 11:38:52 -07:00
Gabe Kangas
dbcccb79f5
Add margin below content
2022-09-01 22:00:16 -07:00
Gabe Kangas
7a9332408e
Change font+weight of action buttons
2022-09-01 22:00:16 -07:00
Gabe Kangas
46166a78d9
Set message content as renderable html
2022-09-01 22:00:16 -07:00
Gabe Kangas
6d7f0302bf
Replace the auth chat message badge with an icon
2022-09-01 22:00:15 -07:00
Gabe Kangas
aa0b43074f
Fix chat user color variable
2022-09-01 19:37:21 -07:00
Gabe Kangas
277dc700fa
Fix error background
2022-08-30 11:41:11 -07:00
Gabe Kangas
113c3deaea
Make action buttons primary for now
2022-08-30 11:41:11 -07:00
Gabe Kangas
6c06f4fd67
Update footer
2022-08-29 23:33:53 -07:00
gingervitis
d5fa81f76e
Draft: rough-ish draft of proposed color theme changes ( #2067 )
...
* color experimentation and troubleshooting
* create color scheme, assign colors, more ant overrides
* fun selection color
* Prettified Code!
* Correctly import opensans
* Prettified Code!
* Organize+standardize colors/names and update the app to use them
* Prettified Code!
* Use css var references instead of resolving value of vars in css files
* Prettified Code!
Co-authored-by: gingervitis <gingervitis@users.noreply.github.com>
Co-authored-by: Gabe Kangas <gabek@real-ity.com>
Co-authored-by: gabek <gabek@users.noreply.github.com>
2022-08-29 23:17:12 -07:00
Gabe Kangas
f3d611e762
Fix content header not rendering properly on mobile
2022-08-22 21:50:17 -07:00
Gabe Kangas
c2bd9436ba
Show moderation menu for moderators. Closes #1864
2022-08-22 19:25:16 -07:00
Gabe Kangas
be6e3d9ad9
Add remote fediverse follow modal. Closes #1862
2022-08-22 18:30:58 -07:00
Gabe Kangas
1a9b9f53fc
Add remote fediverse follow modal. Closes #1862
2022-08-22 18:27:47 -07:00
Gabe Kangas
d8cf30a723
Only show send button on mobile. Make buttons inline with input field
2022-08-21 18:47:12 -07:00
Gabe Kangas
cd81aa56ed
Tighten up collapsed message spacing
2022-08-21 17:22:27 -07:00
Gabe Kangas
9e18cf2f0c
Fix incorrect font variable being used
2022-08-21 16:01:41 -07:00
Gabe Kangas
6cc184ea6f
Add standalone join message with user badge
2022-08-21 15:50:27 -07:00
Gabe Kangas
3cfcad7a93
Add user chat message badges. Closes #1988
2022-08-21 14:04:16 -07:00
Gabe Kangas
c4479a0ffc
Add first pass at IndieAuth modal. For #1863
2022-08-20 16:16:24 -07:00
Gabe Kangas
75b90179b8
Experiment with some custom player styling. For #1899
2022-08-18 19:59:17 -07:00
Gabe Kangas
a521ba21d8
Add admin field for setting offline message. Closes #1901
2022-08-16 21:48:06 -07:00
Gabe Kangas
6ffe720d90
Update to the page content header
2022-08-16 17:55:12 -07:00
Gabe Kangas
7dc2a1a4bc
Limit message collapsing to 2 minutes between messages
2022-08-15 19:44:29 -07:00
Gabe Kangas
1f4493aaf9
Fix linter warnings
2022-08-15 17:49:15 -07:00
Gabe Kangas
b632699c87
Fix chat error with only a single message
2022-08-15 16:35:54 -07:00
Gabe Kangas
44dde66b08
Reduce the custom content width and center it. For #1860
2022-08-14 18:33:04 -07:00
Gabe Kangas
4da64a6b35
Use actual moderation menu and remove the placeholder
2022-08-10 22:17:08 -07:00
Gabe Kangas
a7bbb06ea5
Fix mod menu showing. Closes #1990
2022-08-10 21:41:56 -07:00
Gabe Kangas
cf03a37aed
Remove category icon component
2022-08-10 20:32:16 -07:00
Gabe Kangas
f8429beef4
Add+style system style chat message. Closes #1998
2022-08-10 20:22:00 -07:00
Gabe Kangas
681067ab93
Add custom offline message+api. Part of #1901
2022-08-09 22:09:43 -07:00