UNPKG

@holdem-poker-tools/hand-matrix

Version:

Texas Holdem Poker hand matrix React component

1 lines 9.96 kB
!function(e,n){"object"==typeof exports&&"object"==typeof module?module.exports=n(require("react"),require("prop-types")):"function"==typeof define&&define.amd?define(["React","prop-types"],n):"object"==typeof exports?exports["@holdem-poker-tools/hand-matrix"]=n(require("react"),require("prop-types")):e["@holdem-poker-tools/hand-matrix"]=n(e.React,e.PropTypes)}(self,(function(e,n){return(()=>{"use strict";var o={630:(e,n,o)=>{o.r(n),o.d(n,{HandMatrix:()=>x,combos:()=>m});var t=o(798),r=o.n(t),i=o(409),a=o.n(i),c=o(379),s=o.n(c),l=o(463);function u(e,n){var o=Object.keys(e);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(e);n&&(t=t.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),o.push.apply(o,t)}return o}function d(e){for(var n=1;n<arguments.length;n++){var o=null!=arguments[n]?arguments[n]:{};n%2?u(Object(o),!0).forEach((function(n){f(e,n,o[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(o)):u(Object(o)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(o,n))}))}return e}function f(e,n,o){return n in e?Object.defineProperty(e,n,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[n]=o,e}s()(l.Z,{insert:"head",singleton:!1}),l.Z.locals;var m=["AA","AKs","AQs","AJs","ATs","A9s","A8s","A7s","A6s","A5s","A4s","A3s","A2s","AKo","KK","KQs","KJs","KTs","K9s","K8s","K7s","K6s","K5s","K4s","K3s","K2s","AQo","KQo","QQ","QJs","QTs","Q9s","Q8s","Q7s","Q6s","Q5s","Q4s","Q3s","Q2s","AJo","KJo","QJo","JJ","JTs","J9s","J8s","J7s","J6s","J5s","J4s","J3s","J2s","ATo","KTo","QTo","JTo","TT","T9s","T8s","T7s","T6s","T5s","T4s","T3s","T2s","A9o","K9o","Q9o","J9o","T9o","99","98s","97s","96s","95s","94s","93s","92s","A8o","K8o","Q8o","J8o","T8o","98o","88","87s","86s","85s","84s","83s","82s","A7o","K7o","Q7o","J7o","T7o","97o","87o","77","76s","75s","74s","73s","72s","A6o","K6o","Q6o","J6o","T6o","96o","86o","76o","66","65s","64s","63s","62s","A5o","K5o","Q5o","J5o","T5o","95o","85o","75o","65o","55","54s","53s","52s","A4o","K4o","Q4o","J4o","T4o","94o","84o","74o","64o","54o","44","43s","42s","A3o","K3o","Q3o","J3o","T3o","93o","83o","73o","63o","53o","43o","33","32s","A2o","K2o","Q2o","J2o","T2o","92o","82o","72o","62o","52o","42o","32o","22"],p=r().memo((function(e){var n=e.combo,o=e.styles,t=void 0===o?{}:o,i=e.comboSubtext,a=void 0===i?"":i,c=e.showText,s=void 0===c||c,l=e.colorize,u=void 0===l||l;return r().createElement("div",{"data-combo":n,className:"hand-matrix-cell"},r().createElement("div",{"data-combo":n,className:u?v(n):null,style:d({display:"flex",flexDirection:"column"},t)},s&&r().createElement(r().Fragment,null,r().createElement("div",{"data-combo":n},n),r().createElement("div",{"data-combo":n},a))))})),b=r().memo((function(e){var n=e.row,o=e.comboStyle,t=e.comboSubtext,i=e.showText,a=e.colorize;return r().createElement("div",{className:"hand-matrix-row"},n.map((function(e,n){return r().createElement(p,{key:n,combo:e,showText:i,comboSubtext:t?t(e):"",styles:o?o(e):{},colorize:a})})))}));function h(e){var n,o,t=e.comboSubtext,i=e.comboStyle,a=e.onSelect,c=e.onPointerDown,s=e.onPointerUp,l=e.onPointerEnter,u=e.onPointerMove,d=e.showText,f=e.colorize,p=function(e){return function(n){if(e){var o=function(e){var n;return null===(n=document.elementFromPoint(e.clientX,e.clientY))||void 0===n?void 0:n.dataset.combo}(n);o&&-1!==m.indexOf(o)&&e&&e(o)}}};return r().createElement("div",{className:"hand-matrix ".concat(l||u?"no-scroll":""," ").concat(a||c?"selectable":"unselectable"),onClick:p(a),onPointerUp:p(s),onPointerDown:p(c),onPointerLeave:p(s),onPointerMove:p((function(e){u&&u(e),e!==n&&(n=e,l&&l(e))}))},(o=m,13,Array.from({length:Math.ceil(o.length/13)},(function(e,n){return o.slice(13*n,13*n+13)}))).map((function(e,n){return r().createElement(b,{key:n,showText:d,comboSubtext:t,comboStyle:i,row:e,colorize:f})})))}function v(e){return 2===e.length?"pair":e.endsWith("s")?"suited":"offsuit"}h.propTypes={colorize:a().bool,showText:a().bool,comboSubtext:a().func,comboStyle:a().func,onSelect:a().func,onPointerUp:a().func,onPointerDown:a().func,onPointerEnter:a().func,onPointerMove:a().func},h.defaultProps={showText:!0,colorize:!0};const x=h},463:(e,n,o)=>{o.d(n,{Z:()=>i});var t=o(645),r=o.n(t)()((function(e){return e[1]}));r.push([e.id,".hand-matrix {\n text-align: center;\n user-select: none; /* supported by Chrome and Opera */\n -webkit-user-select: none; /* Safari */\n -khtml-user-select: none; /* Konqueror HTML */\n -moz-user-select: none; /* Firefox */\n -ms-user-select: none; /* Internet Explorer/Edge */\n}\n\n.hand-matrix.no-scroll {\n touch-action: none;\n}\n\n.hand-matrix-row {\n padding: 0;\n margin: 0;\n box-sizing: border-box;\n display: flex;\n flex-flow: row;\n flex-wrap: nowrap;\n overflow: hidden;\n width: 100%;\n}\n\n.hand-matrix-cell {\n border: 1px solid grey;\n display: inline-block;\n font-size: 1rem;\n width: 7.691%;\n overflow: hidden;\n}\n\n.hand-matrix.no-scroll .hand-matrix-cell{\n touch-action: none;\n}\n\n@media screen and (max-width: 992px) {\n .hand-matrix-cell {\n font-size: 0.85em;\n }\n}\n\n.hand-matrix.selectable .hand-matrix-cell {\n cursor: pointer;\n}\n\n.hand-matrix-cell:before {\n content:'';\n float:left;\n padding-top:100%;\n}\n\n.hand-matrix-cell > div {\n height: 100%;\n width: 100%;\n background-color: lightgrey;\n}\n\n.hand-matrix-cell div {\n -webkit-touch-callout: none; /* iOS Safari */\n -webkit-user-select: none; /* Safari */\n -khtml-user-select: none; /* Konqueror HTML */\n -moz-user-select: none; /* Old versions of Firefox */\n -ms-user-select: none; /* Internet Explorer/Edge */\n user-select: none;\n}\n\n.hand-matrix-cell .pair {\n background-color: #c0ffff;\n}\n\n.hand-matrix-cell .suited {\n background-color: lightyellow;\n}\n\n.hand-matrix-cell .offsuit {\n background-color: lightgrey;\n}\n\n.hand-matrix-cell .fill-blue {\n background-color: #1890ff;\n}\n\n.hand-matrix-cell .fill-red {\n background-color: #ff2018;\n}\n\n.hand-matrix-cell.fill-orange {\n background-color: #ffae18;\n}\n\n.hand-matrix-cell.fill-yellow {\n background-color: #fffb18;\n}\n\n.hand-matrix-cell.fill-light-green {\n background-color: #18ff3e;\n}\n\n.hand-matrix-cell.fill-green {\n background-color: #00c90a;\n}\n",""]);const i=r},645:e=>{e.exports=function(e){var n=[];return n.toString=function(){return this.map((function(n){var o=e(n);return n[2]?"@media ".concat(n[2]," {").concat(o,"}"):o})).join("")},n.i=function(e,o,t){"string"==typeof e&&(e=[[null,e,""]]);var r={};if(t)for(var i=0;i<this.length;i++){var a=this[i][0];null!=a&&(r[a]=!0)}for(var c=0;c<e.length;c++){var s=[].concat(e[c]);t&&r[s[0]]||(o&&(s[2]?s[2]="".concat(o," and ").concat(s[2]):s[2]=o),n.push(s))}},n}},379:(e,n,o)=>{var t,r=function(){var e={};return function(n){if(void 0===e[n]){var o=document.querySelector(n);if(window.HTMLIFrameElement&&o instanceof window.HTMLIFrameElement)try{o=o.contentDocument.head}catch(e){o=null}e[n]=o}return e[n]}}(),i=[];function a(e){for(var n=-1,o=0;o<i.length;o++)if(i[o].identifier===e){n=o;break}return n}function c(e,n){for(var o={},t=[],r=0;r<e.length;r++){var c=e[r],s=n.base?c[0]+n.base:c[0],l=o[s]||0,u="".concat(s," ").concat(l);o[s]=l+1;var d=a(u),f={css:c[1],media:c[2],sourceMap:c[3]};-1!==d?(i[d].references++,i[d].updater(f)):i.push({identifier:u,updater:b(f,n),references:1}),t.push(u)}return t}function s(e){var n=document.createElement("style"),t=e.attributes||{};if(void 0===t.nonce){var i=o.nc;i&&(t.nonce=i)}if(Object.keys(t).forEach((function(e){n.setAttribute(e,t[e])})),"function"==typeof e.insert)e.insert(n);else{var a=r(e.insert||"head");if(!a)throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");a.appendChild(n)}return n}var l,u=(l=[],function(e,n){return l[e]=n,l.filter(Boolean).join("\n")});function d(e,n,o,t){var r=o?"":t.media?"@media ".concat(t.media," {").concat(t.css,"}"):t.css;if(e.styleSheet)e.styleSheet.cssText=u(n,r);else{var i=document.createTextNode(r),a=e.childNodes;a[n]&&e.removeChild(a[n]),a.length?e.insertBefore(i,a[n]):e.appendChild(i)}}function f(e,n,o){var t=o.css,r=o.media,i=o.sourceMap;if(r?e.setAttribute("media",r):e.removeAttribute("media"),i&&"undefined"!=typeof btoa&&(t+="\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(i))))," */")),e.styleSheet)e.styleSheet.cssText=t;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(t))}}var m=null,p=0;function b(e,n){var o,t,r;if(n.singleton){var i=p++;o=m||(m=s(n)),t=d.bind(null,o,i,!1),r=d.bind(null,o,i,!0)}else o=s(n),t=f.bind(null,o,n),r=function(){!function(e){if(null===e.parentNode)return!1;e.parentNode.removeChild(e)}(o)};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 r()}}e.exports=function(e,n){(n=n||{}).singleton||"boolean"==typeof n.singleton||(n.singleton=(void 0===t&&(t=Boolean(window&&document&&document.all&&!window.atob)),t));var o=c(e=e||[],n);return function(e){if(e=e||[],"[object Array]"===Object.prototype.toString.call(e)){for(var t=0;t<o.length;t++){var r=a(o[t]);i[r].references--}for(var s=c(e,n),l=0;l<o.length;l++){var u=a(o[l]);0===i[u].references&&(i[u].updater(),i.splice(u,1))}o=s}}}},798:n=>{n.exports=e},409:e=>{e.exports=n}},t={};function r(e){if(t[e])return t[e].exports;var n=t[e]={id:e,exports:{}};return o[e](n,n.exports,r),n.exports}return r.n=e=>{var n=e&&e.__esModule?()=>e.default:()=>e;return r.d(n,{a:n}),n},r.d=(e,n)=>{for(var o in n)r.o(n,o)&&!r.o(e,o)&&Object.defineProperty(e,o,{enumerable:!0,get:n[o]})},r.o=(e,n)=>Object.prototype.hasOwnProperty.call(e,n),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r(630)})()}));