1import{a as T,b as y}from"./lib.PRI5FJWB.js";import{y as M}from"./lib.BXR6YZEG.js";import{F as i,g as u}from"./lib.QSN4SHRN.js";import{b as S}from"./lib.BVGQPJTT.js";var h=class{constructor(t,r,l,o,n,a){this.mode=t;this.modes=r;this.timeV=l;this.incrementV=o;this.daysV=n;this.presets=a;this.time=()=>V(this.timeV());this.increment=()=>c(this.incrementV());this.days=()=>f(this.daysV());this.isRealTime=()=>this.mode()==="realTime";this.realTimeValid=(t=0)=>this.time()>=t&&(this.time()>0||this.increment()>0);this.valid=(t=0)=>!this.isRealTime()||this.realTimeValid(t);this.initialSeconds=()=>this.time()*60;this.notForRatedVariant=()=>!this.isRealTime()||this.time()<.5&&this.increment()===0||this.time()===0&&this.increment()<2;this.clockStr=()=>`${this.time()}+${this.increment()}`;this.speed=()=>this.isRealTime()?M(this.initialSeconds(),this.increment()):"correspondence";this.canSelectMode=()=>this.modes.length>1}},R=(e,t,r,l,o,n,a)=>new h(e,t,u(d(r,V,100,14),n),u(d(l,c,100,5),n),u(d(o,f,20,7),n),a),k=["unlimited","realTime","correspondence"],d=(e,t,r,l)=>{for(let o=0;o<r;o++)if(t(o)===e)return o;return l},p=[0,1/4,1/2,3/4,1,3/2,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,25,30,35,40,45,60,75,90,105,120,135,150,165,180],V=e=>e<p.length?p[e]:180,c=e=>{if(e<=20)return e;switch(e){case 21:return 25;case 22:return 30;case 23:return 35;case 24:return 40;case 25:return 45;case 26:return 60;case 27:return 90;case 28:return 120;case 29:return 150;default:return 180}},f=e=>{if(e<=3)return e;switch(e){case 4:return 5;case 5:return 7;case 6:return 10;default:return 14}};var s=({key:e,name:t},r)=>S("option",{attrs:{value:e,selected:e===r}},t);var $=e=>[i("label",{attrs:{for:"sf_color"}},i18n.site.side),i("select#sf_color",{on:{change:t=>e(t.target.value)}},T.map(t=>s({key:t,name:y(t)},e())))],A=e=>i("div.config-group",[i("div.label",i18n.site.side),i("group.radio.color-picker.color-cards",T.map(t=>i("div",[i(`input#color-picker-${t}`,{attrs:{name:"color",type:"radio",value:t,checked:e()===t},on:{change:()=>e(t)}}),i("label.card-radio",{attrs:{for:`color-picker-${t}`}},[i("div.color-picker__button",{class:{[t]:!0}},i("icon")),i("span.text",y(t))])])))]);var b=e=>e===1/4?"\xBC":e===1/2?"\xBD":e===3/4?"\xBE":e.toString(),I=e=>[x(e),e.mode()==="realTime"&&i("div.time-choice",[i("label",{attrs:{for:"sf_time"}},i18n.site.minutesPerSide),i("select#sf_time",{on:{change:t=>e.timeV(parseFloat(t.target.value))}},p.map((t,r)=>s({key:r.toString(),name:b(t)},e.timeV().toString())))]),e.mode()==="realTime"&&i("div.increment-choice",[i("label",{attrs:{for:"sf_increment"}},i18n.site.incrementInSeconds),i("select#sf_increment",{on:{change:t=>e.incrementV(parseInt(t.target.value))}},Array.from(Array(31).keys()).map(t=>s({key:t.toString(),name:c(t).toString()},e.incrementV().toString())))]),e.mode()==="correspondence"&&i("div.days-choice",[i("label",{attrs:{for:"sf_days"}},i18n.site.daysPerTurn),i("select#sf_days",{on:{change:t=>e.daysV(parseInt(t.target.value))}},Array.from(Array(7).keys()).map(t=>s({key:(t+1).toString(),name:f(t+1).toString()},e.daysV().toString())))])],x=e=>e.canSelectMode()&&i("div.label-select",[i("label",{attrs:{for:"sf_timeMode"}},i18n.site.timeControl),i("select#sf_timeMode",{on:{change:t=>{console.log("Time mode changed to",t.target.value),e.mode(t.target.value)}}},k.filter(t=>e.modes.includes(t)).map(t=>s({key:t,name:i18n.site[t]},e.mode())))]),g=(e,t,r,l)=>i("input.range",{class:l,attrs:{type:"range",min:e,max:t,value:r()},hook:{update:(o,n)=>{let a=n.elm;a.value=r().toString()}},on:{input:o=>r(parseFloat(o.target.value))}}),W=(e,t=0)=>{if(site.blindMode)return i("div.config-group",I(e));let r=e.mode(),o=e.canSelectMode()?i("div.tabs-horiz",{attrs:{role:"tablist"}},e.modes.map(a=>i("button",{attrs:{role:"tab",tabindex:0},class:{active:r===a},on:{click:()=>e.mode(a)}},i18n.site[a]))):null,n=null;if(r==="realTime"){let[a,v]=[e.time(),e.increment()];n=i("div.time-panel",[i("div.sliders-grid",[i("div.slider-container",[i("div.label-row",[i("label",i18n.site.minutesPerSide),i("span.val-box",b(a))]),g(0,38,e.timeV,{failure:!e.realTimeValid(t)})]),i("div.slider-separator","+"),i("div.slider-container",[i("div.label-row",[i("span.val-box",v.toString()),i("label",i18n.site.incrementInSeconds)]),g(0,30,e.incrementV,{failure:!e.realTimeValid(t)})])]),i("div.presets",e.presets.map(m=>i("button.preset-btn",{class:{active:a===m.lim&&v===m.inc},on:{click:()=>{e.timeV(d(m.lim,V,100,9)),e.incrementV(d(m.inc,c,100,0))}}},`${b(m.lim)}+${m.inc}`)))])}else r==="correspondence"?n=i("div.time-panel",[i("div.slider-container.full-width",[i("div.label-row",[i("label",i18n.site.daysPerTurn),i("span.val-box",e.days().toString())]),g(1,7,e.daysV)])]):r==="unlimited"&&(n=i("div.time-panel",i18n.site.unlimitedDescription));return i("div.config-group.time-control-tabs",[o,n])};export{R as a,k as b,s as c,$ as d,A as e,W as f};
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.