"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.updateBottomIconSource=exports.toPublicBottomIcon=exports.pickBottomIconPatch=exports.isBottomIconPatchSource=exports.dispatchBottomIconClick=exports.buildHeartBottomIconSource=exports.buildFixedBottomIconViewModel=exports.buildBottomIconViewModel=exports.buildBackgroundPlaybackIconSource=exports.BOTTOM_ICON_ROOM_TYPE=exports.BOTTOM_ICON_KEY=void 0;var _events=_interopRequireDefault(require("../events")),_backgroundPlayback=require("../background-playback"),_miniSdkConfig=require("../../components/player/mini-sdk-config"),_utils=require("../../components/player/utils"),_constant=require("../constant"),_liveInfo=require("../live-info");function _interopRequireDefault(o){return o&&o.__esModule?o:{default:o}}function ownKeys(o,t){var e=Object.keys(o);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(o);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(o,t).enumerable})),e.push.apply(e,r)}return e}function _objectSpread(o){for(var t=1;t2&&void 0!==arguments[2]?arguments[2]:{},r=null==o?void 0:o.reportTea;"function"==typeof r&&r(BOTTOM_ICON_TRANSFORM_REPORT_EVENT,_objectSpread({stage:t},e))},applyPatch=function(o,t){return t&&"object"===_typeof(t)?normalizeIcon(_objectSpread(_objectSpread({},o),t)):o},findIconByKey=function(o,t){return(Array.isArray(o)?o:[]).find(function(o){return(null==o?void 0:o.key)===t})},dedupeIconListByKey=function(o){var t={};return(Array.isArray(o)?o:[]).filter(function(o){var e=null==o?void 0:o.key;return!(!e||t[e]||(t[e]=!0,0))})},buildSourcePatchMap=function(o){return(Array.isArray(o)?o:[]).reduce(function(o,t){return isBottomIconPatchSource(t)&&t.key&&(o[t.key]=t),o},{})},isBottomIconPatchSource=function(o){return!(null==o||!o[PATCH_ONLY_SOURCE])};exports.isBottomIconPatchSource=isBottomIconPatchSource;var mergeBottomIconPatchSource=function(o,t,e){return _objectSpread(_objectSpread(_objectSpread({},o&&"object"===_typeof(o)?o:{}),e),{},_defineProperty({key:t},PATCH_ONLY_SOURCE,!0))},normalizeMaxVisibleCount=function(o,t){var e=Number(o);return!Number.isFinite(e)||e<0?t:Math.floor(e)},getMaxVisibleCountValue=function(o,t){if(o&&"object"===_typeof(o)&&!Array.isArray(o))return o[t]},safeTransformIconList=function(o){var t=o.sdkInstance,e=o.transform,r=o.params,n=o.fallback;if("function"!=typeof e)return n;reportTransformIconList(t,"before",{room_type:r.roomType,input_icon_keys:(r.iconList||[]).map(function(o){return o.key}).join(","),input_icon_list:serializeIconListForReport(r.iconList)});try{var i=e(r),c=Array.isArray(i);return reportTransformIconList(t,"after",{room_type:r.roomType,result_type:c?"success":"invalid_return",returned_icon_keys:c?i.map(function(o){return null==o?void 0:o.key}).join(","):"",returned_icon_list:serializeIconListForReport(i),effective_icon_keys:(c?i:n).map(function(o){return null==o?void 0:o.key}).join(","),effective_icon_list:serializeIconListForReport(c?i:n)}),c?i:n}catch(o){return console.error("[volc-live-mini-sdk] bottomIconConfig.transformIconList error",o),reportTransformIconList(t,"after",{room_type:r.roomType,result_type:"error",error_message:(null==o?void 0:o.message)||String(o),returned_icon_keys:"",returned_icon_list:"",effective_icon_keys:n.map(function(o){return null==o?void 0:o.key}).join(","),effective_icon_list:serializeIconListForReport(n)}),n}},canShowBackgroundPlayback=function(o){var t,e,r=(0,_miniSdkConfig.getMiniSdkBackgroundPlaybackConfig)(null==o?void 0:o.store),n=null==o||null===(t=o.store)||void 0===t||null===(e=t.get)||void 0===e?void 0:e.call(t,"reportInfo.videoType"),i="live"===n||"vod"===n;return(0,_utils.isDeviceMatchRulesMatched)(r.enabledDevices)?i:!(0,_utils.isDeviceMatchRulesMatched)(r.disabledDevices)&&i&&(0,_backgroundPlayback.canRequestAnyBackgroundPlaybackContext)()},getConfig=function(o){var t,e;return(null==o||null===(t=o.store)||void 0===t||null===(e=t.get)||void 0===e?void 0:e.call(t,"mainInfo.options.bottomIconConfig"))||{}},isFixedBottomIcon=function(o){return(null==o?void 0:o.key)===BOTTOM_ICON_KEY.HEART},buildBackgroundPlaybackIconSource=function(o){return _objectSpread(_objectSpread({},BACKGROUND_PLAYBACK_ICON),{},{visible:canShowBackgroundPlayback(o)})};exports.buildBackgroundPlaybackIconSource=buildBackgroundPlaybackIconSource;var isIconForRoom=function(o,t){return!(null!=o&&o.showIn)||o.showIn===t},splitForcedOverflowIcons=function(o){var t=[],e=[];return(Array.isArray(o)?o:[]).forEach(function(o){FORCE_OVERFLOW_ICON_KEYS.includes(null==o?void 0:o.key)?e.push(o):t.push(o)}),{normalIconList:t,forcedOverflowIconList:e}},buildBottomIconCandidates=function(o,t){var e,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=null==o?void 0:o.store;return(Array.isArray(r.sourceIconList)?r.sourceIconList:Array.isArray(null==n||null===(e=n.get)||void 0===e?void 0:e.call(n,"iconList"))?n.get("iconList"):[]).filter(function(o){return!isBottomIconPatchSource(o)&&isIconForRoom(o,t)}).filter(function(o){return!isFixedBottomIcon(o)}).map(function(o){return normalizeIcon(o)}).filter(Boolean)},buildBottomIconViewModel=function(o,t){var e,r,n,i,c=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=getConfig(o);if(!(0,_liveInfo.hasLiveInfoPayload)(null==o||null===(e=o.store)||void 0===e||null===(r=e.get)||void 0===r?void 0:r.call(e,"liveInfo")))return{iconList:[],outerIconList:[],innerIconList:[]};var l=Array.isArray(c.sourceIconList)?c.sourceIconList:Array.isArray(null==o||null===(n=o.store)||void 0===n||null===(i=n.get)||void 0===i?void 0:i.call(n,"iconList"))?o.store.get("iconList"):[],u=buildSourcePatchMap(l),s=buildBottomIconCandidates(o,t,c),f=s.map(toPublicBottomIcon),d=s.reduce(function(o,t){return o[t.key]=t,o},{}),_=!1===c.applyTransform?s:safeTransformIconList({sdkInstance:o,transform:a.transformIconList,params:{iconList:f.map(function(o){return _objectSpread({},o)}),roomType:t},fallback:s}),p=dedupeIconListByKey(_).map(function(o){var t=d[null==o?void 0:o.key]||{};return normalizeIcon(_objectSpread(_objectSpread({},t),o))}).filter(function(o){return!isFixedBottomIcon(o)}).map(function(o){return applyPatch(o,u[null==o?void 0:o.key])}).filter(Boolean).filter(function(o){return!1!==o.visible&&isIconForRoom(o,t)}),y=splitForcedOverflowIcons(p),I=y.normalIconList,m=y.forcedOverflowIconList,b=void 0!==c.fixedMaxVisibleCount?normalizeMaxVisibleCount(c.fixedMaxVisibleCount,c.defaultMaxVisibleCount):!1===c.respectMaxVisibleCount?I.length:normalizeMaxVisibleCount(getMaxVisibleCountValue(a.maxVisibleCount,t),c.defaultMaxVisibleCount);return{iconList:p,outerIconList:I.slice(0,b),innerIconList:I.slice(b).concat(m)}};exports.buildBottomIconViewModel=buildBottomIconViewModel;var buildFixedBottomIconViewModel=function(o,t,e){var r=normalizeIcon(t);return!r||!1===r.visible||e&&!isIconForRoom(r,e)?null:r};exports.buildFixedBottomIconViewModel=buildFixedBottomIconViewModel;var buildHeartBottomIconSource=function(o,t){var e=(null==o?void 0:o.ThumbUp)||{},r={key:BOTTOM_ICON_KEY.HEART,visible:0!==e.Enable&&!1!==e.Enable,title:"点赞",iconUrl:e.ThumbUpUrl||"",data:{}},n=findIconByKey(t,BOTTOM_ICON_KEY.HEART),i=buildSourcePatchMap(t)[BOTTOM_ICON_KEY.HEART];return applyPatch(n?applyPatch(r,n):r,i)};exports.buildHeartBottomIconSource=buildHeartBottomIconSource;var pickBottomIconPatch=function(o){if(!o||"object"!==_typeof(o))return{};var t={};return["visible","showIn","iconUrl","title","style","containerStyle","data"].forEach(function(e){void 0!==o[e]&&(t[e]=o[e])}),t};exports.pickBottomIconPatch=pickBottomIconPatch;var updateBottomIconSource=function(o,t,e){var r,n,i=pickBottomIconPatch(e);if(!t||"string"!=typeof t||!Object.keys(i).length)return!1;var c=null==o||null===(r=o.get)||void 0===r?void 0:r.call(o,"iconList"),a=Array.isArray(c)?c:[],l=!1,u=a.map(function(o){return(null==o?void 0:o.key)===t&&null!=o&&o[PATCH_ONLY_SOURCE]?(l=!0,mergeBottomIconPatchSource(o,t,i)):o});return l||u.push(mergeBottomIconPatchSource(null,t,i)),null==o||null===(n=o.set)||void 0===n||n.call(o,"iconList",u),!0};exports.updateBottomIconSource=updateBottomIconSource;var dispatchBottomIconClick=function(o){var t,e=o.sdkInstance,r=o.icon,n=o.roomType,i=o.handlers,c=void 0===i?{}:i;if(null==r||!r.key)return!1;null==e||null===(t=e.emitEvent)||void 0===t||t.call(e,_events.default.PUBLIC.bottomIcon.click,{icon:toPublicBottomIcon(r),roomType:n});var a=c[r.key]||c.default;return"function"==typeof a&&a(r),!0};exports.dispatchBottomIconClick=dispatchBottomIconClick;var toPublicBottomIcon=function(o){return o&&"object"===_typeof(o)?{key:o.key,visible:!1!==o.visible,showIn:o.showIn,iconUrl:o.iconUrl||o.src||"",title:o.title||o.name||"",style:o.style||"",containerStyle:o.containerStyle||"",data:o.data&&"object"===_typeof(o.data)?o.data:{}}:o};exports.toPublicBottomIcon=toPublicBottomIcon;