Commit graph

515 commits

Author SHA1 Message Date
Gabe Kangas
6328fc6f90 Fix date comparison for showing last stream date. Closes https://github.com/owncast/owncast/issues/1223 2021-07-19 18:51:10 -07:00
Owncast
6d8e0ddfe5 Commit updated Javascript packages 2021-07-15 23:47:47 +00:00
dependabot[bot]
d0b1b604a0
Bump htm from 3.0.4 to 3.1.0 in /build/javascript (#1181)
* Bump htm from 3.0.4 to 3.1.0 in /build/javascript

Bumps [htm](https://github.com/developit/htm) from 3.0.4 to 3.1.0.
- [Release notes](https://github.com/developit/htm/releases)
- [Commits](https://github.com/developit/htm/compare/3.0.4...3.1.0)

---
updated-dependencies:
- dependency-name: htm
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Run npm run build and update libraries

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Gabe Kangas <gabek@real-ity.com>
2021-07-12 20:44:21 -07:00
gabek
cea07697f3 Prettified Code! 2021-07-12 17:25:14 +00:00
gingervitis
ab254a3902
put emojiPicker instance in state so page can correctly reflect updates when it has instantiated (#1182) 2021-07-12 10:24:41 -07:00
Rohan Sharma
8fe28dc941
remove the unnecessary websocket connection from the embed player (#1165) 2021-07-06 17:46:52 -07:00
dependabot[bot]
0858e2ed52
Bump video.js from 7.12.3 to 7.13.3 in /build/javascript (#1145)
* Bump video.js from 7.12.3 to 7.13.3 in /build/javascript

Bumps [video.js](https://github.com/videojs/video.js) from 7.12.3 to 7.13.3.
- [Release notes](https://github.com/videojs/video.js/releases)
- [Changelog](https://github.com/videojs/video.js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/videojs/video.js/compare/v7.12.3...v7.13.3)

---
updated-dependencies:
- dependency-name: video.js
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Copy library over

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Gabe Kangas <gabek@real-ity.com>
2021-07-01 18:31:48 -07:00
Gabe Kangas
e61b83c5ed Fix missing space in viewer count 2021-06-20 20:15:08 -07:00
Gabe Kangas
f2b2e5c61c Revert "Remove ping requests now that it has been consolidated with status requests"
This reverts commit d9a6be2ac6.
2021-06-20 20:11:21 -07:00
gabek
2aa8b70ead Prettified Code! 2021-06-21 00:24:12 +00:00
Gabe Kangas
57674206b2
Fix + update external modal (#1106)
* Update external action modal. Uses Micromodal. Closes #1020

* refactor modal handling to isolate loading in modal component

* modal style cleanup

* Remove log

Co-authored-by: Ginger Wong <omqmail@gmail.com>
2021-06-20 17:23:39 -07:00
gabek
c848c029d5 Prettified Code! 2021-06-21 00:16:30 +00:00
gingervitis
3b08b50ce0
add a send button on chat for touch screen devices (#1127)
* add a send button on chat for touch screen devices

* cleanup
2021-06-20 17:15:52 -07:00
gabek
b19fa76cd0 Prettified Code! 2021-06-20 17:49:54 +00:00
gingervitis
c45e43c378
display last online time (#1125)
* - if offline calculate and display last online time to address https://github.com/owncast/owncast/issues/1111
- clean up status bar styles

* clean up console
2021-06-20 10:49:16 -07:00
gabek
d19ecab90c Prettified Code! 2021-06-20 01:13:03 +00:00
Timur Zhigmytov
1b5f8b9f1d
Remove div container when action buttons is empty (#1124)
Co-authored-by: Timur Zhigmytov <timur.zhigmytov@mediamonks.com>
2021-06-19 18:12:28 -07:00
Gabe Kangas
d9a6be2ac6 Remove ping requests now that it has been consolidated with status requests 2021-06-13 14:30:18 -07:00
Meisam
2659dc3646
Hide viewer count when offline (#1091)
* Hide viewer count when offline

* cleanup
2021-06-10 10:59:51 -07:00
gabek
bb4fc6dae3 Prettified Code! 2021-06-08 00:37:20 +00:00
Gabe Kangas
e994412f4b Fix webapp not loading after youtube embed was removed in #1079 2021-06-07 17:36:43 -07:00
gabek
136fb2d943 Prettified Code! 2021-06-07 20:53:56 +00:00
Meisam
c77782cd35
inject custom style (#1083) 2021-06-07 13:53:25 -07:00
Pankaj Patil
4bee6408b4
Remove YouTube embedding in the chat (#1080)
* Remove YouTube embedding in the chat

* Remove youtube-lite dependency

* Implelment Feedback
2021-06-07 10:57:13 -07:00
Gabe Kangas
fc13f98102 Rebuild frontend js libs 2021-06-04 19:47:59 -07:00
Ginger Wong
e89e65e1f5 Resolve issue https://github.com/owncast/owncast/issues/1044
- use built-in videojs font icon instead
- remove button clickhandler override to make button work on mobile
2021-05-29 14:20:37 -07:00
Ginger Wong
c08744c3c4 - A fix for https://github.com/owncast/owncast/issues/1007. Hide app container when configdata is loading
- Also, disable global CSS transition animations for now. If we want to add transitions onto anything, we can target specific elements and add styles individually intead.
2021-05-29 13:08:10 -07:00
Thilo Billerbeck
6c7acf9a95
added emoji focus check to prevent triggering shortcuts (#1056) 2021-05-27 21:39:20 -07:00
gabek
6cb73b7aec Prettified Code! 2021-05-21 03:29:32 +00:00
Gabe Kangas
91f6dcd0f6
Active viewer PING controller. Closes #790 (#990) 2021-05-20 20:29:01 -07:00
Gabe Kangas
0bf3fb4fa7 Bump vjs vhs and enable experimentalBufferBasedABR 2021-05-19 17:39:42 -07:00
Meisam
5c48ead518
Update video.css (#1012)
fix for issue #951
2021-05-13 12:02:57 -07:00
Gabe Kangas
a9459c4370 Simplify about footer version link 2021-04-21 09:46:48 -07:00
Gabe Kangas
ba711ff4c9 Pass along url params to external url action 2021-04-19 16:03:25 -07:00
gabek
dabc93ef03 Prettified Code! 2021-04-16 05:01:28 +00:00
Gabe Kangas
fb637e20ed Slap the custom css into a style tag. Closes #718 2021-04-15 22:00:46 -07:00
Aral Balkan
2409cab5b6
Closes #910: make transparency of message bubbles overridable via CSS (#911)
* Closes #910: make transparency of message bubbles overridable via CSS

* Fix CSS variable declaration
2021-04-11 14:08:06 -07:00
Gabe Kangas
a4309fd899 Remove the glare from the svg logo 2021-04-10 19:28:37 -07:00
dependabot[bot]
c60fd3c76a
Bump video.js from 7.11.4 to 7.11.8 in /build/javascript (#904)
* Bump video.js from 7.11.4 to 7.11.8 in /build/javascript

Bumps [video.js](https://github.com/videojs/video.js) from 7.11.4 to 7.11.8.
- [Release notes](https://github.com/videojs/video.js/releases)
- [Changelog](https://github.com/videojs/video.js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/videojs/video.js/compare/v7.11.4...v7.11.8)

Signed-off-by: dependabot[bot] <support@github.com>

* Commit updated Javascript packages

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>
2021-04-08 00:24:31 -07:00
Gabe Kangas
06e5154042 Change size of splash bg image. Closes #893 2021-04-07 22:14:49 -07:00
Owncast
315db9ea8e Commit updated Javascript packages 2021-04-07 07:06:17 +00:00
Thilo Billerbeck
d4d738a8ae
Added some basic keyboard controls to the owncast frontend (#804)
* added f and m keys

* added more keys and volume control

* added p for play and c for chatview toggle

* remove vscode auto format

* changed e.target check to not trigger kb-controls if input is in focus

* fixed the default mute problem

* Commit updated API documentation

* merged keydown and keypressed methods

Co-authored-by: Owncast <owncast@owncast.online>
2021-04-01 14:09:02 -07:00
gabek
23ba9bb8be Prettified Code! 2021-04-01 05:29:39 +00:00
Gabe Kangas
12f56f5571 Hide external action modal spinner 2021-03-31 22:28:55 -07:00
Gabe Kangas
1f659c47b0 Move external action buttons 2021-03-31 22:28:39 -07:00
Gabe Kangas
be612de2ed Fix the loading image persisting. Closes #863 2021-03-27 20:47:59 -07:00
gabek
d40108e20b Prettified Code! 2021-03-24 06:51:47 +00:00
Gabe Kangas
320bd95b0f Add noreferrer to foter link 2021-03-23 23:51:08 -07:00
Gabe Kangas
dca9afcaa1 Point to local logo for noscript image 2021-03-23 23:48:08 -07:00
Gabe Kangas
5dc5de815c Experiment with showing logo while loading. For #849 2021-03-22 21:52:17 -07:00
Gabe Kangas
bdc669d571 Show player loading spinner. Closes #848 2021-03-22 21:15:26 -07:00
Gabe Kangas
368dcb8823 Do not show output quality selector if there is only one option. closes #832 2021-03-17 21:30:43 -07:00
Gabe Kangas
3fb80554ef
Gek/external actions (#827)
* WIP External actions modal frontend

* Add external action links

* Allow modal to show/hide and use a dynamic url

* Use external link object instead of just url for state

* add style and placement to external action buttons

* reformat and simplify tag list style as not to conflict with action buttons and make them look less actionable since they're not

* fix bug to open modal

* have Esc key close modal

* fix style on modal

* make modal bg darker

* close modal when you click outside of it

* fix zindex

* Add support for external action icons and colors

* Some external action modal sizing + loading spinner

Co-authored-by: Ginger Wong <omqmail@gmail.com>
2021-03-15 15:32:52 -07:00
Owncast
84f74f0353 Commit updated Javascript packages 2021-03-15 18:38:23 +00:00
Gustavo H. M. Silva
d10a1c1baa
Added LiberaPay, LBRY and Odysee to social networks (#821)
* Added LiberaPay, LBRY and Odysee to social networks

* Solved faulty map
2021-03-14 21:48:23 -07:00
Gabe Kangas
777de9fbf4 Remove in-line rendering of images by url 2021-03-14 12:08:42 -07:00
Gabe Kangas
bf33d08384
Add support for disabling chat. Closes #472 (#799) 2021-03-14 11:46:27 -07:00
Ginger Wong
40264bec8c use passed in player to access controlbar instead for airplay 2021-03-13 19:47:03 -08:00
gabek
a79db1b589 Prettified Code! 2021-03-11 20:52:18 +00:00
Gabe Kangas
c713e216d3
Allow selection of different stream variants in the player (#815)
* WIP video quality selector

* The quality selector works even though it is not pretty

* Support getting and setting variant name. Closes #743

* Sort video qualities

* Fix odd looking selected states of menubutton items

* Fix comment
2021-03-11 12:51:43 -08:00
dependabot[bot]
7dc070840d
Bump @videojs/http-streaming from 2.6.1 to 2.6.3 in /build/javascript (#802)
* Bump @videojs/http-streaming from 2.6.1 to 2.6.3 in /build/javascript

Bumps [@videojs/http-streaming](https://github.com/videojs/http-streaming) from 2.6.1 to 2.6.3.
- [Release notes](https://github.com/videojs/http-streaming/releases)
- [Changelog](https://github.com/videojs/http-streaming/blob/main/CHANGELOG.md)
- [Commits](https://github.com/videojs/http-streaming/compare/v2.6.1...v2.6.3)

Signed-off-by: dependabot[bot] <support@github.com>

* Commit updated Javascript packages

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>
2021-03-10 16:41:40 -08:00
dependabot[bot]
319b6ebe11
Bump @videojs/http-streaming from 2.5.0 to 2.6.1 in /build/javascript (#755)
* Bump @videojs/http-streaming from 2.5.0 to 2.6.1 in /build/javascript

Bumps [@videojs/http-streaming](https://github.com/videojs/http-streaming) from 2.5.0 to 2.6.1.
- [Release notes](https://github.com/videojs/http-streaming/releases)
- [Changelog](https://github.com/videojs/http-streaming/blob/main/CHANGELOG.md)
- [Commits](https://github.com/videojs/http-streaming/compare/v2.5.0...v2.6.1)

Signed-off-by: dependabot[bot] <support@github.com>

* Commit updated Javascript packages

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>
2021-03-08 16:17:56 -08:00
dependabot[bot]
6608736326
Bump postcss from 8.2.6 to 8.2.7 in /build/javascript (#786)
* Bump postcss from 8.2.6 to 8.2.7 in /build/javascript

Bumps [postcss](https://github.com/postcss/postcss) from 8.2.6 to 8.2.7.
- [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.2.6...8.2.7)

Signed-off-by: dependabot[bot] <support@github.com>

* Commit updated Javascript packages

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>
2021-03-08 15:49:46 -08:00
Gabe Kangas
db0b813eea Do not execute chat-only or video-only js from main app. Closes #787 2021-03-04 14:08:53 -08:00
Gabe Kangas
717e4f9ceb Remove platforms.js from preload list. Closes #774 2021-03-01 18:29:19 -08:00
Ginger Wong
e3375ae8c0 fix username form size on mobile views when stream title name is long 2021-02-27 16:39:19 -08:00
Forest Johnson
f6bdff32ea
<script type="module" ...> tags to reduce round trips under HTTP/2 (#745) 2021-02-21 18:09:04 -08:00
Gabe Kangas
bc2caadb74
0.0.6 -> Master (#731)
* Implement webhook events for external integrations (#574)

* Implement webhook events for external integrations

Reference #556

* move message type to models and remove duplicate

* add json header so content type can be determined

* Pass at migrating webhooks to datastore + management apis (#589)

* Pass at migrating webhooks to datastore + management apis

* Support nil lastUsed timestamps and return back the new webhook on create

* Cleanup from review feedback

* Simplify a bit

Co-authored-by: Aaron Ogle <aaron@geekgonecrazy.com>

Co-authored-by: Gabe Kangas <gabek@real-ity.com>

* Webhook query cleanup

* Access tokens + Send system message external API (#585)

* New add, get and delete access token APIs

* Create auth token middleware

* Update last_used timestamp when using an access token

* Add auth'ed endpoint for sending system messages

* Cleanup

* Update api spec for new apis

* Commit updated API documentation

* Add auth'ed endpoint for sending user chat messages

* Return access token string

* Commit updated API documentation

* Fix route

* Support nil lastUsed time

* Commit updated Javascript packages

* Remove duplicate function post rebase

* Fix msg id generation

* Update controllers/admin/chat.go

Co-authored-by: Aaron Ogle <geekgonecrazy@users.noreply.github.com>

* Webhook query cleanup

* Add SystemMessageSent to EventType

Co-authored-by: Owncast <owncast@owncast.online>
Co-authored-by: Aaron Ogle <geekgonecrazy@users.noreply.github.com>

* Set webhook as used on completion. Closes #610

* Display webhook errors as errors

* Commit updated API documentation

* Add user joined chat event

* Change integration API paths. Update API spec

* Update development version of admin that supports integration apis

* Commit updated API documentation

* Add automated tests for external integration APIs

* check error

* quiet this test for now

* Route up some additional 3rd party apis. #638

* Commit updated API documentation

* Save username on user joined event

* Add missing scope to valid scopes list

* Add generic chat action event API for 3rd parties. Closes #666

* Commit updated API documentation

* First pass at moving WIP config framework into project for #234

* Only support exported fields in custom types

* Using YP get/set key as a first pass at using the data layer. Fixes + integration.

* Ignore test db

* Start adding getters and setters for config values

* More get/set config work. Starting to populate api with data

* Wire up some config edit endpoints

* More endpoints

* Disable cors middleware

* Add more endpoints and add test to test them

* Remove the in-memory change APIs

* Add endpoint for changing tags

* Add more config endpoints

* Starting to point more things away from config file and to the datastore

* Populate YP with db data

* Create new util method for parsing page body markdown and return it in api

* Verify proposed path to ffmpeg

* For development purposes show the config key in logs

* Move stats values to datastore

* Moving over more values to the datastore

* Move S3 config to datastore

* First pass the config -> db migrator

* Add the start of the video config apis

* It builds pointing everything away from the config

* Tweak ffmpeg path error message

* Backup database every hour. Closes #549

* Config + defaults + migration work for db

* Cleanup logging

* Remove all the old config structs

* Add descriptive info about migration

* Tweak ffmpeg validation logic

* Fix db backup path. backup on db version migration

* Set video and s3 configurations

* Update api spec with new config endpoints

* Add migrator for stats file

* Commit updated API documentation

* Use a dynamic system port for internal HLS writes. Closes #577 (#626)

* Use a dynamic system port for internal HLS writes. Closes #577

* Cleanup

* YP key migration to datastore

* Create a backup directory if needed before migrations

* Remove config test that no longer makes sense. Cleanup.

* Change number types from float32 to float64

* Update automated test suite

* Allow restoring a database backup via command line flags. Closes #549

* Add new hls segment config api

* Commit updated API documentation

* Update apis to require a value container property

* add socialHandles api

* Commit updated API documentation

* Add new latancy level setting to replace segment settings

* Commit updated API documentation

* Fix spelling

* Commit updated API documentation

* hardcode a json api of available social platforms

* Add additional icons

* Return social handles in server config api

* Add socialhandles validation to test

* Move list of hard coded social platforms to an api

* Remove audio only code from transcoder since we do not use it

* Add latency levels api + snapshot of video settings as current broadcast

* Add config/serverurl endpoint

* Return 404 on YP api if disabled

* Surface stream title in YP response

* Add stream title to web ui

* Cleanup log message. Closes #520

* Rename ffmpeg package to transcoder

* Add ws package for testing

* Reduce chat backlog to past 5hrs, max 50. Closes #548

* Fix error formatting

* Add endpoint for resetting yp registration

* Add yp/reset to api spec. return status in response

* Return zero viewer count if stream is offline. Closes #422

* Post-rebase fixes

* Fix merge conflict in openapi file

* Commit updated API documentation

* Standardize controller names

* Support setting the stream key via the command line. Closes #665

* Return social handles with YP data. First half of https://github.com/owncast/owncast-yp/issues/28

* Give the YP package access to server status regardless if enabled or not

* Change delay in automated tests

* Add stream title integration API. For #638

* Commit updated API documentation

* Add storage to the migrator

* Missing returning NSFW value in server config

* Add flag to ignore websocket client. Closes #537

* Add error for parsing broadcaster metadata

* Add support for a cli specified http server port. Closes #674

* Add cpu usage levels and a temporary mapping between it and libx264 presets

* Test for valid url endpoint when saving s3 config

* Re-configure storage on every stream to allow changing storage providers

* After 5 minutes of a stream being stopped clear the stream title

* Hide viewer count once stream goes offline instead of when player stops

* Pull steamTitle from the status that gets updated instead of the config

* Commit updated API documentation

* Optionally show stream title in the header

* Reset stream title when server starts

* Show chat action when stream title is updated

* Allow system messages to come back in persistence

* Split out getting chat history for moderation + fix tests

* Remove server title and standardize on name only

* Commit updated API documentation

* Bump github.com/aws/aws-sdk-go from 1.37.1 to 1.37.2 (#680)

Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.37.1 to 1.37.2.
- [Release notes](https://github.com/aws/aws-sdk-go/releases)
- [Changelog](https://github.com/aws/aws-sdk-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go/compare/v1.37.1...v1.37.2)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add video variant and stream latency config file migrator

* Remove mostly unused disable upgrade check bool

* Commit updated API documentation

* Allow bundling the admin from the 0.0.6 branch

* Fix saving port numbers

* Use name instead of old title on window focus

* Work on latency levels. Fix test to use levels. Clean up transcoder to only reference levels

* Another place where title -> name

* Fix test

* Bump github.com/aws/aws-sdk-go from 1.37.2 to 1.37.3 (#690)

Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.37.2 to 1.37.3.
- [Release notes](https://github.com/aws/aws-sdk-go/releases)
- [Changelog](https://github.com/aws/aws-sdk-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go/compare/v1.37.2...v1.37.3)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Update dependabot config

* Bump github.com/aws/aws-sdk-go from 1.37.3 to 1.37.5 (#693)

Bumps [github.com/aws/aws-sdk-go](https://github.com/aws/aws-sdk-go) from 1.37.3 to 1.37.5.
- [Release notes](https://github.com/aws/aws-sdk-go/releases)
- [Changelog](https://github.com/aws/aws-sdk-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-go/compare/v1.37.3...v1.37.5)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump video.js from 7.10.2 to 7.11.4 in /build/javascript (#694)

* Bump video.js from 7.10.2 to 7.11.4 in /build/javascript

Bumps [video.js](https://github.com/videojs/video.js) from 7.10.2 to 7.11.4.
- [Release notes](https://github.com/videojs/video.js/releases)
- [Changelog](https://github.com/videojs/video.js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/videojs/video.js/compare/v7.10.2...v7.11.4)

Signed-off-by: dependabot[bot] <support@github.com>

* Commit updated Javascript packages

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>

* Make the latency migrator dynamic so I can tweak values easier

* Split out fetching ffmpeg path from validating the path so it can be changed in the admin

* Some commenting and linter cleanup

* Validate the path for a logo change and throw an error if it does not exist

* Logo change requests have to be a real file now

* Cleanup, making linter happy

* Format javascript on push

* Only format js in master

* Tweak latency level values

* Remove unused config file examples

* Fix thumbnail generation after messing with the ffmpeg path getter

* Reduce how often we report high hardware utilization warnings

* Bundle the 0.0.6 branch version of the admin

* Return validated ffmpeg path in admin server config

* Change the logo to be stored in the data directory instead of webroot

* Bump postcss from 8.2.4 to 8.2.5 in /build/javascript (#702)

Bumps [postcss](https://github.com/postcss/postcss) from 8.2.4 to 8.2.5.
- [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.2.4...8.2.5)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Default config file no longer used

* don't show stream title when offline

addresses https://github.com/owncast/owncast/issues/677

* Remove auto-clearing stream title. #677

* webroot -> data when using logo as thumbnail

* Do not list websocket/access token create/delete as integration APIs

* Commit updated API documentation

* Bundle updated admin

* Remove pointing to the 0.0.6 admin branch

* Linter cleanup

* Linter cleanup

* Add donations and follow links to show up under social handles

* Prettified Code!

* More linter cleanup

* Update admin bundle

* Remove use of platforms.js and return icons with social handles. Closes #732

* Update admin bundle

* Support custom config path for use in migration

* Remove unused platform-logos.gif

* Reduce log level of message

* Remove unused logo files in static dir

* Handle dev vs. release build info

* Restore logo.png for initial thumbnail

* Cleanup some files from the build process that are not needed

* Fix incorrect build-time injection var

* Fix missing file getting copied to the build

* Remove console directory message.

* Update admin bundle

* Fix comment

* Report storage setup error

* add some value set error checking

* Use validated dynamic ffmpeg path for animated gif preview

* Make chat message links be white so they don't hide in the bg. Closes #599

* Restore conditional that was accidentally removed

Co-authored-by: Aaron Ogle <geekgonecrazy@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>
Co-authored-by: Ginger Wong <omqmail@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: nebunez <uoj2y7wak869@opayq.net>
Co-authored-by: gabek <gabek@users.noreply.github.com>
2021-02-18 23:05:52 -08:00
dependabot[bot]
271661064b
Bump video.js from 7.10.2 to 7.11.4 in /build/javascript (#694)
* Bump video.js from 7.10.2 to 7.11.4 in /build/javascript

Bumps [video.js](https://github.com/videojs/video.js) from 7.10.2 to 7.11.4.
- [Release notes](https://github.com/videojs/video.js/releases)
- [Changelog](https://github.com/videojs/video.js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/videojs/video.js/compare/v7.10.2...v7.11.4)

Signed-off-by: dependabot[bot] <support@github.com>

* Commit updated Javascript packages

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>
2021-02-04 22:17:20 -08:00
Thilo Billerbeck
0225e341d1
Add ability to pause and play the stream by pressing the spacebar (#658)
* make spacebar control the play state

* improved keyboard handling

* only allow pause and play when stream is online

* some formatting fixes

* remove event listener on destruction
2021-01-26 23:03:25 -08:00
Gabe Kangas
ca66ea6588 Pin preact to 10.5.10 to fix broken player layout. #661 2021-01-26 10:32:07 -08:00
Thilo Billerbeck
f9e3dc2b45
only react to screen resize when device has no touchscreen (#650) 2021-01-23 16:02:29 -08:00
dependabot[bot]
35f45b3aae
Bump @videojs/http-streaming from 2.4.2 to 2.5.0 in /build/javascript (#647)
* Bump @videojs/http-streaming from 2.4.2 to 2.5.0 in /build/javascript

Bumps [@videojs/http-streaming](https://github.com/videojs/http-streaming) from 2.4.2 to 2.5.0.
- [Release notes](https://github.com/videojs/http-streaming/releases)
- [Changelog](https://github.com/videojs/http-streaming/blob/main/CHANGELOG.md)
- [Commits](https://github.com/videojs/http-streaming/compare/v2.4.2...v2.5.0)

Signed-off-by: dependabot[bot] <support@github.com>

* Commit updated Javascript packages

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>
2021-01-20 22:11:50 -08:00
dependabot[bot]
7db361b041
Bump preact from 10.5.10 to 10.5.11 in /build/javascript (#648)
* Bump preact from 10.5.10 to 10.5.11 in /build/javascript

Bumps [preact](https://github.com/preactjs/preact) from 10.5.10 to 10.5.11.
- [Release notes](https://github.com/preactjs/preact/releases)
- [Commits](https://github.com/preactjs/preact/compare/10.5.10...10.5.11)

Signed-off-by: dependabot[bot] <support@github.com>

* Commit updated Javascript packages

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>
2021-01-20 22:10:46 -08:00
dependabot[bot]
32d2ef9f73
Bump preact from 10.5.9 to 10.5.10 in /build/javascript (#633)
* Bump preact from 10.5.9 to 10.5.10 in /build/javascript

Bumps [preact](https://github.com/preactjs/preact) from 10.5.9 to 10.5.10.
- [Release notes](https://github.com/preactjs/preact/releases)
- [Commits](https://github.com/preactjs/preact/compare/10.5.9...10.5.10)

Signed-off-by: dependabot[bot] <support@github.com>

* Commit updated Javascript packages

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>
2021-01-14 23:44:18 -08:00
gingervitis
9e44c261fa
be able to pick multiple emojis ; move up picker div to see emojis inputted into textfield; restore focus into textfield after picker closes; address #612 (#614) 2021-01-09 18:26:56 -08:00
Thilo Billerbeck
e6fd7fe871
align the chat-views position to the bottom of the page to overcome view-height bugs (#593)
* align the chat-views position to the bottom of the page

* introduce a media query to make chat scrolling work on mobile
2021-01-09 18:17:10 -08:00
Ginger Wong
3719dd04f5 add rel=me to social icon link; address #511 2021-01-09 16:40:38 -08:00
Ginger Wong
cd52e5b0a3 rename socialhandles to platformlogos in case of adblockers 2021-01-09 16:36:07 -08:00
Ginger Wong
ce3a47d5f4 add keyoxide logo; adjust icon css to fit non-svg imgs 2021-01-09 16:32:07 -08:00
Mirco T
0ab4e47f0b
#515 switched to SVG icons, #525 added Ko-Fi platform (#528)
* #515 switched to SVG icons, #525 added Ko-Fi platform

* fixes #515, fixes #525 - added color to the SVGs directly

* Removed `color` from config for socialHandles, not required anymore
2021-01-09 12:59:43 -08:00
dependabot[bot]
d34a682332
Bump @videojs/http-streaming from 2.4.1 to 2.4.2 in /build/javascript (#606)
* Bump @videojs/http-streaming from 2.4.1 to 2.4.2 in /build/javascript

Bumps [@videojs/http-streaming](https://github.com/videojs/http-streaming) from 2.4.1 to 2.4.2.
- [Release notes](https://github.com/videojs/http-streaming/releases)
- [Changelog](https://github.com/videojs/http-streaming/blob/main/CHANGELOG.md)
- [Commits](https://github.com/videojs/http-streaming/compare/v2.4.1...v2.4.2)

Signed-off-by: dependabot[bot] <support@github.com>

* Commit updated Javascript packages

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>
2021-01-07 22:48:02 -08:00
dependabot[bot]
174c07ed4b
Bump postcss from 8.2.2 to 8.2.3 in /build/javascript (#607)
* Bump postcss from 8.2.2 to 8.2.3 in /build/javascript

Bumps [postcss](https://github.com/postcss/postcss) from 8.2.2 to 8.2.3.
- [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.2.2...8.2.3)

Signed-off-by: dependabot[bot] <support@github.com>

* Commit updated Javascript packages

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>
2021-01-07 22:46:43 -08:00
Aaron Ogle
caa32fa248
make websocket and stream use constants (#584) 2021-01-04 22:30:18 -08:00
dependabot[bot]
36921bb089
Bump preact from 10.5.8 to 10.5.9 in /build/javascript (#581)
* Bump preact from 10.5.8 to 10.5.9 in /build/javascript

Bumps [preact](https://github.com/preactjs/preact) from 10.5.8 to 10.5.9.
- [Release notes](https://github.com/preactjs/preact/releases)
- [Commits](https://github.com/preactjs/preact/compare/10.5.8...10.5.9)

Signed-off-by: dependabot[bot] <support@github.com>

* Commit updated Javascript packages

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>
2021-01-03 23:38:19 -08:00
Matt Steele
67c3f8ee38
Manually bust m3u8 caches (#570)
Fixes #567
2021-01-02 11:30:29 -08:00
dependabot[bot]
3cf066ec00
Bump preact from 10.5.7 to 10.5.8 in /build/javascript (#553)
* Bump preact from 10.5.7 to 10.5.8 in /build/javascript

Bumps [preact](https://github.com/preactjs/preact) from 10.5.7 to 10.5.8.
- [Release notes](https://github.com/preactjs/preact/releases)
- [Commits](https://github.com/preactjs/preact/compare/10.5.7...10.5.8)

Signed-off-by: dependabot[bot] <support@github.com>

* Commit updated Javascript packages

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>
2020-12-30 22:56:58 -08:00
gingervitis
8a74af202d
Update chat message visibility for moderation (#524)
* update message viz in db

* create admin endpoint to update message visibility

* convert UpdateMessageVisibility api to take in an array of IDs to change visibility on instead

* Support requesting filtered or unfiltered chat messages

* Handle UPDATE chat events on front and backend for toggling messages

* Return entire message with UPDATE events

* Remove the UPDATE message type

* Revert "Remove the UPDATE message type"

This reverts commit 3a83df3d492f7ecf2bab65e845aa2b0365d3a7f6.

* update -> visibility update

* completely remove messages when they turn hidden on VISIBILITY-UPDATEs, and insert them if they turn visible

* Explicitly set visibility

* Fix multi-id sql updates

* increate scroll buffer a bit so chat scrolls when new large messages come in

* Add automated test around chat moderation

* Add new chat admin APIs to api spec

* Commit updated API documentation

Co-authored-by: Gabe Kangas <gabek@real-ity.com>
Co-authored-by: Owncast <owncast@owncast.online>
2020-12-29 13:35:33 -08:00
dependabot[bot]
c78371fc57
Bump @videojs/http-streaming from 2.4.0 to 2.4.1 in /build/javascript (#506)
* Bump @videojs/http-streaming from 2.4.0 to 2.4.1 in /build/javascript

Bumps [@videojs/http-streaming](https://github.com/videojs/http-streaming) from 2.4.0 to 2.4.1.
- [Release notes](https://github.com/videojs/http-streaming/releases)
- [Changelog](https://github.com/videojs/http-streaming/blob/main/CHANGELOG.md)
- [Commits](https://github.com/videojs/http-streaming/compare/v2.4.0...v2.4.1)

Signed-off-by: dependabot[bot] <support@github.com>

* Commit updated Javascript packages

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>
2020-12-22 22:36:46 -08:00
gingervitis
51f344f8e0
misc issue fixes (#496)
* rename social-icons to prevent adblockers from blocking scripts, fix for #491

* hide viewer count when stream is off, fixes #428

* show a notice in document title of num messages if window is blurred, #426

* display indicator when stream has gone onlnie or offline when window is blurred
2020-12-22 17:43:35 -08:00
Ginger Wong
8774551838 wrap tags so they extend off the view, fixes #500 2020-12-22 10:07:11 -08:00
Gabe Kangas
93c3968bc6 Try to assist people with websocket troubleshooting. Closes #468 2020-12-21 22:36:21 -08:00
dependabot[bot]
1de72ce336
Bump @videojs/http-streaming from 2.3.1 to 2.4.0 in /build/javascript (#436)
* Bump @videojs/http-streaming from 2.3.1 to 2.4.0 in /build/javascript

Bumps [@videojs/http-streaming](https://github.com/videojs/http-streaming) from 2.3.1 to 2.4.0.
- [Release notes](https://github.com/videojs/http-streaming/releases)
- [Changelog](https://github.com/videojs/http-streaming/blob/main/CHANGELOG.md)
- [Commits](https://github.com/videojs/http-streaming/compare/v2.3.1...v2.4.0)

Signed-off-by: dependabot[bot] <support@github.com>

* Commit updated Javascript packages

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>
2020-12-14 15:46:38 -08:00
Ginger Wong
121b80143a display username change form better on small screen 2020-12-12 11:38:08 -08:00
Ginger Wong
d4f5162505 prevent header from hiding when keyboard is active on mobile for username change 2020-12-12 11:08:23 -08:00
gingervitis
0062896b7d
chat fixes and optimizations (#431)
* - format messages on didMount instead of didUpdate. will also prevent bad setSTate loops when message is blank;
- convert message.js to functional comp
- prevent extra rerenders in messages and chat with shouldComponentUpdate checks

* revert chat test

* more concise returns;
2020-12-06 21:01:52 -08:00
dependabot[bot]
5b22b22308
Bump @joeattardi/emoji-button from 4.5.1 to 4.6.0 in /build/javascript (#413)
* Bump @joeattardi/emoji-button from 4.5.1 to 4.6.0 in /build/javascript

Bumps [@joeattardi/emoji-button](https://github.com/joeattardi/emoji-button) from 4.5.1 to 4.6.0.
- [Release notes](https://github.com/joeattardi/emoji-button/releases)
- [Commits](https://github.com/joeattardi/emoji-button/compare/v4.5.1...v4.6.0)

Signed-off-by: dependabot[bot] <support@github.com>

* Commit updated Javascript packages

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>
2020-12-04 14:13:27 -08:00
Ginger Wong
26c066b454 overflow hidden on message so word forces break; decrease maxlength of username to 60 chars. fix #417 2020-12-04 00:00:50 -08:00
Ginger Wong
5e41dab92c revert chat test 2020-12-03 22:51:11 -08:00
Ginger Wong
5fe36f37bd fix for #411 2020-12-03 22:43:31 -08:00
Ginger Wong
0bf8cf1dba make emoji search text more legible; break long user name change messages 2020-12-03 22:28:16 -08:00
Gabe Kangas
298d140c28 Connect to websocket in embed player. Closes #361 2020-11-20 18:06:51 -08:00
dependabot[bot]
cc78564c64
Bump @videojs/http-streaming from 2.3.0 to 2.3.1 in /build/javascript (#386)
* Bump @videojs/http-streaming from 2.3.0 to 2.3.1 in /build/javascript

Bumps [@videojs/http-streaming](https://github.com/videojs/http-streaming) from 2.3.0 to 2.3.1.
- [Release notes](https://github.com/videojs/http-streaming/releases)
- [Changelog](https://github.com/videojs/http-streaming/blob/v2.3.1/CHANGELOG.md)
- [Commits](https://github.com/videojs/http-streaming/compare/v2.3.0...v2.3.1)

Signed-off-by: dependabot[bot] <support@github.com>

* Commit updated Javascript packages

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>
2020-11-19 22:45:10 -08:00
Matt Steele
aeb221b32f
Do not highlight usernames inside links (#366)
sweet!

* Do not highlight usernames  inside words

Fixes #156

* Do not search on separate words

* Add accuracy options to markjs
2020-11-17 17:29:03 -08:00
gingervitis
f8d94c2dc2
jump to bottom of list when the DOM observes that a new message node has been added (#369) 2020-11-17 16:59:27 -08:00
gingervitis
01f16aeddf
Simplify Logo requirement from users. (#373)
* Simplify Logo requirement from users.
- Only require 1 logo file, instead of a `small` and `large` one.  Just require `logo`.
- Update frontend sso that primary header logo will ALWAYS be owncast logo.
- User's logo will remain in "user content" area.

* Commit updated API documentation

Co-authored-by: Owncast <owncast@owncast.online>
2020-11-17 15:12:54 -08:00
dependabot[bot]
92fa5b5c8c
Bump @joeattardi/emoji-button from 4.4.0 to 4.5.0 in /build/javascript (#370)
* Bump @joeattardi/emoji-button from 4.4.0 to 4.5.0 in /build/javascript

Bumps [@joeattardi/emoji-button](https://github.com/joeattardi/emoji-button) from 4.4.0 to 4.5.0.
- [Release notes](https://github.com/joeattardi/emoji-button/releases)
- [Commits](https://github.com/joeattardi/emoji-button/compare/v4.4.0...v4.5.0)

Signed-off-by: dependabot[bot] <support@github.com>

* Commit updated Javascript packages

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>
2020-11-16 22:45:13 -08:00
dependabot[bot]
4f4a13540f
Bump @joeattardi/emoji-button from 4.3.0 to 4.4.0 in /build/javascript (#367)
* Bump @joeattardi/emoji-button from 4.3.0 to 4.4.0 in /build/javascript

Bumps [@joeattardi/emoji-button](https://github.com/joeattardi/emoji-button) from 4.3.0 to 4.4.0.
- [Release notes](https://github.com/joeattardi/emoji-button/releases)
- [Commits](https://github.com/joeattardi/emoji-button/compare/v4.3.0...v4.4.0)

Signed-off-by: dependabot[bot] <support@github.com>

* Commit updated Javascript packages

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>
2020-11-16 17:38:12 -08:00
dependabot[bot]
c76b7229a5
Bump preact from 10.5.5 to 10.5.7 in /build/javascript (#360)
* Bump preact from 10.5.5 to 10.5.7 in /build/javascript

Bumps [preact](https://github.com/preactjs/preact) from 10.5.5 to 10.5.7.
- [Release notes](https://github.com/preactjs/preact/releases)
- [Commits](https://github.com/preactjs/preact/compare/10.5.5...10.5.7)

Signed-off-by: dependabot[bot] <support@github.com>

* Commit updated Javascript packages

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>
2020-11-12 22:59:02 -08:00
dependabot[bot]
2517e9944e
Bump @videojs/http-streaming from 2.2.4 to 2.3.0 in /build/javascript (#327)
* Bump @videojs/http-streaming from 2.2.4 to 2.3.0 in /build/javascript

Bumps [@videojs/http-streaming](https://github.com/videojs/http-streaming) from 2.2.4 to 2.3.0.
- [Release notes](https://github.com/videojs/http-streaming/releases)
- [Changelog](https://github.com/videojs/http-streaming/blob/main/CHANGELOG.md)
- [Commits](https://github.com/videojs/http-streaming/compare/v2.2.4...v2.3.0)

Signed-off-by: dependabot[bot] <support@github.com>

* Commit updated Javascript packages

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>
2020-11-05 23:08:53 -08:00
dependabot[bot]
cf6609496c
Bump video.js from 7.8.3 to 7.10.2 in /build/javascript (#326)
* Bump video.js from 7.8.3 to 7.10.2 in /build/javascript

Bumps [video.js](https://github.com/videojs/video.js) from 7.8.3 to 7.10.2.
- [Release notes](https://github.com/videojs/video.js/releases)
- [Changelog](https://github.com/videojs/video.js/blob/main/CHANGELOG.md)
- [Commits](https://github.com/videojs/video.js/compare/v7.8.3...v7.10.2)

Signed-off-by: dependabot[bot] <support@github.com>

* Commit updated Javascript packages

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>
2020-11-05 22:54:56 -08:00
dependabot[bot]
c2f94c4e6c
Bump @videojs/http-streaming from 2.2.0 to 2.2.4 in /build/javascript (#322)
* Bump @videojs/http-streaming from 2.2.0 to 2.2.4 in /build/javascript

Bumps [@videojs/http-streaming](https://github.com/videojs/http-streaming) from 2.2.0 to 2.2.4.
- [Release notes](https://github.com/videojs/http-streaming/releases)
- [Changelog](https://github.com/videojs/http-streaming/blob/v2.2.4/CHANGELOG.md)
- [Commits](https://github.com/videojs/http-streaming/compare/v2.2.0...v2.2.4)

Signed-off-by: dependabot[bot] <support@github.com>

* Commit updated Javascript packages

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>
2020-11-03 22:44:18 -08:00
dependabot[bot]
9ae3f1a267
Bump @joeattardi/emoji-button from 4.2.0 to 4.3.0 in /build/javascript (#319)
* Bump @joeattardi/emoji-button from 4.2.0 to 4.3.0 in /build/javascript

Bumps [@joeattardi/emoji-button](https://github.com/joeattardi/emoji-button) from 4.2.0 to 4.3.0.
- [Release notes](https://github.com/joeattardi/emoji-button/releases)
- [Commits](https://github.com/joeattardi/emoji-button/compare/v4.2.0...v4.3.0)

Signed-off-by: dependabot[bot] <support@github.com>

* Commit updated Javascript packages

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>
2020-11-03 18:48:09 -08:00
imgbot[bot]
103ce8428c
[ImgBot] Optimize images (#313)
*Total -- 3,827.51kb -> 3,399.33kb (11.19%)

/webroot/img/emoji/stayhomeparrot.gif -- 53.85kb -> 7.82kb (85.48%)
/webroot/img/emoji/sadparrot.gif -- 15.42kb -> 3.91kb (74.65%)
/webroot/img/emoji/upvoteparrot.gif -- 10.02kb -> 2.55kb (74.55%)
/webroot/img/emoji/tacoparrot.gif -- 10.91kb -> 2.87kb (73.73%)
/webroot/img/emoji/loveparrot.gif -- 10.15kb -> 2.68kb (73.55%)
/webroot/img/emoji/chewbacca.png -- 34.82kb -> 11.03kb (68.31%)
/webroot/img/emoji/ripparrot.gif -- 23.23kb -> 7.55kb (67.48%)
/webroot/img/emoji/fixparrot.gif -- 10.60kb -> 3.76kb (64.5%)
/webroot/img/airplay.png -- 1.06kb -> 0.39kb (63.53%)
/webroot/img/emoji/darth_vader.png -- 1.16kb -> 0.57kb (51.18%)
/webroot/img/emoji/bluelightsaber.png -- 28.43kb -> 14.05kb (50.56%)
/webroot/img/emoji/death_star.png -- 1.34kb -> 0.70kb (48%)
/webroot/img/emoji/coffeeparrot.gif -- 6.51kb -> 3.41kb (47.53%)
/webroot/img/emoji/cryptoparrot.gif -- 9.23kb -> 5.12kb (44.55%)
/webroot/img/emoji/metalparrot.gif -- 11.54kb -> 6.53kb (43.46%)
/webroot/img/emoji/parrotnotfound.gif -- 34.86kb -> 20.16kb (42.19%)
/webroot/img/emoji/pizzaparrot.gif -- 7.07kb -> 4.11kb (41.84%)
/webroot/img/emoji/wfhparrot.gif -- 26.21kb -> 16.89kb (35.55%)
/webroot/img/smiley.png -- 3.19kb -> 2.18kb (31.72%)
/webroot/img/emoji/dealwithitparrot.gif -- 45.50kb -> 32.52kb (28.53%)
/webroot/img/emoji/mandalorian.png -- 4.38kb -> 3.17kb (27.63%)
/webroot/img/emoji/spyparrot.gif -- 62.57kb -> 45.51kb (27.26%)
/webroot/img/emoji/thanks.png -- 1.07kb -> 0.79kb (26.55%)
/webroot/img/emoji/bells.png -- 6.90kb -> 5.54kb (19.73%)
/webroot/img/emoji/cakeparrot.gif -- 88.45kb -> 71.34kb (19.35%)
/webroot/img/emoji/dadparrot.gif -- 19.06kb -> 15.45kb (18.92%)
/webroot/img/emoji/starwars.png -- 4.53kb -> 3.71kb (18.04%)
/webroot/img/emoji/r2d2.png -- 26.56kb -> 21.86kb (17.68%)
/webroot/img/emoji/Reaper-wtf.png -- 13.03kb -> 10.73kb (17.65%)
/webroot/img/emoji/ac-box.png -- 8.21kb -> 6.78kb (17.39%)
/webroot/img/emoji/ac-tree.png -- 8.38kb -> 7.02kb (16.25%)
/webroot/img/emoji/stormtrooper.png -- 4.90kb -> 4.12kb (16.03%)
/static/logo.png -- 54.96kb -> 46.18kb (15.97%)
/static/logo-900x720.png -- 54.96kb -> 46.18kb (15.97%)
/webroot/img/emoji/ryangoslingparrot.gif -- 6.98kb -> 5.88kb (15.8%)
/webroot/img/emoji/moonwalkingparrot.gif -- 19.27kb -> 16.30kb (15.44%)
/webroot/img/emoji/Reaper-gg.png -- 17.15kb -> 14.60kb (14.88%)
/webroot/img/emoji/Reaper-hype.png -- 17.34kb -> 14.76kb (14.85%)
/webroot/img/emoji/division-gg.png -- 20.83kb -> 17.80kb (14.54%)
/webroot/img/emoji/bluntparrot.gif -- 24.54kb -> 21.04kb (14.23%)
/webroot/img/emoji/tpparrot.gif -- 68.70kb -> 59.15kb (13.91%)
/webroot/img/emoji/division-lol.png -- 18.33kb -> 15.89kb (13.28%)
/webroot/img/emoji/division-hype.png -- 18.99kb -> 16.58kb (12.67%)
/webroot/img/emoji/Reaper-rip.png -- 16.79kb -> 14.70kb (12.47%)
/webroot/img/emoji/porg.png -- 29.23kb -> 25.64kb (12.29%)
/webroot/img/emoji/Reaper-lol.png -- 18.02kb -> 15.85kb (12.01%)
/webroot/img/emoji/empire.png -- 6.16kb -> 5.43kb (11.8%)
/webroot/img/emoji/division-hi.png -- 20.87kb -> 18.42kb (11.7%)
/webroot/img/emoji/darkmodeparrot.gif -- 10.28kb -> 9.09kb (11.56%)
/webroot/img/emoji/palpatine.png -- 7.33kb -> 6.48kb (11.53%)
/webroot/img/emoji/ac-moneytree.png -- 11.49kb -> 10.17kb (11.48%)
/webroot/img/emoji/ac-construction.png -- 8.03kb -> 7.10kb (11.47%)
/webroot/img/emoji/division-rip.png -- 20.36kb -> 18.05kb (11.32%)
/webroot/img/emoji/gabe1.png -- 15.36kb -> 13.64kb (11.17%)
/webroot/img/emoji/ac-turnip.png -- 8.45kb -> 7.54kb (10.8%)
/webroot/img/emoji/jediparrot.gif -- 19.26kb -> 17.21kb (10.6%)
/webroot/img/emoji/rythmicalparrot.gif -- 8.77kb -> 7.84kb (10.58%)
/webroot/img/emoji/sithparrot.gif -- 19.24kb -> 17.21kb (10.57%)
/webroot/img/emoji/division-rage.png -- 24.76kb -> 22.16kb (10.53%)
/webroot/img/emoji/division-omg.png -- 17.42kb -> 15.76kb (9.54%)
/webroot/img/logo.png -- 374.78kb -> 339.80kb (9.33%)
/webroot/img/emoji/ac-shirt.png -- 11.42kb -> 10.36kb (9.25%)
/webroot/img/emoji/doom_mad.gif -- 2.42kb -> 2.20kb (9.14%)
/webroot/img/emoji/originalparrot.gif -- 13.17kb -> 11.97kb (9.11%)
/webroot/img/emoji/division-wtf.png -- 22.52kb -> 20.57kb (8.68%)
/webroot/img/emoji/Reaper-hi.png -- 17.03kb -> 15.62kb (8.28%)
/webroot/img/emoji/transparront.gif -- 13.09kb -> 12.04kb (8.05%)
/webroot/img/emoji/partyparrot.gif -- 14.08kb -> 12.95kb (7.99%)
/webroot/img/emoji/parrot.gif -- 14.66kb -> 13.57kb (7.42%)
/webroot/img/social-icons.gif -- 14.49kb -> 13.46kb (7.16%)
/webroot/img/emoji/shufflepartyparrot.gif -- 64.00kb -> 59.52kb (7%)
/webroot/img/emoji/michaeljacksonparrot.gif -- 30.49kb -> 28.38kb (6.91%)
/webroot/img/emoji/meldparrot.gif -- 45.62kb -> 42.47kb (6.91%)
/webroot/img/emoji/headbangingparrot.gif -- 14.84kb -> 13.88kb (6.47%)
/webroot/img/emoji/blacklightsaber.png -- 11.56kb -> 10.83kb (6.3%)
/webroot/img/emoji/thumbsupparrot.gif -- 19.79kb -> 18.56kb (6.22%)
/webroot/img/emoji/sleepingparrot.gif -- 13.46kb -> 12.64kb (6.12%)
/webroot/img/emoji/ac-fossil.png -- 9.53kb -> 8.96kb (6.01%)
/webroot/img/emoji/matrixparrot.gif -- 2.21kb -> 2.08kb (5.91%)
/webroot/img/emoji/discoparrot.gif -- 17.60kb -> 16.58kb (5.84%)
/webroot/img/emoji/wineparrot.gif -- 29.77kb -> 28.10kb (5.61%)
/webroot/img/emoji/Reaper-rage.png -- 19.04kb -> 17.98kb (5.53%)
/webroot/img/emoji/ac-kkslider.png -- 28.00kb -> 26.46kb (5.48%)
/webroot/img/emoji/twinsparrot.gif -- 20.48kb -> 19.36kb (5.47%)
/webroot/img/emoji/ac-song.png -- 4.98kb -> 4.71kb (5.4%)
/webroot/img/emoji/gothparrot.gif -- 17.06kb -> 16.15kb (5.28%)
/webroot/img/emoji/mustacheparrot.gif -- 16.99kb -> 16.14kb (5.01%)
/webroot/img/emoji/popcornparrot.gif -- 17.74kb -> 16.88kb (4.86%)
/webroot/img/emoji/bb8.png -- 3.79kb -> 3.61kb (4.74%)
/webroot/img/emoji/Reaper-love.png -- 23.07kb -> 22.06kb (4.36%)
/webroot/img/emoji/scienceparrot.gif -- 26.45kb -> 25.31kb (4.32%)
/webroot/img/emoji/ac-mosquito.png -- 4.35kb -> 4.17kb (4.13%)
/webroot/img/emoji/explodyparrot.gif -- 57.42kb -> 55.08kb (4.06%)
/webroot/img/emoji/beerparrot.gif -- 23.17kb -> 22.25kb (3.98%)
/webroot/img/emoji/bobaparrot.gif -- 21.47kb -> 20.64kb (3.86%)
/webroot/img/emoji/copparrot.gif -- 20.94kb -> 20.15kb (3.78%)
/webroot/img/emoji/chillparrot.gif -- 3.75kb -> 3.62kb (3.64%)
/webroot/img/emoji/ac-item-leaf.png -- 8.65kb -> 8.34kb (3.61%)
/webroot/img/emoji/redenvelopeparrot.gif -- 23.17kb -> 22.35kb (3.52%)
/webroot/img/emoji/quadparrot.gif -- 25.43kb -> 24.57kb (3.36%)
/webroot/img/emoji/ac-weeds.png -- 10.45kb -> 10.10kb (3.26%)
/webroot/img/emoji/tiedyeparrot.gif -- 33.46kb -> 32.49kb (2.92%)
/webroot/img/emoji/rotatingparrot.gif -- 7.95kb -> 7.72kb (2.84%)
/webroot/img/favicon/ms-icon-310x310.png -- 37.86kb -> 36.83kb (2.71%)
/webroot/img/emoji/icecreamparrot.gif -- 4.19kb -> 4.08kb (2.68%)
/webroot/img/emoji/christmasparrot.gif -- 22.08kb -> 21.50kb (2.64%)
/webroot/img/emoji/pirateparrot.gif -- 22.53kb -> 21.95kb (2.6%)
/webroot/img/favicon/ms-icon-144x144.png -- 14.08kb -> 13.71kb (2.59%)
/webroot/img/favicon/apple-icon-144x144.png -- 14.08kb -> 13.71kb (2.59%)
/webroot/img/favicon/android-icon-144x144.png -- 14.08kb -> 13.71kb (2.59%)
/webroot/img/emoji/covid19parrot.gif -- 120.40kb -> 117.29kb (2.59%)
/webroot/img/favicon/apple-icon.png -- 18.35kb -> 17.88kb (2.58%)
/webroot/img/favicon/apple-icon-precomposed.png -- 18.35kb -> 17.88kb (2.58%)
/webroot/img/emoji/hamburgerparrot.gif -- 11.41kb -> 11.11kb (2.58%)
/webroot/img/favicon/ms-icon-150x150.png -- 14.52kb -> 14.15kb (2.58%)
/webroot/img/favicon/apple-icon-114x114.png -- 10.29kb -> 10.03kb (2.54%)
/webroot/img/favicon/apple-icon-180x180.png -- 17.99kb -> 17.53kb (2.54%)
/webroot/img/emoji/owncast.png -- 17.99kb -> 17.53kb (2.54%)
/webroot/img/favicon/apple-icon-120x120.png -- 11.07kb -> 10.79kb (2.5%)
/webroot/img/emoji/bananadance.gif -- 31.98kb -> 31.19kb (2.48%)
/webroot/img/emoji/darkbeerparrot.gif -- 5.31kb -> 5.18kb (2.47%)
/webroot/img/emoji/schnitzelparrot.gif -- 33.21kb -> 32.40kb (2.44%)
/webroot/img/favicon/apple-icon-152x152.png -- 14.83kb -> 14.47kb (2.43%)
/webroot/img/emoji/nodeparrot.gif -- 20.77kb -> 20.29kb (2.3%)
/webroot/img/favicon/favicon-96x96.png -- 8.42kb -> 8.23kb (2.28%)
/webroot/img/favicon/android-icon-96x96.png -- 8.42kb -> 8.23kb (2.28%)
/webroot/img/emoji/shipitparrot.gif -- 6.30kb -> 6.15kb (2.26%)
/webroot/img/emoji/headsetparrot.gif -- 31.98kb -> 31.28kb (2.17%)
/webroot/img/emoji/everythingsfineparrot.gif -- 19.57kb -> 19.15kb (2.13%)
/webroot/img/emoji/moonparrot.gif -- 32.88kb -> 32.20kb (2.08%)
/webroot/img/emoji/storm_trooper.gif -- 61.68kb -> 60.49kb (1.93%)
/webroot/img/emoji/nicolas_cage_party.gif -- 23.64kb -> 23.19kb (1.9%)
/webroot/img/favicon/apple-icon-76x76.png -- 6.25kb -> 6.14kb (1.8%)
/webroot/img/favicon/ms-icon-70x70.png -- 5.59kb -> 5.49kb (1.78%)
/webroot/img/emoji/margaritaparrot.gif -- 7.54kb -> 7.40kb (1.78%)
/webroot/img/emoji/skiparrot.gif -- 3.92kb -> 3.85kb (1.77%)
/webroot/img/emoji/pokeparrot.gif -- 20.19kb -> 19.85kb (1.66%)
/webroot/img/emoji/footballparrot.gif -- 42.08kb -> 41.39kb (1.64%)
/webroot/img/favicon/android-icon-192x192.png -- 17.79kb -> 17.50kb (1.62%)
/webroot/img/emoji/flyingmoneyparrot.gif -- 24.19kb -> 23.81kb (1.59%)
/webroot/img/favicon/apple-icon-72x72.png -- 5.86kb -> 5.77kb (1.53%)
/webroot/img/favicon/android-icon-72x72.png -- 5.86kb -> 5.77kb (1.53%)
/webroot/img/emoji/vikingparrot.gif -- 27.87kb -> 27.45kb (1.5%)
/webroot/img/emoji/daftpunkparrot.gif -- 45.15kb -> 44.48kb (1.49%)
/webroot/img/emoji/papalparrot.gif -- 2.37kb -> 2.34kb (1.48%)
/webroot/img/favicon/android-icon-48x48.png -- 3.72kb -> 3.66kb (1.47%)
/webroot/img/emoji/evilparrot.gif -- 22.77kb -> 22.47kb (1.33%)
/webroot/img/favicon/apple-icon-57x57.png -- 4.44kb -> 4.39kb (1.27%)
/webroot/img/emoji/hmmparrot.gif -- 18.09kb -> 17.88kb (1.21%)
/webroot/img/emoji/gentlemanparrot.gif -- 23.98kb -> 23.70kb (1.19%)
/webroot/img/emoji/birthdaypartyparrot.gif -- 31.71kb -> 31.34kb (1.15%)
/webroot/img/favicon/favicon-32x32.png -- 2.36kb -> 2.33kb (1.12%)
/webroot/img/favicon/android-icon-36x36.png -- 2.71kb -> 2.68kb (1.05%)
/webroot/img/emoji/sushiparrot.gif -- 33.04kb -> 32.70kb (1.03%)
/webroot/img/favicon/apple-icon-60x60.png -- 4.70kb -> 4.66kb (1%)
/webroot/img/emoji/laptop_parrot.gif -- 16.63kb -> 16.49kb (0.85%)
/webroot/img/emoji/sintparrot.gif -- 43.68kb -> 43.32kb (0.82%)
/webroot/img/emoji/harrypotterparrot.gif -- 8.21kb -> 8.14kb (0.81%)
/webroot/img/emoji/dabparrot.gif -- 9.25kb -> 9.18kb (0.76%)
/webroot/img/emoji/phparrot.gif -- 38.19kb -> 37.92kb (0.69%)
/webroot/img/emoji/headingparrot.gif -- 21.52kb -> 21.41kb (0.51%)
/webroot/img/emoji/docparrot.gif -- 22.51kb -> 22.42kb (0.42%)
/webroot/img/emoji/illuminatiparrot.gif -- 57.22kb -> 56.99kb (0.39%)
/webroot/img/emoji/opensourceparrot.gif -- 33.38kb -> 33.26kb (0.37%)
/webroot/img/emoji/pumpkinparrot.gif -- 37.52kb -> 37.40kb (0.3%)
/webroot/img/emoji/hypnoparrot.gif -- 46.43kb -> 46.30kb (0.27%)
/webroot/img/emoji/sonic.gif -- 50.32kb -> 50.24kb (0.17%)
/webroot/img/emoji/donutparrot.gif -- 60.86kb -> 60.86kb (0%)

Signed-off-by: ImgBotApp <ImgBotHelp@gmail.com>

Co-authored-by: ImgBotApp <ImgBotHelp@gmail.com>
2020-10-31 13:27:39 -07:00
bgildson
bcf7332675 changed duration format to also represent days 2020-10-29 08:46:54 -03:00
Gabe Kangas
2839a5e236
Custom thumbnail poster component (#281)
* Custom thumbnail poster component

* add opacity transition to thumbnail img

* fix some videoonly styles

* move video styles to video.css

* make component out of image layers; put inline styles into css

* cleanup

* update videoonly ; don't render poster if video player, remove dom modification in player

* revert interval

Co-authored-by: Ginger Wong <omqmail@gmail.com>
2020-10-22 14:14:44 -07:00
Gabe Kangas
72de85bc10
Add Javascript update Github Actions workflow (#275)
* JS update workflow

* Update package.json to see if workflow fires properly

* Commit updated Javascript packages

Co-authored-by: Owncast <owncast@owncast.online>
2020-10-20 18:38:37 -07:00
dependabot[bot]
dab7914eab
Bump @justinribeiro/lite-youtube from 0.9.0 to 0.9.1 in /build/javascript (#273)
* Commit updated Javascript packages

* Bump preact from 10.5.4 to 10.5.5 in /build/javascript (#265)

* Trying a new github workflow to install javascript packages

* Bump tailwindcss from 1.9.2 to 1.9.4 in /build/javascript (#266)

Bumps [tailwindcss](https://github.com/tailwindlabs/tailwindcss) from 1.9.2 to 1.9.4.
- [Release notes](https://github.com/tailwindlabs/tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/tailwindcss/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/tailwindcss/compare/v1.9.2...v1.9.4)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Commit updated Javascript packages

* Bump preact from 10.5.4 to 10.5.5 in /build/javascript

Bumps [preact](https://github.com/preactjs/preact) from 10.5.4 to 10.5.5.
- [Release notes](https://github.com/preactjs/preact/releases)
- [Commits](https://github.com/preactjs/preact/compare/10.5.4...10.5.5)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: Gabe Kangas <gabek@real-ity.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Owncast <owncast@owncast.online>

* Bump @justinribeiro/lite-youtube in /build/javascript

Bumps [@justinribeiro/lite-youtube](https://github.com/justinribeiro/lite-youtube) from 0.9.0 to 0.9.1.
- [Release notes](https://github.com/justinribeiro/lite-youtube/releases)
- [Commits](https://github.com/justinribeiro/lite-youtube/commits)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: Owncast <owncast@owncast.online>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Gabe Kangas <gabek@real-ity.com>
2020-10-20 15:15:56 -07:00
Ginger Wong
03a6eb3cee optmized lines 2020-10-17 19:21:43 -07:00
Gabe Kangas
7dcc89a841 Add system chat message support to messages query 2020-10-16 17:50:00 -07:00
Gabe Kangas
f4815e331c Update chat styling 2020-10-16 17:46:44 -07:00
Gabe Kangas
30c9bbe966 Size logo properly with the user image 2020-10-16 13:53:43 -07:00
Gabe Kangas
f9039acadb Use SVG for default logos. Closes #261 2020-10-16 13:38:30 -07:00
Gabe Kangas
6ea9affce0
HLS video handling/storage/state refactor (#151)
* WIP with new transcoder progress monitor

* A whole different WIP in progress monitoring via local PUTs

* Use an actual hls playlist parser to rewrite master playlist

* Cleanup

* Private vs public path for thumbnail generation

* Allow each storage provider to make decisions of how to store different types of files

* Simplify inbound file writes

* Revert

* Split out set stream as connected/disconnected state methods

* Update videojs

* Add comment about the hls handler

* Rework of the offline stream state.  For #85

* Delete old unreferenced video segment files from disk

* Cleanup all segments and revert to a completely offline state after 5min

* Stop thumbnail generation on stream stop. Copy logo to thumbnail on cleanup.

* Update transcoder test

* Add comment

* Return http 200 on success to transcoder. Tweak how files are written to disk

* Force pixel color format in transcoder

* Add debugging info for S3 transfers. Add default ACL.

* Fix cleanup timer

* Reset session stats when we cleanup the session.

* Put log file back

* Update test

* File should not be a part of this commit

* Add centralized shared performance timer for use anywhere

* Post-rebase cleanup

* Support returning nil from storage provider save

* Updates to reflect package changes + other updates in master

* Fix storage providers being overwritten

* Do not return pointer in save. Support cache headers with S3 providers

* Split out videojs + vhs and point to specific working versions of them

* Bump vjs and vhs versions

* Fix test

* Remove unused

* Update upload warning message

* No longer valid comment

* Pin videojs and vhs versions
2020-10-14 14:07:38 -07:00
gingervitis
57f2e4b567
Merge pull request #241 from jeyemwey/jv-119-remove-avatars
Remove Chat Avatars
Thanks for the cleanup! Looks great.
2020-10-14 11:16:58 -07:00
Gabe Kangas
64a85e68aa
Update extra page content API (#240)
* Mark change stream key api as pre-release

* Add API for changing extra page content. Renanme usercontent -> pagecontent. closes #236
2020-10-14 09:38:48 -07:00
Jannik Volkland
146e6d342c Remove avatars from frontend 2020-10-14 13:33:55 +02:00
Gabe Kangas
d7c3991b59
Render and sanitize chat messages server-side. (#237)
* Render and sanitize chat messages server-side. Closes #235

* Render content.md server-side and return it in the client config

* Remove showdown from web project

* Update api spec

* Move example user content file
2020-10-13 16:45:52 -07:00
gingervitis
25ef2fc66e
Merge pull request #231 from owncast/gek/remove-status-bar-values
Remove additional viewer counts from status bar.
2020-10-08 21:44:27 -07:00
Gabe Kangas
250dcf1d75 make logo fit size of user image avatar circle. closes #230 2020-10-08 21:15:46 -07:00
Gabe Kangas
ce14e0d0a7 Remove additional viewer counts from status bar. Closes #155 2020-10-08 16:39:11 -07:00
Jannik Volkland
d4b800c9bb Merge branch 'fix-issue-202' 2020-10-07 08:46:09 +02:00
Jannik Volkland
813884ef21 fix: Use Kebab-Case, and resolve Merge Conflict 2020-10-07 08:42:46 +02:00
gingervitis
1eb7c1985b
Merge pull request #228 from SoldierCorp/save-volume-settings
ADD: Save volume settings in localstorage
2020-10-06 22:54:57 -07:00
Edgardo Ramírez
38743a9608 UPDATE: Set volume on load 2020-10-06 19:01:59 -05:00
Edgardo Ramírez
f0df543def ADD: Handle muted state to update the volume settings 2020-10-06 15:51:30 -05:00
gingervitis
a36891c465
Merge pull request #226 from Pranav2612000/chat_count_fix
fix: prevents messages ending with spaces to exceed the msg limit
2020-10-06 13:46:07 -07:00
Edgardo Ramírez
ac1860d325 UPDATE: Use helpers functions for saving the volume settings 2020-10-06 15:46:07 -05:00
Edgardo Ramírez
66db710761 FIX: Set volume only if it exists in localstorage 2020-10-06 15:03:15 -05:00
Edgardo Ramírez
e2200f09d7 Merge remote-tracking branch 'upstream/master' into save-volume-settings 2020-10-06 14:55:56 -05:00
Edgardo Ramírez
84b81e440d ADD: Save volume settings in localstorage 2020-10-06 14:53:08 -05:00
Gabe Kangas
dfc03bc027 Web modules were getting hit by .gitignore. Fixed 2020-10-05 08:43:38 -07:00
Gabe Kangas
5d530ca5a6 Missing showdown module import in app 2020-10-05 00:05:35 -07:00
Pranav
7ac22eb889 fix: prevents messages ending with spaces to exceed the msg limit 2020-10-05 11:12:33 +05:30
Gabe Kangas
27a4c8c895
Move all remote dependencies to be local (#220)
* Experiment with javascript bundling

* Experiment with snowpack. Making progress

* Success!  Uses local js modules and assets and no cdns

* Missing local css
2020-10-04 18:43:31 -07:00
Jannik
4c02b6eea1 Move socialIconsList to its own component 2020-10-04 20:48:44 +02:00
gingervitis
e7f39a0113
Merge pull request #213 from ahmadkarlam/add-title-chat
Add timestamp to title chat
2020-10-04 01:15:45 -07:00
Ahmad Karlam
29ef90e384 fix: check if date is invalid 2020-10-04 10:58:02 +07:00
Ahmad Karlam
8c380f118a refactor: declare format timestamp as variable for consistency 2020-10-04 10:57:45 +07:00
Ahmad Karlam
1c03e83c31 Typo 2020-10-04 09:08:40 +07:00