word-search-puzzle
Version:
word search puzzle component
1 lines • 10.4 kB
JavaScript
module.exports=function(e){var n={};function r(t){if(n[t])return n[t].exports;var o=n[t]={i:t,l:!1,exports:{}};return e[t].call(o.exports,o,o.exports,r),o.l=!0,o.exports}return r.m=e,r.c=n,r.d=function(e,n,t){r.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:t})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,n){if(1&n&&(e=r(e)),8&n)return e;if(4&n&&"object"==typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(r.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&n&&"string"!=typeof e)for(var o in e)r.d(t,o,function(n){return e[n]}.bind(null,o));return t},r.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(n,"a",n),n},r.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},r.p="",r(r.s=1)}([function(e,n){e.exports=require("react")},function(e,n,r){"use strict";r.r(n),r.d(n,"WordPuzzleComponent",(function(){return l}));var t=r(0),o=r.n(t);r(2);function a(e){return function(e){if(Array.isArray(e))return c(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||i(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function u(e,n){return function(e){if(Array.isArray(e))return e}(e)||function(e,n){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==r)return;var t,o,a=[],u=!0,i=!1;try{for(r=r.call(e);!(u=(t=r.next()).done)&&(a.push(t.value),!n||a.length!==n);u=!0);}catch(e){i=!0,o=e}finally{try{u||null==r.return||r.return()}finally{if(i)throw o}}return a}(e,n)||i(e,n)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function i(e,n){if(e){if("string"==typeof e)return c(e,n);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?c(e,n):void 0}}function c(e,n){(null==n||n>e.length)&&(n=e.length);for(var r=0,t=new Array(n);r<n;r++)t[r]=e[r];return t}var l=function(e){var n=e.design,r=n.markedBackgroundColor,i=n.selectedBackgroundColor,c=n.hoveredBackgroundColor,l=n.backgroundColor,f=(n.fontFamily,n.fontWeight,n.fontSize),s=n.markedForeColor,d=n.selectedForeColor,p=n.hoveredForeColor,m=n.foreColor,v=e.options,b=v.answerWords,h=v.matrix,g=v.isSelecting,y=v.setIsSelecting,w=v.availablePaths,x=v.selectedLetters,S=v.setSelectedLetters,j=v.markedLetters,k=v.setMarkedLetters,C=u(Object(t.useState)([]),2),M=C[0],O=C[1],E=u(Object(t.useState)(),2),A=E[0],L=E[1],T=u(Object(t.useState)(),2),I=T[0],N=T[1];Object(t.useEffect)((function(){var e=h.map((function(e,n){return e.map((function(e,r){return{letter:e,row:n,column:r}}))}));O(e)}),[]),Object(t.useEffect)((function(){if(g);else{x.map((function(e){return e.letter})).join(""),_(x);L(),S([])}}),[g]);var _=function(e){for(var n=e.map((function(e){return e.letter})).join(""),r=!1,t=0;t<b.length;t++){if(n===b[t]){r=!0,z(e);break}}return r},z=function(e){k(F([].concat(a(j),a(e)),["row","column"]))},F=function(e,n){var r=e.map((function(e){return[n.map((function(n){return e[n]})).join("|"),e]})),t=new Map(r);return Array.from(t.values())},P=function(e){var n=x.filter((function(n){return e.row!==n.row||e.column!==n.column}));S(n)},U=function(e,n){var r=!1;return(e.column+1===n.column&&e.row===n.row||e.column-1===n.column&&e.row===n.row||e.row+1===n.row&&e.column===n.column||e.row-1===n.row&&e.column===n.column)&&(r=!0),r},B=function(e,n){var r=!1;return x.length<1?r=!0:1===x.length&&U(e,n)?(L(R(e)),r=!0):"right2left"===A&&q(A)&&n.row===e.row&&n.column-1===e.column||"left2right"===A&&q(A)&&n.row===e.row&&n.column+1===e.column||"top2bottom"===A&&q(A)&&n.column===e.column&&n.row+1===e.row||"bottom2top"===A&&q(A)&&n.column===e.column&&n.row-1===e.row?r=!0:(r=!1,S([])),r},R=function(e){var n="left2right",r=x.slice(-2)[0],t=void 0!==e?e:x.slice(-1)[0];return r.row===t.row&&r.column-1===t.column?n="right2left":r.row===t.row&&r.column+1===t.column?n="left2right":r.column===t.column&&r.row+1===t.row?n="top2bottom":r.column===t.column&&r.row-1===t.row&&(n="bottom2top"),n},W=function(e){var n=!1;if(x.length>0)for(var r=0;r<x.length;r++){var t=x[r];if(e.row===t.row&&e.column===t.column){n=!0;break}}return n},q=function(e){var n=!1;if(w.length>0)for(var r=0;r<w.length;r++){if(e===w[r]){n=!0;break}}return n},D=function(e){var n=!1;if(j.length>0)for(var r=0;r<j.length;r++){var t=j[r];if(e.row===t.row&&e.column===t.column){n=!0;break}}return n};return o.a.createElement("div",{className:"root"},o.a.createElement("table",{onMouseLeave:function(){return y(!1)}},o.a.createElement("tbody",null,M.map((function(e,n){return o.a.createElement("tr",null,e.map((function(e,n){return o.a.createElement("td",{onMouseLeave:function(){return N()},onMouseEnter:function(){!function(e){if(g){var n=W(e),r=x.slice(-1)[0];if(!1===n&&B(e,r))S([].concat(a(x),[e]));else{var t=x.slice(-1)[0];U(e,t)&&P(t)}}}(e),N(e)},onMouseDown:function(){S([e]),y(!0)},onMouseUp:function(){return y(!1)},className:"letter-wrapper",style:{backgroundColor:!0===D(e)?r:!0===W(e)?i:e===I?c:l}},o.a.createElement("h3",{style:{fontFamily:"monospace",fontSize:f,color:!0===D(e)?s:!0===W(e)?d:e===I?p:m}},e.letter))})))})))))}},function(e,n,r){var t=r(3),o=r(4);"string"==typeof(o=o.__esModule?o.default:o)&&(o=[[e.i,o,""]]);var a={insert:"head",singleton:!1};t(o,a);e.exports=o.locals||{}},function(e,n,r){"use strict";var t,o=function(){return void 0===t&&(t=Boolean(window&&document&&document.all&&!window.atob)),t},a=function(){var e={};return function(n){if(void 0===e[n]){var r=document.querySelector(n);if(window.HTMLIFrameElement&&r instanceof window.HTMLIFrameElement)try{r=r.contentDocument.head}catch(e){r=null}e[n]=r}return e[n]}}(),u=[];function i(e){for(var n=-1,r=0;r<u.length;r++)if(u[r].identifier===e){n=r;break}return n}function c(e,n){for(var r={},t=[],o=0;o<e.length;o++){var a=e[o],c=n.base?a[0]+n.base:a[0],l=r[c]||0,f="".concat(c," ").concat(l);r[c]=l+1;var s=i(f),d={css:a[1],media:a[2],sourceMap:a[3]};-1!==s?(u[s].references++,u[s].updater(d)):u.push({identifier:f,updater:b(d,n),references:1}),t.push(f)}return t}function l(e){var n=document.createElement("style"),t=e.attributes||{};if(void 0===t.nonce){var o=r.nc;o&&(t.nonce=o)}if(Object.keys(t).forEach((function(e){n.setAttribute(e,t[e])})),"function"==typeof e.insert)e.insert(n);else{var u=a(e.insert||"head");if(!u)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");u.appendChild(n)}return n}var f,s=(f=[],function(e,n){return f[e]=n,f.filter(Boolean).join("\n")});function d(e,n,r,t){var o=r?"":t.media?"@media ".concat(t.media," {").concat(t.css,"}"):t.css;if(e.styleSheet)e.styleSheet.cssText=s(n,o);else{var a=document.createTextNode(o),u=e.childNodes;u[n]&&e.removeChild(u[n]),u.length?e.insertBefore(a,u[n]):e.appendChild(a)}}function p(e,n,r){var t=r.css,o=r.media,a=r.sourceMap;if(o?e.setAttribute("media",o):e.removeAttribute("media"),a&&"undefined"!=typeof btoa&&(t+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(a))))," */")),e.styleSheet)e.styleSheet.cssText=t;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(t))}}var m=null,v=0;function b(e,n){var r,t,o;if(n.singleton){var a=v++;r=m||(m=l(n)),t=d.bind(null,r,a,!1),o=d.bind(null,r,a,!0)}else r=l(n),t=p.bind(null,r,n),o=function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(r)};return t(e),function(n){if(n){if(n.css===e.css&&n.media===e.media&&n.sourceMap===e.sourceMap)return;t(e=n)}else o()}}e.exports=function(e,n){(n=n||{}).singleton||"boolean"==typeof n.singleton||(n.singleton=o());var r=c(e=e||[],n);return function(e){if(e=e||[],"[object Array]"===Object.prototype.toString.call(e)){for(var t=0;t<r.length;t++){var o=i(r[t]);u[o].references--}for(var a=c(e,n),l=0;l<r.length;l++){var f=i(r[l]);0===u[f].references&&(u[f].updater(),u.splice(f,1))}r=a}}}},function(e,n,r){(n=r(5)(!1)).push([e.i,".root {\r\n display: flex;\r\n justify-content: center;\r\n margin-top: 5%;\r\n\r\n}\r\n\r\n* {\r\n -webkit-user-select: none;\r\n -khtml-user-select: none;\r\n -moz-user-select: -moz-none;\r\n -o-user-select: none;\r\n user-select: none;\r\n}\r\n\r\n/* p {\r\n -webkit-user-select: text;\r\n -khtml-user-select: text;\r\n -moz-user-select: text;\r\n -o-user-select: text;\r\n user-select: text;\r\n} */\r\n\r\n.letter-wrapper {\r\n /* background: rgb(1, 146, 98); */\r\n padding: 5px;\r\n display: inline-block;\r\n padding-top: 5px;\r\n padding-left: 15px;\r\n padding-right: 15px;\r\n cursor: default;\r\n}\r\n\r\n\r\n.letter-wrapper:hover {\r\n /* background: rgb(0, 218, 145) !important; */\r\n padding-top: 5px;\r\n padding-left: 15px;\r\n padding-right: 15px;\r\n cursor: pointer;\r\n}\r\n\r\n\r\ntable,\r\ntr,\r\ntd {\r\n border: 1px inset rgb(255, 255, 255);\r\n border-collapse: collapse;\r\n \r\n}",""]),e.exports=n},function(e,n,r){"use strict";e.exports=function(e){var n=[];return n.toString=function(){return this.map((function(n){var r=function(e,n){var r=e[1]||"",t=e[3];if(!t)return r;if(n&&"function"==typeof btoa){var o=(u=t,i=btoa(unescape(encodeURIComponent(JSON.stringify(u)))),c="sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(i),"/*# ".concat(c," */")),a=t.sources.map((function(e){return"/*# sourceURL=".concat(t.sourceRoot||"").concat(e," */")}));return[r].concat(a).concat([o]).join("\n")}var u,i,c;return[r].join("\n")}(n,e);return n[2]?"@media ".concat(n[2]," {").concat(r,"}"):r})).join("")},n.i=function(e,r,t){"string"==typeof e&&(e=[[null,e,""]]);var o={};if(t)for(var a=0;a<this.length;a++){var u=this[a][0];null!=u&&(o[u]=!0)}for(var i=0;i<e.length;i++){var c=[].concat(e[i]);t&&o[c[0]]||(r&&(c[2]?c[2]="".concat(r," and ").concat(c[2]):c[2]=r),n.push(c))}},n}}]);