Bilibili-Evolved/registry/dist/components/live/chat-panel-fit.js
github-actions[bot] b9161b0ed2 CI build
2023-08-30 01:29:42 +00:00

9 lines
4.5 KiB
JavaScript

!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports["live/chat-panel-fit"]=t():e["live/chat-panel-fit"]=t()}(globalThis,(()=>(()=>{var e,t,n={50:(e,t,n)=>{var o=n(218)((function(e){return e[1]}));o.push([e.id,".player-full-win .live-room-app .aside-area {\n width: var(--live-chat-panel-width, 302px) !important;\n}\n.player-full-win .live-room-app .player-section {\n width: calc(100% - var(--live-chat-panel-width, 302px)) !important;\n}",""]),e.exports=o},218:e=>{"use strict";
// eslint-disable-next-line func-names
e.exports=function(e){var t=[];return t.toString=function(){return this.map((function(t){var n=e(t);return t[2]?"@media ".concat(t[2]," {").concat(n,"}"):n})).join("")},
// eslint-disable-next-line func-names
t.i=function(e,n,o){"string"==typeof e&&(
// eslint-disable-next-line no-param-reassign
e=[[null,e,""]]);var r={};if(o)for(var i=0;i<this.length;i++){
// eslint-disable-next-line prefer-destructuring
var a=this[i][0];null!=a&&(r[a]=!0)}for(var l=0;l<e.length;l++){var s=[].concat(e[l]);o&&r[s[0]]||(n&&(s[2]?s[2]="".concat(n," and ").concat(s[2]):s[2]=n),t.push(s))}},t}},498:(e,t,n)=>{var o=n(50);o&&o.__esModule&&(o=o.default),e.exports="string"==typeof o?o:o.toString()},427:e=>{function t(e){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}t.keys=()=>[],t.resolve=t,t.id=427,e.exports=t},513:e=>{"use strict";e.exports="在直播网页全屏时, 自动调整侧边栏的宽度, 使得视频区域的比例和视频源相匹配, 达到无黑边的效果.\n\n- `侧边栏最大宽度 (px)`: 限制侧边栏可被拉伸到的最大宽度. (最小宽度固定为 190px, 再小的话布局就要出问题了)\n\n> 注意, 由于有最大宽度和最小宽度的限制, 部分窗口尺寸下仍然无法做到无黑边.\n"}},o={};function r(e){var t=o[e];if(void 0!==t)return t.exports;var i=o[e]={id:e,exports:{}};return n[e](i,i.exports,r),i.exports}t=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,r.t=function(n,o){if(1&o&&(n=this(n)),8&o)return n;if("object"==typeof n&&n){if(4&o&&n.__esModule)return n;if(16&o&&"function"==typeof n.then)return n}var i=Object.create(null);r.r(i);var a={};e=e||[null,t({}),t([]),t(t)];for(var l=2&o&&n;"object"==typeof l&&!~e.indexOf(l);l=t(l))Object.getOwnPropertyNames(l).forEach((e=>a[e]=()=>n[e]));return a.default=()=>n,r.d(i,a),i},r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var i={};return(()=>{"use strict";r.d(i,{component:()=>u});const e=coreApis.componentApis.define,t=coreApis.settings,n=coreApis.spinQuery,o=coreApis.utils,a=coreApis.utils.urls,l="liveChatPanelFit",s=(0,e.defineOptionsMetadata)({maxWidth:{defaultValue:1e3,displayName:"侧边栏最大宽度 (px)",validator:(0,o.getNumberValidator)(190)}}),d=()=>{const{maxWidth:e}=(0,t.getComponentSettings)(l).options,n=dq(".live-player-ctnr video");if(!n)return;const o=n.videoWidth,r=n.videoHeight;if(0===o||0===r)return;const{innerWidth:i,innerHeight:a}=window,s=i-o*a/r;console.log({liveChatPanelWidth:s}),document.documentElement.style.setProperty("--live-chat-panel-width",`${lodash.clamp(s,190,e)}px`)},p=lodash.debounce(d,200),c=async()=>{(0,t.addComponentListener)("liveChatPanelFit.targetRatio",d),(0,t.addComponentListener)("liveChatPanelFit.maxWidth",d),window.addEventListener("resize",p);await(0,n.sq)((()=>dq(".live-player-ctnr video")),(e=>null!==e&&e.readyState!==HTMLMediaElement.HAVE_NOTHING))&&d()},u=(0,e.defineComponentMetadata)({name:l,displayName:"直播间网页全屏自适应",tags:[componentsTags.live,componentsTags.style],urlInclude:[...a.liveUrls],entry:c,reload:c,unload:()=>{(0,t.removeComponentListener)("liveChatPanelFit.targetRatio",d),(0,t.removeComponentListener)("liveChatPanelFit.maxWidth",d),window.removeEventListener("resize",p),document.documentElement.style.removeProperty("--live-chat-panel-width")},instantStyles:[{name:l,style:()=>Promise.resolve().then(r.t.bind(r,498,23)),important:!0}],options:s,commitHash:"4ee0fe551ab0f61c8db9621a89caaeebbbf2b15d",coreVersion:"2.8.3",description:(()=>{const e=r(427);return{...Object.fromEntries(e.keys().map((t=>[t.match(/index\.(.+)\.md$/)[1],e(t)]))),"zh-CN":()=>Promise.resolve().then(r.t.bind(r,513,17)).then((e=>e.default))}})()})})(),i=i.component})()));