Commit Graph

8230 Commits

Author SHA1 Message Date
Ramon Souza
da14f07d00 fiz sidebar resize rtl - smart layout 2021-07-27 08:38:53 -03:00
Ramon Souza
ee56199607 fix fullscreen camera legacy layout 2021-07-27 08:17:26 -03:00
Ramon Souza
d3ed4d6ea6 rtl smart layout 2021-07-26 17:45:03 -03:00
hiroshisuga
5477ac7bb2
this.recognition can be null 2021-07-26 23:12:10 +09:00
Ramon Souza
2de8e1e84a add isRTL value to context 2021-07-26 11:03:31 -03:00
Ramon Souza
5679416d2f fix accessible menu in languages other than english 2021-07-26 08:28:48 -03:00
Joao Siebel
9b31ded342 Fix auto assigned presenter when previous one left the meeting. close #12679 2021-07-23 15:50:51 -03:00
Ramon Souza
ebe65ecef0 set slide size when changing presentation - new lm 2021-07-23 15:33:32 -03:00
Anton Georgiev
4806e71fe8
ConnectionStatus - log info on 'warning'
Until now we only logged for `normal`, `danger` and `critical` leading to some ambiguity in log analysis
2021-07-23 14:18:23 -04:00
Anton Georgiev
a37843d2a7 Merge branch 'v2.3.x-release' of github.com:bigbluebutton/bigbluebutton into merge238-into-24 2021-07-23 17:09:18 +00:00
Anton Georgiev
1a46c1b2c0
Merge pull request #12495 from schiesslm/virtual_background
Virtual background
2021-07-23 12:56:18 -04:00
Ramon Souza
d9a100110e add webcam margin - smart layout 2021-07-23 09:53:01 -03:00
prlanzarin
168f66310e fix(listen-only): avoid leaving a dangling HTMLMediaElement in paused state 2021-07-23 02:35:47 +00:00
prlanzarin
e20fe6d4ad fix(screenshare): avoid leaving a dangling HTMLMediaElement in paused state 2021-07-23 02:27:02 +00:00
prlanzarin
8b48de561b fix(webcams): avoid leaving dangling HTMLMediaElements in paused state
Should fix an issue with the recent Chrome 92 intervention that limits
the number of concurrent WebMediaPlayers (an inner element of
HTMLMediaElements) to 75/40.

Webcam video elements were being left dangling in paused state despite
the elements themselves being cleaned up from the component. That
generated a skewed accounting of WebMediaPlayers in the session.
2021-07-23 02:24:47 +00:00
Ramon Souza
0f2ae0425c fix sidebar content when presentation is hidden 2021-07-22 17:37:46 -03:00
Ramon Souza
3065597635 fix cameras when presentation is hidden - custom layout 2021-07-22 17:31:19 -03:00
prlanzarin
9071ba8bc4 refactor(virtual-backgrounds): re-organize virtual background code
Changes (maybe not a complete list):
  - Disable virtualbgs by default
  - Move the virtualbg selector in video-preview to the side below the
profile selection
  - Restore old video-preview sizes
  - Add a wrapper class for MediaStreams (BBBVideoStream)
  - Centralize virtualbg services and business logic code into BBBVideoStream
  - Refactor and centralize virtualbg constant fetching
  - Refactor and centralize virtualbg config fetching
  - Organize virtualbg type definitions
  - Remove added states in video-provider to prevent further bloat
  - Remove added states in video-preview to prevent further bloat
  - Lock virtual bg switching while video-preview itself is locked
  - Add proper virtualbg error surfacing via toasts
  - Refactor iOS availability detection to use centralized UA checker
  - Avoid calling gUM when toggling virtualbgs on/off
  - Make virtualbg video-list-item action a toggle instead of a
state-aware action
  - Make virtualbg switching work in video-preview for cameras that are
already shared. Especially useful when there are multiple source
cameras, and will be important in the near future
  - Add Derivative Work notices in files that are partially copied from
jitsi-meet
  - Simplify track replacing in video-provider
  - Split video-preview UI code for virtualbgs into a separate functional component
2021-07-22 18:53:42 +00:00
Anton Georgiev
57dfd6c524
Merge pull request #12542 from gustavotrott/activity-report
Dashboard with meeting activities
2021-07-22 14:27:48 -04:00
Ramon Souza
0a2a6b13bb Merge remote-tracking branch 'upstream/develop' into actionsbar-new-lm 2021-07-22 14:44:37 -03:00
Anton Georgiev
27e639cf8d
Merge pull request #12808 from ramonlsouza/pr-12805-fix
fix: persist settings layout after refresh
2021-07-22 13:33:28 -04:00
Anton Georgiev
1bd98ad03c
Merge pull request #12804 from ramonlsouza/hidden-chat-on-resize
fix: hidden chat on resize
2021-07-22 13:29:46 -04:00
Ramon Souza
d0d35cab17 persist settings layout after refresh 2021-07-22 14:28:42 -03:00
Ramon Souza
27c5c9e3e7 isolate actions bar height calculation 2021-07-22 11:42:45 -03:00
Gustavo Trott
e4ef1582f2
Merge branch 'develop' into activity-report 2021-07-22 11:33:47 -03:00
Gustavo Trott
3c6155a73e Creates config activityReportTracking to enable Activity Report 2021-07-22 11:09:44 -03:00
Ramon Souza
2ef6d30a01 fix actions bar size calculation - new layouts 2021-07-22 11:04:38 -03:00
Mario Jr
2f75f6107e fix(audio): prevent false positive alerts of 1005 error
After reconnecting (with 1007 or 1005), user may gets 1005 when meeting
is ended by moderator.
2021-07-22 09:28:14 -03:00
Ramon Souza
28ed62a128 remove default layout from settings file 2021-07-22 08:20:53 -03:00
Anton Georgiev
1abedcc698
Merge pull request #12789 from jfsiebel/implement-default-layout-config
Allow default layout config in bbb-web
2021-07-21 16:11:08 -04:00
Bartu Bazna
9f791a8892 Squashed virtual background commits 2021-07-21 20:00:19 +00:00
Gustavo Trott
1267bfd880 Moves ActivityReport icon from navbar to part of the gear icon 2021-07-21 17:00:08 -03:00
Ramon Souza
43e42d98cb display sidebar content when switching device to tablet 2021-07-21 15:34:34 -03:00
Ramon Souza
945bed95d3 fix chat stuck on resize 2021-07-21 15:12:05 -03:00
Gustavo Trott
b0f9835ffd Merge branch 'develop' into activity-report 2021-07-21 14:20:27 -03:00
Anton Georgiev
6f84f35357
Merge pull request #12610 from Tainan404/fix-chat-copy
Fix export messages throwing a error
2021-07-21 12:58:02 -04:00
Anton Georgiev
c63fa957ca
Reworded / adjusted typo 2021-07-21 12:57:49 -04:00
Anton Georgiev
cd0232da61
Merge pull request #12801 from ramonlsouza/screenshare-external-video
fix: sharing external video does not stop screenshare
2021-07-21 12:43:31 -04:00
Tainan Felipe
450d44e83c Add inline comment 2021-07-21 13:41:56 -03:00
Anton Georgiev
79485a2950
Merge pull request #12181 from lfzawacki/v2.2.x-external-video
Overlay for external video with volume controller and reload button
2021-07-21 12:07:06 -04:00
Ramon Souza
116da0c6a8 move screenshare notifications to screenshare component 2021-07-21 10:38:48 -03:00
Ramon Souza
0efe6da994 prevents screenshare + external video 2021-07-21 10:19:47 -03:00
Anton Georgiev
7ef3fa0d63
Merge pull request #12745 from KDSBrowne/BBB-accessible-menu
Add a more accessible dropdown menu
2021-07-21 08:59:08 -04:00
Anton Georgiev
4baf67c24d
Merge pull request #12796 from ramonlsouza/fix-start-closed-chat
fix: start closed chat option does not work
2021-07-20 16:25:35 -04:00
Anton Georgiev
a6a9e807d9
Merge pull request #12749 from Tainan404/postpone-message-sync
Postpone chat message sync
2021-07-20 16:01:34 -04:00
KDSBrowne
8e317c24ec fix console error | style warnings 2021-07-20 17:48:08 +00:00
Anton Georgiev
472c9a6107 Merge branch 'v2.3.x-release' of github.com:bigbluebutton/bigbluebutton into 237-into-develop 2021-07-20 15:21:21 +00:00
Ramon Souza
f7c4171a75 make poll, notes and chat panel use the same min and max width - legacy layout 2021-07-20 11:42:15 -03:00
Mario Jr
6db69c39d8 fix(audio): prevent duplicated error logging
We now let audio-manager log errors, using the specified error code.
These errors are still logged in bridge layer, but as a warning.
This commit doens't change error codes behavior, they are still being
logged as errors and with the same code numbers.
2021-07-20 11:10:04 -03:00
Ramon Souza
92edd08448 fix start closed chat option 2021-07-20 10:19:48 -03:00
hiroshisuga
42016bfb38
Stop dictation when swapping languages 2021-07-20 21:07:32 +09:00
hiroshisuga
4ec9b019f9
Initialize the start/stop dictation button when speech recognition stops after some silence (#12783)
* Update component.jsx
* Update en.json

the speech recognition can stop due to the incompatibility of browser as well.
2021-07-19 16:28:13 -04:00
Anton Georgiev
218db31ca2
Merge pull request #12787 from ramonlsouza/fs-cameras-focus-presentation
fix: fullscreen cameras - focus on presentation
2021-07-19 16:25:55 -04:00
Anton Georgiev
84324e0eff
Merge pull request #12781 from ramonlsouza/hide-presentation-new-lm
feat: Webcam area size change when presentation is hidden - new layouts
2021-07-19 16:25:38 -04:00
Anton Georgiev
bbfa1cc868
Merge pull request #12780 from ramonlsouza/issue-12622
fix: close breakout creation modal if user loses moderator status
2021-07-19 16:25:20 -04:00
Ramon Souza
8d1b4a9a7b fix user leave 2021-07-19 14:34:00 -03:00
Ramon Souza
1be7fd28ce Merge remote-tracking branch 'upstream/v2.3.x-release' into issue-12665 2021-07-19 14:30:45 -03:00
Anton Georgiev
0add74637c
Merge pull request #12778 from mariogasparoni/add-ice-gathering-time-extra-info
fix(audio): add secondsToGatherIce as extraInfo in server log
2021-07-19 13:17:04 -04:00
Anton Georgiev
ceaa61d4ee
Merge pull request #12741 from ramonlsouza/issue-12658
fix: Unlocking specific user doesn't unlock all options to him
2021-07-19 13:15:28 -04:00
Anton Georgiev
d2f76ca200
Merge pull request #12740 from ramonlsouza/issue-12567
fix: left/right webcam drag & drop for RTL languages
2021-07-19 13:13:51 -04:00
Anton Georgiev
3b8f1b3202
Merge pull request #12773 from ramonlsouza/issue-12689
Get locale value from settings in export usernames
2021-07-19 13:12:35 -04:00
Gustavo Trott
cbd774b2a0 Make ActivityReport button shows when user is promoted to moderator 2021-07-19 14:02:32 -03:00
Joao Siebel
8462465a5f Allow default layout config in bbb-web. close #12668 2021-07-19 11:02:58 -03:00
Ramon Souza
355f1f33c8 fix cameras fullscreen - focus on presentation 2021-07-19 10:31:38 -03:00
KDSBrowne
4e2c8ea116 update virtulizedScrollableList hover style 2021-07-18 17:32:23 +00:00
KDSBrowne
5a106b330f fix userlist keyboard access | update styles 2021-07-18 17:30:27 +00:00
Ramon Souza
c689c9ad04 do not display hide presentation button in presentation focus layout 2021-07-16 16:54:23 -03:00
Ramon Souza
791a4e773a make camera use 100% available space in smart and custom when swapLayout 2021-07-16 16:39:58 -03:00
Ramon Souza
43eda61beb set presentation isOpen on toggleSwapLayout 2021-07-16 15:48:48 -03:00
Ramon Souza
c29bcad680 close breakout creation modal if user loses moderator status 2021-07-16 14:37:03 -03:00
Ramon Souza
d024ed0bad close breakout panel when breakouts end 2021-07-16 11:42:31 -03:00
Mario Jr
431a6c7c3b chore(audio): add secondsToGatherIce as extraInfo in server log 2021-07-16 11:16:24 -03:00
Gustavo Trott
c70967e7f1 Adds UI buttons to moderators open Activity Report 2021-07-15 21:23:16 -03:00
Joao Siebel
6906b927af Fix race condition that caused the client to get stuck with the three dots on join 2021-07-15 14:01:21 -03:00
Mario Jr
f5713869bf fix(audio): correct log the time needed for ice gathering 2021-07-15 11:15:53 -03:00
Tiago Jacobs
35b5077744
Update adapter.jsx 2021-07-14 15:38:05 -03:00
Ramon Souza
eef6a7ec5b get locale from settings in export usernames 2021-07-14 15:19:41 -03:00
Anton Georgiev
a7c2f6bda6
Merge pull request #12769 from ramonlsouza/fix-empty-panel
fix: empty sidebar panel when switching layouts
2021-07-14 13:19:56 -04:00
Anton Georgiev
a432c365fc
Merge pull request #12758 from mariogasparoni/fix-8175
fix(audio): ending breakouts interrupts echo test
2021-07-14 13:04:43 -04:00
Ramon Souza
384fac8392 fix empty panel when switching layouts 2021-07-14 10:53:10 -03:00
Mario Jr
9dbfc41dac Merge branch 'v2.3.x-release' into develop 2021-07-14 09:29:38 -03:00
Anton Georgiev
9bd68b8152
Merge pull request #12766 from ramonlsouza/fix-sidebar-zindex
fix: sidebar z-index - new layouts
2021-07-13 15:36:19 -04:00
Ramon Souza
5ef496e2b9 fix sidebar z-index - new lm 2021-07-13 16:23:34 -03:00
Ramon Souza
219ecd368e keep webcam resize in storage 2021-07-13 13:52:20 -03:00
Gustavo Trott
45d4c310c2 Merge branch 'develop' into activity-report 2021-07-13 11:12:45 -03:00
Anton Georgiev
5e1fe55731
Merge pull request #12760 from ramonlsouza/change-default-layout
Set new Layout Manager as default
2021-07-13 09:06:32 -04:00
Anton Georgiev
6630b6812f
Merge pull request #12757 from vitormateusalmeida/layoutManagerNew
Add resizable and draggable in cameras dock
2021-07-13 09:05:51 -04:00
Vitor Mateus De Almeida
9e055265c3 fix resizable wrapper 2021-07-13 09:56:39 -03:00
Vitor Mateus De Almeida
6cfd7ee958 Clean code and add some missing css 2021-07-13 09:30:10 -03:00
Ramon Souza
604ae9cf6f change default layout to smart 2021-07-13 09:25:53 -03:00
Vitor Mateus De Almeida
f0145e001e Add resizable and draggable in cameras dock
Remove settings and change resizable context data

Add resizable draggable drop areas in cameras dock
2021-07-13 04:25:03 -03:00
Mario Jr
a86bd80549 Merge branch 'v2.3.x-release' into fix-8175 2021-07-12 18:01:04 -03:00
Gustavo Trott
3052266e94 Removes duplicated code 2021-07-12 16:46:26 -03:00
Gustavo Trott
5c602fd2b0
Merge branch 'develop' into breakoutrooms-set-name 2021-07-12 16:31:38 -03:00
Gustavo Trott
03d81fb987 Style improvements to avoid long breakout names break layout 2021-07-12 16:05:52 -03:00
Gustavo Trott
b81b669c92 Style improvements to avoid long breakout names break layout 2021-07-12 16:03:27 -03:00
Anton Georgiev
36595c7375
Merge pull request #12729 from ramonlsouza/fullscreen-camera
feat: fullscreen cameras and screenshare in new Layout Manager
2021-07-12 14:33:35 -04:00
Ramon Souza
1e57911279 Merge remote-tracking branch 'upstream/develop' into banner-new-lm 2021-07-12 13:29:51 -03:00
Ramon Souza
3634586dd1 add notifications bar to new layout manager 2021-07-12 13:24:53 -03:00
Anton Georgiev
d480a8ea6b
Merge pull request #12753 from ramonlsouza/add-missing-components-new-lm
add missing components in new layout manager
2021-07-12 12:01:59 -04:00
Pedro Beschorner Marin
e6c43f282a fix(screenshare): fullscreen status from state
isFullscreen is a state property and is being fetched from the component
props. I think this is something I messed up while resolving a cherry-pick
conflict.
2021-07-12 11:01:23 -03:00
Anton Georgiev
3cd144ed84
Merge pull request #12754 from pedrobmarin/f-s-cli
feat(screenshare): change loading icon
2021-07-12 09:35:14 -04:00
Anton Georgiev
5fcbe5f477
Merge pull request #12734 from mariogasparoni/fix-12018
fix(audio): audio modal inactive after connection error
2021-07-12 09:33:54 -04:00
Ramon Souza
fc33c02a2a add banner-bar to new layout manager 2021-07-12 10:22:26 -03:00
Anton Georgiev
37c6175f09
Merge pull request #12704 from jfsiebel/hide-poll-response-viewers
Filter anonymous poll data for presenter, moderators and viewers
2021-07-12 08:51:29 -04:00
Max Franke
5d0ae8ff04 feat(screenshare): change loading icon
Change the previous loading spinner to the new loading dots, ensuring
a bit more UI consistency.
Add the "unhealthy stream" filter to make the dots a little more visible and
remove the loading spinner.
2021-07-09 14:51:38 -03:00
Ramon Souza
cb83ed7cdd add missing components in new layout manager 2021-07-09 14:20:04 -03:00
Mario Jr
4e1eb7318d chore(audio): add audio join time in extraInfo of server log 2021-07-09 13:43:43 -03:00
Pedro Beschorner Marin
72f99d5bdf
Merge pull request #12744 from ramonlsouza/fix-presenter-change-poll-panel
fix: close poll panel if user is no longer the presenter
2021-07-08 14:52:47 -03:00
Pedro Beschorner Marin
02008c460f
Merge pull request #12735 from prlanzarin/u24-gum-store-fl
fix(webcams): avoid leaking media streams on webcam profile changes
2021-07-08 14:50:08 -03:00
Pedro Beschorner Marin
cdb22e1f71
Merge pull request #12747 from prlanzarin/u24-aerodyn
fix(webcams): add error feedback when media is ejected by the server
2021-07-08 14:28:24 -03:00
Tainan Felipe
f77199bdbf Make message sync start after the subscription be ready 2021-07-08 14:08:32 -03:00
Ramon Souza
a7c545ff1f refactor reason -> ejectedReason 2021-07-08 13:09:25 -03:00
prlanzarin
15bd0b6087 fix(webcams): add error feedback when media is ejected by the server
Closes #12732
2021-07-08 15:10:22 +00:00
Ramon Souza
8fe8a0ac6b display endWhenNoModerator message 2021-07-08 11:51:00 -03:00
KDSBrowne
e8d951121b replace map with forEach 2021-07-08 12:08:02 +00:00
KDSBrowne
afe0bfe5cc Add accessible dropdown menu component 2021-07-08 11:41:03 +00:00
Ramon Souza
268608a9ab close poll panel if user is no longer the presenter 2021-07-07 17:15:07 -03:00
prlanzarin
67fca54d76 fix(screenshare): fix client crash on presenter change
Scenario: presenter`s client could crash when the presenter changed while they were sharing their screen

That is due to a race condition on the stop procedure in the bridge: two stops can be triggered (one from the server-side websocket tear off and another from the client itself detecting the presenter change)

That could create a scenario where the broker was cleaned in one stop procedure after the second had checked its availability, causing an attribute access of a null member
2021-07-07 19:29:17 +00:00
prlanzarin
e5aec7beab refactor(screenshare): append error message to failure log 2021-07-07 19:29:11 +00:00
Ramon Souza
2ede8b898f fix unlock label and dropdown option in userlist 2021-07-07 15:30:41 -03:00
Ramon Souza
a281aeb11d fix unlocked viewer webcam 2021-07-07 14:00:47 -03:00
Ramon Souza
329a8b93fe fix unlocked viewer shared notes 2021-07-07 13:22:54 -03:00
Ramon Souza
f2cfa659c0 fix left/right webcam drag & drop for RTL languages 2021-07-07 10:32:40 -03:00
prlanzarin
0e6a900635 fix(webcams): avoid leaking media streams on webcam profile changes
Fix regression introduced by commit 0ddf02e
2021-07-07 02:54:19 +00:00
Anton Georgiev
e0259d6995
Merge pull request #12720 from hiroshisuga/patch-39
Fixes poll option misalignment in mobile device
2021-07-06 17:02:39 -04:00
Anton Georgiev
6cf863ff3d
Merge pull request #12604 from KDSBrowne/bbb-api-unit-tests
test: Add Unit Tests For Meteor Polls API
2021-07-06 16:56:46 -04:00
Anton Georgiev
ef4c756a1e
Merge pull request #12733 from antobinary/merge-2.3.5-into-develop
chore: Merge 2.3.5, 2.3.6 into develop
2021-07-06 16:04:37 -04:00
Mario Jr
5d5370b004 Merge branch 'v2.3.x-release' into fix-12018 2021-07-06 16:45:27 -03:00
Anton Georgiev
1fd6246336 Merge branch 'v2.3.x-release' of github.com:bigbluebutton/bigbluebutton into merge-2.3.5-into-develop 2021-07-06 19:37:30 +00:00
Anton Georgiev
b9cc633286 Merge branch 'v2.3.x-release' of github.com:bigbluebutton/bigbluebutton into merge-2.3.5-into-develop 2021-07-06 19:36:19 +00:00
Ramon Souza
07ab688a4a fullscreen screenshare 2021-07-06 16:27:28 -03:00
Ramon Souza
166b738683 remove cameradock fullscreen 2021-07-06 14:45:27 -03:00
Anton Georgiev
29cd607ecd
Merge pull request #12694 from mariogasparoni/feat-add-device-button-selector
feat(audio): add a new button for selecting audio device
2021-07-06 12:04:18 -04:00
Mario Jr
06c7edbb0b fix(audio): prevent mute notification to be triggered when mic is locked
When mic is locked, user is not able to talk so it doesn't make sense
to alert the user about unmuting (mute button is also disabled when mic
is locked).

Closes #12048
2021-07-06 11:59:42 -03:00
Ramon Souza
21eea858c1 code format 2021-07-06 11:17:00 -03:00
Ramon Souza
8bf637129b fullscreen camera 2021-07-06 11:05:15 -03:00
Mario Jr
bd610c2fd5 fix(audio): mic not working when skipCheck=true
Complements #12705
2021-07-06 10:27:48 -03:00
Mario Jr
e9ca202767 fix(audio): fix icon for device list selector
This complements #12694, which was initially made using an
existent font (which may vary it's size depending on OS/browser)

Added a new specific icon for the device icon selector

Thanks to @ramonlsouza who found this problem
2021-07-05 17:26:07 -03:00
Joao Siebel
2cda889d51 Previne loggedOut property to be undefined. close #12656 2021-07-05 16:04:26 -03:00
Pedro Beschorner Marin
6264caccd9
Merge pull request #12700 from prlanzarin/u24-gum-store
Webcams: reduce number of gUM calls, refactor in video-preview, fix #9053
2021-07-05 14:13:36 -03:00
Ramon Souza
df2b7958f3 adapt fullscreen all layouts 2021-07-05 13:58:27 -03:00
Ramon Souza
408b596ed0 remove fullscreen from presentation (context) and add generic fullscreen information 2021-07-05 13:52:25 -03:00
prlanzarin
d8dae1ec90 fix(webcams): handle Firefox video stream cleanup edge case
Firefox doesnt fire the ended evt/onended callback for live video mediastreamtracks. That caused the stream storage to not run the cleanup procedure in some scenarios

Manually emit the ended event which works with the onended callback when a track is stopped
2021-07-05 16:26:24 +00:00
prlanzarin
60dd10510c fix(webcams): add fallback labels for devices in video-preview
In cases where fingerprinting protection is so adamant that we are
unable to get device labels

Fixes #9053
2021-07-05 16:03:30 +00:00
prlanzarin
0ddf02e954 refactor(webcams): improve skipVideoPreview handling, add error handling to it
Also organized video-preview a little better overall
2021-07-05 16:03:15 +00:00
hiroshisuga
9fe8a68e98
Update styles.scss 2021-07-05 23:42:45 +09:00
Ramon Souza
2335105030 force webcam position: top for mobile devices 2021-07-05 09:56:09 -03:00
Ramon Souza
3aa4855a6b fix client crash when viewers is ejected and userlist is hidden 2021-07-05 08:20:27 -03:00
Anton Georgiev
0150862eb1
Merge pull request #12705 from mariogasparoni/feat-trickle-ice-mic
feat(audio): use kurento's trickle-ice to improve mic negotiation
2021-07-02 17:44:05 -04:00