1"use strict";(globalThis.webpackChunkbambuser_docs||=[]).push([[2354],{72932(e,o,t){t.r(o),t.d(o,{assets:()=>l,contentTitle:()=>d,default:()=>c,frontMatter:()=>r,metadata:()=>i,toc:()=>a});const i=JSON.parse('{"id":"playerSDKIntegrationIos-promoted-shows","title":"Promoted Shows","description":"Control the promoted shows carousel in the iOS player via the ui.hidePromotedShows configuration flag; Swift show/hide examples and a minimal player setup.","source":"@site/live/playerSDKIntegrationIos-promoted-shows.mdx","sourceDirName":".","slug":"/mobile-sdk-integration-ios/promoted-shows","permalink":"/docs/live/mobile-sdk-integration-ios/promoted-shows","draft":false,"unlisted":false,"tags":[],"version":"current","frontMatter":{"id":"playerSDKIntegrationIos-promoted-shows","title":"Promoted Shows","description":"Control the promoted shows carousel in the iOS player via the ui.hidePromotedShows configuration flag; Swift show/hide examples and a minimal player setup.","sidebar_label":"Promoted Shows","slug":"mobile-sdk-integration-ios/promoted-shows"},"sidebar":"someSidebars","previous":{"title":"Audio Control","permalink":"/docs/live/mobile-sdk-integration-ios/audio-control"},"next":{"title":"Installation","permalink":"/docs/live/mobile-sdk-integration-android/installation"}}');var n=t(74848),s=t(28453);const r={id:"playerSDKIntegrationIos-promoted-shows",title:"Promoted Shows",description:"Control the promoted shows carousel in the iOS player via the ui.hidePromotedShows configuration flag; Swift show/hide examples and a minimal player setup.",sidebar_label:"Promoted Shows",slug:"mobile-sdk-integration-ios/promoted-shows"},d="Promoted Shows",l={},a=[{value:"Show or Hide the Promoted Shows Carousel",id:"show-or-hide-the-promoted-shows-carousel",level:2},{value:"UI Configuration Reference",id:"ui-configuration-reference",level:2},{value:"Hiding All Optional UI Elements",id:"hiding-all-optional-ui-elements",level:2}];function h(e){const o={a:"a",blockquote:"blockquote",code:"code",h1:"h1",h2:"h2",header:"header",p:"p",pre:"pre",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,s.R)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(o.header,{children:(0,n.jsx)(o.h1,{id:"promoted-shows",children:"Promoted Shows"})}),"\n",(0,n.jsxs)(o.p,{children:["The Bambuser player has a built-in promoted shows carousel that surfaces other live or upcoming shows to viewers while they watch. You can control its visibility using the ",(0,n.jsx)(o.code,{children:"ui.hidePromotedShows"})," configuration flag."]}),"\n",(0,n.jsx)(o.h2,{id:"show-or-hide-the-promoted-shows-carousel",children:"Show or Hide the Promoted Shows Carousel"}),"\n",(0,n.jsxs)(o.p,{children:["The promoted shows carousel is visible by default. Pass ",(0,n.jsx)(o.code,{children:'"hidePromotedShows": false'})," explicitly to confirm it is enabled, or ",(0,n.jsx)(o.code,{children:"true"})," to hide it."]}),"\n",(0,n.jsx)(o.pre,{children:(0,n.jsx)(o.code,{className:"language-swift",children:'let config = BambuserVideoConfiguration(\n type: .live(id: "your-show-id"),\n events: ["*"],\n configuration: [\n "autoplay": true,\n "currency": "USD",\n "locale": "en-US",\n "buttons": [\n "dismiss": "event"\n ],\n "ui": [\n "hidePromotedShows": false, // true = hide the promoted shows carousel\n ]\n ]\n)\n'})}),"\n",(0,n.jsx)(o.h2,{id:"ui-configuration-reference",children:"UI Configuration Reference"}),"\n",(0,n.jsxs)(o.p,{children:["Both flags belong under the ",(0,n.jsx)(o.code,{children:'"ui"'})," dictionary in your player configuration:"]}),"\n",(0,n.jsxs)(o.table,{children:[(0,n.jsx)(o.thead,{children:(0,n.jsxs)(o.tr,{children:[(0,n.jsx)(o.th,{children:"Config Key"}),(0,n.jsx)(o.th,{children:"Type"}),(0,n.jsx)(o.th,{children:"Default"}),(0,n.jsx)(o.th,{children:"Description"})]})}),(0,n.jsxs)(o.tbody,{children:[(0,n.jsxs)(o.tr,{children:[(0,n.jsx)(o.td,{children:(0,n.jsx)(o.code,{children:"ui.hidePromotedShows"})}),(0,n.jsx)(o.td,{children:"boolean"}),(0,n.jsx)(o.td,{children:(0,n.jsx)(o.code,{children:"false"})}),(0,n.jsx)(o.td,{children:"Hides the promoted shows carousel inside the player."})]}),(0,n.jsxs)(o.tr,{children:[(0,n.jsx)(o.td,{children:(0,n.jsx)(o.code,{children:"ui.hidePlaybackRateButton"})}),(0,n.jsx)(o.td,{children:"boolean"}),(0,n.jsx)(o.td,{children:(0,n.jsx)(o.code,{children:"false"})}),(0,n.jsx)(o.td,{children:"Hides the playback speed button."})]})]})]}),"\n",(0,n.jsxs)(o.blockquote,{children:["\n",(0,n.jsxs)(o.p,{children:["\u2139\ufe0f All ",(0,n.jsx)(o.code,{children:"ui.*"})," flags must be nested under the ",(0,n.jsx)(o.code,{children:'"ui"'})," dictionary, not placed at the top level of ",(0,n.jsx)(o.code,{children:"configuration"}),". See ",(0,n.jsx)(o.a,{href:"/docs/live/mobile-sdk-integration-ios/configuration-and-functions",children:"Configuration and Functions"})," for the full UI configuration reference."]}),"\n"]}),"\n",(0,n.jsx)(o.h2,{id:"hiding-all-optional-ui-elements",children:"Hiding All Optional UI Elements"}),"\n",(0,n.jsx)(o.p,{children:"To present a minimal player with no optional UI elements:"}),"\n",(0,n.jsx)(o.pre,{children:(0,n.jsx)(o.code,{className:"language-swift",children:'configuration: [\n "buttons": [\n "dismiss": "none"\n ],\n "ui": [\n "hideEmojiOverlay": true,\n "hideActionBar": true,\n "hide
1ShareButton": true,\n "hideClosedCaptionsButton": true,\n "hideVolumeButton": true,\n "hidePlaybackRateButton": true,\n "hidePromotedShows": true,\n "hideShareFromTimestampButton": true\n ]\n]\n'})})]})}function c(e={}){const{wrapper:o}={...(0,s.R)(),...e.components};return o?(0,n.jsx)(o,{...e,children:(0,n.jsx)(h,{...e})}):h(e)}},28453(e,o,t){t.d(o,{R:()=>r,x:()=>d});var i=t(96540);const n={},s=i.createContext(n);function r(e){const o=i.useContext(s);return i.useMemo(function(){return"function"==typeof e?e(o):{...o,...e}},[o,e])}function d(e){let o;return o=e.disableParentContext?"function"==typeof e.components?e.components(n):e.components||n:r(e.components),i.createElement(s.Provider,{value:o},e.children)}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.