Commit graph

570 commits

Author SHA1 Message Date
gabek
2c7be0db10 Bundle embedded web app 2022-10-09 01:58:04 +00:00
gabek
2fe72ff178 Bundle embedded web app 2022-10-09 00:55:01 +00:00
gabek
083df79ae6 Bundle embedded web app 2022-10-09 00:19:07 +00:00
gabek
4dfb602dff Bundle embedded web app 2022-10-08 23:55:02 +00:00
gabek
3decfc009d Bundle embedded web app 2022-10-08 22:37:26 +00:00
gabek
eed76ddbd2 Bundle embedded web app 2022-10-08 22:09:35 +00:00
gabek
0ec57275d1 Bundle embedded web app 2022-10-07 02:00:24 +00:00
renovate[bot]
a71eb8cdd2 Bundle embedded web app 2022-10-06 18:24:32 +00:00
gabek
679eb6e55b Bundle embedded web app 2022-10-06 05:47:38 +00:00
renovate[bot]
11ceebd84f Bundle embedded web app 2022-10-05 19:25:37 +00:00
renovate[bot]
64e3896164 Bundle embedded web app 2022-10-05 06:05:36 +00:00
gabek
5ec46bcc72 Bundle embedded web app 2022-10-05 02:18:08 +00:00
gabek
8095eebcff Bundle embedded web app 2022-10-05 01:47:20 +00:00
renovate[bot]
9718169686 Bundle embedded web app 2022-10-04 21:01:05 +00:00
gabek
d71f2a95c8 Bundle embedded web app 2022-10-04 20:23:01 +00:00
gabek
da291f3e5d Bundle embedded web app 2022-10-04 18:25:24 +00:00
renovate[bot]
ca71f66117 Bundle embedded web app 2022-10-04 10:12:42 +00:00
gabek
09687eac92 Bundle embedded web app 2022-10-04 05:27:39 +00:00
gabek
89786ad4f8 Bundle embedded web app 2022-10-04 04:10:57 +00:00
renovate[bot]
4a999a39b2 Bundle embedded web app 2022-10-03 15:31:41 +00:00
t1enne
d2d471cdc5 Bundle embedded web app 2022-10-03 08:19:03 +00:00
t1enne
b52fe2fd06 Bundle embedded web app 2022-10-03 07:55:25 +00:00
gabek
87aefb99c1 Bundle embedded web app 2022-10-02 18:07:05 +00:00
gabek
73012ff195 Bundle embedded web app 2022-10-02 16:44:48 +00:00
t1enne
2f6bef7f66 Bundle embedded web app 2022-10-01 08:37:58 +00:00
renovate[bot]
91a71cc8ef Bundle embedded web app 2022-10-01 04:34:06 +00:00
renovate[bot]
8be58f841e Bundle embedded web app 2022-09-30 19:55:38 +00:00
t1enne
6705758435 Bundle embedded web app 2022-09-30 11:20:53 +00:00
t1enne
ed38a7355a Bundle embedded web app 2022-09-30 08:03:49 +00:00
renovate[bot]
e5d7690fc1 Bundle embedded web app 2022-09-30 05:54:35 +00:00
renovate[bot]
93522b0215 Bundle embedded web app 2022-09-30 03:03:13 +00:00
gabek
0a52cb749c Bundle embedded web app 2022-09-29 20:39:10 +00:00
renovate[bot]
48dd158126 Bundle embedded web app 2022-09-29 17:51:43 +00:00
renovate[bot]
7b148beb11 Bundle embedded web app 2022-09-29 08:58:40 +00:00
renovate[bot]
ecc0f69656 Bundle embedded web app 2022-09-29 08:29:38 +00:00
renovate[bot]
0de4959d7e Bundle embedded web app 2022-09-29 04:01:31 +00:00
renovate[bot]
6d8f9aaf59 Bundle embedded web app 2022-09-29 01:54:14 +00:00
renovate[bot]
b5a017957d Bundle embedded web app 2022-09-28 23:38:16 +00:00
renovate[bot]
730277654f Bundle embedded web app 2022-09-26 14:27:12 +00:00
renovate[bot]
30e6e51471 Bundle embedded web app 2022-09-20 02:35:29 +00:00
t1enne
821967d1a7 Bundle embedded web app 2022-09-19 20:18:41 +00:00
renovate[bot]
408b21c626 Bundle embedded web app 2022-09-18 10:30:29 +00:00
gabek
9bed5eda3c Bundle embedded web app 2022-09-17 21:01:27 +00:00
renovate[bot]
88e387a8b2 Bundle embedded web app 2022-09-17 19:14:04 +00:00
renovate[bot]
9e0bd88a7f Bundle embedded web app 2022-09-17 16:54:32 +00:00
renovate[bot]
8b9a12bf70 Bundle embedded web app 2022-09-17 11:14:28 +00:00
renovate[bot]
89e518a37b Bundle embedded web app 2022-09-16 20:36:31 +00:00
gabek
55b63e7bb7 Bundle embedded web app 2022-09-16 16:22:27 +00:00
renovate[bot]
0719d16ee1 Bundle embedded web app 2022-09-16 14:08:17 +00:00
renovate[bot]
2f9d58ebf7 Bundle embedded web app 2022-09-16 10:19:20 +00:00
renovate[bot]
faaac2d270 Bundle embedded web app 2022-09-15 22:44:49 +00:00
gabek
638b3d7133 Bundle embedded web app 2022-09-15 05:23:35 +00:00
t1enne
6a91aacf20 Bundle embedded web app 2022-09-13 06:48:43 +00:00
renovate[bot]
930aef3d95 Bundle embedded web app 2022-09-12 22:56:20 +00:00
renovate[bot]
40cb417ffd Bundle embedded web app 2022-09-12 19:18:33 +00:00
renovate[bot]
043ebbc840 Bundle embedded web app 2022-09-12 15:36:04 +00:00
renovate[bot]
4f296cb302 Bundle embedded web app 2022-09-12 05:53:35 +00:00
renovate[bot]
02fea10704 Bundle embedded web app 2022-09-12 05:45:28 +00:00
renovate[bot]
3440067270 Bundle embedded web app 2022-09-11 22:28:56 +00:00
renovate[bot]
5a0328b57c Bundle embedded web app 2022-09-11 19:39:27 +00:00
gabek
74b45fdfab Bundle embedded web app 2022-09-11 05:42:24 +00:00
gabek
f22c0fd26f Bundle embedded web app 2022-09-11 05:23:31 +00:00
gabek
70df34d998 Bundle embedded web app 2022-09-11 04:23:08 +00:00
gabek
cf34998f66 Bundle embedded web app 2022-09-11 03:23:59 +00:00
gabek
31894330f5 Bundle embedded web app 2022-09-11 03:08:19 +00:00
gabek
52fff3bc30 Bundle embedded web app 2022-09-11 01:51:48 +00:00
gabek
033899c6fd Bundle embedded web app 2022-09-11 01:13:24 +00:00
renovate[bot]
e037655ab2 Bundle embedded web app 2022-09-11 00:21:27 +00:00
gabek
2d17dcf4d7 Bundle embedded web app 2022-09-10 22:40:42 +00:00
gabek
92ef860387 Bundle embedded web app 2022-09-10 19:12:42 +00:00
gabek
f80257aa68 Bundle embedded web app 2022-09-10 07:28:46 +00:00
renovate[bot]
94324735a9 Bundle embedded web app 2022-09-10 07:11:29 +00:00
gabek
208c4f03ba Bundle embedded web app 2022-09-10 06:43:59 +00:00
gabek
e21e7eeb74 Bundle embedded web app 2022-09-10 03:28:47 +00:00
gabek
e9a1cae9d1 Bundle embedded web app 2022-09-10 01:28:58 +00:00
gabek
dfb7c9de67 Bundle embedded web app 2022-09-09 05:28:14 +00:00
gabek
2ce5960b7f Bundle embedded web app 2022-09-09 04:49:52 +00:00
renovate[bot]
eaac51d4b4 Bundle embedded web app 2022-09-08 23:41:22 +00:00
renovate[bot]
0111206f08 Bundle embedded web app 2022-09-08 23:27:16 +00:00
gabek
3133cf3cbe Bundle embedded web app 2022-09-08 20:10:49 +00:00
renovate[bot]
543218f12b Bundle embedded web app 2022-09-08 14:41:52 +00:00
renovate[bot]
cde56e9665 Bundle embedded web app 2022-09-08 06:50:53 +00:00
renovate[bot]
31ad292b3a Bundle embedded web app 2022-09-07 14:44:33 +00:00
gabek
06d7eb5287 Bundle embedded web app 2022-09-07 07:02:41 +00:00
gabek
ee333ef10a Bundle embedded web app 2022-09-07 06:34:12 +00:00
gabek
b17bbeed2d Bundle embedded web app 2022-09-07 00:56:59 +00:00
gabek
7981efcde5 Bundle embedded web app 2022-09-05 16:04:00 +00:00
gabek
59f48f5999 Bundle embedded web app 2022-09-05 06:09:42 +00:00
gabek
faaba39956 Bundle embedded web app 2022-09-05 04:57:01 +00:00
gabek
ab4feb9bde Bundle embedded web app 2022-09-05 01:13:12 +00:00
gabek
6edfe81ccb Bundle embedded web app 2022-09-05 01:04:59 +00:00
renovate[bot]
5f118abe83 Bundle embedded web app 2022-09-04 20:19:38 +00:00
renovate[bot]
00fc85a165 Bundle embedded web app 2022-09-03 23:49:32 +00:00
gabek
d91c45d172 Bundle embedded web app 2022-09-03 18:41:45 +00:00
gabek
888e31008a Bundle embedded web app 2022-09-03 17:27:00 +00:00
renovate[bot]
329e44cf86 Bundle embedded web app 2022-09-03 05:38:45 +00:00
renovate[bot]
7886a13dab Bundle embedded web app 2022-09-03 01:48:02 +00:00
renovate[bot]
91b81325dd Bundle embedded web app 2022-09-03 01:08:45 +00:00
renovate[bot]
f13f463d4d Bundle embedded web app 2022-09-02 20:13:54 +00:00
gabek
0ea0fcd58a Bundle embedded web app 2022-09-02 05:04:00 +00:00
gabek
7c17e078d3 Bundle embedded web app 2022-09-02 02:39:59 +00:00
gabek
0c716eff22 Bundle embedded web app 2022-08-30 18:59:46 +00:00
gabek
82e3df6e3b Bundle embedded web app 2022-08-30 18:44:03 +00:00
gabek
c6ca2fb0d8 Bundle embedded web app 2022-08-30 18:01:58 +00:00
gabek
e605dea03a Bundle embedded web app 2022-08-30 06:42:10 +00:00
gabek
8d25938f28 Bundle embedded web app 2022-08-30 06:37:26 +00:00
gabek
6954bb5f37 Bundle embedded web app 2022-08-30 06:19:41 +00:00
gabek
a0a28fa572 Bundle embedded web app 2022-08-29 19:56:18 +00:00
renovate[bot]
dd4e597f34 Bundle embedded web app 2022-08-29 14:46:11 +00:00
gabek
dd737a60d6 Bundle embedded web app 2022-08-27 02:20:56 +00:00
gabek
37646d9df3 Bundle embedded web app 2022-08-26 22:02:55 +00:00
gabek
545c0eeb2c Bundle embedded web app 2022-08-26 20:15:13 +00:00
gabek
e92fd3b6c3 Bundle embedded web app 2022-08-25 00:23:51 +00:00
gabek
0278dc6f45 Bundle embedded web app 2022-08-23 05:02:50 +00:00
gabek
6f9add15a1 Bundle embedded web app 2022-08-23 02:28:58 +00:00
gabek
1def26f1ba Bundle embedded web app 2022-08-23 01:35:19 +00:00
renovate[bot]
3c1ac58799 Bundle embedded web app 2022-08-22 13:11:03 +00:00
gabek
76df3beb20 Bundle embedded web app 2022-08-22 02:29:56 +00:00
gabek
4aac3322ee Bundle embedded web app 2022-08-22 01:50:50 +00:00
gabek
94fa69a1f7 Bundle embedded web app 2022-08-22 00:26:31 +00:00
gabek
ffdcd8e17b Bundle embedded web app 2022-08-21 23:05:57 +00:00
gabek
749493ce1f Bundle embedded web app 2022-08-21 22:54:56 +00:00
gabek
1954169ca1 Bundle embedded web app 2022-08-21 21:09:07 +00:00
gabek
eac7e81a9c Bundle embedded web app 2022-08-21 05:56:17 +00:00
gabek
032ab60afc Bundle embedded web app 2022-08-21 00:10:32 +00:00
gabek
47837e6612 Bundle embedded web app 2022-08-20 23:26:23 +00:00
gabek
c41e0ab90a Bundle embedded web app 2022-08-20 21:34:25 +00:00
renovate[bot]
36f86c212d Bundle embedded web app 2022-08-20 18:52:11 +00:00
renovate[bot]
3e61e09b70 Bundle embedded web app 2022-08-20 13:41:09 +00:00
renovate[bot]
fa8fb51420 Bundle embedded web app 2022-08-20 13:26:57 +00:00
renovate[bot]
23cd443db5 Bundle embedded web app 2022-08-20 10:24:16 +00:00
gabek
1e78951f35 Bundle embedded web app 2022-08-19 03:03:50 +00:00
gabek
df824bdf4a Bundle embedded web app 2022-08-17 04:52:12 +00:00
gabek
900abffbc9 Bundle embedded web app 2022-08-17 01:01:46 +00:00
gabek
0765f9cfcc Bundle embedded web app 2022-08-16 04:18:31 +00:00
renovate[bot]
5fcab95846
Pin dependency style-dictionary to 3.7.1 (webv2) (#2043)
* Pin dependency style-dictionary to 3.7.1

* Bundle embedded web app

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <renovate[bot]@users.noreply.github.com>
2022-08-15 20:56:39 -07:00
gabek
8cbf78050e Bundle embedded web app 2022-08-16 03:28:54 +00:00
gabek
6eb9c54b37 Bundle embedded web app 2022-08-16 02:47:50 +00:00
Gabe Kangas
d12f25f556
Merge branch 'develop' into webv2 2022-08-09 14:14:45 -07:00
Owncast
fb3973b264 Update admin to 19c9ac698ac49922046fd8f2a5b0b816dc6e921a 2022-07-13 02:31:33 +00:00
Gabe Kangas
506d1fa4cf
Merge remote-tracking branch 'origin/develop' into webv2 2022-07-11 21:21:07 -07:00
Owncast
61fd154466 Update admin to 5e483cdedce74b553a32cd0231c7957c335c6bec 2022-07-11 14:05:49 +00:00
Owncast
e443188cbc Update admin to 3e92d626c4e429345c238a54ff4a718de128ff76 2022-07-04 14:49:22 +00:00
Gabe Kangas
6de93f9651
Move the favicons 2022-06-24 21:53:16 -07:00
Gabe Kangas
18a184eeb7
Use bundled images instead of old webroot files 2022-06-20 22:10:55 -07:00
Owncast
3bccc5364c Update admin to 64706cedeefd75f442c03f7d73f91a075b065390 2022-06-20 14:37:23 +00:00
Gabe Kangas
ff968616ba
Support server-rendered index.html for all clients. Closes #1871 2022-06-19 16:35:55 -07:00
Gabe Kangas
78c6189c02
First pass at bundling web app into service. Working. 2022-06-19 15:32:42 -07:00
Owncast
793e177501 Update admin to cadb926648602bf6fa760ce80ddd600a039fd845 2022-06-13 20:28:09 +00:00
Owncast
3b9ec5de55 Update admin to f1214a5c7c32657eb4fefe8d2384fe629bc797ca 2022-06-13 13:47:15 +00:00
Owncast
09d3350d50 Update admin to b6858dddff0ae30fbf3b1013b23faaafe091e90d 2022-06-09 04:52:55 +00:00
Owncast
e26442ec7d Update admin to ce743edb6f68455da9897d5ddf159f5ce258345d 2022-06-07 23:44:16 +00:00
Owncast
365beb525c Update admin to 678a9600e2eefa97abd712b2f639b718ebab083c 2022-06-06 13:30:05 +00:00
Owncast
017c85e41d Update admin to f4a727ac630869f95576fc75c7e23f8266c9e05d 2022-06-04 05:15:44 +00:00
Owncast
e9405d1065 Update admin to 0dde73c00edfc6826405fa573e459c5be5dfc7e0 2022-05-26 20:47:43 +00:00
Owncast
5187c7ff17 Update admin to 28abdfaefa8de537891a850c9e3ba4d7df5491fe 2022-05-23 14:42:57 +00:00
Owncast
16e6a71a39 Update admin to 1e77ede64bf9f42d6f29e73b338f9d1b85b1c018 2022-05-16 15:04:09 +00:00
Owncast
19be55a637 Update admin to 0d75882185c8b24a343b7775406ea953d7dfd5b6 2022-05-12 00:21:57 +00:00
Owncast
f6869c3bb1 Update admin to fc9e84404d851f9e513bf1607f6cd8b1b35fa189 2022-05-10 03:46:30 +00:00
Owncast
29549c84ec Update admin to 110a67bb591e76f420ed5b363f3ce14f9f1c5643 2022-05-09 13:29:35 +00:00
Owncast
64bfcf69fb Update admin to dae0f374694db7177871986a2b2f8732c5662598 2022-05-09 00:45:47 +00:00
Owncast
e67bed43bc Update admin to 76bf79228ed28c621e6b594604d0f2b6957b5b58 2022-05-08 23:12:03 +00:00
Owncast
e96f36d313 Update admin to 2b2cd843474d215651f0f663808d5579b3a2db3f 2022-05-05 22:45:44 +00:00
Owncast
47534aa381 Update admin to f6c6521f066cf60ec08dcd999ae8872b246d2735 2022-05-05 22:39:25 +00:00
Owncast
1919784d08 Update admin to 2648f99b296a2883c67ee34502543cd7b8a9a83f 2022-04-29 20:26:02 +00:00
Owncast
3b0dc8aadb Update admin to a818c03525600bc61e267b37cbf7d085a9da0471 2022-04-25 14:56:53 +00:00
Owncast
9d4c69e3bc Update admin to 010d335050608ee9b0bbac54073b780c542c462f 2022-04-25 01:47:22 +00:00
Owncast
3ed0920b7c Update admin to 00fedee82d62cd83e11b294465ed5d5f63487515 2022-04-24 23:50:50 +00:00
Owncast
93890f33c7 Update admin to 8dcdc01b790a6e431991308788fc8e9f6e3b9925 2022-04-23 20:54:16 +00:00
Owncast
c0aea77fe4 Update admin to 5ca1a9f13c2c576941a7e31dc837f6b26608d99b 2022-04-23 16:40:07 +00:00
Owncast
e1c44d002b Update admin to d681eacce18ff599b0ce7b4c534fcb63657a7e06 2022-04-23 00:35:15 +00:00
Gabe Kangas
b835de2dc4
IndieAuth support (#1811)
* Able to authenticate user against IndieAuth. For #1273

* WIP server indieauth endpoint. For https://github.com/owncast/owncast/issues/1272

* Add migration to remove access tokens from user

* Add authenticated bool to user for display purposes

* Add indieauth modal and auth flair to display names. For #1273

* Validate URLs and display errors

* Renames, cleanups

* Handle relative auth endpoint paths. Add error handling for missing redirects.

* Disallow using display names in use by registered users. Closes #1810

* Verify code verifier via code challenge on callback

* Use relative path to authorization_endpoint

* Post-rebase fixes

* Use a timestamp instead of a bool for authenticated

* Propertly handle and display error in modal

* Use auth'ed timestamp to derive authenticated flag to display in chat

* don't redirect unless a URL is present

avoids redirecting to `undefined` if there was an error

* improve error message if owncast server URL isn't set

* fix IndieAuth PKCE implementation

use SHA256 instead of SHA1, generates a longer code verifier (must be 43-128 chars long), fixes URL-safe SHA256 encoding

* return real profile data for IndieAuth response

* check the code verifier in the IndieAuth server

* Linting

* Add new chat settings modal anad split up indieauth ui

* Remove logging error

* Update the IndieAuth modal UI. For #1273

* Add IndieAuth repsonse error checking

* Disable IndieAuth client if server URL is not set.

* Add explicit error messages for specific error types

* Fix bad logic

* Return OAuth-keyed error responses for indieauth server

* Display IndieAuth error in plain text with link to return to main page

* Remove redundant check

* Add additional detail to error

* Hide IndieAuth details behind disclosure details

* Break out migration into two steps because some people have been runing dev in production

* Add auth option to user dropdown

Co-authored-by: Aaron Parecki <aaron@parecki.com>
2022-04-21 14:55:26 -07:00
Owncast
7a508e3dbc Update admin to cc305d98b083dd0d3622a6f3bab0215f1b5f4429 2022-04-19 19:55:24 +00:00
Owncast
5d236976d8 Update admin to 09d27310fe865823219a02baebc3afc9a6a8b0fb 2022-04-18 15:49:34 +00:00
Owncast
4b92ec421d Update admin to 1e3d8b50ee3981c1f255cc9dd6c713f8e9daa917 2022-04-10 06:07:16 +00:00
Owncast
3ed44abc5d Update admin to b0f1f8ff4c03c0b8aa82009797c0c05c8a2a7096 2022-04-09 16:13:57 +00:00
Owncast
d4e2412893 Update admin to 4e271aa8c24dc5c1eeb0576ce80656beb26de43d 2022-04-04 21:21:50 +00:00
Owncast
0b468d6353 Update admin to e6f9164038d4b1cf33b930a800dabb608ef96308 2022-04-04 21:18:25 +00:00
Owncast
4fd2cfe10a Update admin to cd55b313d31d94177e86a75980acbb359ed0a6c0 2022-04-04 21:08:56 +00:00
Owncast
bde5995932 Update admin to 5405de7e73c49db96c209370a81f19f9958c9083 2022-03-28 17:29:08 +00:00
Owncast
9099e72785 Update admin to 18127708433ed2fbad4065e4f3f1df33ac90594e 2022-03-28 12:53:34 +00:00
Owncast
bd13e241e3 Update admin to bc9e3f969a643f9ad54c001c29d2783d314cf2fd 2022-03-27 23:30:18 +00:00
Owncast
117d0078c8 Update admin to baa86698b059fa801b77f6b2b49975bdc7783b63 2022-03-25 06:24:34 +00:00
Owncast
729de44fce Update admin to e87f4bd967816e794800767dab288334873779c7 2022-03-24 23:46:51 +00:00
Owncast
84582f5f1f Update admin to 110d481e7b4b4f3e97e11ed95921fd24c0c614cb 2022-03-23 17:55:27 +00:00
Owncast
c608a2532e Update admin to 3684a9b1c5e3fbf147f20c133b1b8eff1bfbbec1 2022-03-21 21:42:18 +00:00
Owncast
971e6e1835 Update admin to 69102abd496ca00c31ce808a4044493d13a96086 2022-03-21 21:29:02 +00:00
Owncast
7d02bd7dbf Update admin to 7fc163fdb701fd2e37faff21db1d22a7dbcf33dd 2022-03-21 12:56:30 +00:00
Gabe Kangas
4a17f30da8
Outbound live stream notifications (#1663)
* First pass at browser, discord, twilio notifications

* Commit updated Javascript packages

* Remove twilio notification support

* Email notifications/smtp support

* Fix Firefox notification support, remove chrome checks

* WIP more email work

* Add support for twitter notifications

* Add stream title to discord and twitter notifications

* Update notification registration modal

* Fix hide/show email section

* Commit updated API documentation

* Commit updated Javascript packages

* Fix post-rebase missing var

* Remove unused var

* Handle unsubscribe errors for browser push

* Standardize email config prop names

* Allow overriding go live email template

* Some notifications cleanup

* Commit updated Javascript packages

* Remove email/smtp/mailjet support

* Remove more references to email notifications

Co-authored-by: Owncast <owncast@owncast.online>
2022-03-18 13:33:23 -07:00
Owncast
1df4c96963 Update admin to 4367e37786dd14fb6ca522a4b0a976c5ca217e73 2022-03-17 21:56:10 +00:00
Owncast
4d5de61148 Update admin to f5dfe66d170d48a2109c89f5ea35dde0cb3d5e9a 2022-03-17 05:52:16 +00:00
Owncast
233c2656d8 Update admin to 3bd00a31b28b8aa2c59893bd7b19314ce7231712 2022-03-17 00:57:02 +00:00
Owncast
d874913aa1 Update admin to 8f67df6bc0c1dc7dfe4af4a2839cac40d59473f7 2022-03-15 07:07:46 +00:00
Owncast
7e46335279 Update admin to f58ac7c01299921caa802c8ccefe206f3c517f98 2022-03-14 12:52:19 +00:00
Owncast
88ed026eae Update admin to eb0749902e024245748735a0cc01d083205124e8 2022-03-07 22:45:40 +00:00
Owncast
c64113329f Update admin to 2e51ab7a64311908f0493068ab462333b75999c4 2022-03-07 08:11:19 +00:00
Owncast
b7a17ffbdb Update admin to ff75e8120995b42a7891774c33d89d726013a858 2022-03-07 08:08:15 +00:00
Owncast
fcb4d51481 Update admin to 8c76347ad8e4644ac427d6b7b2748e7665aa1e79 2022-03-07 08:04:43 +00:00
Owncast
4619064a13 Update admin to 75b92f29559c645a92bc0e96cfed66b433b349ea 2022-03-07 08:02:15 +00:00
Owncast
9612e7ee65 Update admin to 3942bddaa83c58c90a44f37e6a0671748645cef1 2022-03-07 07:56:17 +00:00
Owncast
7378079ac9 Update admin to 6740d192115c9df37a550216821c7614bb7929d1 2022-03-07 07:49:13 +00:00
Owncast
674a62d022 Update admin to 5873e68af4147b0f68d7b65c401e19835c715730 2022-03-07 07:41:57 +00:00
Owncast
069c8b03c3 Update admin to 4fee9bf1bdd312554d1a50956e4402939dc25b6d 2022-03-07 07:33:25 +00:00
Owncast
0f0137a345 Update admin to 272139611273be8e0976d6c5bbefad44527a0bff 2022-03-07 04:42:45 +00:00
Owncast
6e0e33dedb Update admin to cbd6bc7936dd86e7eab87bc6b4cf6e50c4720914 2022-03-07 03:51:36 +00:00
Owncast
69d7b7a1be Update admin to ad492d10471505670678de50b8f4b1fc6b5cff73 2022-03-07 01:42:10 +00:00
Owncast
713c8f913e Update admin to 7cd23993d592b8231eaeec6165cb7e0fa67adb5f 2022-03-07 01:26:27 +00:00
Owncast
bdae263819 Update admin to 5f10d5dbeff9bb098c920f6c6acad48f38fa735d 2022-03-07 01:14:53 +00:00
Owncast
9d5bdc320c Update admin to 5720a43402043364f732bdefc5c563127d51e2c3 2022-03-06 06:38:35 +00:00
Owncast
70a486ab9a Update admin to 783b5693e63795d2d381cff2b1b062c24b2cbd52 2022-03-01 03:18:18 +00:00
Owncast
4f19e4fd46 Update admin to d094ab753ba2a38add345735ba522f6f75f04f29 2022-02-28 14:52:21 +00:00
Owncast
eded7da430 Update admin to 794da93134165c59620b03e2ec3dcb9ba67e6dfc 2022-02-28 12:21:55 +00:00
Owncast
b447587c91 Update admin to a3553c2cf77e2a82e5fc6e940624313b19a5e80b 2022-02-21 13:12:59 +00:00
Owncast
9b7c29e82a Update admin to 91f6db708a20949fc80e8679a9fd8dfea94c409f 2022-02-18 21:12:03 +00:00
Owncast
28ceca8f25 Update admin to 8eeb6137da772a1dc6603e8465c0d7042dc1937f 2022-02-18 21:08:15 +00:00
Owncast
f0e422bbf9 Update admin to 33209dae909d6fd8cd291982a4f6b46f94b579fd 2022-02-18 05:31:15 +00:00
Owncast
54efa55de6 Update admin to ab2cbafa27ff57871647208f1ee7db916e45a501 2022-02-14 17:55:26 +00:00
Owncast
101b654359 Update admin to 0a0c204839f23ceddba3bad5674f367452dfc141 2022-02-11 22:17:54 +00:00
Owncast
6e46138e4f Update admin to 6caa07ab61ac2938303f8e1e1737db185512ef7a 2022-02-11 22:13:31 +00:00
Owncast
9b9e91c73e Update admin to bb706e269e0f9630b94d10319573c45ab87eb82f 2022-02-07 11:00:53 +00:00
Owncast
3028bb2f91 Update admin to 739e1091a48f738ed93c878199193a4c0b944361 2022-02-02 22:50:27 +00:00
Owncast
5e3796014a Update admin to d94c5922a82158eb490c692f8b6a25eef41e1c51 2022-02-02 22:39:28 +00:00
Owncast
49b405453e Update admin to b57b877e34a894e2848fc94ac67d55fb2eed01c9 2022-02-02 08:12:34 +00:00
Owncast
ce1aa4ac10 Update admin to 3b7502cf7fa9d49955ab4d1069e682f851b86405 2022-02-02 04:43:36 +00:00
Owncast
d2476b947f Update admin to 63dbeb1aabac0e66d376766de4d7dcfeb5c81a8d 2022-02-02 04:36:11 +00:00
Owncast
ed7b0d6638 Update admin to 4a10a4d6aa12c7f13aac7f8f7a046f0be1fdeb8e 2022-02-02 04:23:57 +00:00
Owncast
f7d0ac5486 Update admin to afa77cb587c44d39733a2bcdac5a84b65d2bd61d 2022-02-02 04:20:29 +00:00
Owncast
859b73a2c7 Update admin to 20403b9ee39914719fc86517aa53c265752d5ff1 2022-02-02 04:17:27 +00:00
Owncast
e3c9a6aa87 Update admin to 6e3b0dd8cb511e5c0581fb71e2f2fab96f466363 2022-02-02 04:10:15 +00:00
Owncast
65a99db387 Update admin to ebfd2a91ce28863b372be9670b72cacdb7aafadf 2022-02-02 01:43:22 +00:00
Owncast
d56fe6fa4d Update admin to fab349055c2ed88ed43bb6bcff3a7b286c086b9c 2022-02-01 01:29:24 +00:00
Owncast
8f02214456 Update admin to 787b09828d54ffc9525b5cecc94f5917daa10f1b 2022-01-31 03:11:28 +00:00
Owncast
5a8d20e7a9 Update admin to 895f32c622b731596e0277d3d008bf92e88c15fa 2022-01-27 01:08:07 +00:00
Owncast
3fa009e7ed Update admin to 7f1d644bd9c54e804a334daa7174c5aa3d322a68 2022-01-25 21:18:35 +00:00
Owncast
b4cdd4ba19 Update admin to ff8e15ea97041d0e8bdf6405b4c9192641af4409 2022-01-25 01:08:13 +00:00
Gabe Kangas
580a6077e1 Support Mastodon+Twitter cards via HTML embed player in OG tags. 2022-01-22 21:04:45 -08:00
Owncast
ec272f6ce0 Update admin to 6708e289d6a064544f789452b0afe7c7acf4ae52 2022-01-21 04:14:08 +00:00
Owncast
a621e920e7 Update admin to 208f5d9a90a5f50543910c989cb949d7d8abff6f 2022-01-19 01:10:22 +00:00
Owncast
626bd3776f Update admin to 45330b523bed0f6d13e1ff7bcbcb12a2b2348de1 2022-01-18 03:57:03 +00:00
Owncast
4197c5c569 Update admin to 4942bb6f73f8fa14856412e74e813003917bc714 2022-01-18 02:04:06 +00:00
Owncast
87812bdfcb Update admin to 98b0e1e6144db5485435ab9492548404418872d7 2022-01-18 02:01:25 +00:00
Owncast
2ae42e835b Update admin to 5d90954e7a9ee7e57c0691454cce44d2e577d2e8 2022-01-17 01:31:57 +00:00
Owncast
ca8e26e0d9 Update admin to 39563ce6e2e802b860497ab4f402291821950d7b 2022-01-14 19:22:40 +00:00
Owncast
98f9af78cb Update admin to 45786937462c1a83067fff5e79b79c17cef5914d 2022-01-14 01:09:39 +00:00
Owncast
6e0854d710 Update admin to 8bf4a1eb950df480a58dedb50fd99d2c1e259fb8 2022-01-13 23:19:11 +00:00
Owncast
e8436f063e Update admin to 1bc86ab4af5cabb60b6d03a59395312fd75cfe47 2022-01-13 01:15:38 +00:00
Owncast
754e4a09ca Update admin to 645c4ba86fa6fa9a0ab8274efd429614101d0a8a 2022-01-12 22:04:33 +00:00
Gabe Kangas
045a0a2afd
Social features / ActivityPub federation (#1629)
* Support webfinger requests for the live account. Closes https://github.com/owncast/owncast/issues/1193

* Support for actor requests. Returns response for live actor. Closes https://github.com/owncast/owncast/issues/1203

* Handle follow and unfollow requests. Closes
https://github.com/owncast/owncast/issues/1191 and https://github.com/owncast/owncast/issues/1205 and https://github.com/owncast/owncast/issues/1206 and https://github.com/owncast/owncast/issues/1194

* Add basic support for sending out text activities. For https://github.com/owncast/owncast/issues/1192

* Some error handling and passing of dynamic local account names.

* Add hardcoded example image attachment to test post

* Centralize the map of accounts and inboxes

* No longer disable the preview generator based on YP toggle

* Send a federated message to followers when stream starts. For https://github.com/owncast/owncast/issues/1192

* Placeholder for attaching tags

* Add image description

* Save and get to outbox persistence. Return using outbox endpoint for actor

* Pass payloads to be handled through the gochan

* Handle undo follow requests explitly, not all undo requests

* Add API for manually sending simple federated messages. Closes #1215

* Verify inbox requests. Closes #1321

* Add route to fetch a single AP object by ID. For #1329

* Add responses to fediverse nodeinfo requests

* Set and get federation config values for admin

* Handle host-meta requests

* Do not send out message if disabled. Use saved go live message.

* Require AP-compatible content types for AP-related requests

* Rename ap models to apmodels for clarity

* Change how content type matching takes place.

* io -> ioutil

* Add stub delete activity callback

* Handle likes and announces to surface engagement in chat. Part of #1229

* Append url to go live posts

* Do not require specific content types for nodeinfo requests

* Add follow engagement chat message via AP

* add owncast user-agent to requests

* Set note visibility to public (for now)

* Fix saving/fetching a single object

* Add support for x-nodeinfo2 responses

* Point to the dev admin branch for ap

* Bundle in dev admin for testing

* Add error logging

* Add AP middleware back

* Point to the new external compatible logo endpoint

* Clean up more AP logging to help testing

* Tweak go live text and link hashtags

* Fix bug in fetching init time

* Send update actor activities when server details/profile is updated

* Add federation config overview to web client config

* Add additional actor properties

* Make the AP middleware checking more flexible when looking at types

* First pass at remote fediverse follow flow. For #1371

* Added a basic AP actor followers endpoint

* WIP client followers API

* Add profile-page reference to webfinger response

* Add aliases to webfinger response

* Fix content-type returned to be expected activitypub+json

* First pass at followers api

* Point at local dev copy of go-fed/activity

* Add custom toot Hashtag objects to posts

* Store additional user details to followers table

* Fix AP followers endpoint. Closes #1204

* Add owncast hashtag as an invisible tag to go live posts

* Reject AP requests when it is disabled

* Add actor util for generating full account user from person object

* Verify inbox requests before performing any other work

* Accept actor update requests

* Fix linter errors in federation branch

* Migrate AP SQL to sqlc for type safe queries

* Use the @unclearParadigm REST parameter helper

* Fix verifying post ID on AP engagement

* WIP privacy/request approval

* Style the remote follow modal

* First pass at a followers list component w/ mock data. #1370

* Revert "Use the @unclearParadigm REST parameter helper"

This reverts commit c8af8a413f.

* Fix get followers API

* Add support for requiring approval. Closes https://github.com/owncast/owncast/issues/1208

* Handle Applications as Actors partly for PeerTube support

* add temp todo list

* check route on load, this might change later

* style followers

* account for just 1 tab case

* Remove mock data. Allow showing follow button even when there are no external actions defined

* Point to actual followers API

* Support fallback img for follower views

* Remove duplicate verification. Add some additional verbose logging

* Bundle dev admin

* Add type to host-meta webfinger template response

* Tweak remote follow modal content

* WIP federation followers refactor

* Do not send pointer to middleware

* Update admin

* Add setting for toggling displaying fediverse engagement. Closes #1404

* Add in-development admin

* Do not enable cors on admin followers api

* Add db migration for updating messages table

* Enable empty string go live messages to disable

* Remove debug messages

* Rework some ActivityPub handling.

Create new Actor->Person handling.
Create new Actor->Service handling.
Add engagement handlers to send chat events and store event objects.
Store inbound activities to new ap_inbound_activities table.

* Support federated engagement events.

Store them in the messages table and surface them via chat events.

* Support federated event engatement in the chat

* Tweak web UI followers handling

* Point go.mod at remote fork instead of local

* Update admin

* Merged in develop. Couple fixes

* Update dev admin

* Update fedi engagement posts.

- Fix incorrect action text.
- Add action icons.

* Set public as to instead of cc for ap msg

* Updated styling for federated actions in chat

* Add support for blocking federated domains. Closes #1209

* Force checking of https in verify step

* Update dev admin

* Return user scopes in chat history api. Closes #1586

* Update dev admin

* Add AP outbound request worker pool. Closes #1571

* Disable (temporarily?) owncast tag on AP posts

* Consolidate creating activity+notes in outbound AP messages

* Add inbox worker pool. Closes #1570

* Update dev admin bundle

* Clean up some logs

* Re-enable inbound verfication

* Save full IRI to outbox instead of path

* Reject if full IRI is not found in outbox

* Use full ActivityPub user account in chat event

* Fix and expand follower APIs

- Add missing IDs to AP follower endpoints
- Split AP follower endpoints into initial request and pages.
- Support pagination in AP requests.

* Include IRI in error message

* Hide chat toggle when chat is hidden. Closes #1606

* Updates to followers pagination

* Set default go live message

* Remove log

* indirect -> direct import

* Updates for inbound federated event handling.

- Keep track of existing events and reject duplicates.
- Change what is sent to chat for surfing federated engagement.
- Keep track if outbound events are automated "go live" events or not.

* Update chat federated engagement.

* Update dev admin.

* Move from being a person to a bot (service). Closes #1619

* Only set server init date if not already set

* Only save notes to outbox able

* Rework private-mode followers/approvals

* API for returning a list of federated actions for #1573

* Fix too-small follower cells and jumpy tabs. Closes #1616 and closes #1516

* Fix shortcuts getting fired on inputs. Fixes #1489 and #1201

* Add spinner, autoclose + other fixes to follow modal. Fixes #1593

* Fix fetching a single object by IRI

* SendFederationMessage -> SendFederatedMessage

* Autolink and create tag objects from manual posts. Closes #1620

* Update dev admin bundle

* Handle engagement from non-automated/live posts

* Reject federated engagement actions if they do not match a local post

* Update dev admin bundle

* A bunch of cleanup

* Fix unused assignments and logic

* Remove unused function

* Add content warning and sentive content flag if stream is NSFW. Closes #1624

* Disable fetching objects by IRI when in private mode. Closes #1623

* Update the error message of the remote follow dialog. closes #1622

* Update dev admin

* Fix NREs throwing in test content

* Fix query that wasn't properly filtering out hidden messages

* Test against user being disabled instead of message visibility

* Fix automated test NRE

* Update comment

* Adjust federated engagement chat views. Closes #1617

* Add additional index to users table

* Add support for removing followers/requests. Closes #1630

* Reject federated actions from blocked actors. #1631

* Use fallback avatar if it fails to load. Closes #1635

* Fix styling of follower list. Closes #1636

* Add basic blurb stating they should follow the server. Closes #1641

* Update dev admin

* Set default go live message in migration. Closes #1642

* Reset the messages table on 0.0.11 schema migration

* Fix js error with moderation actions. Closes #1621

* Add a bit more clarification on follow modal. Closes #1599

* Remove todos

* Split out actor and domain blocking checks

* Check for errors on default values being set

* Clean up actor rejection due to being blocked

* Update dev admin

* Add colon to error to make it easier to read

* Remove markdown rendering of go live message. Reorganize text. Remove content warning. Closes #1645

* Break out the sort+render messages logic so it can be fired on visibility change. Closes #1643

* Do not send profile updates if federation is disabled

* Save follow references to inbound activities table

* Update dev admin

* Add blocked actor test

* Remove the overloaded term of Follow from social links

* Fix test running in memory only

* Remove "just" in engagement messags

* Replace star with heart for like action.

* Update dev admin

* Explicitly set cc as public

* Remove overly using the stream name in fediverse engagement messages

* Some federated/follow UI tweaks

* Remove explicit cc and bcc as they are not required

* Explicitly set the audience

* Remove extra margin

* Add Join Fediverse button to follow modal. Closes #1651

* Do not allow multiple follows to send multiple events. Closes #1650

* Give events a min height

* Do not allow old posts to be liked/shared. Closes #1652

* Remove value from log message

* Alert followers on private mode toggle

* Ignore clicks to follow button if disabled

* Remove underline from action buttons

* Add moderator icon to join message

* Update admin

* Post-merge remove unused var

* Remove pointing at feature branch

Co-authored-by: Ginger Wong <omqmail@gmail.com>
2022-01-12 13:53:10 -08:00
Owncast
c51d9cdbf4 Update admin to 2e9d6134bd17a084c06be1c78116a5a92e644bcc 2022-01-12 19:36:36 +00:00
Owncast
913dbf89a2 Update admin to e6cc72d9c72d1abdec40c7878f08b041b483a250 2022-01-12 18:19:21 +00:00
Owncast
f54a9f997d Update admin to beb9376c1292d0c64dd0d21e621cd953d86baa19 2022-01-06 01:18:10 +00:00
Owncast
d62848c6c8 Update admin to aff6ed5f3fadb20ae0e5f2fe08d33f7194da6ce6 2022-01-05 02:23:02 +00:00
Owncast
2e3a0e6d7d Update admin to 70e12e1972c1edf1d9fcea0149c99acb927b2189 2022-01-04 08:32:27 +00:00
Owncast
9d2e821dda Update admin to 23d407d69b4692172ee3638ac074c3ba30db483a 2022-01-04 08:28:01 +00:00
Owncast
f83e39411c Update admin to 3223c0ac16f48cf7122f6178ddaf12032964dbbe 2022-01-03 02:58:32 +00:00
Owncast
b2cd174676 Update admin to e57746d2dc34306abf2a2fa931155604f1c64bfd 2021-12-31 04:55:23 +00:00
Owncast
a53cefbac5 Update admin to 43cd4caaafcdc66d46a382d24b656033d626b0a2 2021-12-30 06:34:58 +00:00
Owncast
9885fe5884 Update admin to ac1fe289f43df9bc70141ec4f56ee69481498c87 2021-12-29 04:02:06 +00:00
Owncast
48567a9760 Update admin to 6ac5305f3863a31f02dc2ca6022260dd55d71343 2021-12-28 07:45:13 +00:00
Owncast
3092b8457a Update admin to c9fcab679074fb78d6bc025cbae59361dc3e8069 2021-12-24 21:06:34 +00:00
Owncast
3105037935 Update admin to fde0bfe7162fae6535a6c1762188768cac936976 2021-12-23 01:07:40 +00:00
Owncast
864bce474c Update admin to 3bc4397b57d6798f7505edcb9e75a97a3265f6f4 2021-12-21 22:58:05 +00:00
Owncast
5e4fb4bb86 Update admin to 15dc0df0a23c48067d67771448c45a01025141ab 2021-12-21 01:17:21 +00:00
Owncast
9ca2b5399e Update admin to 9f48665271f15b855ccdc989cffdbff302e17ac3 2021-12-21 01:12:51 +00:00
Owncast
6a47ac1bd3 Update admin to 10be37570d2d54d253ec948f29b104808ec562da 2021-12-20 06:33:12 +00:00
Owncast
2cf25c50b0 Update admin to 7504c5da2d39b45a51e26006612842dda4ee7c6f 2021-12-16 01:39:26 +00:00
Owncast
a747a26c75 Update admin to e36cebbe0b80a855e1350cac28437c7d819d6d8e 2021-12-14 02:31:43 +00:00
Owncast
1a6e2b6208 Update admin to 6c715003e84f044f541f302e4f17552d30a15da5 2021-12-14 02:06:11 +00:00
Owncast
79ad532b9f Update admin to edbd24713562e00042f45c088697638a9064a1e7 2021-12-13 01:40:09 +00:00
Owncast
7790d6c32d Update admin to 4ab21f4c530be68131baba16fd29e5ec6a8ce111 2021-12-10 01:11:42 +00:00
Owncast
c71b8f1e0f Update admin to c4b2758cad1ef1f26cf142a1ebadb2e3f6fff020 2021-12-09 01:57:20 +00:00
Owncast
14fc24c419 Update admin to 3c78fadd33bb6bc88c2d3b0f7f4d8ffbc9869a4d 2021-12-07 02:12:34 +00:00
Owncast
399f168112 Update admin to 6c13bc1cc8bed67a9cce47ccef056809da9c30f3 2021-12-07 02:07:42 +00:00
Owncast
ba77f8e4cf Update admin to dc55fbb7bf7103e847263b1f893983f3e78a5dfb 2021-12-07 02:03:56 +00:00
Owncast
8eacd05e12 Update admin to 9bcd47d1f2c7aa25c80523a3ee349c28d0f6a841 2021-12-07 01:58:47 +00:00
Owncast
8f10f9ad83 Update admin to 70510886ed6c2bef8346b9d9648338b895cc639e 2021-12-06 05:36:27 +00:00
Owncast
74b7949454 Update admin to 5db1ff13fd8f919221f0cd9b9d05eb468c5eb32c 2021-12-06 04:03:39 +00:00
Owncast
faa08b03f6 Update admin to 549c0f8a18cecc5dd9a8b5f3a3b39ce40334f2db 2021-12-03 04:07:24 +00:00
Owncast
d02603c280 Update admin to 63e368a5d809cd2dd31e555b8b3af253c02dddb6 2021-12-03 04:02:54 +00:00
Owncast
1b27e42dbb Update admin to 6c515b598ff68e92c90b290b75b80a4173fec405 2021-12-01 01:49:08 +00:00
Owncast
ee6beca07e Update admin to 011cf3e160fb6d7700ac697d1ebba512b66b307e 2021-12-01 01:44:48 +00:00
Owncast
81653b0e99 Update admin to 0dd17f7357e6fae645c8963740e8d0797c150aa1 2021-11-30 02:49:20 +00:00
Owncast
ea42019029 Update admin to 13220dcaf048a2f3bdf69b10527cf7fc54c28231 2021-11-30 02:45:04 +00:00
Owncast
f0d24d129d Update admin to 0d242dd4be5c98d36fa2c9ffe991a4e45edddd4c 2021-11-29 05:15:41 +00:00
Owncast
1a031f9d30 Update admin to 2a7a6cb9f1b3f90ef77a850ea852893952b88832 2021-11-28 02:15:03 +00:00
Owncast
3ed7035e39 Update admin to d8e1b0e1b115e6b97efd0bac8818341d72d8bcd0 2021-11-26 03:11:32 +00:00
Owncast
2065908c5e Update admin to fc607ea343a3628d6c7f694d7bd091bd903075b9 2021-11-25 02:52:27 +00:00
Owncast
e915cb49bd Update admin to a778dc999e7862dfb34438c8d759442785d52fd4 2021-11-23 03:48:21 +00:00
Owncast
4e96835274 Update admin to 50ca541baec42ea929009483b350161d4618dca4 2021-11-22 01:30:00 +00:00
Owncast
d9314eac2c Update admin to cba0da2dcacab2dc4d65ff61fb2d9323dfb108e5 2021-11-18 01:29:17 +00:00
Owncast
519e60b1e2 Update admin to ff1dc3fb59cdad30196e9e2b0f8d6a1ea44d1983 2021-11-16 01:17:51 +00:00
Owncast
cc27be3721 Update admin to 9cc9dc8d8c96d3f6b09e3bf5c074d23837c26ab0 2021-11-16 01:13:36 +00:00
Owncast
7635be565d Update admin to fd9e718734c5e6c7f73f6c19b23eabfdba2c4738 2021-11-16 01:09:39 +00:00
Owncast
66693b563b Update admin to 7f277ea4f322685350d1280599b548c74524aee1 2021-11-16 00:58:31 +00:00
Owncast
2eedcc5a0f Update admin to f42267c88407d02172e9786c687e0ec3b2f07d87 2021-11-15 23:10:59 +00:00
Owncast
14af894446 Update admin to 6a846a604723c6cd7d195c3b41b2534b1fbe9ae1 2021-11-15 20:25:17 +00:00
Owncast
a6e190bfdd Update admin to c8a31ade5e5f88d25f272f491afcbc83ee9ecd45 2021-11-13 05:31:26 +00:00
Owncast
72cc0206a4 Update admin to 8279a11f5152836ac9cd0465947f0f7bb6a43544 2021-11-13 00:50:23 +00:00
Gabe Kangas
676aa96f40 Add support for overriding embedded offline.ts. Closes #1507 2021-11-03 16:27:37 -07:00
Gabe Kangas
4a52ba9f35 Update admin 2021-11-02 18:02:03 -07:00