{"_id":"2048-board-renderer","_rev":"2-04f7321f65fc2dd6fad2d35559648f74","name":"2048-board-renderer","dist-tags":{"latest":"0.1.0"},"versions":{"0.0.1-security":{"name":"2048-board-renderer","version":"0.0.1-security","description":"security holding package","repository":{"type":"git","url":"git+https://github.com/npm/security-holder.git"},"dependencies":{},"bugs":{"url":"https://github.com/npm/security-holder/issues"},"homepage":"https://github.com/npm/security-holder#readme","_id":"2048-board-renderer@0.0.1-security","_npmVersion":"6.4.1","_nodeVersion":"11.3.0","_npmUser":{"name":"evafengel","email":"eva@npmjs.com"},"dist":{"integrity":"sha512-cfbVjivLgpkVAPpXRVdlX+W5sDDrEFwi0nkKD/Rg+3rXMUsS8398ZDtKXxzWYdM0NO9ysh8YRTxeDp/TIS9Uwg==","shasum":"9965ab0c3c2fd364a5b14d3e3acbdadd95bb334f","tarball":"https://registry.npmjs.org/2048-board-renderer/-/2048-board-renderer-0.0.1-security.tgz","fileCount":2,"unpackedSize":350,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEs3/FgxFPZkR8Ry9SCZACzOCOXdmd7LOqaiHfASJi4KAiBUytWG23axBk4RWSFAUt8rruoMF6JWhFEE4e9UH+k9aA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJizxkqACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpItA//VpTsp1RdMDYWJmnCen7htHQhTYP7l3U/OrtBcy1fg6a+HYYd\r\nR67VwBcHj/JaVI7jdgUVfb7rOc0gHlvs+rwcgoTQ+tgUhUeWakAsny1YUnV+\r\nfuABbvR3TVSa4RoXeYjP04axpLZRI+fglb2RYf/7xRGDCWa9ENd7cWXgkF7b\r\nW+W2UWvihAUqGNkFbJeB3MQjydYXf8d0oX05ZCCiBxa/XRBRmAM4xEUQ4cin\r\nwq4f9H1j1pHljUrYAk1yn6n62e3a1jdZv8zqnGjAiiJhzLhsvqsotrBgIBlN\r\nwi6o3/ScOFGY3df17uAKDeiFzAEukicYPP1rMJ1cITny5duvYfCxyTa2U4Fn\r\nkgUEXFu5/0Xz5J80oNKFEJvqsaXkmqKlHZtd5qTHsdczCaAV1yZgJ9HyZC/m\r\nY8jXNcHXOsBlmvUOaBTnqeCikT2lESa9zuEOXaQnY76pb6wQVboT45RZCogE\r\ncQcYY1E8LHOUQHGllEOkYFgzfzMLxSw3LrjoxF+k8mUKRfWHt6sXxYAMOJPf\r\n+jvzwo7cVIROcS3MX8OENWuWweKXSwcAaf6APdPYPajHvcghMrEGhigwrsfw\r\nUrnOkSpCB3QN/hw1Pw/hAjGNI1zRVymTRfibrkJE5rkxYefmFiKO0tZUzOr1\r\n3WTyYQogviGHC5Vt0eu+vFWoow34SJgfVcE=\r\n=2R4+\r\n-----END PGP SIGNATURE-----\r\n"},"directories":{},"maintainers":[{"name":"evafengel","email":"eva@npmjs.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/2048-board-renderer_0.0.1-security_1657739562661_0.9798712941396133"},"_hasShrinkwrap":false},"0.1.0":{"name":"2048-board-renderer","version":"0.1.0","description":"2048 board renderer","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"prettier":"prettier --write 'src/**/*.{ts,css}'","lint":"yarn lint:prettier && yarn lint:eslint","lint:prettier":"prettier --check 'src/**/*.{ts,css}'","lint:eslint":"eslint src/**/*.ts","build":"tsc -p tsconfig.json"},"dependencies":{"2048-engine":"^0.1.1"},"devDependencies":{"@typescript-eslint/eslint-plugin":"^5.30.6","@typescript-eslint/parser":"^5.30.6","eslint":"^8.19.0","prettier":"^2.7.1","typescript":"^4.7.4"},"prettier":{"singleQuote":true},"author":{"name":"Eik Hvattum Røgeberg"},"license":"ISC","repository":{"type":"git","url":"git+https://github.com/eikhr/react-2048.git"},"keywords":["2048","game","GUI","board","renderer"],"gitHead":"7cb538628f23448eaac9fdc8c90784b8c538771f","bugs":{"url":"https://github.com/eikhr/react-2048/issues"},"homepage":"https://github.com/eikhr/react-2048#readme","_id":"2048-board-renderer@0.1.0","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-crBejPSgDuZp5z6WcSEiMVroRG4h2hDtK5MqsrzX/kh34gJs+L61X/7oEol+lBrYK5E2PpdZ3zModnAh7s2w2Q==","shasum":"edcac4f7c10184c568132b3e75a39f510ca7109b","tarball":"https://registry.npmjs.org/2048-board-renderer/-/2048-board-renderer-0.1.0.tgz","fileCount":28,"unpackedSize":19820,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBzIRPIvLCFQaNQvvK3c/g2OyM6sDVHlYFY/8Xy7ZS1EAiBIxpUSOiL/pXcUvzEuIG4LPjfxVQ2xUgKvg/+2OOwn4g=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJizxzyACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpRvg/+KC/bm/raV8VDNPvjUNdnEQQoo1Uyhwtpg+yDmHTa4C74PetI\r\njozjd0uhA9cLVX9ED65ZwGzkC0X0T+jijlu3D4qlWHVzIRjryZM8jYkR2n0C\r\nETsTU+Gdk18f2Xq9ccdE17f2ermH9zJMLO71YzC2uSthg8hs1s9LaooHfHGN\r\nZgr6+hCov8TuhVxJP5dpu2E39RrZ/qSS1nt1tz7xH7IPgXb7ZwaILhSVcxaG\r\n5pwE6Mu8TkiEM1orB34tVDVkICTAd7G36P3pD6zmNg/GDs82aobglf7WlTtB\r\n51LGwr9/pstYYgqvgCZE0gDzN5f2oKws1HPbD3MBrAY0U27uQkD+HNSMMtSV\r\nk2cmcCKd5Tvzhjg8LpHB0+Pelq0u+GSwNJShwbrMrI91Mc/AviJxxUQUZYRA\r\n7i78IQExnB2ySGuquit2N0APUZ0iQr/FQV1NKLdKbOMJZmKd0hd/TKYXMOvg\r\nuC7Gmj1R9SccSBLYZuPgvYytgrE/9678P12X896zaAjK8+WmqfsC6yDUuGIk\r\n9WzMkkRfk4YlXD7bEdP/qSsDh3Ajpu4U8X4WwAX9u1W0ooEI1uJT2ir7MG9L\r\n5p2pGV2C5sOiLW+uC/sYCn4Pdg8YCD7rWMrjslGIbC/llRk3yy8CGZf2pDMj\r\nK1uQIgfrVl89yys+Yqbp6fCn8c/kSvAEw5s=\r\n=jt1K\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eikhr","email":"eik.rogeberg@gmail.com"},"directories":{},"maintainers":[{"name":"eikhr","email":"eik.rogeberg@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/2048-board-renderer_0.1.0_1657740529857_0.7121611295693695"},"_hasShrinkwrap":false}},"time":{"created":"2022-07-13T19:12:42.661Z","0.0.1-security":"2022-07-13T19:12:42.813Z","modified":"2022-07-13T19:28:50.171Z","0.1.0":"2022-07-13T19:28:50.102Z"},"maintainers":[{"name":"eikhr","email":"eik.rogeberg@gmail.com"}],"description":"2048 board renderer","homepage":"https://github.com/eikhr/react-2048#readme","repository":{"type":"git","url":"git+https://github.com/eikhr/react-2048.git"},"bugs":{"url":"https://github.com/eikhr/react-2048/issues"},"readme":"# 2048 board renderer\n![Build](https://github.com/eikhr/2048-board-renderer/actions/workflows/main.yml/badge.svg)\n\nPackage for easily rendering boards from the game [2048](https://github.com/gabrielecirulli/2048). Uses data in the format provided from [`2048-engine`](https://github.com/eikhr/2048-engine) to render the board. \n\nSee [2048-react]() for a convenient wrapper for use in React.\n\n## API\nThe package exposes one method.\n\n`createBoard(boardData)`\n\nIt takes one argument, `boardData`, which is a `Board` object from `2048-engine`.\n\nThe function returns an object with the following properties:\n- `htmlElement`: A `HTMLElement` containing the rendered board.\n- `update`: A function that takes an updated `boardData` `Board` object and modifies `htmlElement` to match the new state.\n\nAny updates to the board should be made using the `update` function for animations to be played. New games should create new boards using `createBoard` to avoid weird animations.\n\n## Usage\n```javascript\nimport { createBoard } from '2048-board-renderer';\nimport { createGame, Direction } from '2048-engine';\n\nconst game = createGame();\n\nconst board = createBoard(game.currentState.board);\ndocument.getElementById('game')?.appendChild(board.htmlElement);\n\nconst move = (direction: Direction) => {\n  const gameState = game.move(direction);\n  board.update(gameState.board);\n};\n\nmove(Direction.UP);\n```\nFor a playable example see `example` directory\n\n## Notes on the board HTMLElement\nThe board HTMLElement is a `div` with no styling regarding width. The width of the board is therefore determined by its parent container. \n\nThe height of the board is determined based on width and the aspect ratio of the board.\n","readmeFilename":"README.md","keywords":["2048","game","GUI","board","renderer"],"author":{"name":"Eik Hvattum Røgeberg"},"license":"ISC"}