{"_id":"@atlasgroup/react-wrap","_rev":"6-47d18051efb9e5585afb4fb337754867","name":"@atlasgroup/react-wrap","dist-tags":{"latest":"1.3.0"},"versions":{"0.1.0":{"name":"@atlasgroup/react-wrap","version":"0.1.0","private":false,"main":"lib/index.js","description":"A straight-forward react component logic reusing and close-coupling prevention utility","scripts":{"changelog":"conventional-changelog -p angular -i CHANGELOG.md -s && git add CHANGELOG.md","changelog:all":"conventional-changelog -p angular -i CHANGELOG.md -s -r 0","version":"yarn changelog && git stage CHANGELOG.md","depsTree":"dpdm src --ext \".ts,.tsx,.json\"","lint":"eslint src -c .eslintrc.json --ext .js,.jsx,.ts,.tsx --max-warnings=0","test":"jest -c jest.config.js","typecheck":"tsc --noEmit","build":"cross-env NODE_ENV=production babel src -d lib --extensions .ts,.tsx --ignore \"src/**/*.test.tsx\",\"src/**/*.test.ts\" --config-file ./babelrc.build.json && yarn typedefs","prepublishOnly":"yarn build","typedefs":"ttsc -p ./tsconfig.typedefs.json","validateDepsTree":"node scripts/validateDependencyTree.js","pruneModules":"ts-prune -p tsconfig.json -i \"tests|index|.test.|.*\\.{js|jsx}\" | grep -v \"(used in module)\" | grep --color -E \" - .*|$\" -","integrate":"yarn lint && yarn typecheck && yarn validateDepsTree && yarn test"},"author":{"name":"Atlas Consulting"},"license":"MIT","devDependencies":{"@babel/cli":"^7.12.8","@babel/plugin-transform-runtime":"^7.12.1","@babel/preset-env":"^7.12.7","@babel/preset-typescript":"^7.12.7","@commitlint/cli":"^11.0.0","@commitlint/config-conventional":"^11.0.0","@testing-library/react":"^11.2.6","@testing-library/react-hooks":"^3.4.2","@typescript-eslint/eslint-plugin":"^4.8.2","@typescript-eslint/parser":"^4.8.2","babel-eslint":"^10.1.0","babel-plugin-module-resolver":"^4.0.0","babel-plugin-react-app":"^0.0.0","babel-plugin-transform-class-properties":"^6.24.1","babel-preset-react-app":"^10.0.0","babel-preset-minify":"^0.5.1","conventional-changelog-cli":"^2.1.1","cross-env":"^7.0.2","devmoji":"^2.1.11","dpdm":"^3.5.0","eslint":"^7.14.0","eslint-config-react-app":"^6.0.0","eslint-plugin-flowtype":"^5.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-jsx-a11y":"^6.4.1","eslint-plugin-react":"^7.21.5","eslint-plugin-react-hooks":"^4.2.0","husky":"^4.3.0","jest":"^26.6.3","jest-environment-node":"^26.6.2","jest-playwright-preset":"^1.5.2","playwright":"^1.10.0","prettier":"^2.2.0","pretty-quick":"^3.1.0","react":"^17.0.2","react-dom":"^17.0.2","react-test-renderer":"^17.0.1","ts-jest":"^26.4.4","ts-prune":"^0.8.4","ttypescript":"^1.5.12","typescript":"^4.1.2","typescript-transform-paths":"^2.0.4"},"husky":{"hooks":{"commit-msg":"commitlint -E HUSKY_GIT_PARAMS","pre-commit":"pretty-quick --staged","prepare-commit-msg":"devmoji -e --lint","post-commit":"yarn depsTree"}},"peerDependencies":{"react":">=16.8"},"gitHead":"f5b74af6cb931d68a756a71a60d0a72ff89c5602","_id":"@atlasgroup/react-wrap@0.1.0","_nodeVersion":"14.16.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-ASfcZYBCflD6fbJUKg9wUylwqWNWkmlQg+GadYR8lVGD67gSsFhyNmCd5ExIWxNDzIWWUOuDmsWLf4IftsO5Kg==","shasum":"810aa923f836fff6aff5eb809970e88637f7c6b9","tarball":"https://registry.npmjs.org/@atlasgroup/react-wrap/-/react-wrap-0.1.0.tgz","fileCount":14,"unpackedSize":433176,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglT03CRA9TVsSAnZWagAACooP/0uVfR2nYPb8WoLxNiqV\nudbsFAsER6LXasO03Ny7mDND71f6ajBsZBQLMmSqL9Vy4wOenL77FDdLtmrN\nZ/P5i7QlzWviwnf7MiPQtAIEN1V3zoIsmZNHkJAPxzNCUe8q5kbw1C/Qm7mD\ni6MEw0jKI52wISx2RCmIObMVLQk2/Kh2EplMLYs/FPtMphDlVWHL2szhC6qD\ni+st2jKoMGp3l982AGqXcoCoc12X0IbKkg8Sw1MqIxaOfeyW5wrQvrzC1Np3\nmXFYGMsM5z+GJ6Cju9yIhxjaJ2qUY6s2Oe6kwfbqeiVfPVu2kFORXtbUo22u\nar1Qm1KlHWQbznVSRGKzEIGxfVXD4gtr/sScys1Sz+hEMiD6FdSM/hIlzhjo\n56W+m56I+N4JFwns32IuHsrEgox7iZV0qrrXksoZ6mNhRsjQNCfxGHZ4PEuX\nzZQf/V9QA6RqTRMtXcU+Ah1ZxKKnZgHJwfxrq36H5VplYPmZdkJv+OcEKZmq\nrSdM5ITUqJLrJUWmj/nNY/YqbvgGPyvWOB5sYBF4UlVzbmlrfLyB9DsUAl3y\nbZtPGrw3E2jwpvdfZOjKJrglZouZsiR+PBFUfKx1IHlZ+0IN7mKB/V4BfSaS\nZStjdLLeIvyR0Vqe1UYhbAEqGTns+ycRo0gnQUiH2wiw/AI2lAzx7Gyuayzs\nSzuw\r\n=H/a3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCnyIoUE529kCEDUDUMEi4BVVzW8geVv3J7Ae/DeBuzNQIgeOpZmrKt/96PcgA/FOSKZ1Ke+44AAeWyqwoVAW6Ijr4="}]},"_npmUser":{"name":"filipkastovsky","email":"devfilipkastovsky@gmail.com"},"directories":{},"maintainers":[{"name":"filipkastovsky","email":"devfilipkastovsky@gmail.com"},{"name":"thepatriczek","email":"patrik.szewczyk@gmail.com"},{"name":"trehak1","email":"trehak@atlasgroup.cz"},{"name":"martintopolanek_ag","email":"topolanek@atlasgroup.cz"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-wrap_0.1.0_1620393270894_0.9879167885385625"},"_hasShrinkwrap":false},"1.0.0":{"name":"@atlasgroup/react-wrap","version":"1.0.0","private":false,"main":"lib/index.js","description":"A straight-forward react component logic reusing and close-coupling prevention utility","scripts":{"changelog":"conventional-changelog -p angular -i CHANGELOG.md -s && git add CHANGELOG.md","changelog:all":"conventional-changelog -p angular -i CHANGELOG.md -s -r 0","version":"yarn changelog && git stage CHANGELOG.md","depsTree":"dpdm src --ext \".ts,.tsx,.json\"","lint":"eslint src -c .eslintrc.json --ext .js,.jsx,.ts,.tsx --max-warnings=0","test":"jest -c jest.config.js","typecheck":"tsc --noEmit","build":"cross-env NODE_ENV=production babel src -d lib --extensions .ts,.tsx --ignore \"src/**/*.test.tsx\",\"src/**/*.test.ts\" --config-file ./babelrc.build.json && yarn typedefs","prepublishOnly":"yarn build","typedefs":"ttsc -p ./tsconfig.typedefs.json","validateDepsTree":"node scripts/validateDependencyTree.js","pruneModules":"ts-prune -p tsconfig.json -i \"tests|index|.test.|.*\\.{js|jsx}\" | grep -v \"(used in module)\" | grep --color -E \" - .*|$\" -","integrate":"yarn lint && yarn typecheck && yarn validateDepsTree && yarn test"},"author":{"name":"Atlas Consulting"},"license":"MIT","devDependencies":{"@babel/cli":"^7.12.8","@babel/plugin-transform-runtime":"^7.12.1","@babel/preset-env":"^7.12.7","@babel/preset-typescript":"^7.12.7","@commitlint/cli":"^11.0.0","@commitlint/config-conventional":"^11.0.0","@testing-library/react":"^11.2.6","@testing-library/react-hooks":"^3.4.2","@types/jest":"^26.0.23","@typescript-eslint/eslint-plugin":"^4.8.2","@typescript-eslint/parser":"^4.8.2","babel-eslint":"^10.1.0","babel-plugin-module-resolver":"^4.0.0","babel-plugin-react-app":"^0.0.0","babel-plugin-transform-class-properties":"^6.24.1","babel-preset-minify":"^0.5.1","babel-preset-react-app":"^10.0.0","conventional-changelog-cli":"^2.1.1","cross-env":"^7.0.2","devmoji":"^2.1.11","dpdm":"^3.5.0","eslint":"^7.14.0","eslint-config-react-app":"^6.0.0","eslint-plugin-flowtype":"^5.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-jsx-a11y":"^6.4.1","eslint-plugin-react":"^7.21.5","eslint-plugin-react-hooks":"^4.2.0","husky":"^4.3.0","jest":"^26.6.3","jest-environment-node":"^26.6.2","jest-playwright-preset":"^1.5.2","playwright":"^1.10.0","prettier":"^2.2.0","pretty-quick":"^3.1.0","react":"^17.0.2","react-dom":"^17.0.2","react-test-renderer":"^17.0.1","ts-jest":"^26.4.4","ts-prune":"^0.8.4","ttypescript":"^1.5.12","typescript":"^4.1.2","typescript-transform-paths":"^2.0.4"},"husky":{"hooks":{"commit-msg":"commitlint -E HUSKY_GIT_PARAMS","pre-commit":"pretty-quick --staged","prepare-commit-msg":"devmoji -e --lint","post-commit":"yarn depsTree"}},"peerDependencies":{"react":">=16.8"},"gitHead":"294a2a1074d0e0ed6e73b330086bdf1fd5ec481c","_id":"@atlasgroup/react-wrap@1.0.0","_nodeVersion":"14.16.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-MSFCA5OvX8l5fO+Z00XVk2wKuNcb2tS/4fvUWYadXpJbctPLbv9iHArifvffg6m/x410VNDTXwkqRgZs3H8CdQ==","shasum":"ea0e75a86b687ed177a3da2a0460eadd01ef5ca0","tarball":"https://registry.npmjs.org/@atlasgroup/react-wrap/-/react-wrap-1.0.0.tgz","fileCount":14,"unpackedSize":7848,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglU53CRA9TVsSAnZWagAAjtIP/0K9mC+JoMeu6Vqe7CJ2\nrGasUQiF1svBNbboPOrzZezNBxWPgMvk0HjkgJYKJ6AjFU8Kq9ifQ/MtG5rA\nAmCLCaOoyaVk+JKY5tIEontfAAeaMmdyS4GHWYB9yDiEUT8WatOsWSMivQ/r\n+KOf0DVH5ZlxdBg6YC5bs/4UjNCtZ9mg3ROMxTRAjvBUp79bcZhGwjC3MGof\n9vR8e4gnBNF6CgHpVMB/VHgr5FGL1RL4y7B98wjOdtEZkeLeJxeBj31pUu59\ngZay0TJcZCgAwZelxCk+IY1gJuqzVsM71prfsyZBrDtEuytkz/Csf/Yd9JLC\nrrBOWnIWiFGeBccm29Q9hxuAUy/s13EgmfKvbKTGzaJzutA7lI3c2zR9RWQA\nIXzmkxjPQPANn8NkwJlZNWvLMf1s62SEI/sponBBXQpm60chYomlFMrwc3Wz\npdd7tywzHaTPj7crojiEoDsQNavivPRgGGvXcmrj7mhjwBkNopltx2F44g17\nbOjt6Q11A4L+CUSdCsvl8KZ00yaEwQYpOt8COyc8UQJ/EB9xwCgriAjiVajL\ncJvm9f+LXm2MDeOk8uCzUzTvdUB9jl9OxQ1wAPoq+D2sqYhe1+eiFokx3bnm\ndB9hi+9djZoP70roV2vFvC12wp9OeHfZtNPcdjMhEgA7PWDYv6tWwMBfkhkV\nOgcZ\r\n=X6Ip\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC8yRhOw4LkrH5mDXa5Ehax8fWKLeUiVj+KksMSuE3rIgIhAPhyZxuUW/maTvQzaaZ3hu1QfijDeFEHzzWb54SRs3p9"}]},"_npmUser":{"name":"filipkastovsky","email":"devfilipkastovsky@gmail.com"},"directories":{},"maintainers":[{"name":"filipkastovsky","email":"devfilipkastovsky@gmail.com"},{"name":"thepatriczek","email":"patrik.szewczyk@gmail.com"},{"name":"trehak1","email":"trehak@atlasgroup.cz"},{"name":"martintopolanek_ag","email":"topolanek@atlasgroup.cz"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-wrap_1.0.0_1620397687407_0.5273113376933969"},"_hasShrinkwrap":false},"1.1.0":{"name":"@atlasgroup/react-wrap","version":"1.1.0","private":false,"main":"lib/index.js","description":"A straight-forward react component logic reusing and close-coupling prevention utility","scripts":{"changelog":"conventional-changelog -p angular -i CHANGELOG.md -s && git add CHANGELOG.md","changelog:all":"conventional-changelog -p angular -i CHANGELOG.md -s -r 0","version":"yarn changelog && git stage CHANGELOG.md","depsTree":"dpdm src --ext \".ts,.tsx,.json\"","lint":"eslint src -c .eslintrc.json --ext .js,.jsx,.ts,.tsx --max-warnings=0","test":"jest -c jest.config.js","typecheck":"tsc --noEmit","build":"cross-env NODE_ENV=production babel src -d lib --extensions .ts,.tsx --ignore \"src/**/*.test.tsx\",\"src/**/*.test.ts\" --config-file ./babelrc.build.json && yarn typedefs","prepublishOnly":"yarn build","typedefs":"ttsc -p ./tsconfig.typedefs.json","validateDepsTree":"node scripts/validateDependencyTree.js","pruneModules":"ts-prune -p tsconfig.json -i \"tests|index|.test.|.*\\.{js|jsx}\" | grep -v \"(used in module)\" | grep --color -E \" - .*|$\" -","integrate":"yarn lint && yarn typecheck && yarn validateDepsTree && yarn test"},"author":{"name":"Atlas Consulting"},"license":"MIT","devDependencies":{"@babel/cli":"^7.12.8","@babel/plugin-transform-runtime":"^7.12.1","@babel/preset-env":"^7.12.7","@babel/preset-typescript":"^7.12.7","@commitlint/cli":"^11.0.0","@commitlint/config-conventional":"^11.0.0","@testing-library/react":"^11.2.6","@testing-library/react-hooks":"^3.4.2","@types/jest":"^26.0.23","@typescript-eslint/eslint-plugin":"^4.8.2","@typescript-eslint/parser":"^4.8.2","babel-eslint":"^10.1.0","babel-plugin-module-resolver":"^4.0.0","babel-plugin-react-app":"^0.0.0","babel-plugin-transform-class-properties":"^6.24.1","babel-preset-minify":"^0.5.1","babel-preset-react-app":"^10.0.0","conventional-changelog-cli":"^2.1.1","cross-env":"^7.0.2","devmoji":"^2.1.11","dpdm":"^3.5.0","eslint":"^7.14.0","eslint-config-react-app":"^6.0.0","eslint-plugin-flowtype":"^5.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-jsx-a11y":"^6.4.1","eslint-plugin-react":"^7.21.5","eslint-plugin-react-hooks":"^4.2.0","husky":"^4.3.0","jest":"^26.6.3","jest-environment-node":"^26.6.2","jest-playwright-preset":"^1.5.2","playwright":"^1.10.0","prettier":"^2.2.0","pretty-quick":"^3.1.0","react":"^17.0.2","react-dom":"^17.0.2","react-test-renderer":"^17.0.1","ts-jest":"^26.4.4","ts-prune":"^0.8.4","ttypescript":"^1.5.12","typescript":"^4.1.2","typescript-transform-paths":"^2.0.4"},"husky":{"hooks":{"commit-msg":"commitlint -E HUSKY_GIT_PARAMS","pre-commit":"pretty-quick --staged","prepare-commit-msg":"devmoji -e --lint","post-commit":"yarn depsTree"}},"peerDependencies":{"react":">=16.8"},"gitHead":"5baa200b31816b7baefebd2c8ec4f75ef1b4c4ba","_id":"@atlasgroup/react-wrap@1.1.0","_nodeVersion":"14.17.0","_npmVersion":"6.14.13","dist":{"integrity":"sha512-trX3X5m/jLfFkSuOnd+H8f+/7v11zz0SA2IxqhjIC1Rc5u54lyFdfGybz5NTv8Zmnn9xkqNg5yDAoUEtqXuXjw==","shasum":"701c16e099384b09a2a367f67a528fde7b4bfe87","tarball":"https://registry.npmjs.org/@atlasgroup/react-wrap/-/react-wrap-1.1.0.tgz","fileCount":14,"unpackedSize":8645,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrlobCRA9TVsSAnZWagAAFwgP/iMBWOvvRzq0LgQkgkod\nsOWsw8lAyr8P0EthqYBxIqc7VJI5zOIyXn+P3JyRXXIWC6cS6bLiNRVZkJvD\nnkQNwMyGzgrebhJjlGVC+XmMyYw12zRPpxz64jRgvva7misI4kEJMHGaZA27\n4P7EPArGv5fmBdFji2fH1FF0oC81Kcs7ZGgkpM67hzksrLaT9VlM8NR+GVWq\nsezWdUkBuCV43aI8tR3k6uuBVTEMrRQTSJKQjb74gI9WEJ2c5EQF8qVWmPs0\nfPzpKxNDGNy6enJS9qXUZqEFuKQpmuS8ykIfztjqGbJ7M4Q+umL2ud93Qwhp\ne75wh0kb6AXUVxeB+GAwRfIv0P+UNMsa4IdJUqhbzoEu3Q7ZspCrodn8+Dsp\nElcdHQN3CrvtuPmNTp7+eKZ/stPqBTRpwLL8Dk6KpbaHkpr5Q56TRmob4tYR\nsZrIxJIqI5y+Wy72BSK5Um1d2ehlxQ/Bt6ufgDAlX+qcIAtLW3OkmRw0yLiA\nRlCzjGks6UiAvQHafKEdPPeLDLJGVakaYDrdAa+RfX6tGU9zXPS4l+G1Hmmh\n9mGPmZBn/l23zuojnfckVSOGutpWK05dWzdEp50Xpxr6Z70XbH6PkCp5kWAJ\niyG2dytw+kDk4weG9tnYZWQj7KFSKJXJqqpjcYa6+Ojtk4nenutBz4kgu/zM\n0OFV\r\n=Z2x5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCj03pKOBDLbux9gGE0/yrN5kWXCJYKHpD3v0JFPDddMwIhAO73Ptm5xbmWA5Xkc3y/m/oT5m2bsGskKVnGhn/HMCop"}]},"_npmUser":{"name":"filipkastovsky","email":"devfilipkastovsky@gmail.com"},"directories":{},"maintainers":[{"name":"filipkastovsky","email":"devfilipkastovsky@gmail.com"},{"name":"thepatriczek","email":"patrik.szewczyk@gmail.com"},{"name":"trehak1","email":"trehak@atlasgroup.cz"},{"name":"martintopolanek_ag","email":"topolanek@atlasgroup.cz"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-wrap_1.1.0_1622039066252_0.6272140373104913"},"_hasShrinkwrap":false},"1.2.0":{"name":"@atlasgroup/react-wrap","version":"1.2.0","private":false,"main":"lib/index.js","description":"A straight-forward react component logic reusing and close-coupling prevention utility","scripts":{"changelog":"conventional-changelog -p angular -i CHANGELOG.md -s && git add CHANGELOG.md","changelog:all":"conventional-changelog -p angular -i CHANGELOG.md -s -r 0","version":"yarn docs && yarn changelog && git stage .","docs":"typedoc src/index.ts","depsTree":"dpdm src --ext \".ts,.tsx,.json\"","lint":"eslint src -c .eslintrc.json --ext .js,.jsx,.ts,.tsx --max-warnings=0","test":"jest -c jest.config.js","typecheck":"tsc --noEmit","build":"cross-env NODE_ENV=production babel src -d lib --extensions .ts,.tsx --ignore \"src/**/*.test.tsx\",\"src/**/*.test.ts\" --config-file ./babelrc.build.json && yarn typedefs","prepublishOnly":"yarn build","typedefs":"ttsc -p ./tsconfig.typedefs.json","validateDepsTree":"node scripts/validateDependencyTree.js","pruneModules":"ts-prune -p tsconfig.json -i \"tests|index|.test.|.*\\.{js|jsx}\" | grep -v \"(used in module)\" | grep --color -E \" - .*|$\" -","integrate":"yarn lint && yarn typecheck && yarn validateDepsTree && yarn test"},"author":{"name":"Atlas Consulting"},"license":"MIT","devDependencies":{"@babel/cli":"^7.12.8","@babel/plugin-transform-runtime":"^7.12.1","@babel/preset-env":"^7.12.7","@babel/preset-typescript":"^7.12.7","@commitlint/cli":"^11.0.0","@commitlint/config-conventional":"^11.0.0","@testing-library/react":"^11.2.6","@testing-library/react-hooks":"^3.4.2","@types/jest":"^26.0.23","@typescript-eslint/eslint-plugin":"^4.8.2","@typescript-eslint/parser":"^4.8.2","babel-eslint":"^10.1.0","babel-plugin-module-resolver":"^4.0.0","babel-plugin-react-app":"^0.0.0","babel-plugin-transform-class-properties":"^6.24.1","babel-preset-minify":"^0.5.1","babel-preset-react-app":"^10.0.0","conventional-changelog-cli":"^2.1.1","cross-env":"^7.0.2","devmoji":"^2.1.11","dpdm":"^3.5.0","eslint":"^7.14.0","eslint-config-react-app":"^6.0.0","eslint-plugin-flowtype":"^5.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-jsx-a11y":"^6.4.1","eslint-plugin-react":"^7.21.5","eslint-plugin-react-hooks":"^4.2.0","husky":"^4.3.0","jest":"^26.6.3","jest-environment-node":"^26.6.2","jest-playwright-preset":"^1.5.2","playwright":"^1.10.0","prettier":"^2.2.0","pretty-quick":"^3.1.0","react":"^17.0.2","react-dom":"^17.0.2","react-test-renderer":"^17.0.1","ts-jest":"^26.4.4","ts-prune":"^0.8.4","ttypescript":"^1.5.12","typedoc":"^0.21.0","typescript":"^4.1.2","typescript-transform-paths":"^2.0.4"},"husky":{"hooks":{"commit-msg":"commitlint -E HUSKY_GIT_PARAMS","pre-commit":"pretty-quick --staged","prepare-commit-msg":"devmoji -e --lint","post-commit":"yarn depsTree"}},"peerDependencies":{"react":">=16.8"},"gitHead":"470a3579c4973251a4fda4dab78dc3358f0af6be","_id":"@atlasgroup/react-wrap@1.2.0","_nodeVersion":"14.17.0","_npmVersion":"6.14.13","dist":{"integrity":"sha512-GshlP34qJUGBCb4NGM02w3Q5U1uUO/N4lgLU0doczdg7ho6sOwQWOXebMIR2I3Pi3Ub0C9A7zIZzzVB02BDHog==","shasum":"9408f3979506f9d217c758a17fea328b3efc1b25","tarball":"https://registry.npmjs.org/@atlasgroup/react-wrap/-/react-wrap-1.2.0.tgz","fileCount":13,"unpackedSize":12207,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzNCOCRA9TVsSAnZWagAAu3sP/0rvaNE8TBlq+rWalyib\nezrlUtjzh8MWkuBiWkVIKFzlZNGPeqQMpi+7d8PIHz48y3mgb/x8ZoYj3ioZ\nFXBgeKwST39S+9hxkYbQGz8rfdbVchr14JSwra2U1H3bMdWfgCmjLWidyjVY\nbFBNpU1jKWHYbmPQDVczTFzHMlaYUOhBIlgXyWCxQDkYNpmsvvuvveZqRPnZ\nyCab1+UrsWclBtyhOZKFpW5MBvsBL7CUCyJTpdri8vwRFG1VC25M7LtpGQ6M\n408bokxKZeIq6P/0SL+hdcIz85PEQlKZZRVgnm50LLTovVUa/fcD0Ojr/HsM\nhcEl6BHrHlU3FmewvUL6nhvxf5eFXJad82Uc3+lUz4052QDO2gJbRkUcf2WQ\n4kqluI17Gps2d6hqBPk8Ky0b/JYuB5t0j2YlAqkzptPiG3kXKpbJY37c4uXG\neT6gwdlqbWpS+qOLpVlpU1UEZCZ9z2Ql2wZ8Wg7op6JfT7cC6JoB97dzGo6x\nI9Mv3XBG8gW9ZFd3V9fvoze4ZICTat0108dM2uQ7vTV8PWtBFluWAZspQZfR\nx7WKYDNt6PvBgsVCwuYZvtscMPqK/SJzmB+qtcd0lDCAfzuUC3zNCD88bfXI\nhTQ8owKqlOaZJ4p79QIapId4ZyJcj/fWagMidnV8lKbtSBz5/wiaD0571Lvc\n+v7Z\r\n=c3mS\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCmIGNXBe1la82A4vRjqRhlJvHsW4tNu09uJvOIsHyJQgIhALtJUL40yR+lgILus0Pv1TvF4xyan/bXlX33Zym2q2/A"}]},"_npmUser":{"name":"filipkastovsky","email":"devfilipkastovsky@gmail.com"},"directories":{},"maintainers":[{"name":"filipkastovsky","email":"devfilipkastovsky@gmail.com"},{"name":"thepatriczek","email":"patrik.szewczyk@gmail.com"},{"name":"trehak1","email":"trehak@atlasgroup.cz"},{"name":"martintopolanek_ag","email":"topolanek@atlasgroup.cz"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-wrap_1.2.0_1624035469550_0.43222706966817626"},"_hasShrinkwrap":false},"1.3.0":{"name":"@atlasgroup/react-wrap","description":"A straight-forward react component logic reusing and close-coupling prevention utility","version":"1.3.0","private":false,"repository":{"type":"git","url":"git+https://github.com/atlasgroupcz/react-wrap.git"},"homepage":"https://atlasgroupcz.github.io/react-wrap","main":"lib/index.js","scripts":{"changelog":"conventional-changelog -p angular -i CHANGELOG.md -s && git add CHANGELOG.md","changelog:all":"conventional-changelog -p angular -i CHANGELOG.md -s -r 0","version":"yarn docs && yarn changelog && git stage .","docs":"typedoc src/index.ts","depsTree":"dpdm src --ext \".ts,.tsx,.json\"","lint":"eslint src -c .eslintrc.json --ext .js,.jsx,.ts,.tsx --max-warnings=0","test":"jest -c jest.config.js","typecheck":"tsc --noEmit","build":"cross-env NODE_ENV=production babel src -d lib --extensions .ts,.tsx --ignore \"src/**/*.test.tsx\",\"src/**/*.test.ts\" --config-file ./babelrc.build.json && yarn typedefs","prepublishOnly":"yarn build","typedefs":"ttsc -p ./tsconfig.typedefs.json","validateDepsTree":"node scripts/validateDependencyTree.js","pruneModules":"ts-prune -p tsconfig.json -i \"tests|index|.test.|.*\\.{js|jsx}\" | grep -v \"(used in module)\" | grep --color -E \" - .*|$\" -","integrate":"yarn lint && yarn typecheck && yarn validateDepsTree && yarn test"},"author":{"name":"Atlas Consulting"},"license":"MIT","devDependencies":{"@babel/cli":"^7.17.10","@babel/plugin-transform-runtime":"^7.18.0","@babel/preset-env":"^7.18.0","@babel/preset-typescript":"^7.17.12","@commitlint/cli":"^17.0.0","@commitlint/config-conventional":"^17.0.0","@testing-library/react":"^13.2.0","@testing-library/react-hooks":"^8.0.0","@types/jest":"^26.0.23","@typescript-eslint/eslint-plugin":"^5.26.0","@typescript-eslint/parser":"^5.26.0","babel-eslint":"^10.1.0","babel-plugin-module-resolver":"^4.1.0","babel-plugin-react-app":"^0.0.0","babel-plugin-transform-class-properties":"^6.24.1","babel-preset-minify":"^0.5.2","babel-preset-react-app":"^10.0.1","conventional-changelog-cli":"^2.2.2","cross-env":"^7.0.3","devmoji":"^2.3.0","dpdm":"^3.9.0","eslint":"^8.16.0","eslint-config-react-app":"^7.0.1","eslint-plugin-flowtype":"^8.0.3","eslint-plugin-import":"^2.26.0","eslint-plugin-jsx-a11y":"^6.5.1","eslint-plugin-react":"^7.30.0","eslint-plugin-react-hooks":"^4.5.0","husky":"^4.3.0","jest":"^26.6.3","jest-environment-node":"^26.6.2","jest-playwright-preset":"^1.5.2","playwright":"^1.22.2","prettier":"^2.6.2","pretty-quick":"^3.1.3","react":"^18.1.0","react-dom":"^18.1.0","react-test-renderer":"^18.1.0","ts-jest":"^26.4.4","ts-prune":"^0.10.3","ttypescript":"^1.5.13","typedoc":"^0.22.15","typescript":"^4.6.4","typescript-transform-paths":"^3.3.1"},"husky":{"hooks":{"commit-msg":"commitlint -E HUSKY_GIT_PARAMS","pre-commit":"pretty-quick --staged","prepare-commit-msg":"devmoji -e --lint","post-commit":"yarn depsTree"}},"peerDependencies":{"react":">=16.8"},"keywords":["react","wrap","components","hooks","pattern"],"types":"./lib/index.d.ts","gitHead":"5259c4a6383267d6fc026c3bf1849bb6b57c46b2","bugs":{"url":"https://github.com/atlasgroupcz/react-wrap/issues"},"_id":"@atlasgroup/react-wrap@1.3.0","_nodeVersion":"16.15.0","_npmVersion":"8.5.5","dist":{"integrity":"sha512-QcoZ5FQwkWaaNmJnPFxRXisbir9YbVR/W+CPJyd2itwBErrlrYFwlzUZcYyFEgStaHtbA2QZSDGA89emmMfbpQ==","shasum":"9039dbf942779d267494668efb074f957d6588a2","tarball":"https://registry.npmjs.org/@atlasgroup/react-wrap/-/react-wrap-1.3.0.tgz","fileCount":13,"unpackedSize":12974,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCEmXugMLGT3xgpHATJgxktk5sZvVvFqMbNoSNZwqbrCwIhAOUTRDpEePx2FCx/L8k2wn7enId8Smo8RD4K18asWJEG"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJijJqyACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoKhA//bJAbRDI5yo7VlUJDzmFeTg8UhOVe4CvGEtHntommZJ8FkQPz\r\n4IrChZpjpaMB5BqUt0ht1OznWEW9tHqlLbP+Vr146M9qA/u9X2X+CshIK9qf\r\n8b++qhtrRUvhNFc2qb06+cE+mcd0aJHzFFW8ADsL4daxIgttxW32uE9ca/et\r\nlv4jeit/BOnFaS1M8EniYL99BUXCFAtT647R8JaGKyWP69kd6ed11BX/W4YF\r\nFAziOVWCvxYEvvAnGAYSzETN1mun5PcSTYbK9cDaWUD0i9fLWJXyfSnYJYyT\r\nr0Nllf3Z16LHkwNU4+/pfG9ua+4eNIPjjGctCxGfzPcHBuBF4Phs0qfTL4SW\r\nNV15Q5QyatyJnw9q0pLroMNeD35UgPBL8/hqngtBu43seShksDrUlNvJlqn1\r\ntcVvSO6l40NedFzDltKwzGHk//gUwsMhjDuGytzVyR+ikm1munajOIsxZGiy\r\nHnLHmaeKLPS99AjxnYAgmgp3d07Z92kU32VEk0eaCgzjvX4LmCq9z7CYzg3v\r\nMLJBtmuLi2n36NzB/1Jr09mJ9jwgOugoSrSQk9zhGAjyOs3jg5h87gnb8z35\r\nXXV8Vaj7P5pqYJ+vIAS/Hcm1XPG+W9XhXDSITU24NAISElh45gFj9xq7jOX0\r\nvdeIqBij8sfYsh37kKIsJB1TgtfG9FNMzh0=\r\n=kKUA\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"thepatriczek","email":"patrik.szewczyk@gmail.com"},"directories":{},"maintainers":[{"name":"meixner","email":"meixner@atlasgroup.cz"},{"name":"filipkastovsky","email":"devfilipkastovsky@gmail.com"},{"name":"thepatriczek","email":"patrik.szewczyk@gmail.com"},{"name":"trehak1","email":"trehak@atlasgroup.cz"},{"name":"martintopolanek_ag","email":"topolanek@atlasgroup.cz"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/react-wrap_1.3.0_1653381810287_0.37368782681933244"},"_hasShrinkwrap":false}},"time":{"created":"2021-05-07T13:14:30.588Z","0.1.0":"2021-05-07T13:14:31.047Z","modified":"2022-05-24T08:43:30.518Z","1.0.0":"2021-05-07T14:28:07.524Z","1.1.0":"2021-05-26T14:24:26.928Z","1.2.0":"2021-06-18T16:57:49.737Z","1.3.0":"2022-05-24T08:43:30.430Z"},"maintainers":[{"name":"meixner","email":"meixner@atlasgroup.cz"},{"name":"filipkastovsky","email":"devfilipkastovsky@gmail.com"},{"name":"thepatriczek","email":"patrik.szewczyk@gmail.com"},{"name":"trehak1","email":"trehak@atlasgroup.cz"},{"name":"martintopolanek_ag","email":"topolanek@atlasgroup.cz"}],"description":"A straight-forward react component logic reusing and close-coupling prevention utility","author":{"name":"Atlas Consulting"},"license":"MIT","readme":"# React Wrap 🌯\n\nA straight-forward react component logic reusing and close-coupling prevention utility\n\n### [Documentation 📚](https://atlasgroupcz.github.io/react-wrap/)\n\n## Quick start\n\n### Installation\n\nnpm:\n\n```\nnpm install @atlasgroup/react-wrap\n```\n\nyarn:\n\n```\nyarn add @atlasgroup/react-wrap\n```\n\n### Usage\n\n`react-wrap` enables a typesafe and highly flexible way of implementing logic for presentational components, or extending/simplifying others.\n\nA component and a hook are passed as arguments to `wrap`.\n\n`wrap` creates a component where the input props are preprocessed by the controller hook before passing them to the original component, essentially working as middleware, but for react components.\n\n#### Basic scheme\n\n```tsx\nconst Component = wrap(BaseComponent, useMyHook);\n```\n\n```\n|  pass props to Component              <Component prop1={value1}>\n|  props are intercepted by useMyHook   useMyHook({prop1: value1})\n|                                       *do stuff in useMyHook*\nV  return new props for BaseComponent   <BaseComponent prop2={value2} />\n```\n\n### Examples\n\n#### Implementing a presentational component\n\n```tsx\nconst useTogglableButton = (): ButtonProps => {\n    const [isToggled, setIsToggled] = useState<boolean>(false);\n\n    const onClick = useCallback(() => setIsToggled((current) => !current), []);\n\n    return {\n        color: isToggled ? 'red' : 'green',\n        onClick,\n    };\n};\n\nconst TogglableButton = wrap(Button, useTogglableButton);\n```\n\n#### Extending and/or hydrating an existing component\n\n```tsx\ntype CalendarWithEventsProps = CalendarProps & { showEvents?: boolean };\n\nconst useEvents = ({\n    showEvents,\n    ...props\n}: CalendarWithEventsProps): CalendarProps => {\n    // Don't query if events will not be shown\n    const { data } = useEvents({ skip: !showEvents });\n\n    const events = data?.events;\n\n    return {\n        events,\n        ...props,\n    };\n};\n\nconst CalendarWithEvents = wrap(Calendar, useEvents);\n```\n\n#### Simplifying an existing component\n\n```tsx\ntype LessComplicatedComponentProps = Omit<\n    SuperComplicatedComponentProps,\n    'some' | 'random' | 'stuff'\n>;\n\nconst useLessComplicatedComponent = (\n    props: LessComplicatedComponentProps\n): SuperComplicatedComponentProps => {\n    // Evaluate \"some random stuff\"\n    // ...\n\n    return {\n        some,\n        random,\n        stuff,\n        ...props,\n    };\n};\n\nconst LessComplicatedComponent = wrap(\n    SuperComplicatedComponent,\n    useLessComplicatedComponent\n);\n```\n\n---\n\n### react-wrap variants\n\n`react-wrap` exposes three slightly different variants of itself:\n\n-   `wrap` - gives `children` special treatment as a prop and passes them down to the wrapped component directly\n-   `fastWrap` - ignores `children`, absolute control over the flow of props is given to the hook passed as an argument\n-   `memoWrap` - wraps the resulting component in a `React.memo`, useful for optimizations, exposes a third parameter, a custom `arePropsEqual`, treats `children` like `wrap`\n\n---\n\n### Bug reports, feature requests and questions\n\nFeel free to file a bug report, feature request or a question in the issues section with the correspoding **[BUG]**, **[FEATURE]**, **[QUESTION]** prefix in the title.\n\n### Contributing\n\nAny contributions must pass CI checks and a code review by a project maintainer. Please rebase your branches with the current `master` before submitting a pull request.\n","readmeFilename":"README.md","homepage":"https://atlasgroupcz.github.io/react-wrap","keywords":["react","wrap","components","hooks","pattern"],"repository":{"type":"git","url":"git+https://github.com/atlasgroupcz/react-wrap.git"},"bugs":{"url":"https://github.com/atlasgroupcz/react-wrap/issues"}}