openvibers/openvibe.live Commits
Navbar on a phone: the site switcher stays beside the logo (balance chips fold with Shared 4.16.0) (#412)
Changes
@@@ -11,8 +11,6 @@"/chat","/search?q=game","/@iZoR_One",-- "/vod/5717",-- "/clip/441","/pastes","/docs"],@@@ -83,12 +81,12 @@".chat-badge",".chat-badge i",".chat-badge-admin",-- ".chat-badge-streamer",".chat-badge[data-tip]::after",".chat-badge[data-tip]::before",".chat-crossfeed-badge",".chat-crossfeed-global",".chat-crossfeed-stream",++ ".chat-emote",".chat-header",".chat-header-actions",".chat-input-area",@@@ -108,13 +106,6 @@".chat-nickels-float .rewards-coin-balance",".chat-relay-badge",".chat-relay-badge i",-- ".chat-replay-empty p",-- ".chat-replay-header h4",-- ".chat-replay-messages",-- ".chat-reply-header",-- ".chat-reply-header i",-- ".chat-reply-snippet",-- ".chat-reply-user",".chat-send-btn",".chat-settings-btn",".chat-sidebar",@@@ -136,22 +127,6 @@".chat-tts-toggle",".chat-tts-toggle.tts-active",".chat-users-panel",-- ".clip-chat-avatar",-- ".clip-chat-card",-- ".clip-chat-cta",-- ".clip-chat-cta i",-- ".clip-chat-dur",-- ".clip-chat-info",-- ".clip-chat-label",-- ".clip-chat-meta",-- ".clip-chat-meta > span",-- ".clip-chat-play",-- ".clip-chat-thumb",-- ".clip-chat-thumb img",-- ".clip-chat-title",-- ".clip-modal-overlay",-- ".comments-empty",-- ".comments-header h3",".container",".content-container",".cta-ambient",@@@ -174,9 +149,6 @@".digest-stat b",".digest-stat i",".digest-title i",-- ".dvr-progress-bar",-- ".dvr-progress-fill::after",-- ".dvr-progress-wrap",".egg-key",".egg-key--letter",".emote-picker",@@@ -218,10 +190,12 @@".hero-float",".hero-float img",".hero-float--clip .hero-float-badge",++ ".hero-float--moment .hero-float-badge",".hero-float--paste .hero-float-badge",".hero-float--vod .hero-float-badge",".hero-float-body",".hero-float-inner",++ ".hero-float-text",".hero-golive-note",".hero-golive-note a",".hero-golive-note i",@@@ -285,7 +259,6 @@".home-paste-type",".live-dot",".live-stream-tabs",-- ".media-transcript-toggle > i:first-child",".mobile-chat-badge",".mobile-chat-close",".mobile-chat-toggle",@@@ -328,6 +301,7 @@".ov-rail",".ov-rail > .moments-row",".ov-rail-bar",++ ".ov-rail-bar > span",".ov-rail-bar[hidden]",".ov-rail-btn",".ov-rail-btn:disabled",@@@ -335,6 +309,7 @@".ov-rail-prev",".ov-rail-track",".ov-rail-track > *",++ ".ov-rail.is-scrollable > .ov-rail-track",".ov-rail:not(.is-end) > .ov-rail-track",".ov-rail:not(.is-scrollable) > .ov-rail-btn",".ov-rail:not(.is-start) > .ov-rail-track",@@@ -353,8 +328,6 @@".pc-tools-row > button.btn-openvibe-coins-mini",".pc-tools-row > button.chat-nickels-float",".pc-tools-row > button.chat-tts-toggle.tts-active",-- ".protocol-badge",-- ".protocol-rtmp",".pulse-act i",".pulse-grid",".pulse-kicker i",@@@ -399,34 +372,11 @@".streamer-group-stream-thumb",".toast-container",".tour",-- ".ts-seg",-- ".ts-time",-- ".vc-btn",".vc-channel-body",".vc-mini-bar",".vc-modal-overlay",-- ".vc-progress-bar",-- ".vc-progress-buffer",-- ".vc-progress-fill",-- ".vc-progress-fill::after",-- ".vc-progress-wrap",".vc-sidebar-header h3",".vc-sidebar-header h3 i",-- ".vc-spacer",-- ".vc-time-display",-- ".vc-volume-group",-- ".vc-volume-group .volume-slider",-- ".video-controls",-- ".video-overlay",-- ".vod-ai-memory-t",-- ".vod-ai-timeline-hint i",-- ".vod-ai-timeline-title i",-- ".vod-extra-details .detail-chip i",-- ".vod-source-info i",-- ".volume-slider",-- ".volume-slider::-webkit-slider-runnable-track",-- ".volume-slider::-webkit-slider-thumb",-- ".vp-live-indicator","::-webkit-scrollbar","::-webkit-scrollbar-thumb","::-webkit-scrollbar-track",@@@ -437,6 +387,10 @@"[data-fx-viewport]:not(.fx-live) *::before","a","body",++ "body .floating-chat-fab",++ "body .messenger-toggle",++ "body .mobile-chat-toggle",++ "body :is(.modal-overlay, .bc-ws-confirm-overlay, .bc-modal, .bc-perm-overlay, .bucks-log-overlay, .user-ai-modal-overlay, .paste-modal-overlay, .vc-modal-overlay, .chat-slur-nudge-modal, .cosmetics-modal-overlay, .link-trust-overlay, .link-preview-overlay, .cgw-pop-overlay, .image-censor-overlay)","body.ov-nav-overlay .navbar.ovnav-top","body.ov-nav-overlay .openvibe-navbar.navbar.ovnav-top","body::after",@@@ -9939,4 +9939,5 @@ body.ov-nav-overlay .openvibe-navbar.navbar.ovnav-top { background: transparent;.openvibe-navbar.navbar .openvibe-navbar-links a.ovnav-link.active { color: var(--text-primary); background: color-mix(in srgb, var(--accent) 16%, transparent); }.openvibe-navbar.navbar .openvibe-navbar-dropdown { position: fixed; top: calc(var(--navbar-h) + 6px); right: 8px; }.openvibe-navbar.navbar .openvibe-navbar-avatar { width: 36px; height: 36px; border-radius: 50%; cursor: pointer; object-fit: cover; box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent) 50%, transparent); }--@media (max-width: 560px) { .openvibe-navbar.navbar .ovnav-chip { padding: 0 8px; } .openvibe-navbar.navbar .ovnav-launch { display: none; } }++/* The site switcher stays beside the logo on a phone: the two balance chips fold into one there (Shared 4.16.0). */++@media (max-width: 560px) { .openvibe-navbar.navbar .ovnav-chip { padding: 0 8px; } }@@@ -75,8 +75,9 @@notificationsRealtime: true, // the bell hears new notifications over OpenVibe.Events (Shared 1.22.0)links: links(user), menu: menu(user),chips: [-- { id: 'coins', icon: 'fa-coins', tone: 'gold', value: '0', valueId: 'nav-coins-amount', title: 'OpenCoins: click to open your inventory', onClick: () => call('openCosmeticsModal') },-- { id: 'vibes', icon: 'fa-wallet', tone: 'green', value: '0', valueId: 'nav-balance-amount', title: 'Vibes balance', onClick: () => call('showModal', 'buy-funds') },++ // On a phone the two fold into one chip (Shared 4.16.0); its panel lists them by label.++ { id: 'coins', icon: 'fa-coins', tone: 'gold', value: '0', valueId: 'nav-coins-amount', label: 'OpenCoins', title: 'OpenCoins: click to open your inventory', onClick: () => call('openCosmeticsModal') },++ { id: 'vibes', icon: 'fa-wallet', tone: 'green', value: '0', valueId: 'nav-balance-amount', label: 'Vibes', title: 'Vibes balance', onClick: () => call('showModal', 'buy-funds') },],// Same-origin links are routes of this single-page app.onNavigate: (href, e) => (typeof handleLinkClick === 'function' ? handleLinkClick(e, href) : true),
@@ -11,8 +11,6 @@
@@ -11,8 +11,6 @@
"/chat",
"/chat",
"/search?q=game",
"/search?q=game",
"/@iZoR_One",
"/@iZoR_One",
- "/vod/5717",
- "/clip/441",
"/pastes",
"/pastes",
"/docs"
"/docs"
],
],
@@ -83,12 +81,12 @@
@@ -83,12 +81,12 @@
".chat-badge",
".chat-badge",
".chat-badge i",
".chat-badge i",
".chat-badge-admin",
".chat-badge-admin",
- ".chat-badge-streamer",
".chat-badge[data-tip]::after",
".chat-badge[data-tip]::after",
".chat-badge[data-tip]::before",
".chat-badge[data-tip]::before",
".chat-crossfeed-badge",
".chat-crossfeed-badge",
".chat-crossfeed-global",
".chat-crossfeed-global",
".chat-crossfeed-stream",
".chat-crossfeed-stream",
+ ".chat-emote",
".chat-header",
".chat-header",
".chat-header-actions",
".chat-header-actions",
".chat-input-area",
".chat-input-area",
@@ -108,13 +106,6 @@
@@ -108,13 +106,6 @@
".chat-nickels-float .rewards-coin-balance",
".chat-nickels-float .rewards-coin-balance",
".chat-relay-badge",
".chat-relay-badge",
".chat-relay-badge i",
".chat-relay-badge i",
- ".chat-replay-empty p",
- ".chat-replay-header h4",
- ".chat-replay-messages",
- ".chat-reply-header",
- ".chat-reply-header i",
- ".chat-reply-snippet",
- ".chat-reply-user",
".chat-send-btn",
".chat-send-btn",
".chat-settings-btn",
".chat-settings-btn",
".chat-sidebar",
".chat-sidebar",
@@ -136,22 +127,6 @@
@@ -136,22 +127,6 @@
".chat-tts-toggle",
".chat-tts-toggle",
".chat-tts-toggle.tts-active",
".chat-tts-toggle.tts-active",
".chat-users-panel",
".chat-users-panel",
- ".clip-chat-avatar",
- ".clip-chat-card",
- ".clip-chat-cta",
- ".clip-chat-cta i",
- ".clip-chat-dur",
- ".clip-chat-info",
- ".clip-chat-label",
- ".clip-chat-meta",
- ".clip-chat-meta > span",
- ".clip-chat-play",
- ".clip-chat-thumb",
- ".clip-chat-thumb img",
- ".clip-chat-title",
- ".clip-modal-overlay",
- ".comments-empty",
- ".comments-header h3",
".container",
".container",
".content-container",
".content-container",
".cta-ambient",
".cta-ambient",
@@ -174,9 +149,6 @@
@@ -174,9 +149,6 @@
".digest-stat b",
".digest-stat b",
".digest-stat i",
".digest-stat i",
".digest-title i",
".digest-title i",
- ".dvr-progress-bar",
- ".dvr-progress-fill::after",
- ".dvr-progress-wrap",
".egg-key",
".egg-key",
".egg-key--letter",
".egg-key--letter",
".emote-picker",
".emote-picker",
@@ -218,10 +190,12 @@
@@ -218,10 +190,12 @@
".hero-float",
".hero-float",
".hero-float img",
".hero-float img",
".hero-float--clip .hero-float-badge",
".hero-float--clip .hero-float-badge",
+ ".hero-float--moment .hero-float-badge",
".hero-float--paste .hero-float-badge",
".hero-float--paste .hero-float-badge",
".hero-float--vod .hero-float-badge",
".hero-float--vod .hero-float-badge",
".hero-float-body",
".hero-float-body",
".hero-float-inner",
".hero-float-inner",
+ ".hero-float-text",
".hero-golive-note",
".hero-golive-note",
".hero-golive-note a",
".hero-golive-note a",
".hero-golive-note i",
".hero-golive-note i",
@@ -285,7 +259,6 @@
@@ -285,7 +259,6 @@
".home-paste-type",
".home-paste-type",
".live-dot",
".live-dot",
".live-stream-tabs",
".live-stream-tabs",
- ".media-transcript-toggle > i:first-child",
".mobile-chat-badge",
".mobile-chat-badge",
".mobile-chat-close",
".mobile-chat-close",
".mobile-chat-toggle",
".mobile-chat-toggle",
@@ -328,6 +301,7 @@
@@ -328,6 +301,7 @@
".ov-rail",
".ov-rail",
".ov-rail > .moments-row",
".ov-rail > .moments-row",
".ov-rail-bar",
".ov-rail-bar",
+ ".ov-rail-bar > span",
".ov-rail-bar[hidden]",
".ov-rail-bar[hidden]",
".ov-rail-btn",
".ov-rail-btn",
".ov-rail-btn:disabled",
".ov-rail-btn:disabled",
@@ -335,6 +309,7 @@
@@ -335,6 +309,7 @@
".ov-rail-prev",
".ov-rail-prev",
".ov-rail-track",
".ov-rail-track",
".ov-rail-track > *",
".ov-rail-track > *",
+ ".ov-rail.is-scrollable > .ov-rail-track",
".ov-rail:not(.is-end) > .ov-rail-track",
".ov-rail:not(.is-end) > .ov-rail-track",
".ov-rail:not(.is-scrollable) > .ov-rail-btn",
".ov-rail:not(.is-scrollable) > .ov-rail-btn",
".ov-rail:not(.is-start) > .ov-rail-track",
".ov-rail:not(.is-start) > .ov-rail-track",
@@ -353,8 +328,6 @@
@@ -353,8 +328,6 @@
".pc-tools-row > button.btn-openvibe-coins-mini",
".pc-tools-row > button.btn-openvibe-coins-mini",
".pc-tools-row > button.chat-nickels-float",
".pc-tools-row > button.chat-nickels-float",
".pc-tools-row > button.chat-tts-toggle.tts-active",
".pc-tools-row > button.chat-tts-toggle.tts-active",
- ".protocol-badge",
- ".protocol-rtmp",
".pulse-act i",
".pulse-act i",
".pulse-grid",
".pulse-grid",
".pulse-kicker i",
".pulse-kicker i",
@@ -399,34 +372,11 @@
@@ -399,34 +372,11 @@
".streamer-group-stream-thumb",
".streamer-group-stream-thumb",
".toast-container",
".toast-container",
".tour",
".tour",
- ".ts-seg",
- ".ts-time",
- ".vc-btn",
".vc-channel-body",
".vc-channel-body",
".vc-mini-bar",
".vc-mini-bar",
".vc-modal-overlay",
".vc-modal-overlay",
- ".vc-progress-bar",
- ".vc-progress-buffer",
- ".vc-progress-fill",
- ".vc-progress-fill::after",
- ".vc-progress-wrap",
".vc-sidebar-header h3",
".vc-sidebar-header h3",
".vc-sidebar-header h3 i",
".vc-sidebar-header h3 i",
- ".vc-spacer",
- ".vc-time-display",
- ".vc-volume-group",
- ".vc-volume-group .volume-slider",
- ".video-controls",
- ".video-overlay",
- ".vod-ai-memory-t",
- ".vod-ai-timeline-hint i",
- ".vod-ai-timeline-title i",
- ".vod-extra-details .detail-chip i",
- ".vod-source-info i",
- ".volume-slider",
- ".volume-slider::-webkit-slider-runnable-track",
- ".volume-slider::-webkit-slider-thumb",
- ".vp-live-indicator",
"::-webkit-scrollbar",
"::-webkit-scrollbar",
"::-webkit-scrollbar-thumb",
"::-webkit-scrollbar-thumb",
"::-webkit-scrollbar-track",
"::-webkit-scrollbar-track",
@@ -437,6 +387,10 @@
@@ -437,6 +387,10 @@
"[data-fx-viewport]:not(.fx-live) *::before",
"[data-fx-viewport]:not(.fx-live) *::before",
"a",
"a",
"body",
"body",
+ "body .floating-chat-fab",
+ "body .messenger-toggle",
+ "body .mobile-chat-toggle",
+ "body :is(.modal-overlay, .bc-ws-confirm-overlay, .bc-modal, .bc-perm-overlay, .bucks-log-overlay, .user-ai-modal-overlay, .paste-modal-overlay, .vc-modal-overlay, .chat-slur-nudge-modal, .cosmetics-modal-overlay, .link-trust-overlay, .link-preview-overlay, .cgw-pop-overlay, .image-censor-overlay)",
"body.ov-nav-overlay .navbar.ovnav-top",
"body.ov-nav-overlay .navbar.ovnav-top",
"body.ov-nav-overlay .openvibe-navbar.navbar.ovnav-top",
"body.ov-nav-overlay .openvibe-navbar.navbar.ovnav-top",
"body::after",
"body::after",
@@ -9939,4 +9939,5 @@ body.ov-nav-overlay .openvibe-navbar.navbar.ovnav-top { background: transparent;
@@ -9939,4 +9939,5 @@ body.ov-nav-overlay .openvibe-navbar.navbar.ovnav-top { background: transparent;
.openvibe-navbar.navbar .openvibe-navbar-links a.ovnav-link.active { color: var(--text-primary); background: color-mix(in srgb, var(--accent) 16%, transparent); }
.openvibe-navbar.navbar .openvibe-navbar-links a.ovnav-link.active { color: var(--text-primary); background: color-mix(in srgb, var(--accent) 16%, transparent); }
.openvibe-navbar.navbar .openvibe-navbar-dropdown { position: fixed; top: calc(var(--navbar-h) + 6px); right: 8px; }
.openvibe-navbar.navbar .openvibe-navbar-dropdown { position: fixed; top: calc(var(--navbar-h) + 6px); right: 8px; }
.openvibe-navbar.navbar .openvibe-navbar-avatar { width: 36px; height: 36px; border-radius: 50%; cursor: pointer; object-fit: cover; box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent) 50%, transparent); }
.openvibe-navbar.navbar .openvibe-navbar-avatar { width: 36px; height: 36px; border-radius: 50%; cursor: pointer; object-fit: cover; box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent) 50%, transparent); }
-@media (max-width: 560px) { .openvibe-navbar.navbar .ovnav-chip { padding: 0 8px; } .openvibe-navbar.navbar .ovnav-launch { display: none; } }
+/* The site switcher stays beside the logo on a phone: the two balance chips fold into one there (Shared 4.16.0). */
+@media (max-width: 560px) { .openvibe-navbar.navbar .ovnav-chip { padding: 0 8px; } }
@@ -75,8 +75,9 @@
@@ -75,8 +75,9 @@
notificationsRealtime: true, // the bell hears new notifications over OpenVibe.Events (Shared 1.22.0)
notificationsRealtime: true, // the bell hears new notifications over OpenVibe.Events (Shared 1.22.0)
links: links(user), menu: menu(user),
links: links(user), menu: menu(user),
chips: [
chips: [
- { id: 'coins', icon: 'fa-coins', tone: 'gold', value: '0', valueId: 'nav-coins-amount', title: 'OpenCoins: click to open your inventory', onClick: () => call('openCosmeticsModal') },
- { id: 'vibes', icon: 'fa-wallet', tone: 'green', value: '0', valueId: 'nav-balance-amount', title: 'Vibes balance', onClick: () => call('showModal', 'buy-funds') },
+ // On a phone the two fold into one chip (Shared 4.16.0); its panel lists them by label.
+ { id: 'coins', icon: 'fa-coins', tone: 'gold', value: '0', valueId: 'nav-coins-amount', label: 'OpenCoins', title: 'OpenCoins: click to open your inventory', onClick: () => call('openCosmeticsModal') },
+ { id: 'vibes', icon: 'fa-wallet', tone: 'green', value: '0', valueId: 'nav-balance-amount', label: 'Vibes', title: 'Vibes balance', onClick: () => call('showModal', 'buy-funds') },
],
],
// Same-origin links are routes of this single-page app.
// Same-origin links are routes of this single-page app.
onNavigate: (href, e) => (typeof handleLinkClick === 'function' ? handleLinkClick(e, href) : true),
onNavigate: (href, e) => (typeof handleLinkClick === 'function' ? handleLinkClick(e, href) : true),