scrabble-solver
Version:
Scrabble Solver 2 - Free, open-source, cross-platform, multi-language analysis tool for Scrabble, Scrabble Duel, Super Scrabble, Letter League, Crossplay, Literaki, and Kelimelik. Quickly find the top-scoring words using the given board and tiles.
1 lines • 260 kB
JavaScript
exports.id=712,exports.ids=[712],exports.modules={145:a=>{a.exports={results:"Results_results__RAvy9",emptyState:"Results_emptyState__HkpYj",content:"Results_content__eBfb2",listContainer:"Results_listContainer__y4jAK",list:"Results_list__ep2TB",outdated:"Results_outdated__xbp6D",header:"Results_header__f0CUM",headerButton:"Results_headerButton__Cl1_U",headerButtonLabel:"Results_headerButtonLabel__OxgLh",headerButtonIcon:"Results_headerButtonIcon__FL84f",result:"Results_result__S0y54",highlighted:"Results_highlighted__LM8tL",resultContent:"Results_resultContent__QZg6c",word:"Results_word__vw_0W",cell:"Results_cell__OQlhc",stat:"Results_stat__zl_Bp",points:"Results_points__vyk3z",coordinates:"Results_coordinates__1Ph_Z",solveButton:"Results_solveButton__V3YrS",sortIcon:"Results_sortIcon__W8p9d",input:"Results_input__4Te0e",highlight:"Results_highlight__RIiBE"}},577:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.letterLeague=void 0;let d=c(57472);b.letterLeague={bingo:{multiplier:2},blankScore:0,blanksCount:2,boardHeight:19,boardWidth:27,game:c(97616).Game.LetterLeague,name:"Letter League",rackSize:7,bonuses:[{multiplier:2,type:d.BONUS_CHARACTER,x:3,y:0},{multiplier:2,type:d.BONUS_CHARACTER,x:6,y:0},{multiplier:2,type:d.BONUS_CHARACTER,x:8,y:0},{multiplier:2,type:d.BONUS_CHARACTER,x:11,y:0},{multiplier:2,type:d.BONUS_CHARACTER,x:15,y:0},{multiplier:2,type:d.BONUS_CHARACTER,x:18,y:0},{multiplier:2,type:d.BONUS_CHARACTER,x:20,y:0},{multiplier:2,type:d.BONUS_CHARACTER,x:23,y:0},{multiplier:2,type:d.BONUS_CHARACTER,x:1,y:1},{multiplier:2,type:d.BONUS_WORD,x:5,y:1},{multiplier:2,type:d.BONUS_WORD,x:9,y:1},{multiplier:2,type:d.BONUS_CHARACTER,x:13,y:1},{multiplier:2,type:d.BONUS_WORD,x:17,y:1},{multiplier:2,type:d.BONUS_WORD,x:21,y:1},{multiplier:2,type:d.BONUS_CHARACTER,x:25,y:1},{multiplier:2,type:d.BONUS_CHARACTER,x:4,y:2},{multiplier:3,type:d.BONUS_CHARACTER,x:6,y:2},{multiplier:3,type:d.BONUS_CHARACTER,x:8,y:2},{multiplier:2,type:d.BONUS_CHARACTER,x:10,y:2},{multiplier:2,type:d.BONUS_CHARACTER,x:16,y:2},{multiplier:3,type:d.BONUS_CHARACTER,x:18,y:2},{multiplier:3,type:d.BONUS_CHARACTER,x:20,y:2},{multiplier:2,type:d.BONUS_CHARACTER,x:22,y:2},{multiplier:2,type:d.BONUS_CHARACTER,x:0,y:3},{multiplier:2,type:d.BONUS_WORD,x:1,y:3},{multiplier:2,type:d.BONUS_CHARACTER,x:2,y:3},{multiplier:3,type:d.BONUS_WORD,x:7,y:3},{multiplier:2,type:d.BONUS_CHARACTER,x:12,y:3},{multiplier:2,type:d.BONUS_WORD,x:13,y:3},{multiplier:2,type:d.BONUS_CHARACTER,x:14,y:3},{multiplier:3,type:d.BONUS_WORD,x:19,y:3},{multiplier:2,type:d.BONUS_CHARACTER,x:24,y:3},{multiplier:2,type:d.BONUS_WORD,x:25,y:3},{multiplier:2,type:d.BONUS_CHARACTER,x:26,y:3},{multiplier:2,type:d.BONUS_CHARACTER,x:4,y:4},{multiplier:3,type:d.BONUS_CHARACTER,x:6,y:4},{multiplier:3,type:d.BONUS_CHARACTER,x:8,y:4},{multiplier:2,type:d.BONUS_CHARACTER,x:10,y:4},{multiplier:2,type:d.BONUS_CHARACTER,x:16,y:4},{multiplier:3,type:d.BONUS_CHARACTER,x:18,y:4},{multiplier:3,type:d.BONUS_CHARACTER,x:20,y:4},{multiplier:2,type:d.BONUS_CHARACTER,x:22,y:4},{multiplier:2,type:d.BONUS_CHARACTER,x:1,y:5},{multiplier:2,type:d.BONUS_WORD,x:5,y:5},{multiplier:2,type:d.BONUS_WORD,x:9,y:5},{multiplier:2,type:d.BONUS_CHARACTER,x:13,y:5},{multiplier:2,type:d.BONUS_WORD,x:17,y:5},{multiplier:2,type:d.BONUS_WORD,x:21,y:5},{multiplier:2,type:d.BONUS_CHARACTER,x:25,y:5},{multiplier:2,type:d.BONUS_CHARACTER,x:3,y:6},{multiplier:2,type:d.BONUS_CHARACTER,x:6,y:6},{multiplier:2,type:d.BONUS_CHARACTER,x:8,y:6},{multiplier:2,type:d.BONUS_CHARACTER,x:11,y:6},{multiplier:2,type:d.BONUS_CHARACTER,x:15,y:6},{multiplier:2,type:d.BONUS_CHARACTER,x:18,y:6},{multiplier:2,type:d.BONUS_CHARACTER,x:20,y:6},{multiplier:2,type:d.BONUS_CHARACTER,x:23,y:6},{multiplier:2,type:d.BONUS_WORD,x:4,y:7},{multiplier:2,type:d.BONUS_WORD,x:10,y:7},{multiplier:2,type:d.BONUS_WORD,x:16,y:7},{multiplier:2,type:d.BONUS_WORD,x:22,y:7},{multiplier:3,type:d.BONUS_CHARACTER,x:0,y:8},{multiplier:3,type:d.BONUS_CHARACTER,x:2,y:8},{multiplier:2,type:d.BONUS_CHARACTER,x:7,y:8},{multiplier:3,type:d.BONUS_CHARACTER,x:12,y:8},{multiplier:3,type:d.BONUS_CHARACTER,x:14,y:8},{multiplier:2,type:d.BONUS_CHARACTER,x:19,y:8},{multiplier:3,type:d.BONUS_CHARACTER,x:24,y:8},{multiplier:3,type:d.BONUS_CHARACTER,x:26,y:8},{multiplier:2,type:d.BONUS_WORD,x:3,y:9},{multiplier:2,type:d.BONUS_WORD,x:7,y:9},{multiplier:2,type:d.BONUS_WORD,x:11,y:9},{multiplier:2,type:d.BONUS_WORD,x:15,y:9},{multiplier:2,type:d.BONUS_WORD,x:19,y:9},{multiplier:2,type:d.BONUS_WORD,x:23,y:9},{multiplier:3,type:d.BONUS_CHARACTER,x:0,y:10},{multiplier:3,type:d.BONUS_CHARACTER,x:2,y:10},{multiplier:2,type:d.BONUS_CHARACTER,x:7,y:10},{multiplier:3,type:d.BONUS_CHARACTER,x:12,y:10},{multiplier:3,type:d.BONUS_CHARACTER,x:14,y:10},{multiplier:2,type:d.BONUS_CHARACTER,x:19,y:10},{multiplier:3,type:d.BONUS_CHARACTER,x:24,y:10},{multiplier:3,type:d.BONUS_CHARACTER,x:26,y:10},{multiplier:2,type:d.BONUS_WORD,x:4,y:11},{multiplier:2,type:d.BONUS_WORD,x:10,y:11},{multiplier:2,type:d.BONUS_WORD,x:16,y:11},{multiplier:2,type:d.BONUS_WORD,x:22,y:11},{multiplier:2,type:d.BONUS_CHARACTER,x:3,y:12},{multiplier:2,type:d.BONUS_CHARACTER,x:6,y:12},{multiplier:2,type:d.BONUS_CHARACTER,x:8,y:12},{multiplier:2,type:d.BONUS_CHARACTER,x:11,y:12},{multiplier:2,type:d.BONUS_CHARACTER,x:15,y:12},{multiplier:2,type:d.BONUS_CHARACTER,x:18,y:12},{multiplier:2,type:d.BONUS_CHARACTER,x:20,y:12},{multiplier:2,type:d.BONUS_CHARACTER,x:23,y:12},{multiplier:2,type:d.BONUS_CHARACTER,x:1,y:13},{multiplier:2,type:d.BONUS_WORD,x:5,y:13},{multiplier:2,type:d.BONUS_WORD,x:9,y:13},{multiplier:2,type:d.BONUS_CHARACTER,x:13,y:13},{multiplier:2,type:d.BONUS_WORD,x:17,y:13},{multiplier:2,type:d.BONUS_WORD,x:21,y:13},{multiplier:2,type:d.BONUS_CHARACTER,x:25,y:13},{multiplier:2,type:d.BONUS_CHARACTER,x:4,y:14},{multiplier:3,type:d.BONUS_CHARACTER,x:6,y:14},{multiplier:3,type:d.BONUS_CHARACTER,x:8,y:14},{multiplier:2,type:d.BONUS_CHARACTER,x:10,y:14},{multiplier:2,type:d.BONUS_CHARACTER,x:16,y:14},{multiplier:3,type:d.BONUS_CHARACTER,x:18,y:14},{multiplier:3,type:d.BONUS_CHARACTER,x:20,y:14},{multiplier:2,type:d.BONUS_CHARACTER,x:22,y:14},{multiplier:2,type:d.BONUS_CHARACTER,x:0,y:15},{multiplier:2,type:d.BONUS_WORD,x:1,y:15},{multiplier:2,type:d.BONUS_CHARACTER,x:2,y:15},{multiplier:3,type:d.BONUS_WORD,x:7,y:15},{multiplier:2,type:d.BONUS_CHARACTER,x:12,y:15},{multiplier:2,type:d.BONUS_WORD,x:13,y:15},{multiplier:2,type:d.BONUS_CHARACTER,x:14,y:15},{multiplier:3,type:d.BONUS_WORD,x:19,y:15},{multiplier:2,type:d.BONUS_CHARACTER,x:24,y:15},{multiplier:2,type:d.BONUS_WORD,x:25,y:15},{multiplier:2,type:d.BONUS_CHARACTER,x:26,y:15},{multiplier:2,type:d.BONUS_CHARACTER,x:4,y:16},{multiplier:3,type:d.BONUS_CHARACTER,x:6,y:16},{multiplier:3,type:d.BONUS_CHARACTER,x:8,y:16},{multiplier:2,type:d.BONUS_CHARACTER,x:10,y:16},{multiplier:2,type:d.BONUS_CHARACTER,x:16,y:16},{multiplier:3,type:d.BONUS_CHARACTER,x:18,y:16},{multiplier:3,type:d.BONUS_CHARACTER,x:20,y:16},{multiplier:2,type:d.BONUS_CHARACTER,x:22,y:16},{multiplier:2,type:d.BONUS_CHARACTER,x:1,y:17},{multiplier:2,type:d.BONUS_WORD,x:5,y:17},{multiplier:2,type:d.BONUS_WORD,x:9,y:17},{multiplier:2,type:d.BONUS_CHARACTER,x:13,y:17},{multiplier:2,type:d.BONUS_WORD,x:17,y:17},{multiplier:2,type:d.BONUS_WORD,x:21,y:17},{multiplier:2,type:d.BONUS_CHARACTER,x:25,y:17},{multiplier:2,type:d.BONUS_CHARACTER,x:3,y:18},{multiplier:2,type:d.BONUS_CHARACTER,x:6,y:18},{multiplier:2,type:d.BONUS_CHARACTER,x:8,y:18},{multiplier:2,type:d.BONUS_CHARACTER,x:11,y:18},{multiplier:2,type:d.BONUS_CHARACTER,x:15,y:18},{multiplier:2,type:d.BONUS_CHARACTER,x:18,y:18},{multiplier:2,type:d.BONUS_CHARACTER,x:20,y:18},{multiplier:2,type:d.BONUS_CHARACTER,x:23,y:18}]}},674:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{M:()=>s});var e=c(69198),f=c(68455),g=c(51044),h=c(13709),i=c(2414),j=c(66745),k=c(5675),l=c(19838),m=c(79194),n=c(23633),o=c(34793),p=c(56325),q=a([e,f,g,h,i,j,k,l,m,n,o,p]);[e,f,g,h,i,j,k,l,m,n,o,p]=q.then?(await q)():q;let r=(0,f.default)(),s=(0,e.configureStore)({reducer:{board:g.hJ.reducer,cellFilters:h.gk.reducer,dictionary:i.zp.reducer,hoveredTile:j.wq.reducer,rack:k.oN.reducer,results:l.NQ.reducer,settings:n.sI.reducer,solve:o.AI.reducer,verify:p.YK.reducer},middleware:a=>a({serializableCheck:!1}).concat([r])});r.run(m.H),d()}catch(a){d(a)}})},819:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{E:()=>t});var e=c(8732),f=c(57472),g=c(3892),h=c.n(g),i=c(82015),j=c(83338),k=c(54100),l=c(75396),m=c(77233),n=c(88745),o=c(23612),p=c(1957),q=c.n(p),r=c(23723),s=a([j,m,n,o]);[j,m,n,o]=s.then?(await s)():s;let t=(0,i.forwardRef)(({cell:a,className:b,direction:c,onDirectionToggle:d,onEnterWord:g,onToggleBlank:i,onToggleFilterCell:p,...s},t)=>{let u=(0,m.WD)(),v=(0,j.Ju)(),w=(0,m.N4)(m.QN),x=(0,m.N4)(b=>(0,m.fS)(b,a)),y=(0,m.N4)(m.Sb),z=a.tile.isBlank,A=a.tile.character===f.EMPTY_CELL||!!(0,l.u3)(y,a.x,a.y),{Icon:B,labelTranslationKey:C}=(0,r.g)(x),D=a=>a.preventDefault();return(0,e.jsxs)("div",{className:h()(q().actions,b),ref:t,...s,children:["touchscreen"===w&&(0,e.jsx)(n.$,{"aria-label":u("cell.enter-word"),className:q().action,Icon:k.s3,tooltip:u("cell.enter-word"),onClick:g,onMouseDown:D}),"keyboard"===w&&(0,e.jsx)(o.S,{className:q().action,direction:c,onClick:d,onMouseDown:D}),A&&(0,e.jsx)(n.$,{"aria-label":u(C),className:h()(q().action),Icon:B,tooltip:(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)("span",{children:u(C)}),!v&&(0,e.jsxs)("span",{children:[" (",(0,l.cX)()?"⌘":"Ctrl"," + G)"]})]}),onClick:p,onMouseDown:D}),!A&&(0,e.jsx)(n.$,{"aria-label":u(z?"cell.set-not-blank":"cell.set-blank"),className:q().action,Icon:z?k.NN:k.M6,tooltip:(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)("span",{children:u(z?"cell.set-not-blank":"cell.set-blank")}),!v&&(0,e.jsxs)("span",{children:[" (",u("common.space"),")"]})]}),onClick:i,onMouseDown:D})]})});d()}catch(a){d(a)}})},1827:(a,b,c)=>{"use strict";c.d(b,{F:()=>k});var d=c(8732),e=c(3892),f=c.n(e),g=c(54100),h=c(15397),i=c.n(h);let j={error:g.mh,info:g.U9,success:g.Jl,warning:g.ju},k=({children:a,className:b,variant:c,...e})=>{let g=j[c];return(0,d.jsxs)("div",{className:f()(i().alert,b,{[i().error]:"error"===c,[i().info]:"info"===c,[i().success]:"success"===c,[i().warning]:"warning"===c}),...e,children:[(0,d.jsx)("div",{className:i().iconContainer,children:(0,d.jsx)(g,{"aria-hidden":"true",className:i().icon,role:"img"})}),(0,d.jsx)("div",{className:i().content,children:a})]})}},1912:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{O:()=>e.O});var e=c(43109),f=a([e]);e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},1957:a=>{a.exports={actions:"Actions_actions__JclIc",action:"Actions_action__zkQOb"}},2414:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Fe:()=>e.Fe,Tx:()=>e.Tx,dp:()=>e.dp,nD:()=>e.nD,zp:()=>f.z}),c(11117);var e=c(84932),f=c(48736),g=a([e,f]);[e,f]=g.then?(await g)():g,d()}catch(a){d(a)}})},2530:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{G:()=>o});var e=c(8732),f=c(3892),g=c.n(f),h=c(14062),i=c(54100),j=c(77233),k=c(88745),l=c(68622),m=c.n(l),n=a([h,j,k]);[h,j,k]=n.then?(await n)():n;let o=({className:a})=>{let b=(0,h.useDispatch)(),c=(0,j.WD)(),d=(0,j.N4)(j.jt),f=(0,j.N4)(j.J_);return(0,e.jsx)(k.$,{"aria-label":c("results.insert"),className:g()(m().insertButton,a),disabled:f||!d,Icon:i.Jl,iconClassName:m().icon,type:"submit",variant:"primary",onClick:()=>{d&&b(j.NQ.actions.applyResult(d))}})};d()}catch(a){d(a)}})},2980:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{g:()=>e.g});var e=c(61629),f=a([e]);e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},3229:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{E:()=>p});var e=c(57472),f=c(97616),g=c(82015),h=c(14062),i=c(83338),j=c(16438),k=c(75396),l=c(77233),m=c(89340),n=a([h,i,l]);[h,i,l]=n.then?(await n)():n;let o=a=>"vertical"===a?"horizontal":"vertical",p=a=>{let b=a.length,c=a[0].length,d=(0,h.useDispatch)(),n=(0,l.N4)(l.zg),p=(0,l.N4)(l.JV),q=(0,g.useMemo)(()=>(0,m.Dv)(c,b,()=>(0,g.createRef)()),[c,b]),[r,s]=(0,g.useState)({x:0,y:0}),[t,u]=(0,g.useState)("horizontal"),v=(0,i.FT)(t),w=(0,g.useMemo)(()=>({x:Math.min(r.x,c-1),y:Math.min(r.y,b-1)}),[r,c,b]),x=(0,g.useCallback)((a,d)=>{let e=Math.min(Math.max(w.x+a,0),c-1),f=Math.min(Math.max(w.y+d,0),b-1);s({x:e,y:f}),q[f][e].current?.focus()},[w,b,q,c]),y=(0,g.useCallback)(a=>(0,m.fe)(q,b=>b.current===a),[q]),z=(0,g.useCallback)(a=>{"horizontal"===v.current?x(a,0):x(0,a)},[x,v]),A=(0,g.useCallback)((g,h)=>{let i=h?(0,k.EQ)(n,h).filter(a=>a!==e.BLANK):[e.BLANK],j=[],m=new f.Board({rows:a.map(a=>a.map(a=>a.clone()))}),{x:o,y:p}=g,q=()=>{"horizontal"===v.current?++o:++p};i.forEach(a=>{if(o>=n.boardWidth||p>=n.boardHeight)return;let d=p-1>0,f=o>0,g=o+1<c,h=p+1<b;if(d){let b=m.rows[p-1][o],c=b.tile.character+a;if(!b.tile.isBlank&&n.twoCharacterTiles.includes(c)){let a=l.hJ.actions.changeCellValue({x:o,y:p-1,value:c});m=l.hJ.reducer(m,a),j.push(a);return}}if(h){let b=m.rows[p+1][o],c=a+b.tile.character;if(!b.tile.isBlank&&n.twoCharacterTiles.includes(c)){let b=l.hJ.actions.changeCellValue({x:o,y:p,value:a}),c=l.hJ.actions.changeCellValue({x:o,y:p+1,value:e.EMPTY_CELL});m=l.hJ.reducer(l.hJ.reducer(m,b),c),j.push(b,c),q();return}}if(f){let b=m.rows[p][o-1],c=b.tile.character+a;if(!b.tile.isBlank&&n.twoCharacterTiles.includes(c)){let a=l.hJ.actions.changeCellValue({x:o-1,y:p,value:c});m=l.hJ.reducer(m,a),j.push(a);return}}if(g){let b=m.rows[p][o+1],c=a+b.tile.character;if(!b.tile.isBlank&&n.twoCharacterTiles.includes(c)){let b=l.hJ.actions.changeCellValue({x:o,y:p,value:a}),c=l.hJ.actions.changeCellValue({x:o+1,y:p,value:e.EMPTY_CELL});m=l.hJ.reducer(l.hJ.reducer(m,b),c),j.push(b,c),q();return}}if(!h||!g){let b=m.rows[p][o],c=b.tile.character+a;if(!b.tile.isBlank&&n.twoCharacterTiles.includes(c)){let a=l.hJ.actions.changeCellValue({x:o,y:p,value:c});m=l.hJ.reducer(m,a),j.push(a);return}}let i=l.hJ.actions.changeCellValue({x:o,y:p,value:a});m=l.hJ.reducer(m,i),j.push(i),q()}),z(Math.abs(g.x-o)+Math.abs(g.y-p)),j.forEach(d)},[n,v,d,b,z,a,c]),B=(0,g.useCallback)(b=>{let c=y(b.target);if(!c)return;let f=(0,k.PK)(b.target);if(!f){d(l.hJ.actions.changeCellValue({...c,value:e.EMPTY_CELL})),z(-1);return}if(f===e.EMPTY_CELL){let{x:b,y:e}=c;if(a[e][b].hasTile())return void d(l.hJ.actions.toggleCellIsBlank(c))}A(c,f)},[d,A,z,a,y]),C=(0,g.useCallback)(()=>u(o),[]),D=(0,g.useCallback)((a,b)=>{s({x:a,y:b})},[]),E=(0,g.useMemo)(()=>(0,k.k)({onArrowDown:a=>{a.preventDefault(),"horizontal"===t?C():x(0,1)},onArrowLeft:a=>{a.preventDefault(),"vertical"===t?(C(),x("ltr"===j.x[p].direction?-1:0,0)):x("ltr"===j.x[p].direction?-1:1,0)},onArrowRight:a=>{a.preventDefault(),"vertical"===t?(C(),x("ltr"===j.x[p].direction?0:-1,0)):x("ltr"===j.x[p].direction?1:-1,0)},onArrowUp:a=>{a.preventDefault(),"horizontal"===t&&C(),x(0,-1)},onBackspace:a=>{let b=y(a.target);b&&(a.preventDefault(),d(l.hJ.actions.changeCellValue({...b,value:e.EMPTY_CELL})),z(-1))},onDelete:a=>{let b=y(a.target);b&&(a.preventDefault(),d(l.hJ.actions.changeCellValue({...b,value:e.EMPTY_CELL})),z(1))},onKeyDown:b=>{let c=y(b.target);if(!c)return;let{x:e,y:f}=c,g=b.key.toLocaleLowerCase(),h=n.getTwoCharacterTileByPrefix(g);if((0,k._0)(b)&&h){b.preventDefault(),d(l.hJ.actions.changeCellValue({x:e,y:f,value:h})),z(1);return}let i=a[f][e];if((0,k._0)(b)&&"g"===g){b.preventDefault(),i.hasTile()||d(l.gk.actions.toggle(c));return}let j=i.tile.character+g;if(n.twoCharacterTiles.includes(j)){b.preventDefault(),d(l.hJ.actions.changeCellValue({...c,value:j})),z(1);return}b.target instanceof HTMLInputElement&&b.target.value.toLocaleLowerCase()===g&&(b.preventDefault(),z(1))},onSpace:a=>{let b=y(a.target);b&&(a.preventDefault(),d(l.hJ.actions.toggleCellIsBlank(b)))}}),[x,n,t,d,y,p,z,C,a]),F=(0,g.useCallback)(a=>{if(!(a.target instanceof HTMLInputElement))return;let b=y(a.target);if(!b)return;a.preventDefault();let c=a.clipboardData.getData("text/plain").toLocaleLowerCase();A(b,c)},[y,A]);return[{activeIndex:w,direction:t,inputRefs:q},{insertValue:A,onChange:B,onDirectionToggle:C,onFocus:D,onKeyDown:E,onPaste:F}]};d()}catch(a){d(a)}})},3577:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{R:()=>e.R});var e=c(4009),f=a([e]);e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},3936:(a,b,c)=>{"use strict";c.d(b,{E:()=>f});var d=c(57472),e=c(75396);let f=(a,b,c,f)=>{let g=b.rows.flat().filter(a=>!a.isEmpty),h=g.filter(a=>!a.tile.isBlank),i=Object.fromEntries(a.tiles.map(a=>[a.character,{...a,usedCount:0}])),j={character:d.BLANK,count:a.blanksCount,score:a.blankScore,usedCount:g.filter(a=>a.tile.isBlank).length+c.filter(a=>a===d.BLANK).length},k=[...h.map(a=>a.tile.character),...c.filter(a=>a!==d.BLANK)];for(let a of k.filter(a=>void 0===i[a]))i[a]={character:a,count:0,score:0,usedCount:0};for(let a of k)++i[a].usedCount;let l=(0,e.sz)("character",f);return[...Object.values(i).sort(l),j]}},4009:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{R:()=>o});var e=c(8732),f=c(3892),g=c.n(f),h=c(82015),i=c(16438),j=c(77233),k=c(31803),l=c(25489),m=c.n(l),n=a([j]);j=(n.then?(await n)():n)[0];let o=({className:a,wave:b=!0})=>{let c=(0,j.WD)(),d=(0,j.N4)(j.JV),{direction:f}=i.x[d],l=c("common.loading"),n="ltr"===f?l:l.split("").reverse().join(""),o=(0,h.useMemo)(()=>[n.toLocaleUpperCase().split(" ")],[n]);return(0,e.jsxs)("div",{"aria-label":l,className:g()(m().loading,a),"data-testid":"loading",role:"status",children:[(0,e.jsx)("div",{className:m().dim}),(0,e.jsx)("div",{className:m().text,children:(0,e.jsx)(k.m,{className:g()(m().tiles),content:o,dropShadow:!0,wave:b})})]})};d()}catch(a){d(a)}})},4017:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{K:()=>m});var e=c(8732),f=c(3892),g=c.n(f),h=c(61760),i=c(67069),j=c.n(i),k=c(32292),l=a([h,k]);[h,k]=l.then?(await l)():l;let m=Object.assign(({className:a,Icon:b,tooltip:c,...d})=>(0,e.jsx)(h.m,{tooltip:c,children:(0,e.jsx)("button",{className:g()(j().iconButton,a),type:"button",...d,children:(0,e.jsx)("span",{className:j().content,children:(0,e.jsx)(b,{"aria-hidden":"true",className:j().icon,role:"img"})})})}),{Link:k.N});d()}catch(a){d(a)}})},4423:a=>{a.exports={dictionary:"Dictionary_dictionary__FfG3h",isAllowed:"Dictionary_isAllowed__Jw9sB",isNotAllowed:"Dictionary_isNotAllowed__Y5tLd",content:"Dictionary_content___ZOAM",result:"Dictionary_result__kS3fd",resultContent:"Dictionary_resultContent__GBlvP",word:"Dictionary_word__faOui",definitions:"Dictionary_definitions__uU_Zv",definition:"Dictionary_definition__BJGy7"}},4554:function(a,b,c){"use strict";var d=this&&this.__createBinding||(Object.create?function(a,b,c,d){void 0===d&&(d=c);var e=Object.getOwnPropertyDescriptor(b,c);(!e||("get"in e?!b.__esModule:e.writable||e.configurable))&&(e={enumerable:!0,get:function(){return b[c]}}),Object.defineProperty(a,d,e)}:function(a,b,c,d){void 0===d&&(d=c),a[d]=b[c]}),e=this&&this.__exportStar||function(a,b){for(var c in a)"default"===c||Object.prototype.hasOwnProperty.call(b,c)||d(b,a,c)};Object.defineProperty(b,"__esModule",{value:!0}),e(c(28782),b),e(c(39716),b),e(c(92454),b),e(c(41834),b),e(c(75369),b),e(c(17163),b),e(c(52798),b),e(c(25678),b)},4844:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{y:()=>k});var e=c(8732),f=c(14062),g=c(54100),h=c(77233),i=c(88745),j=a([f,h,i]);[f,h,i]=j.then?(await j)():j;let k=({className:a})=>{let b=(0,f.useDispatch)(),c=(0,h.WD)(),d=(0,h.N4)(h.M9),j=(0,h.N4)(h.ij),k=(0,h.N4)(h.J_),l=j.some(a=>null!==a);return(0,e.jsx)(i.$,{"aria-label":c("results.solve"),className:a,disabled:d||!k||!l,Icon:g.vj,type:"submit",variant:"primary",onClick:()=>{b(h.AI.actions.submit())},children:c("results.solve")})};d()}catch(a){d(a)}})},4937:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.literaki=void 0;let d=c(57472);b.literaki={bingo:{score:50},blankScore:0,blanksCount:2,boardHeight:15,boardWidth:15,game:c(97616).Game.Literaki,name:"Literaki",rackSize:7,bonuses:[{multiplier:3,score:5,type:d.BONUS_CHARACTER,x:0,y:0},{multiplier:3,type:d.BONUS_WORD,x:2,y:0},{multiplier:3,score:2,type:d.BONUS_CHARACTER,x:5,y:0},{multiplier:3,score:5,type:d.BONUS_CHARACTER,x:7,y:0},{multiplier:3,score:2,type:d.BONUS_CHARACTER,x:9,y:0},{multiplier:3,type:d.BONUS_WORD,x:12,y:0},{multiplier:3,score:5,type:d.BONUS_CHARACTER,x:14,y:0},{multiplier:3,score:2,type:d.BONUS_CHARACTER,x:4,y:1},{multiplier:3,score:5,type:d.BONUS_CHARACTER,x:6,y:1},{multiplier:3,score:5,type:d.BONUS_CHARACTER,x:8,y:1},{multiplier:3,score:2,type:d.BONUS_CHARACTER,x:10,y:1},{multiplier:3,type:d.BONUS_WORD,x:0,y:2},{multiplier:3,score:2,type:d.BONUS_CHARACTER,x:3,y:2},{multiplier:2,type:d.BONUS_WORD,x:5,y:2},{multiplier:3,score:1,type:d.BONUS_CHARACTER,x:7,y:2},{multiplier:2,type:d.BONUS_WORD,x:9,y:2},{multiplier:3,score:2,type:d.BONUS_CHARACTER,x:11,y:2},{multiplier:3,type:d.BONUS_WORD,x:14,y:2},{multiplier:3,score:2,type:d.BONUS_CHARACTER,x:2,y:3},{multiplier:2,type:d.BONUS_WORD,x:4,y:3},{multiplier:3,score:1,type:d.BONUS_CHARACTER,x:6,y:3},{multiplier:3,score:1,type:d.BONUS_CHARACTER,x:8,y:3},{multiplier:2,type:d.BONUS_WORD,x:10,y:3},{multiplier:3,score:2,type:d.BONUS_CHARACTER,x:12,y:3},{multiplier:3,score:2,type:d.BONUS_CHARACTER,x:1,y:4},{multiplier:2,type:d.BONUS_WORD,x:3,y:4},{multiplier:3,score:1,type:d.BONUS_CHARACTER,x:5,y:4},{multiplier:3,score:1,type:d.BONUS_CHARACTER,x:9,y:4},{multiplier:2,type:d.BONUS_WORD,x:11,y:4},{multiplier:3,score:2,type:d.BONUS_CHARACTER,x:13,y:4},{multiplier:3,score:2,type:d.BONUS_CHARACTER,x:0,y:5},{multiplier:2,type:d.BONUS_WORD,x:2,y:5},{multiplier:3,score:1,type:d.BONUS_CHARACTER,x:4,y:5},{multiplier:3,score:3,type:d.BONUS_CHARACTER,x:7,y:5},{multiplier:3,score:1,type:d.BONUS_CHARACTER,x:10,y:5},{multiplier:2,type:d.BONUS_WORD,x:12,y:5},{multiplier:3,score:2,type:d.BONUS_CHARACTER,x:14,y:5},{multiplier:3,score:5,type:d.BONUS_CHARACTER,x:1,y:6},{multiplier:3,score:1,type:d.BONUS_CHARACTER,x:3,y:6},{multiplier:3,score:3,type:d.BONUS_CHARACTER,x:6,y:6},{multiplier:3,score:3,type:d.BONUS_CHARACTER,x:8,y:6},{multiplier:3,score:1,type:d.BONUS_CHARACTER,x:11,y:6},{multiplier:3,score:5,type:d.BONUS_CHARACTER,x:13,y:6},{multiplier:3,score:5,type:d.BONUS_CHARACTER,x:0,y:7},{multiplier:3,score:1,type:d.BONUS_CHARACTER,x:2,y:7},{multiplier:3,score:3,type:d.BONUS_CHARACTER,x:5,y:7},{multiplier:3,score:5,type:d.BONUS_CHARACTER,x:7,y:7},{multiplier:3,score:3,type:d.BONUS_CHARACTER,x:9,y:7},{multiplier:3,score:1,type:d.BONUS_CHARACTER,x:12,y:7},{multiplier:3,score:5,type:d.BONUS_CHARACTER,x:14,y:7},{multiplier:3,score:5,type:d.BONUS_CHARACTER,x:1,y:8},{multiplier:3,score:1,type:d.BONUS_CHARACTER,x:3,y:8},{multiplier:3,score:3,type:d.BONUS_CHARACTER,x:6,y:8},{multiplier:3,score:3,type:d.BONUS_CHARACTER,x:8,y:8},{multiplier:3,score:1,type:d.BONUS_CHARACTER,x:11,y:8},{multiplier:3,score:5,type:d.BONUS_CHARACTER,x:13,y:8},{multiplier:3,score:2,type:d.BONUS_CHARACTER,x:0,y:9},{multiplier:2,type:d.BONUS_WORD,x:2,y:9},{multiplier:3,score:1,type:d.BONUS_CHARACTER,x:4,y:9},{multiplier:3,score:3,type:d.BONUS_CHARACTER,x:7,y:9},{multiplier:3,score:1,type:d.BONUS_CHARACTER,x:10,y:9},{multiplier:2,type:d.BONUS_WORD,x:12,y:9},{multiplier:3,score:2,type:d.BONUS_CHARACTER,x:14,y:9},{multiplier:3,score:2,type:d.BONUS_CHARACTER,x:1,y:10},{multiplier:2,type:d.BONUS_WORD,x:3,y:10},{multiplier:3,score:1,type:d.BONUS_CHARACTER,x:5,y:10},{multiplier:3,score:1,type:d.BONUS_CHARACTER,x:9,y:10},{multiplier:2,type:d.BONUS_WORD,x:11,y:10},{multiplier:3,score:2,type:d.BONUS_CHARACTER,x:13,y:10},{multiplier:3,score:2,type:d.BONUS_CHARACTER,x:2,y:11},{multiplier:2,type:d.BONUS_WORD,x:4,y:11},{multiplier:3,score:1,type:d.BONUS_CHARACTER,x:6,y:11},{multiplier:3,score:1,type:d.BONUS_CHARACTER,x:8,y:11},{multiplier:2,type:d.BONUS_WORD,x:10,y:11},{multiplier:3,score:2,type:d.BONUS_CHARACTER,x:12,y:11},{multiplier:3,type:d.BONUS_WORD,x:0,y:12},{multiplier:3,score:2,type:d.BONUS_CHARACTER,x:3,y:12},{multiplier:2,type:d.BONUS_WORD,x:5,y:12},{multiplier:3,score:1,type:d.BONUS_CHARACTER,x:7,y:12},{multiplier:2,type:d.BONUS_WORD,x:9,y:12},{multiplier:3,score:2,type:d.BONUS_CHARACTER,x:11,y:12},{multiplier:3,type:d.BONUS_WORD,x:14,y:12},{multiplier:3,score:2,type:d.BONUS_CHARACTER,x:4,y:13},{multiplier:3,score:5,type:d.BONUS_CHARACTER,x:6,y:13},{multiplier:3,score:5,type:d.BONUS_CHARACTER,x:8,y:13},{multiplier:3,score:2,type:d.BONUS_CHARACTER,x:10,y:13},{multiplier:3,score:5,type:d.BONUS_CHARACTER,x:0,y:14},{multiplier:3,type:d.BONUS_WORD,x:2,y:14},{multiplier:3,score:2,type:d.BONUS_CHARACTER,x:5,y:14},{multiplier:3,score:5,type:d.BONUS_CHARACTER,x:7,y:14},{multiplier:3,score:2,type:d.BONUS_CHARACTER,x:9,y:14},{multiplier:3,type:d.BONUS_WORD,x:12,y:14},{multiplier:3,score:5,type:d.BONUS_CHARACTER,x:14,y:14}]}},5629:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{f:()=>m});var e=c(8732),f=c(3892),g=c.n(f),h=c(77233),i=c(61760),j=c(145),k=c.n(j),l=a([h,i]);[h,i]=l.then?(await l)():l;let m=({children:a,className:b,dataTestId:c,style:d,translationKey:f,tooltip:j,value:l})=>{let m=(0,h.WD)(),n=(0,h.N4)(h.JV),o=l.toLocaleString(n);return(0,e.jsx)(i.m,{tooltip:`${m(f)}: ${j||o}`,children:(0,e.jsx)("div",{className:g()(k().cell,b),"data-testid":c,style:d,children:a||o})})};d()}catch(a){d(a)}})},5675:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{ij:()=>f.i,oN:()=>g.o,xk:()=>f.x});var e=c(16202),f=c(29365),g=c(28245),h=a([e,f,g]);[e,f,g]=h.then?(await h)():h,d()}catch(a){d(a)}})},5712:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{default:()=>o});var e=c(8732),f=c(38849),g=c(99247),h=c.n(g),i=c(14062),j=c(71048),k=c(22620),l=c(77233);c(84426);var m=a([f,i,j,k,l]);[f,i,j,k,l]=m.then?(await m)():m;let n="Scrabble Solver 2 - Free and open-source analysis tool for Scrabble, Scrabble Duel, Super Scrabble, Letter League, Crossplay, Literaki and Kelimelik. Quickly find top scoring words using given letters and board state. Available in English, French, German, Persian, Polish, Romanian, Spanish, and Turkish.",o=({Component:a,pageProps:b})=>(0,e.jsxs)(e.Fragment,{children:[(0,e.jsxs)(h(),{children:[(0,e.jsx)("title",{children:"Scrabble Solver 2"}),(0,e.jsx)("meta",{charSet:"utf-8"}),(0,e.jsx)("meta",{name:"author",content:"Kamil Mielnik"}),(0,e.jsx)("meta",{name:"description",content:n}),(0,e.jsx)("meta",{name:"keywords",content:"Scrabble Solver,Scrabble,Scrabble Duel,Solver,Super Scrabble,Kelimelik,Letter League,Crossplay,NYT Crossplay,Literaki,Board,Open-source,Open,Source,Word,Finder,Cheating,Word,English,Fran\xe7ais,French,Deutsch,German,Polski,Polish,فارسی,Farsi,Espa\xf1ol,Spanish,Rom\xe2nă,Romanian,T\xfcrk\xe7e,Turkish,SOWPODS,TWL06,SJP,FISE-2017,FISE-2,CNRTL,Kamil Mielnik"}),(0,e.jsx)("meta",{name:"robots",content:"index, follow, notranslate, noimageindex"}),(0,e.jsx)("meta",{name:"viewport",content:"width=device-width, initial-scale=1.0"}),(0,e.jsx)("meta",{property:"og:title",content:n}),(0,e.jsx)("meta",{property:"og:type",content:"website"}),(0,e.jsx)("meta",{property:"og:url",content:"https://scrabble-solver.org"}),(0,e.jsx)("meta",{property:"og:image",content:"https://scrabble-solver.org/og.png"}),(0,e.jsx)("meta",{property:"og:image:type",content:"image/png"}),(0,e.jsx)("meta",{property:"og:image:width",content:"1200"}),(0,e.jsx)("meta",{property:"og:image:height",content:"630"}),(0,e.jsx)("meta",{property:"og:image:alt",content:n})]}),(0,e.jsx)(i.Provider,{store:l.M_,children:(0,e.jsxs)(j.L,{children:[(0,e.jsx)(k.Zg,{}),(0,e.jsx)(f.FloatingDelayGroup,{delay:0,children:(0,e.jsx)(a,{...b})})]})})]});d()}catch(a){d(a)}})},6681:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{$:()=>e.$});var e=c(15871),f=a([e]);e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},7100:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.VerticalPattern=void 0;let d=c(39974);class e extends d.Pattern{clone(){return new e(this.board,this.cells.map(a=>a.clone()))}getCollisions(){let a=[];return this.cells.filter(a=>a.isEmpty&&(this.board.collidesLeft(a)||this.board.collidesRight(a))).forEach(b=>{let c=this.board.getRow(b.y),e=b.x-1;for(;e>=0&&c[e].hasTile();)--e;let f=c.slice(e+1,b.x);for(e=b.x+1;e<c.length&&c[e].hasTile();)++e;let g=c.slice(b.x+1,e),h=[...f,b,...g];if(h.length>1){let b=new d.Pattern(this.board,h);a.push(b)}}),a}}b.VerticalPattern=e},8699:(a,b,c)=>{"use strict";c.d(b,{S:()=>f});var d=c(82015),e=c(62698);let f=a=>{let b=(0,e.F)(a);return(0,d.useEffect)(()=>{b.current()},[b])}},8787:(a,b,c)=>{"use strict";c.d(b,{P:()=>e});var d=c(75396);let e=(a,b)=>{let c=(0,d.EQ)(a,b,{upperCaseDigraphsOnly:!0});return Array.from({length:a.rackSize},(a,b)=>"string"==typeof c[b]?c[b]:null)}},9402:a=>{a.exports={resultCandidatePicker:"ResultCandidatePicker_resultCandidatePicker__S_aFf",buttons:"ResultCandidatePicker_buttons__dT8pq",bothEnabled:"ResultCandidatePicker_bothEnabled__yX7kU",button:"ResultCandidatePicker_button__ipqiD",resultCandidate:"ResultCandidatePicker_resultCandidate__TffXx",content:"ResultCandidatePicker_content__1i_5T",points:"ResultCandidatePicker_points__86QEQ",word:"ResultCandidatePicker_word___Wi29",iconContainer:"ResultCandidatePicker_iconContainer__iiYkC",spinnerContainer:"ResultCandidatePicker_spinnerContainer__3nvoz",loading:"ResultCandidatePicker_loading__0iXU_",icon:"ResultCandidatePicker_icon__AyoQE",insert:"ResultCandidatePicker_insert__KAM26"}},11117:(a,b,c)=>{"use strict";c.d(b,{u:()=>d});let d={error:void 0,input:"",isLoading:!1,results:[]}},11295:a=>{a.exports={navButtons:"NavButtons_navButtons__Ar_TQ",button:"NavButtons_button__UKQU0",separator:"NavButtons_separator__lPmge",group:"NavButtons_group__OiFOK",error:"NavButtons_error__kbe3P"}},11467:a=>{a.exports={emptyState:"EmptyState_emptyState__N2idu",tiles:"EmptyState_tiles__FYVO9"}},11814:(a,b,c)=>{"use strict";c.d(b,{M:()=>j});var d=c(8732),e=c(54100),f=c(31803),g=c(37797),h=c.n(g);let i=[["HTTP","404"]],j=()=>(0,d.jsx)("div",{className:h().notFound,children:(0,d.jsxs)("a",{className:h().link,href:"/",children:[(0,d.jsx)(e.oL,{"aria-hidden":"true",className:h().icon,role:"img"}),(0,d.jsx)(f.m,{className:h().tiles,content:i})]})})},12794:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.Config=void 0;let d=c(57472),e=c(94322),f=c(87189);class g{constructor(a){this.bonuses=h(a),this.config=a,this.pointsMap=j(this.config)}get alphabet(){return i(this.config)}get bingo(){return this.config.bingo}get blankScore(){return this.config.blankScore}get blanksCount(){return this.config.blanksCount}get boardHeight(){return this.config.boardHeight}get boardWidth(){return this.config.boardWidth}get game(){return this.config.game}get locale(){return this.config.locale}get twoCharacterTiles(){return this.config.tiles.filter(a=>2===a.character.length).map(a=>a.character)}getCellBonus(a){return this.bonuses.find(b=>b.matchesCellCoordinates(a))}getCellBonusValue(a){return this.getCellBonus(a)?.value||d.NO_BONUS}getCharacterPoints(a){if(null!==a)return a===d.BLANK?this.blankScore:this.pointsMap[a]}getTwoCharacterTileByPrefix(a){if(1===a.length)return this.twoCharacterTiles.find(b=>b.startsWith(a.toLocaleLowerCase()))}getTilePoints(a){if(null!==a)return a.isBlank?this.blankScore:this.getCharacterPoints(a.character)}hasCharacter(a){return a in this.pointsMap}isTwoCharacterTilePrefix(a){return void 0!==this.getTwoCharacterTileByPrefix(a)}get rackSize(){return this.config.rackSize}get supportsRemainingTiles(){return this.tiles.every(a=>"number"==typeof a.count)}get tiles(){return this.config.tiles}toJson(){return this.config}}b.Config=g,g.fromJson=a=>new g(a);let h=a=>a.bonuses.map(a=>{if(a.type===d.BONUS_CHARACTER)return new e.CharacterBonus(a);if(a.type===d.BONUS_WORD)return new f.WordBonus(a);throw Error(`Unsupported Bonus type: "${a.type}"`)}),i=a=>a.tiles.map(({character:a})=>a),j=a=>a.tiles.reduce((a,{character:b,score:c})=>({...a,[b]:c}),{})},12848:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Z:()=>q});var e=c(69198),f=c(82015),g=c(16438),h=c(77233),i=c(38741),j=c(66731),k=a([e,h]);[e,h]=k.then?(await k)():k;let l=[i.N.Coordinates,i.N.Word,i.N.Points],m=[...l,i.N.BlanksCount,i.N.WordsCount],n=[...l],o=[...l],p=(0,e.createSelector)([h.JV,h.hN],(a,b)=>{let{consonants:c,vowels:d}=g.x[a],e=[i.N.Word,i.N.TilesCount,i.N.BlanksCount,i.N.WordsCount,i.N.Points];return"hidden"!==b&&e.push(i.N.Coordinates),d&&e.push(i.N.VowelsCount),c&&e.push(i.N.ConsonantsCount),e}),q=()=>{let a=(0,h.N4)(p),{isLessThanXs:b,isLessThanS:c,isLessThanM:d,isLessThanL:e}=(0,j.e)(),g=(0,f.useMemo)(()=>b?a.filter(a=>l.includes(a)):c?a.filter(a=>m.includes(a)):d?a.filter(a=>n.includes(a)):e?a.filter(a=>o.includes(a)):a,[a,b,c,d,e]);return(0,f.useMemo)(()=>Object.fromEntries(g.map(a=>[a,!0])),[g])};d()}catch(a){d(a)}})},12963:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{M9:()=>j,ax:()=>i,eC:()=>k});var e=c(69198),f=c(97616),g=a([e]);e=(g.then?(await g)():g)[0];let h=a=>a.solve,i=(0,e.createSelector)([h],a=>(0,f.isError)(a.error)?a.error:void 0),j=(0,e.createSelector)([h],a=>a.isLoading),k=(0,e.createSelector)([h],a=>a.lastSolvedParameters);d()}catch(a){d(a)}})},13082:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{q:()=>q});var e=c(8732),f=c(57472),g=c(3892),h=c.n(g),i=c(82015),j=c(14062),k=c(75396),l=c(77233),m=c(56089),n=c(72042),o=c.n(n),p=a([j,l,m]);[j,l,m]=p.then?(await p)():p;let q=({activeIndexRef:a,character:b,className:c,index:d,inputRef:g,size:n,tile:p,onChange:q,onKeyDown:r,onFocus:s})=>{let t=(0,j.useDispatch)(),u=(0,l.WD)(),v=(0,l.N4)(l.JV),w=(0,l.N4)(l.zg),x=(0,l.N4)(l.QN),y=(0,l.N4)(a=>(0,l.fy)(a,b)),z=(0,l.N4)(a=>(0,l.sE)(a,b)),A=(0,l.N4)(l.Rv),B=null!==b&&null!==A&&A===b,C=(0,i.useCallback)(b=>{"touchscreen"===x&&(b.preventDefault(),b.target.blur(),s()),a.current=d},[a,d,x,s]),D=(0,i.useCallback)(a=>{a.preventDefault(),a.stopPropagation();let b=(0,k.PK)(a.target),c=b?(0,k.EQ)(w,b):[null];t(l.oN.actions.changeCharacters({characters:c,index:d})),q(a)},[w,t,d,q]),E=(0,i.useMemo)(()=>(0,k.k)({onBackspace:a=>{a.preventDefault(),t(l.oN.actions.changeCharacter({character:null,index:d}))},onKeyDown:a=>{if((0,k._0)(a)&&w.isTwoCharacterTilePrefix(a.key.toLocaleLowerCase())){a.preventDefault(),a.stopPropagation();let b=w.getTwoCharacterTileByPrefix(a.key.toLocaleLowerCase());b&&t(l.oN.actions.changeCharacter({character:b,index:d}))}r(a)}}),[w,t,d,r]),F=(0,i.useCallback)(a=>{"touchscreen"===x&&a.preventDefault(),s()},[x,s]),G=(0,i.useCallback)(a=>{"touchscreen"===x&&a.preventDefault(),s()},[x,s]);return(0,e.jsx)(m.F,{"aria-label":u("rack.tile.location",{index:(d+1).toLocaleString(v)}),autoFocus:"keyboard"===x&&0===d,className:h()(o().rackTile,c),character:null===b?void 0:b,highlighted:null!==p||B,inputRef:g,isBlank:b===f.BLANK,isValid:z,placeholder:u("rack.placeholder")[d],points:y,raised:!0,size:n,tabIndex:0===d?void 0:-1,onChange:D,onFocus:C,onKeyDown:E,onMouseDown:F,onTouchStart:G},d)};d()}catch(a){d(a)}})},13709:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{fS:()=>e.f,gk:()=>f.g,o9:()=>e.o});var e=c(14887),f=c(84411),g=a([e,f]);[e,f]=g.then?(await g)():g,d()}catch(a){d(a)}})},14475:a=>{a.exports={tile:"Cell_tile__SiBOA",first3:"Cell_first3__7uV8I",last3:"Cell_last3__30aLE",sharpTopLeft:"Cell_sharpTopLeft__7Frqr",sharpTopRight:"Cell_sharpTopRight__eYNVC",sharpBottomLeft:"Cell_sharpBottomLeft__KhIPs",sharpBottomRight:"Cell_sharpBottomRight__R2ZNq",unreachable:"Cell_unreachable__bH4mB"}},14703:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{w:()=>h});var e=c(69198),f=c(17312),g=a([e]);e=(g.then?(await g)():g)[0];let h=(0,e.createSlice)({initialState:f.z,name:"hoveredTile",reducers:{set:(a,b)=>{a.character=b.payload},clear:a=>{a.character=null}}});d()}catch(a){d(a)}})},14887:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{f:()=>h,o:()=>g});var e=c(69198),f=a([e]);e=(f.then?(await f)():f)[0];let g=a=>a.cellFilters,h=(0,e.createSelector)([g,(a,b)=>b],(a,b)=>a.find(a=>a.x===b.x&&a.y===b.y));d()}catch(a){d(a)}})},15226:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{h:()=>l});var e=c(69198),f=c(38454),g=c(57472),h=c(97616),i=c(23633),j=c(83491),k=a([e,i,j]);[e,i,j]=k.then?(await k)():k;let l=(0,e.createSlice)({initialState:j._,name:"board",reducers:{applyResult:(a,b)=>{let c=a.clone();return b.payload.cells.forEach(a=>{c.updateCell(a.x,a.y,()=>new h.Cell({isEmpty:!1,tile:a.tile,x:a.x,y:a.y}))}),c},change:(a,b)=>b.payload,changeCellValue:(a,b)=>{let c=a.clone(),{value:d,x:e,y:f}=b.payload,i=!d||d===g.EMPTY_CELL,j=i?h.Tile.Null:new h.Tile({character:d});return c.updateCell(e,f,a=>new h.Cell({isEmpty:i,tile:j,x:a.x,y:a.y})),c},init:(a,b)=>b.payload,toggleCellIsBlank:(a,b)=>{let c=a.clone(),{x:d,y:e}=b.payload;return c.updateCell(d,e,a=>{let b=a.isEmpty?a.tile:new h.Tile({isBlank:!a.tile.isBlank,character:a.tile.character});return new h.Cell({isEmpty:a.isEmpty,tile:b,x:a.x,y:a.y})}),c}},extraReducers:a=>{a.addCase(i.sI.actions.changeGame,(a,b)=>{let c=b.payload,d=Object.values(f.games).find(a=>a.game===c);if(!d)throw Error(`Cannot find config for game "${c}"`);if(a.rows.length!==d.boardHeight||a.rows[0].length!==d.boardWidth){let b=h.Board.create(d.boardWidth,d.boardHeight),c=Math.floor(d.boardWidth/2)-Math.floor(a.rows[0].length/2),e=Math.floor(d.boardHeight/2)-Math.floor(a.rows.length/2);for(let f=0;f<a.rows.length;++f)for(let g=0;g<a.rows[f].length;++g){let i=a.rows[f][g];if(i.isEmpty)continue;let j=g+c,k=f+e;j<0||j>=d.boardWidth||k<0||k>=d.boardHeight||b.updateCell(j,k,()=>new h.Cell({...i,x:j,y:k}))}return b}return a})}});d()}catch(a){d(a)}})},15365:a=>{a.exports={tooltip:"Tooltip_tooltip__vAjij",arrow:"Tooltip_arrow__uIoGg"}},15397:a=>{a.exports={alert:"Alert_alert__cFBJC",iconContainer:"Alert_iconContainer__rIJ4B",error:"Alert_error__sMv5d",info:"Alert_info__5QGDB",success:"Alert_success__vQBXB",warning:"Alert_warning__6DDhO",icon:"Alert_icon__jUrPr",content:"Alert_content__QyQ78"}},15757:a=>{a.exports={radio:"Radio_radio__AX_QR",checked:"Radio_checked__DUhBG",iconContent:"Radio_iconContent__Zu4m7",disabled:"Radio_disabled__8bp0O",input:"Radio_input__eCm6J",icon:"Radio_icon__6ULF0",content:"Radio_content__2T1Tf"}},15871:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{$:()=>p});var e=c(8732),f=c(3892),g=c.n(f),h=c(82015),i=c(54100),j=c(77233),k=c(88745),l=c(23612),m=c(61593),n=c.n(m),o=a([j,k,l]);[j,k,l]=o.then?(await o)():o;let p=(0,h.forwardRef)(({className:a,direction:b,initialValue:c,onDirectionToggle:d,onSubmit:f,...m},o)=>{let p=(0,j.WD)(),[q,r]=(0,h.useState)(null),[s,t]=(0,h.useState)(c.trim()),u=a=>a.preventDefault();return(0,h.useEffect)(()=>{q&&(q.focus(),q.select(),q.scrollIntoView({block:"start",inline:"center"}))},[q]),(0,e.jsxs)("form",{className:g()(n().inputPrompt,a),ref:o,onSubmit:a=>{a.preventDefault(),a.stopPropagation(),f(s)},...m,children:[(0,e.jsx)(l.S,{className:n().toggleDirection,direction:b,onClick:d,onMouseDown:u}),(0,e.jsx)("div",{children:(0,e.jsx)("input",{autoCapitalize:"none",autoComplete:"off",autoCorrect:"off",className:n().input,placeholder:p("rack.placeholder"),spellCheck:!1,ref:r,value:s,onChange:a=>t(a.target.value)})}),(0,e.jsx)(k.$,{"aria-label":p("results.insert"),className:n().insert,Icon:i.Jl,iconClassName:n().insertIcon,tooltip:p("results.insert"),type:"submit",variant:"primary",onMouseDown:u})]})});d()}catch(a){d(a)}})},16094:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{$b:()=>g.$,En:()=>e.E,fh:()=>f.f});var e=c(99294),f=c(43319),g=c(6681),h=c(23612),i=a([e,f,g,h]);[e,f,g,h]=i.then?(await i)():i,d()}catch(a){d(a)}})},16111:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{G$:()=>i,X7:()=>h});var e=c(69198),f=a([e]);e=(f.then?(await f)():f)[0];let g=a=>a.verify,h=(0,e.createSelector)([g],a=>a.invalidWords),i=(0,e.createSelector)([g],a=>a.validWords);d()}catch(a){d(a)}})},16202:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{$:()=>k,I:()=>j});var e=c(38454),f=c(17791),g=c(23633),h=a([g]);g=(h.then?(await h)():h)[0];let i=(0,e.getConfig)(g.nb.game,g.nb.locale),j=Array(i.rackSize).fill(null),k=f.L.getRack()??j;d()}catch(a){d(a)}})},16430:(a,b,c)=>{"use strict";c.d(b,{l:()=>f});var d=c(82015),e=c(69048);let f=()=>{let[a,b]=(0,d.useState)(0),[c,f]=(0,d.useState)(0),g=(0,d.useCallback)(()=>{b(window.innerHeight),f(window.innerWidth)},[]);return(0,e.n)(g),{viewportHeight:a,viewportWidth:c}}},16438:(a,b,c)=>{"use strict";c.d(b,{x:()=>g,R:()=>p});var d=c(57472),e=c(97616),f=c(54100);let g={[e.Locale.DE_DE]:{comma:d.COMMA_LATIN,consonants:!0,direction:"ltr",Icon:f.Uv,label:"Deutsch",locale:e.Locale.DE_DE,name:"German",separator:`${d.COMMA_LATIN} `,vowels:!0},[e.Locale.EN_GB]:{comma:d.COMMA_LATIN,consonants:!0,direction:"ltr",Icon:f.e1,label:"English (GB)",locale:e.Locale.EN_GB,name:"English (GB)",separator:`${d.COMMA_LATIN} `,vowels:!0},[e.Locale.EN_US]:{comma:d.COMMA_LATIN,consonants:!0,direction:"ltr",Icon:f.$K,label:"English (US)",locale:e.Locale.EN_US,name:"English (US)",separator:`${d.COMMA_LATIN} `,vowels:!0},[e.Locale.ES_ES]:{comma:d.COMMA_LATIN,consonants:!0,direction:"ltr",Icon:f.pv,label:"Espa\xf1ol",locale:e.Locale.ES_ES,name:"Spanish",separator:`${d.COMMA_LATIN} `,vowels:!0},[e.Locale.FA_IR]:{comma:d.COMMA_ARABIC,consonants:!1,direction:"rtl",Icon:f.mX,label:"فارسی",locale:e.Locale.FA_IR,name:"Persian",separator:`${d.COMMA_ARABIC} `,vowels:!1},[e.Locale.FR_FR]:{comma:d.COMMA_LATIN,consonants:!0,direction:"ltr",Icon:f.tb,label:"Fran\xe7ais",locale:e.Locale.FR_FR,name:"French",separator:`${d.COMMA_LATIN} `,vowels:!0},[e.Locale.PL_PL]:{comma:d.COMMA_LATIN,consonants:!0,direction:"ltr",Icon:f.hh,label:"Polski",locale:e.Locale.PL_PL,name:"Polish",separator:`${d.COMMA_LATIN} `,vowels:!0},[e.Locale.RO_RO]:{comma:d.COMMA_LATIN,consonants:!0,direction:"ltr",Icon:f.ID,label:"Rom\xe2nă",locale:e.Locale.RO_RO,name:"Romanian",separator:`${d.COMMA_LATIN} `,vowels:!0},[e.Locale.TR_TR]:{comma:d.COMMA_LATIN,consonants:!0,direction:"ltr",Icon:f.hs,label:"T\xfcrk\xe7e",locale:e.Locale.TR_TR,name:"Turkish",separator:`${d.COMMA_LATIN} `,vowels:!0}},h=JSON.parse('{"cell.enter-word":"Enter word","cell.filter-cell.exclude":"Exclude destination","cell.filter-cell.include":"Target destination","cell.set-blank":"Mark it a blank","cell.set-not-blank":"Mark it not a blank","cell.tile.location":"Board: tile {{coordinates}}","cell.toggle-direction":"Typing direction","common.arrows":"Arrow keys","common.blanks":"Blanks","common.clear":"Clear","common.close":"Close","common.consonants":"Consonants","common.loading":"Loading","common.next":"Next","common.off":"Off","common.on":"On","common.points":"Points","common.previous":"Previous","common.space":"Spacebar","common.tiles":"Tiles","common.two-letter-tiles":"Two-letter","common.vowels":"Vowels","common.word":"Word","common.words":"Words","dictionary":"Dictionary","dictionary.empty-state.no-definitions":"Word exists in the dictionary but it does not have a definition.","dictionary.empty-state.no-results":"Unable to find word definition in the dictionary.","dictionary.empty-state.not-allowed":"This word is not allowed.","dictionary.empty-state.uninitialized":"Word definition will be shown here.","dictionary.input.placeholder":"Search dictionary…","dictionary.input.title":"Comma-separated words","empty-state.error":"Error","empty-state.info":"Info","empty-state.success":"Yeah!","empty-state.warning":"Oops!","github":"See this project on GitHub","keyMap":"Keyboard shortcuts","keyMap.board":"Board","keyMap.board.toggle-blank":"Mark/unmark tile as a blank","keyMap.board.toggle-cell-filter":"Toggle destination filter","keyMap.board.toggle-direction":"Toggle typing direction","keyMap.board-and-rack":"Board & rack","keyMap.board-and-rack.insert-two-letter-tile":"Insert two-letter tile","keyMap.board-and-rack.navigate":"Navigate","keyMap.board-and-rack.remove-tile":"Remove tile","keyMap.board-and-rack.submit":"Solve","keyMap.rack":"Rack","keyMap.rack.insert-blank":"Insert blank","menu":"Menu","rack.placeholder":"Letters","rack.tile.location":"Rack: tile ({{index}})","rack.touchscreen.placeholder":"Letters…","remaining-tiles":"Remaining tiles","results":"Results","results.empty-state.no-results":"No results - unable to generate any words.","results.empty-state.outdated":"Results are outdated.","results.empty-state.uninitialized":"Words generated from your letters will be shown here.","results.input.placeholder":"Search results... (RegExp)","results.insert":"Insert","results.preview":"Preview","results.solve":"Solve","settings":"Settings","settings.autoGroupTiles":"Group remaining tiles","settings.autoGroupTiles.left":"On the left","settings.autoGroupTiles.right":"On the right","settings.autoGroupTiles.null":"Do not group","settings.game":"Game","settings.highlightUnreachableCells":"Highlight unreachable cells","settings.inputMode":"Input mode","settings.inputMode.keyboard":"Keyboard","settings.inputMode.touchscreen":"Touchscreen","settings.language":"Language","settings.removeCellFilters":"Automatically remove filters from board","settings.removeCellFilters.always":"Always","settings.removeCellFilters.never":"Never","settings.showCoordinates":"Coordinates","settings.showCoordinates.alternative":"Alternative","settings.showCoordinates.hidden":"Hidden","settings.showCoordinates.original":"Original","words":"Created words","words.invalid":"Invalid","words.valid":"Valid"}'),i=JSON.parse('{"cell.enter-word":"Entrez un mot","cell.filter-cell.exclude":"Exclure la destination","cell.filter-cell.include":"Destination cible","cell.set-blank":"Marquer comme vide","cell.set-not-blank":"Marquer comme non vide","cell.tile.location":"Plateau: la case {{coordinates}}","cell.toggle-direction":"Direction d\'\xe9criture","common.arrows":"Touches fl\xe9ch\xe9es","common.blanks":"Cases vides","common.clear":"Effacer","common.close":"Fermer","common.consonants":"Consonnes","common.loading":"Chargement","common.next":"Suivant","common.off":"D\xe9sactiv\xe9","common.on":"Activ\xe9","common.points":"Points","common.previous":"Pr\xe9c\xe9dent","common.space":"Barre d\'espace","common.tiles":"Cases","common.two-letter-tiles":"Deux lettres","common.vowels":"Voyelles","common.word":"Mot","common.words":"Mots","dictionary":"Dictionnaire","dictionary.empty-state.no-definitions":"Le mot existe dans le dictionary mais n\'a pas de d\xe9finition.","dictionary.empty-state.no-results":"Impossible de trouver une d\xe9finition pour ce mot dans le dictionaire.","dictionary.empty-state.not-allowed":"Ce mot n\'est pas pas acceptable.","dictionary.empty-state.uninitialized":"La d\xe9finition dictionaire sera affich\xe9e ici.","dictionary.input.placeholder":"Rechercher dans le dictionnaire…","dictionary.input.title":"Mots s\xe9par\xe9es par des virgules","empty-state.error":"Erreur","empty-state.info":"Info","empty-state.success":"Ouais!","empty-state.warning":"Oups!","github":"Voir ce projet sur GitHub","keyMap":"Raccourcis clavier","keyMap.board":"Plateau","keyMap.board.toggle-blank":"Marqu\xe9/D\xe9marqu\xe9 la case en tant que vide","keyMap.board.toggle-cell-filter":"Basculer le filtre de destination","keyMap.board.toggle-direction":"Faire basculer la direction d\'\xe9criture","keyMap.board-and-rack":"Plateau & chevalet","keyMap.board-and-rack.insert-two-letter-tile":"Ins\xe9rer une tuile de deux lettres","keyMap.board-and-rack.navigate":"Naviguer","keyMap.board-and-rack.remove-tile":"Supprimer une case","keyMap.board-and-rack.submit":"R\xe9soudre","keyMap.rack":"Chevalet","keyMap.rack.insert-blank":"Inserer une case vide","menu":"Menu","rack.placeholder":"Lettres","rack.tile.location":"Chevalet: la case ({{index}})","rack.touchscreen.placeholder":"Lettres…","remaining-tiles":"Cases restantes","results":"R\xe9sultats","results.empty-state.no-results":"Pas de r\xe9sultats - impossible de g\xe9n\xe9rer des mots.","results.empty-state.outdated":"Les r\xe9sultats sont d\xe9pass\xe9.","results.empty-state.uninitialized":"Les mots g\xe9n\xe9r\xe9s \xe0 partir de vos lettres seront affich\xe9s ici.","results.input.placeholder":"Rechercher les r\xe9sultats... (RegExp)","results.insert":"Inserer","results.preview":"Pr\xe9visualisation","results.solve":"R\xe9soudre","settings":"Options","settings.autoGroupTiles":"Grouper les cases restantes","settings.autoGroupTiles.left":"Vers la droite","settings.autoGroupTiles.right":"Vers la gauche","settings.autoGroupTiles.null":"Ne pas grouper","settings.game":"Jeu","settings.highlightUnreachableCells":"Mettre en \xe9vidence les cases inatteignables","settings.inputMode":"Mode de saisie","settings.inputMode.keyboard":"Clavier","settings.inputMode.touchscreen":"\xc9cran tactile","settings.language":"Langue","settings.removeCellFilters":"Supprimer automatiquement les filtres du plateau","settings.removeCellFilters.always":"Toujours","settings.removeCellFilters.never":"Jamais","settings.showCoordinates":"Coordonn\xe9s","settings.showCoordinates.alternative":"Alternative","settings.showCoordinates.hidden":"Cach\xe9","settings.showCoordinates.original":"Original","words":"Mots cr\xe9\xe9s","words.invalid":"Incorrect","words.valid":"Corriger"}'),j=JSON.parse('{"cell.enter-word":"Wort eingeben","cell.filter-cell.exclude":"Ziel ausschlie\xdfen","cell.filter-cell.include":"Ziel anvisieren","cell.set-blank":"Als Blanko markieren","cell.set-not-blank":"Nicht als Blanko markieren","cell.tile.location":"Brett: Stein {{coordinates}}","cell.toggle-direction":"Schreibrichtung","common.arrows":"Pfeiltasten","common.blanks":"Blankos","common.clear":"L\xf6schen","common.close":"Schlie\xdfen","common.consonants":"Konsonanten","common.loading":"Laden","common.next":"Weiter","common.off":"Aus","common.on":"Ein","common.points":"Punkte","common.previous":"Zur\xfcck","common.space":"Leertaste","common.tiles":"Steine","common.two-letter-tiles":"Zwei-Buchstaben","common.vowels":"Vokale","common.word":"Wort","common.words":"W\xf6rter","dictionary":"W\xf6rterbuch","dictionary.empty-state.no-definitions":"Wort existiert im W\xf6rterbuch aber hat keine Definition.","dictionary.empty-state.no-results":"Wort kann nicht im W\xf6rterbuch gefunden werden.","dictionary.empty-state.not-allowed":"Dieses Wort ist nicht erlaubt.","dictionary.empty-state.uninitialized":"Die W\xf6rterbuchdefinition wird hier angezeigt.