{"_id":"@laboratoria/react","_rev":"143-f4276faadbb13027466b105bb05b3a4c","name":"@laboratoria/react","dist-tags":{"next":"8.0.0-beta.12","latest":"8.0.0"},"versions":{"0.1.0":{"name":"@laboratoria/react","version":"0.1.0","license":"MIT","_id":"@laboratoria/react@0.1.0","maintainers":[{"name":"lupomontero","email":"lupomontero@gmail.com"},{"name":"anasteph","email":"steph@laboratoria.la"},{"name":"danig.dev","email":"daniela.gonzales@laboratoria.la"}],"dist":{"shasum":"3539541de2e3e3947606fae5fe491c87936f1245","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-0.1.0.tgz","fileCount":19,"integrity":"sha512-0h7ieeaHCzuq3FnvtnTiZ7uuUuD/xCcTXbP6im7h1ZudTh7eQ4QnSVxobdWiwywN1+kevmH4j6RprQkCCQ5wtg==","signatures":[{"sig":"MEUCIQCdAgubUT2QrLfh/c/5QriIdQEYXBJpxrBQK6vrbjBc5gIgUPDgPVOnu9B6bHga9xiSVThhBj4mp0S4fLmUh7Jbcb0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":33486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhqEx5CRA9TVsSAnZWagAA6bIQAJCLAIYZYLoQuyx1pWDd\nvkN3IqCgg2qaUe1gnKQ/g+N1KA+dywNbS5V+JYgxvmQ/11IfDDfUTIuqYji3\nJlTQWvfNvY/LDhyaD/b7L0OScPwMRZn8JHZtmYVmcaG8YpcbLoPgUiZ926h1\n8UMfOEO0aNEgxQNfmG+6YFd5zv1R8gSf6ilssim9vDTgxAVsqyBJMrs9vQMg\nXo+wG/wA7e08WryLil7O/gVvf4T1u3Q8rfdD8g9UY9ID003YRogNnW2HT6Qk\nZzGklNqFZCNLSDuLVb67v5qRaloixhMRD0MN/58NoHgmiYgR8zz7cnJbncHd\n9VH38QLFSvJOQe1QZ/E6WwHS7ijKTiMqXB8nNbE3ey6cl5hwF3VGOy4ez6YK\nQmQfB7/jUrdlQT7zhw6/lA2VKHIuODsQEcNU8OgwiY4QlcYZqc5e6b7TuU+q\nsFMPvMNFQi+hUhWg1+jGvkw4ridOtUa7br2l+tmtUGuQQvGFpYsYOlh1J+Jh\nL0qeIEKZEiZpIaOJkjQIyi04QtW/xXeH2ZwRMWZqvnpDXfc/YQYYiaeALDtl\n4r88T9LfLUWOwpdnxPNSlBErVPS/SXtllmpTrerBDZTsd/pz6vYIErH3aSw/\njIMVKqiVt5gswPnZtzIElyPIfg0aVjoXaF9Xtv2Zbvi32X3Nqr0n5Yue6ZXB\nSwHy\r\n=tm0J\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","gitHead":"e9902dd9fa1142121348801b91436959fa26e251","scripts":{"test":"jest","build":"rm -rf dist && babel ./src --out-dir dist --copy-files"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.1.0","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Se asumen que las interfaces en cuestión todas usan React, React router DOM y MUI:","directories":{},"_nodeVersion":"14.18.0","dependencies":{"lodash.throttle":"^4.1.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","@babel/cli":"^7.16.0","babel-jest":"^27.4.2","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@babel/preset-react":"^7.16.0","@testing-library/react":"^12.1.2","@babel/plugin-transform-modules-commonjs":"^7.16.0"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.2.2","@mui/material":"^5.2.2","react-router-dom":"^6.0.2","@laboratoria/sdk-js":"^0.0.0"},"_npmOperationalInternal":{"tmp":"tmp/react_0.1.0_1638419577261_0.35129849839969673","host":"s3://npm-registry-packages"}},"0.1.1":{"name":"@laboratoria/react","version":"0.1.1","license":"MIT","_id":"@laboratoria/react@0.1.1","maintainers":[{"name":"lupomontero","email":"lupomontero@gmail.com"},{"name":"anasteph","email":"steph@laboratoria.la"},{"name":"danig.dev","email":"daniela.gonzales@laboratoria.la"}],"dist":{"shasum":"0c8bab344d7a7e533cb82545084a010e6fb973d7","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-0.1.1.tgz","fileCount":19,"integrity":"sha512-A/TBXQRF+KRsVmL12MlirsI0kJt6G3QX/nk328Hge9H/FxU4D2X5EFKyJ5ROFm/ztkgjZctUqLLu/quNL5VURw==","signatures":[{"sig":"MEUCIBfNapHG5+eukXY9x6JHVLiBibnOxy9xdIvySi2Amvp+AiEA+xNsz6JIjG82utbQJ7y+cVsMYhTLHHlpcUCAMyitM2g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":33486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhqE6jCRA9TVsSAnZWagAAVZEP/ixWRvkFzIVT9r7IilBk\nOPmuOvsgfih/FtR4aoW9EPOaXxZ1nArkggg848YAbfQ6KCAdmdxUHsxtjEdQ\nkoaUt4MfjfkqOEiYA/V187UnWm9BP6G/e5GSn0sGYTUocpMceI9rm3P7dxPO\nqRgg+hxt1TSmrSo1zBNDt7mMB+cResHZlAl4JNmklnEmT4Zp7IxwIvBKNans\nTSNE3G+PD1OzL/KAn25+VNzz9n3rHUaQdjkh92OIs9L/6+NiC8Tpx2WWcrIJ\n/R+uhkYiklSjplaTdMWNXfgyvucceCp5nnyMYWD1hzAVyfFBB2sCigO2ctFu\n3n6LlSaMMmQ+thHlKrzR7VZQS6WewJYphK+6hzYT7kb2f3Y0kXsW8Xx6UxgZ\noE0dPtK0MgP3ScmQ459heYAie0/0WoMWE9xMpFE0M7LrRmjgz14Lreljq9QR\n4vets/HclhMt4zxfA33URC4EDkGjfRezUuf4EbDVIMcrvFanJsz3o24i7z4+\nLImQp9NKiaeWgOgKV4Rmw3YWyw+a1bxpQi8kCMRoNoD92pYd27FwbOD5rCe+\nDkyTG0f6rY358Ilmnr4J7iqilUn/RKMyc3fmhnm3uz3hl01HDE6SvAmnC/Y4\n+RIuJZrAJWnWy0O7RIpg03AECHxISUAry5IHA7pWFt35GzTpfuJ2co5BRX6u\nsSvS\r\n=LA61\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","gitHead":"1121f98c97e829f8dd9df80d1464a23f9ea02e76","scripts":{"test":"jest","build":"rm -rf dist && babel ./src --out-dir dist --copy-files"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.1.0","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Se asumen que las interfaces en cuestión todas usan React, React router DOM y MUI:","directories":{},"_nodeVersion":"14.18.0","dependencies":{"lodash.throttle":"^4.1.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","@babel/cli":"^7.16.0","babel-jest":"^27.4.2","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@babel/preset-react":"^7.16.0","@testing-library/react":"^12.1.2","@babel/plugin-transform-modules-commonjs":"^7.16.0"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.2.2","@mui/material":"^5.2.2","react-router-dom":"^6.0.2","@laboratoria/sdk-js":"^0.1.1"},"_npmOperationalInternal":{"tmp":"tmp/react_0.1.1_1638420131673_0.5705280475545909","host":"s3://npm-registry-packages"}},"0.2.0":{"name":"@laboratoria/react","version":"0.2.0","license":"MIT","_id":"@laboratoria/react@0.2.0","maintainers":[{"name":"lupomontero","email":"lupomontero@gmail.com"},{"name":"anasteph","email":"steph@laboratoria.la"},{"name":"danig.dev","email":"daniela.gonzales@laboratoria.la"}],"dist":{"shasum":"bbae7c4c8a5ebd6530622a88b9de9bda5c885786","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-0.2.0.tgz","fileCount":21,"integrity":"sha512-q4yHJ0vRyf2qzgMs+Ip49lWVYJZPpSyTXjjx8CqJYTTbN0rQTlfpE6j9kTOMN2BUWwGYL/QplNpLW3s3IMLvEA==","signatures":[{"sig":"MEYCIQDKUmbTje/dlQBP1vxLqgAdjhb32j4zh0+106/A+Uj8YwIhAKDFuN6mGfE3sfZTq2aLpUhjRUhkB5w5QNEpW1l1U/Bd","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":35721,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh3bD7CRA9TVsSAnZWagAAIIkP/R0WdU1p8Mv3s5lutybi\nwv+eHn/+yqXBRs2X4LNLHTCVFWCFd6x1cwrA1s1Y6c35w7FRSTyC9PIkZJLv\n+Pmdw/NOQ4yrZg70pzLjYn3FU+ATk4Ri9jaBeo81SlKamhJmFr7SsuMvOsye\n6WFCmaZD3jxTJQBWRx/XhVFGFNTvgHGWQ4qrm+g7eHc4C8syw/0H2GAVvhQO\ngTGa85j/9kVS9wIHvotGuunlXzqSce3rWt+EHpGutoQA+HUWyLRvT8L17/uv\n6ERK4MY43vkP0fEV60DsmiDaCcLGAQ38S/EQoO5zuUNuq6jh0ELqnkYXndH2\nOQgQkJVke8v5sTvsH25qRbcUQZc/oBcIQBod130KuY38LzkwFYxIJWy2LFsH\njnVZNA4Cw9WFRGTwmblJUaVrmUQXw7ZVprrxHHvnHqn5/ah1g5a4SPfDMepq\ngi1ZHdnORoOJXk7cro3D+n+gHRKWie8rFmZ6o3iqEI4is6mQbZLGEVMtMws8\nV9vUZEHBi6DMkH5JdNI6JNwE/v3uh6m4QhQTPu5TjZRZ6GBN5PkFM29ZUoxH\nSaP990wKMD/rQHCbKHGrrJVzw9uPrEo9Mt9RhzHfqoQG4eMGNCq08ZW7HZMc\nEpTWUyEms8/qrmv2fL42PxCBjGP2YE726U6LjhSS6PNh+dlNbquBhVYgWGKW\ngUm7\r\n=xCdY\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","gitHead":"123908f50943f0dbc29223c0e9db8bc339c3b132","scripts":{"test":"jest","build":"rm -rf dist && babel ./src --out-dir dist --copy-files","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.3.0","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"14.18.2","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^0.2.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","@babel/cli":"^7.16.8","babel-jest":"^27.4.2","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.8","@babel/preset-react":"^7.16.0","@testing-library/react":"^12.1.2","@babel/plugin-transform-modules-commonjs":"^7.16.8"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.2.2","@mui/material":"^5.2.8","react-router-dom":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/react_0.2.0_1641918715582_0.7066402060470485","host":"s3://npm-registry-packages"}},"1.0.0":{"name":"@laboratoria/react","version":"1.0.0","license":"MIT","_id":"@laboratoria/react@1.0.0","maintainers":[{"name":"lupomontero","email":"lupomontero@gmail.com"},{"name":"anasteph","email":"steph@laboratoria.la"},{"name":"danig.dev","email":"daniela.gonzales@laboratoria.la"}],"dist":{"shasum":"3478bd23de8a92a5f41b51faaa013d8976c017d8","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-1.0.0.tgz","fileCount":20,"integrity":"sha512-mRazoUsI2IONMgnqUBRXMdTHHlbCqbCgaSKKgGkat+R8rfIl5vnnM7m4i8u7lPa1uFGrNJwWjrS6GSJqGoVKVg==","signatures":[{"sig":"MEYCIQDP6BBbR9q8PXBlpo9+rRe46rE+jSLYQEceBMGcc+LRZwIhANe7tBwU/KNCctx0hp08kwCoeheqkBcyVeznidVPi3Lm","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":33365,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh8duHCRA9TVsSAnZWagAAz/AP/jeBvGD9ch5n/MccJLhK\nXXWrHFTJb5LVIIrPIwvAkxWOjQa16y6PCFLfE7zOuS18yW4WxHCK4tKQdHg9\nkiWun5FtiYWa9CauWc4/x3PrOhQkPVFVz/Rmj4TlO/7+3GD0Z19pTt/D/pI6\njJwKaxclYeOoUMY25DqiwcXSmx50cqOm3lPFVi/n515siErON1SPnnmViJSB\nPeAnklXD8mJalFAYw8AQqdeI8ybTZXNaJuDnoBMr8Cfoe+TayFPAG99DllE2\nQ+TQzk9hsBfGDiFU7vX9EP6nD9KsGHW+BfjS+gAqtDfU/Unn+1Ou/W1iJXIS\nGvgvUvwbS0tV5ZhkA/LNdBvxxaO/A3UepscTM8UyrbYvsCp5E+2CI/psrNKX\nIFnKgj5MKOkph5AOFYH1EzWra/1xTX93yYTBM1PPO6Uwg8SuutIifRNZmUcZ\ntooUeFxYUAPM9CvO6HUfdEPnUmxhr2UN+sd7l9CKLB0fIuHkH9ASSS1RjGmA\nHjD0Fczv1Qkwx4+nHoxiCFOulP5kFuyxoZXfHnffcL+7jnXYOt1JaPuxNdS+\nK1W6NRxFYQPhv6gFHhoXomK1P5TiB8anuDqxSMLmM20NKfSbj5HkIh384QuK\nigt8KGEhgfVg2Qs2tCfADJrckaA3MlRF5yDcBm6n5x78gMIhbsK7QWD3OIaD\nqraw\r\n=SFFx\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","gitHead":"9385edc818b9e90ae5132d730c1ea6936770d88d","scripts":{"test":"jest","build":"rm -rf dist && babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.3.0","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"14.18.2","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","@babel/cli":"^7.16.8","babel-jest":"^27.4.2","@babel/core":"^7.16.12","@babel/preset-env":"^7.16.11","@babel/preset-react":"^7.16.0","@testing-library/react":"^12.1.2","@babel/plugin-transform-modules-commonjs":"^7.16.8"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.3.0","@mui/material":"^5.3.1","react-router-dom":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/react_1.0.0_1643240326933_0.6699627391586831","host":"s3://npm-registry-packages"}},"1.1.0":{"name":"@laboratoria/react","version":"1.1.0","license":"MIT","_id":"@laboratoria/react@1.1.0","maintainers":[{"name":"lupomontero","email":"lupomontero@gmail.com"},{"name":"anasteph","email":"steph@laboratoria.la"},{"name":"danig.dev","email":"daniela.gonzales@laboratoria.la"}],"dist":{"shasum":"89bf15594bb8c1ed806d70a3b0cd25c10a2b78a9","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-1.1.0.tgz","fileCount":22,"integrity":"sha512-+CKFVdSc8+bGzpQzZ4sqhddJju69kNbd1BYxIDzzPSjGRy5ue8Xjps0OfYGUdVZs2RC3n/sSyV2LKer4c5Np1w==","signatures":[{"sig":"MEUCIQDoShYoTzL7exmk8P3YxYjUNMfnUStgm1PR/UsGaJ/jqQIgNCeYwbM6FZ0Bkcywx4buNMgpih++sDugbQ4xmPZnw24=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":37527,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh+H8cCRA9TVsSAnZWagAAGdoP/ixGj62xrT5Pfy5QbfFZ\nR4wzM4TzQ5UJjAxXtCtUx524QYaRfZv2uoMSfEWGiauC4F1oZhlMGWazEzPo\nK5/rkOBO21/l+W8C0Zvl1IphBPx9lu+T9PJsNm9tq4IbGxlx/GI5QNXV8I3B\ngfPofmI0ybs2q74tyzwR5mUM97baht2OihxAw68o0acKzm59IAj8UCGtNCAc\n4NJ8Y8fXUaqI3ltt3L5vYNNJkZIemXW8Oz1NBWKYyEXanwX9x91iVfv3IdiU\nNHD/EMPMeWvuXEN81q2wBWTOzrkwFALz7GsH+3FVQI2bILDX7i195FJZ3OfK\npAs+RfaWUqL/U6JdywQ8cH0i4Ti0X6DdjpoPayr+xH3UwW4M9RkIytAHs6d4\nO7XVGVru61hv4K3oqCOC5I8MobzOsHJ3TYaOo3v2bq7shjPJoJEm5/u09GiU\nrWcQdJIOHDkmqelQNt7Ee+q1vUhf21+bNzq3B/RfbBCXit3IFL9VF7HSaVWc\n7t3vA34EfBTwaJ4aBWnM0EqfDSMJKocAnaBn0p7aR2rVFg3PS2EDWAxO/tdM\nvrIfpPhgM1DjYeTX9QvRWNVAMLKQfJ9peTjW8ndrnrEnXnPRo7yUdHjKqRsE\nbHsdIg4kvv6Em9NZxNpA193J5GMJotHLySn65NzNXfDeQaWsIdd/XieoTgw4\nA+Wq\r\n=jOuP\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","gitHead":"2a8d18966513eae2bc022fe4e0d267e49de1fc80","scripts":{"test":"jest","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.3.0","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"14.18.2","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^1.1.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","@babel/cli":"^7.16.8","babel-jest":"^27.4.2","@babel/core":"^7.16.12","@babel/preset-env":"^7.16.11","@babel/preset-react":"^7.16.0","@testing-library/react":"^12.1.2","@babel/plugin-transform-modules-commonjs":"^7.16.8"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.3.0","@mui/material":"^5.3.1","react-router-dom":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/react_1.1.0_1643675420323_0.5820909850177876","host":"s3://npm-registry-packages"}},"1.2.0":{"name":"@laboratoria/react","version":"1.2.0","license":"MIT","_id":"@laboratoria/react@1.2.0","maintainers":[{"name":"lupomontero","email":"lupomontero@gmail.com"},{"name":"anasteph","email":"steph@laboratoria.la"}],"dist":{"shasum":"2aac78feea47087fc0ecbeab8b23ecf2dee91a93","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-1.2.0.tgz","fileCount":22,"integrity":"sha512-A6NObHSzzQyEgE3K7w6acFHdTPnneyAQfbN2EnEEQ0KVerRV8cSZB19Kx8d+Ap3XHHFCrwzxTehlJlzFmOzGAg==","signatures":[{"sig":"MEUCIQCLuRPkbCOdhjhRKOINUWhvA1fvHfYjH4AxYi0aFA0kDwIgQTjJFFNa7v+EQnFqX2HTCyRQZ50pP4e7aEiOtT9kWvE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39713,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh+zgQCRA9TVsSAnZWagAAxrgQAISuG11ABJ8Tc6gt/Cci\nPRAeZd15uD/ZP/LvNv4O7Pb8yu5RUrT+3o1iwl7T8FQ8K2P4yVM5OaGxHyJi\ns9bFEbrHRAh0LKvtLrOzCuWy4R7tBiGG4mw/FBKqXlQqW00lhMwg8TWvbz/8\nKAZXb3xFk66Wk7JEJaeshSqUWKNliRH7Vi1z4HbUksCnwnG6pFPxglaPyamz\nzzpyl+Sj1fdFl3ME2XuaZCZeAwECCN3uJGhfZbXbagsiWUK/zx8iFT+GvxUZ\nGX+NbS+4MISCdRPYcCQCF8ghlccg+fNBZT6e3vcrZQ3Hk2q8JJRdkFgpx01b\nUe6x6ypNjmR2pSYsYo5WFiprQbipRW6j7hA5nyEeP9kkKGPUWyHTKRkKfiVa\nI5Yb+i3Eh96eSc8nWiTHUCoFf6FLxl5z9WvZK3JOkGANmUvpRv5/hWhVOnFY\nEUmeuC7Q0W5Sux1mMTi7ExS/+X+Lu5DsQHUY2yfnyE1tkGJorKsLef/Ej+GP\n5eOsv4NMtcWGApIPeXX3TX0Znr6m+z2SktzoDDLsnbXNsq1znbNueeO1HbFK\nhlO3bnt6jka+vnBdG0NUuXFzZF3+jT5jVmtJi1kA9VgA8QwQQFePxZbVi6Wv\nCRgNAJzPd8GJ6YMCM3t5g957VhwjZe2qEI3uMCwng1faUj7WS0ALTiKccl15\naxoG\r\n=d3kv\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","gitHead":"64aa3aa985325b16ef4422ccfc53455bb11c815d","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.3.0","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"14.18.2","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^1.2.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","@babel/cli":"^7.17.0","babel-jest":"^27.4.2","@babel/core":"^7.17.0","@babel/preset-env":"^7.16.11","@babel/preset-react":"^7.16.0","@testing-library/react":"^12.1.2","@babel/plugin-transform-modules-commonjs":"^7.16.8"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.3.0","@mui/material":"^5.4.0","react-router-dom":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/react_1.2.0_1643853840136_0.23231881057513104","host":"s3://npm-registry-packages"}},"1.3.0":{"name":"@laboratoria/react","version":"1.3.0","license":"MIT","_id":"@laboratoria/react@1.3.0","maintainers":[{"name":"lupomontero","email":"lupomontero@gmail.com"},{"name":"anasteph","email":"steph@laboratoria.la"}],"dist":{"shasum":"f755a1c02f0c4fbd68c21fbcba84cc3877268ce1","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-1.3.0.tgz","fileCount":22,"integrity":"sha512-254x+Sozr/eQX5Fsgg92nvOREc5lkIpJ1N3h4kSd/HjEufpAaCduVLh7y8wQfcp8EOx+IWgSfvr0o5+i5PUtdA==","signatures":[{"sig":"MEYCIQDwx1ejndoPNKLRDhMxbm3HerngSDi5t/Z0RNHqRhpbwAIhAIJvwjkaiiv5uhMpS5Dd/Vx0zL9Q4zw/2pybNA9PTgyD","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39713,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiAwn+CRA9TVsSAnZWagAAthgP/iP4ktgax1hO+h0SFOgD\noWE/zsZ3rEE1tdv2xDzO5/CD8RBUS5K3ZIdHDeOvWiaOvynTdRBFzCLlavbv\nrjG/EeR0u3BNATFTv9swByDHIMCmNXTiVcXzk82zofEdOtZHH/RMNlM+9u4S\nPQRWPIgEAHGXvPBTsePuU7qhw+5Y3T902xW/P78FzqjmR39eVBEI1qQeCSa5\nWEgqYEC1tdDBhgezsl/Ep65cvS+kKlwmB7qB7mNu1aVVx2yPvGv56Q9/W45z\n5bjw60/rJPg8qa1r32d+YBp/lVPvUMbMPgR+GrwMG7VkEIeSpz70FfkZDjQS\nkt15Bc27RouW7o/ah7r4LznohTr4TVGFR9T33D+zyEDp1AAWOpJ5kMy2Jsez\nEjcHJ0pljWjwuBCw41pV+jOFts7AtFqvZB/2LxqHt8ExeBcRztw7VN3Usq5C\n61Yyu8PPUCMHF0wK4IIRIE0Gmc9SOyIjt1+EhKh8klN5lDDMOvP48QI64RPX\np9mPAm21HIE41iG8Y3bZR87zYL7bFmct4zrKzqMvoywN/PR1uvRToEQum1dE\nM8UarqHd+v4MhVzgp92jHM+XDWeFyIFTwL9Q9yoOhYYsNsDkQeThqIkuPO8J\n7Fh3D9ILYaGG4pDkiYJ4sBWRUQFM3iz91OrypeQYdwULPXWssU8XJ0N76Djy\nWLhw\r\n=G8eN\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","gitHead":"3b89d1101677794752794304972dfd3debabfc57","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.3.0","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"14.18.2","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^1.3.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.1","@babel/cli":"^7.17.0","babel-jest":"^27.5.1","@babel/core":"^7.17.2","@babel/preset-env":"^7.16.11","@babel/preset-react":"^7.16.0","@testing-library/react":"^12.1.2","@babel/plugin-transform-modules-commonjs":"^7.16.8"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.4.1","@mui/material":"^5.4.1","react-router-dom":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/react_1.3.0_1644366334587_0.5226653864511803","host":"s3://npm-registry-packages"}},"1.4.0":{"name":"@laboratoria/react","version":"1.4.0","license":"MIT","_id":"@laboratoria/react@1.4.0","maintainers":[{"name":"lupomontero","email":"lupomontero@gmail.com"},{"name":"anasteph","email":"steph@laboratoria.la"}],"dist":{"shasum":"1a91b09551b91c143ff2d5206e7761a6b0c56725","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-1.4.0.tgz","fileCount":22,"integrity":"sha512-VV8MLDZ8UumHW4uTC6C/FMSD4+9PN3gHXSRt57f7n92G+aTPBv4FLt0acnk1+dptK3I7dDUQePrngGUN2rACbw==","signatures":[{"sig":"MEUCIQDGHdJacEY4FlVJif6YgUG/POfwqs5M/uAy5MKRf8G7pwIgZIKf9v4xMFmbiup9g3MsGVDJVKLaCkiJpQnTGn3Wsu0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40787,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiDD9gCRA9TVsSAnZWagAA8BMQAJhPdaMrmfg/3SQL0pEu\n6ecIQpB+4P9qoWlfoNSDEql/M6V5ogVvfmEqCmfhrQcZwP6QK1s7tXXMYYqA\nWVzXtE+msyqd6s/jSHX1I9VkpHhVN8eOO5rU5EC2O8MfDmcXYQPzgL2No7iR\nWqr4GjFuIbHoDLAjY+C+6JETsvvSF3n3IkA5goUkNDfBC7Syh/WIw4SLtaif\ngjoMvUePMV5OZLkmYPYnGVDHFwT2u3MFAGvAAE4YGlkVbnOs8MOIkAnEPE9j\np3koI6H5PwSkxYYFNbKwXFo9aJDBrFaN5joo3can2JUhE+SigQmrF81ekiNX\npncH+DJV5YZK1gU6D3NAdBZNZuRGljzmcoM7F/UTWU4p68DyKVdBbyCXNWL/\nCCn8zSxnhZ+3g0QICHxBDDb+SvCp9CAzWcHBkUDSqV3oLDk1Dgw4ET8ZhAJM\nLGSM8QoL5Olg8LnE9ruBNxhcXN8RdESW4yGVkx9LQWnpYJibavolsDqQ5JTD\nUbC3jWKoIkmnrJChooINpFLkn5qDbiStR5mOiHBjk2bEbkpT0YYFq/oJlKa/\n6ktpd2l7iI+erCGVtwQ8AKYV4ywGSmW+Xsjyiq3dbarpIlrG1LL7dC1/AZ7N\n5eA7gFfNuYX/yhfdHb9klNMWxZyQ9wVTB4RUjksRa7q+h51YChy3MMOtyVrf\nfARu\r\n=nHvM\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","gitHead":"2f61eeaa432b8059e930e139cd23a2c399647030","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.3.0","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"14.18.2","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^1.4.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.1","@babel/cli":"^7.17.3","babel-jest":"^27.5.1","@babel/core":"^7.17.4","@babel/preset-env":"^7.16.11","@babel/preset-react":"^7.16.0","@testing-library/react":"^12.1.3","@babel/plugin-transform-modules-commonjs":"^7.16.8"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.4.2","@mui/material":"^5.4.2","react-router-dom":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/react_1.4.0_1644969823883_0.7162703393282508","host":"s3://npm-registry-packages"}},"1.5.0":{"name":"@laboratoria/react","version":"1.5.0","license":"MIT","_id":"@laboratoria/react@1.5.0","maintainers":[{"name":"lupomontero","email":"lupomontero@gmail.com"},{"name":"anasteph","email":"steph@laboratoria.la"}],"dist":{"shasum":"f57309f692106b4b2b29a0cd31aacb399097bb62","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-1.5.0.tgz","fileCount":26,"integrity":"sha512-ZQhXIzSShioq+xu17jfBrAdvrlhhqi11VigLPIh0mzBD+6LTApcSqXMx3dQQhc+zQGtEYTCs1Bx15VFGqReRhw==","signatures":[{"sig":"MEQCIHCTluSYf5DxkFVoClCmyFXZfFV5JneF1EHeBQ++C2FoAiA1zZEaKh0OhWd15ofxJ8uHrbbeoROtuT+d0wvnVeF35Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51639,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiKmtkACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr+Og//ZWzVYVTvruk73q4njlg0cH1o2WbUlNFTgOzGvcAfOhpLHxdj\r\nFl0bMaDXyrtpMdKnxLA4AgneEkpZYMKk2GxDp6JqBjTn9KAiBnajFxwn64L1\r\nn/Sf2iClX5r8/w/dkcULzTIwFuHX0w23InDSSmLX8Tfzd2EXwX8Uz3MrCEID\r\niUz4/TdT/CTpFWC2gSh96wegZm4G+E2E6DyOyoO29f5JZuJRRT2Wb7ngpTEn\r\n2cAsC7y0+n5IKBObODw9izZjzXBq1GQdE/fsMOd4LzCug7u/U1kJ1QJ4/z7t\r\nbyJYkFfeGY+S43DoqcGxJjT/QhQjFhwUL/5dhKRsse0jumC/bhCZRLvjYbhY\r\nbVNpIGe6SaqqGj3zpzngiKANpgNeEUfsMEmVVlqLY8+TcRplXVLsSywOEXy1\r\nmRLyX1CWgWCNBhF7Ns0CDUHUTArG66y7gmBOLLJh95kEIQxWmjcfT3oC9AZv\r\nPYVy50l7NhFIFnXmsQ9UQ2h+L9YrZIVJEcKzRQVJ+0q3PzPz8zNj83gPsacG\r\nE5p4KFk34faagXsgghuClzHj7nBBQBQ/9Vg6HByQKKDgSBp3TsJxnY2o3roo\r\nii9v3QgsbHtxedxD59JsPS9JZee/NJd3GBW8vvr4/PuYnNctoSeaBwoufGLv\r\nMEbXXq2yGn0NrdBZZg4sQxWNmPXS4Pfb2P0=\r\n=vfxe\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"6dfbbf910e55447bb71059c460934485f2556046","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.3.0","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"14.18.2","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^1.4.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.1","@babel/cli":"^7.17.6","babel-jest":"^27.5.1","@babel/core":"^7.17.5","@babel/preset-env":"^7.16.11","@babel/preset-react":"^7.16.0","@testing-library/react":"^12.1.4","@babel/plugin-transform-modules-commonjs":"^7.16.8"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.4.2","@mui/material":"^5.4.2","react-router-dom":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/react_1.5.0_1646947172220_0.26569948815559785","host":"s3://npm-registry-packages"}},"1.6.0":{"name":"@laboratoria/react","version":"1.6.0","license":"MIT","_id":"@laboratoria/react@1.6.0","maintainers":[{"name":"lupomontero","email":"lupomontero@gmail.com"},{"name":"anasteph","email":"steph@laboratoria.la"}],"dist":{"shasum":"f06ef37a17672f497de65ea879fe12ebe8b210e8","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-1.6.0.tgz","fileCount":26,"integrity":"sha512-g8wsAPZjNKYXLLtBf6YBuHHeWzdTTVKvjsnVKL3ry28IFCxMZHOAWLTuvN0Neo55FemKPrmx89HruyDlhmuQEg==","signatures":[{"sig":"MEYCIQDIez7AoBXAlm+gHKUEifwpz6cVzH+8XNJsQnQCN0Ln6wIhAPHjT1fyN8OC3eELUeophCvKEOh7eXWhkI65TRrEN/rV","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51639,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiK5AXACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqFCg/+Lw006ti7eRbZuPK+9eV9aBmarTtuOvykVSmHdsv/iZTIZEot\r\n5fkt1jd+gADxy++gu0G7C0mwy5p5QtXXG2iHEvtPGBE2c8VTYnP2SwE8U5m8\r\nQFjdxlLtnU1xAIIw5Q1WzgSQ/iiSFU78fSUbT7+rVsx3nfSVizPt92l3gAcL\r\nciphdsorTBL1MDS+JyhvN+LO+Gmrp+IDTOxT7Ko69MHb6ODAhjl/s7tMaHq3\r\nw+UguQSDyv+bI5kHvgnCqJZT+z8bjRMrc2F4rRiuB0fi0/IRcg+Z8NhHpL8/\r\nCFHBHuhVHNAnroWfKnI3iTFHfAVwWJNtQedNVkEUm6caSuu5DBTfgosXc1Ik\r\nMkW+pCb7IGVe7AOfL4bAxUEnf82eUuLjC3M81XGGSTI3subSQtCLOAqHih8q\r\nwyoDCAXuhRi5/9kAsWN/tpsH1u4E+puIyr0gTpGirz/L0kKKbujtSVgqY2PI\r\nzXvEq2LzeEpRm8QBX1swCk9xp3VypDj4rfFEdHROonrjdpzeTNtxxfll2Ji1\r\nzYX17vGlWo02YRqs8jEou9CR1GPBbsEQW29QsikaiYXD2+7I60QJRcnIyVMm\r\n/bOgxLcqZGR0pmSZm2lQPfgYS800nEOIEv6vIydb/LRFzqs6TmDwmQ3almQG\r\njSE7AGY7FaU5b8CoXJQqxKZqfi1hG0/x7Os=\r\n=zzCD\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"8881a957e7b777efe100c5975a9cc48e6e2d89f1","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.3.0","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"14.18.2","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^1.5.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.1","@babel/cli":"^7.17.6","babel-jest":"^27.5.1","@babel/core":"^7.17.5","@babel/preset-env":"^7.16.11","@babel/preset-react":"^7.16.0","@testing-library/react":"^12.1.4","@babel/plugin-transform-modules-commonjs":"^7.16.8"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.4.2","@mui/material":"^5.4.2","react-router-dom":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/react_1.6.0_1647022103423_0.9518075201760345","host":"s3://npm-registry-packages"}},"1.7.0":{"name":"@laboratoria/react","version":"1.7.0","license":"MIT","_id":"@laboratoria/react@1.7.0","maintainers":[{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"4bc4cc6e912318f67ed30abc9472904bdb5c08a3","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-1.7.0.tgz","fileCount":27,"integrity":"sha512-P7TUCDvbDP9wVd41XPFr0KkAbSeffgwvA3Jp3vk5zOrhpitbfdkgvP9AzadPfSKUqnP/nGQcnnb9Z8IMq9Y9zg==","signatures":[{"sig":"MEYCIQDjZ+msrQXQmQWPnvR7WTKzkrsxT102MHHcxratFfPT2AIhANkOlgEJRHCTpo6v86/5vnSS6cYd6pgNsqI0dFpxfeGY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52366,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiOj3vACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmra/A/+NVGVVBMzbdY5YlWXROpI8743iQ/ispXr5GIPdTnEp81OY0zb\r\naoMoJRn9XOBtj5w8LDcHC5ofCJz2c5thOfJiKkqRJ66795o5UImweZJo2HvV\r\nmvf90QL8RaxC/+VhYTn9yz+3CbhxEKTBomECzDpP0sN4p8dnlQQOR+5n9Krh\r\n4rdHBAxk2scUU4edvXj4t6AtUmRIlMzDZAaOicJ7K76i54jBRw4HhDtDrkK6\r\neWjCYrwiV8hgyt3TK5rItZh0fAJU72+VzCeifLjhMkVQdGTLyCoGyHsIqm62\r\nLT0N2IvwWxTuhONLRpOgLZdjUbJ/+zvTIE5Ut/niVt22Ksn26RLrH5j0Y1LZ\r\n065JfogdGBFTmUfs1eGFbmK8eY+mCUeE6IfC6rWKy4Pgiy10ZhfBUUZJZy7S\r\ni517NulOcL6ggXifQaQL/Luh6BGg89zqkrkmpRgiJ8eAc2EtBGqquzYDqzj+\r\nOwE50O0Z8U7FGZDVk5dmZdvIpax5V/wq5LtHfBtxGl3TUlzYuOj2w4TrNDKC\r\n61cTveBSyhvqctav0s9peqZXxCg+mNuEF+2TdSI3vLQlGdwazo2VE/jwlwnL\r\njzeeOZQuut2LduEGUV3nUAgWqS4Bu+Jav/aq8iIIx7O4vkh2BtgzbwRHiDja\r\ncdGN2xHXUSMiYggy1lJLe7dpkoYvcI6kCag=\r\n=Aiwc\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"6b991d091d8f41f44e36952618e971d957616c23","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.1.2","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.13.1","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^1.5.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.1","@babel/cli":"^7.17.6","babel-jest":"^27.5.1","@babel/core":"^7.17.8","@babel/preset-env":"^7.16.11","@babel/preset-react":"^7.16.0","@testing-library/react":"^12.1.4","@babel/plugin-transform-modules-commonjs":"^7.17.7"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.5.1","@mui/material":"^5.5.2","react-router-dom":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/react_1.7.0_1647984111337_0.9841966693043733","host":"s3://npm-registry-packages"}},"1.8.0":{"name":"@laboratoria/react","version":"1.8.0","license":"MIT","_id":"@laboratoria/react@1.8.0","maintainers":[{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"fd7123e89c6060eed9b14500546fd1d21164a9cf","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-1.8.0.tgz","fileCount":28,"integrity":"sha512-iC+RRuivBI4/P20ay4POZeVbN4xoHOCar2d44RNAb7y0TNNs47wCQCouWfkIPvMTapfLqf2Q/1Q7gOeveRLDkA==","signatures":[{"sig":"MEQCIGMzNJNZYRqVGekXfbGHehi3myLB1Js5LZ1me/Z0WMKeAiBw6CgZlZKAK9DFDLqADkjnLRIYjWnyBRMpHU6IsmpGIA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52920,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiOmCuACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqToRAAiaOmRrCNykeg0ft6tpvtxl4WI9FGfzUh3pXoWRdPniPaT3Hj\r\nZSsD4CTEw/mQ/6OVgSPuO69SwHFriWLF8pksmwdigvvqUc0Zj5GaUJK++oCw\r\nw7vF9OqKt7RIARn9ulNAXB9Rgb9WZNT0VXg7spMZ+wnuUtwjn97W16g0mCc0\r\n0WYUYghRpzKVQ3/5uO8yEhfFZYKkSYiWzy0waI/TAjTHjiCWIIzZnJ/54daV\r\ndNJtyLL2XSoGJGfek4cxoyo2taP/AylD9frDEyEiFTxmHBo7S8zE2DR7lJDl\r\ngLhnGftK94AD2Zrtwh303pzSYeTvVMTGDLwwtET4uXRhce/N7CRtLWD6UVyk\r\ncfXZHq8UgiW0RKSY7/vuTBf08FLHIlC3hBIrzBrvNcVxUVZXO+lZacmLdFE7\r\nML3mkewnS7z8Bjj1GZ58IFudRIOR/IZCdQuhezFvn0wcpWXWyUcZHEnygny8\r\nVGnZUvhSQ3uzMAJWRKzGqpI320W7r2vi4apB4jWdn19Nl3quaBzT9xaLqdOP\r\niWO24OSRAuLjohl5sUfs16C3OuMi5EXxV36nT1FsPuBl3wpJQkv6uiVzVwUu\r\npqGFC+NIOMaAs8iGsiluPsvzjJ+EmG+S9cg+F0n2wZgVK4VOvHjGstk3YlW0\r\nKMQ/caaAGl7BaS9Se1rYVgjUYh/FQ4b12lE=\r\n=I6mO\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"ecbf13c4d9950ff68f90ca2809e4a011b78dd217","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.1.2","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.13.1","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^1.5.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.1","@babel/cli":"^7.17.6","babel-jest":"^27.5.1","@babel/core":"^7.17.8","@babel/preset-env":"^7.16.11","@babel/preset-react":"^7.16.0","@testing-library/react":"^12.1.4","@babel/plugin-transform-modules-commonjs":"^7.17.7"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.5.1","@mui/material":"^5.5.2","react-router-dom":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/react_1.8.0_1647993006040_0.8738860101741894","host":"s3://npm-registry-packages"}},"1.8.1":{"name":"@laboratoria/react","version":"1.8.1","license":"MIT","_id":"@laboratoria/react@1.8.1","maintainers":[{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"c00be1b6ef7db6de7670137a2f63e51f2d1c3376","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-1.8.1.tgz","fileCount":28,"integrity":"sha512-TP8KHlBx5nkgyHTQrRMh3YzWg7+/s+5RHWIzHsAU0nkOfObHsQyNpPbwPufuRcT1sK0yR6Lk6Pk6PBnArmDTEQ==","signatures":[{"sig":"MEYCIQDQbp7a+6VukcX9QR6S6DM5xZRC9VYdgxv5CfDuSGF4OgIhAKc6UUaufM0wKpgTsmQoWgFqbp24Ryp6+/vTHqtRYXqt","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53155,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQdk5ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmomVQ/+NIeUGToWf//O9T/orLxxP8nes5Bs/cci6/AY6u4DvnK35y3X\r\naEjzs09HPPU1+B7fa6VDfS+lCkD/Z9XrlGqJrrVOK5nJxIyJ3sqVVESU4AtF\r\n1iWTthd6PSpKbNU8qfmqZMUbrw/X/KfMlEEHDWv6KAAPsIPzpyiIphQgXBbu\r\nH4CtQXOb5L9cswFPCa21NKSp2itjzhTR4R5Hqru04cBUdkexMY5b8KvDhg6V\r\nF3GIo+3c8XF4NlSdJapvwllfFAq3Bhu1ydEHGPxBTxQtiM6j8cWjazKqcIRz\r\nfd4gPGLbPadg/ZYOJI4UDioDUbvlAV1+5XF6bvRyrJKxkpL6gUtTS/LQn9gX\r\n2v2o/mifDKDoXXGnPqasJy+Us90PgtdMKdNU4ZtGj9stGS9rhV+PCSFWnpQD\r\n7ogO3jDUHdH8VTV6IOadp8WYWnoa3SxYt4EG+dWnjP+k3emBSqYnZ8EoBFXr\r\n1wsJLuiYRVsN4HBxJMkT1QImQl3UIS6JF8pCUIjoOAiMmv9UVsFJnYwZ2dGI\r\nmG/a/76lMM0S1x3Cv9W77lsdMkfS1ZKZpApXUM9IGp/C083qsXCfdwH7S1mm\r\nPAeLZmZhXhSTHWDDG6v0cNH+o7k37mPI1fHey1lI8RVCp2nKCYqe+FMxnynd\r\nOtv8nEmRkCa/pNfgB0bJKS58NJk9oI3gZJ0=\r\n=JIgG\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"5d8c97fbea34eec7a0aa9bc700fa1f75062cf5c2","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.1.2","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.13.1","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^1.5.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.1","@babel/cli":"^7.17.6","babel-jest":"^27.5.1","@babel/core":"^7.17.8","@babel/preset-env":"^7.16.11","@babel/preset-react":"^7.16.0","@testing-library/react":"^12.1.4","@babel/plugin-transform-modules-commonjs":"^7.17.7"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.5.3","@mui/material":"^5.5.3","react-router-dom":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/react_1.8.1_1648482617275_0.3746215123024401","host":"s3://npm-registry-packages"}},"2.0.0-alpha.0":{"name":"@laboratoria/react","version":"2.0.0-alpha.0","license":"MIT","_id":"@laboratoria/react@2.0.0-alpha.0","maintainers":[{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"853486cba18c9d9f85a8d1aa801f0cfb3fffbc85","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-2.0.0-alpha.0.tgz","fileCount":28,"integrity":"sha512-ho5xxa4N0ygc8wu/GTPkvb4HNE5041OL+KLjnHchT9ZCTX80+3cYXujNgN1+SBTUnGvbjCrw1o4EwG/p3dwvzw==","signatures":[{"sig":"MEYCIQCMHRbkjJXhRlnlYz1+TOMMxGNPAbpIeUyFXTQFB+ZLTwIhAJK7D11SoBflpyXXPOpQH6jMqO8sm/mNAqOjBQQQcblL","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53170,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQeNMACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmptXQ//aVZbI5RHmgE8DtoTZMdRuMUsrlNKyShsgQhWF/+Uxk/4Rchb\r\nVZ8jaH6Qm5iWiSh2UEMtuSOKuiUgKrTHA0CBz0xRUO9WTtS2y+rTEOWEn9jq\r\nxdd725rP5epakeKVTYgYMcmIrpPi9EwDrmDPQw4+poRXaxUtvpCWH2z3/dlY\r\nY+KuKC57pomV3BKVRHkPsotnqS1EelfWxZhAFt3f+0/SpmWSn9npgSS8oBdu\r\nuW3CgtjBrpJdAwSTbcwxQBq+Bhw8KM2aNhfh5Dv7FEQTcqld3X6GYUnmPj4q\r\n4Nt2XgasziyRlTib7XyJ7wqIKPBC3aZhDb5IteUL2bpy+Zu82hlhbKx06Sfd\r\ngukb7Ixl7ZjVEGy+P9oWRnF4eU0XaqgAUHpRz+U/Dk7qB5YS+qaQllF37CRb\r\nqixpUWtHIshKdWq+qytYDjWUJlI7i4F5YreuWFxWeg8rt+448Zbywxz86UJP\r\nDvhwS6YsaXYzey5qXrHxZGkh7BZXWhI/xcEBejc9fb4pplkIDSXYIdrzE8kC\r\nvilzT/CYBzN4JarZ1lHBp2tlg8cA4R7q5wLzmKElDuh9c/uY+R661aEoIcVa\r\neyef3u6ueFAz2YfGFxVnV9N89wUxQTfzv4+mT6HeP7B4huTJ/s5QEcmjtmjs\r\nUYUuXjl3drjEd/StgZWT86tQlN1AOKg0X+c=\r\n=gRcA\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"3e324b87b2933aa4d15f7634e0b37ea9459dc491","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.1.2","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.13.1","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^2.0.0-alpha.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.1","@babel/cli":"^7.17.6","babel-jest":"^27.5.1","@babel/core":"^7.17.8","@babel/preset-env":"^7.16.11","@babel/preset-react":"^7.16.0","@testing-library/react":"^12.1.4","@babel/plugin-transform-modules-commonjs":"^7.17.7"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.5.3","@mui/material":"^5.5.3","react-router-dom":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/react_2.0.0-alpha.0_1648485196298_0.05360965634956738","host":"s3://npm-registry-packages"}},"2.0.0-alpha.1":{"name":"@laboratoria/react","version":"2.0.0-alpha.1","license":"MIT","_id":"@laboratoria/react@2.0.0-alpha.1","maintainers":[{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"19fe77a1bf448c2a7d7d0e534be338af6ae6b9e4","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-2.0.0-alpha.1.tgz","fileCount":28,"integrity":"sha512-Us3YGRZzlNj1oq0hTQnXS4FAdFGsloVGQjMEPOjU2i0tLfTaJo+l+ryUrC78CvFJ/9HZK+rEQXIz0sfhe3kXDg==","signatures":[{"sig":"MEQCIBmyddOIYiD1sCutd5xDV16bnk65k6CpbCdFbLkeHatZAiAaUKWt4wKo960CaDsvBdRvEfvibv4W9Ga7VKhc0y8OmA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53171,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQmkaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqpTw//XjxIMqsN330Vg1Pl/JGfAVgFb5aZWvaXw6wIsgsXXkkfaq+A\r\nX12HpzVnYsQOJXPoIRWtSNNwv5lMAv1fUp56OqvNTCEKPJnTF/Tb1oarcAzW\r\nIBAItPLsG5IfNoxAUJ3I1ZTgExCWC0hHHC/F9CzV7pg1XGZeI8lobIp1Ue94\r\ngX9tcP9WXFkNlYyzpKLoOMWNkYepvJKKa0mDgWBgRW2iQRB1J9itItgGRW0c\r\nqo9ZRpVtwcTG17WC9cOeW87juyBmNNFO2WLiw4QkxCzgASE2Jo97eOVJQ+/C\r\nJdXHI7TGBymCrOwtbVafvY3Ue0Vdu5dF+nPGQyWdVZhHmbCn4bewQIagp3Ka\r\n3p+lrvPPVT1NzzZ6RUmTYzFp4HUMctOND7DpeJEcieKRq6p0oagM+oqY8uq0\r\n5r25OheJ2aeR0ZI6UfZbVVupB2j1yivDKEEVvqiTIHXP9IFRL5J0cVe7pgF0\r\np4ij40NXDMmO00weIiZZUIPnKD7yLS8mggR8ia/60t5dQnAAWINSPUaMNToH\r\nB5M6Q0MWvQVe+HjBuU0Id2emdorYun7unEfElpmqw2x8wZYDvPLU2bid2/FY\r\nZ0B7iPvKjWiuN8wd3OoPUggJT1rzDD7veM3W3WRvcPxr3M8DXNHB5BcRumrg\r\n9ZAVt9Wi5Fc+a0a+P2cbvcJeGSXeZj2jb3o=\r\n=vSrm\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"b1c9dc1e0532e91b548f62fb4419d0a49e5167cb","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.1.2","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.13.1","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^2.0.0-alpha.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.1","@babel/cli":"^7.17.6","babel-jest":"^27.5.1","@babel/core":"^7.17.8","@babel/preset-env":"^7.16.11","@babel/preset-react":"^7.16.0","@testing-library/react":"^12.1.4","@babel/plugin-transform-modules-commonjs":"^7.17.7"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.5.3","@mui/material":"^5.5.3","react-router-dom":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/react_2.0.0-alpha.1_1648519450532_0.6269878392328547","host":"s3://npm-registry-packages"}},"1.9.0":{"name":"@laboratoria/react","version":"1.9.0","license":"MIT","_id":"@laboratoria/react@1.9.0","maintainers":[{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"3f9994a8cd1bcc8906f67eac5e4799c11829ae23","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-1.9.0.tgz","fileCount":28,"integrity":"sha512-K7RKpTMvzI4vymw40nnSTOhBhXkMiv0RdU+7JXl3JwuPje+S08J+yYyKZnCDvt9MCJFyCGM0ER2MVeyE0aMHCQ==","signatures":[{"sig":"MEQCIC4YpI8Y2315sluRtdN9tKadoQSgX089jIu0xAXcMlfKAiBgsaUmTJcZ2AKhsDrhX4OBChYr1+ofOosfy2H0UR5Anw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53155,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQ5tlACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqCrRAAmSI2Hb1JmB8KmZuf+8oUzwn/FxhT69LlMmSKaeSF3Z3j/8r6\r\nPv2V571g05axP3O9CMfSN+xs9A3fz1wPdXSSVDtwdvhQ4qGWWGtq+rGRwmxF\r\nMDGaxsk3OVLUs1xfsdO8475eNEBu2PZHhQ9ymoYrNdl3mirDWR+81YN9KJI6\r\nlZj2APA+pivmLv+xAM6duKpUn1Cr8Z8aVDxwY0/xbWybvwS8i+zMs1IWqJ/k\r\n5GcXkEYiie8XSGA7+2fJdvQ3vgoVGPxtJCKcJB6Oa2t+Rq+QtaFsOtiMgPNh\r\nOtG0HPXZ4GqFHyBTgtNW0/itAn+Roit0MFbjR/9ts6laJk4hgNdM1yW6iLTA\r\nZ/v51yNCX6b4nMPxP8VRzI3XkXB2HMBeNcklZ4RVSltv38sNCHFzC2zieyuS\r\neTC/J2WoTPCnEHQUFnIV+svDET5IPkqXq4mXODBJ3cp3Wk25f0zc2hfQe9eF\r\n249IOpoE5fDHOUT6I8tj/1R3mZ63eGt9vWOLKuImU5gwvnflBtfJqXSJr75u\r\n4k+0ZyRKzeJdXrNv0WvsTdYsoCjgA/kkwdNG7L0mYoUa1IEffk/s58z5fU/l\r\nh7BT2jHLK+9+I1ZGdoy4thNYGD62s94skNM5mMz+ieBC5viy2PvQJ4zsGsRU\r\nVZho1WE46y9nzSIgsVnzSgI0f+bzaYzAWu0=\r\n=A9rz\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"40a0e0c538ef1d7d8e4a018f89831ffb06f99baa","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.1.2","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.13.1","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^1.6.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.1","@babel/cli":"^7.17.6","babel-jest":"^27.5.1","@babel/core":"^7.17.8","@babel/preset-env":"^7.16.11","@babel/preset-react":"^7.16.0","@testing-library/react":"^12.1.4","@babel/plugin-transform-modules-commonjs":"^7.17.7"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.5.3","@mui/material":"^5.5.3","react-router-dom":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/react_1.9.0_1648597861653_0.6670903453825348","host":"s3://npm-registry-packages"}},"2.0.0-alpha.2":{"name":"@laboratoria/react","version":"2.0.0-alpha.2","license":"MIT","_id":"@laboratoria/react@2.0.0-alpha.2","maintainers":[{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"29b3f6c07aeebf0bfc01808ae66bc179a7373aa4","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-2.0.0-alpha.2.tgz","fileCount":28,"integrity":"sha512-e1gA7iP6AVpujDYeyiEDU7nt5YOXi0W/61vouXStxM4EX7s5aaH31RwcehO+S5pSbzYonFHz6SUzMCxwt+bVBQ==","signatures":[{"sig":"MEUCIAV2SX1SkagTL/UJcNlUzf+b+hWOKs/sYGJrtPan8GFHAiEAulL4Ky//qZy1Lkoq+mMiqin1rrAEa9DMND6OlpssLt0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53171,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRIjoACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrtXg/+JQLhe90uwEF781ZX0S+5JI7b+xODc7+dkYQhvFUxS2nFGiPE\r\nWSWoHIHnQR8HOOIBp6cDwcqERCIR+/T8eqQeFfVLcLYo2d86WU01NCIwDquc\r\nYJmiKgQK35M02A1seOkCGtGrZA6sk+IY1399VbhEwa2l5pLbihetMe5NVIdC\r\nbvItJ4qYVCd3etoTz875W4H5njPXAo8nmYv+y9Fj/AUeP7wD5Az8daj/SxCH\r\nlf0LuSvDjF5Jahv9xAT/q32UA/5dBkHBZfK+gAruEtOTw+5JPIErZc50cMc6\r\n0tO3B+MWFu3Sm1x9ud+//Gj8D7ZW9vNMOWBJ+LYFqim/go1l1Uds8fZjAXsF\r\njo+lqYtOpqo3pmeqNMbI1INjAXyKo6ySQ6ONyjIYO+HwQi9IdWvdWMeLD6TQ\r\nqWQ9Rw6cBuGFzpRy39Cw+iTm7uGc2Zj6hP+dfEWSvntv0S63AuYAiPa8ocjR\r\n7QDAIBaUsdVlyskE6KW+7uBep3GBVdkijtHLqQZfRMyUm+bAG/biS1YJCQtx\r\nBAJ65dJJnlCIpYUik2LoK33JyB4Uq33fbY/iSqb4T9Xa02LiV3Sc/9sQIPF2\r\nvlo4prcZAPZBYCPHsaSdNw/Loacm9wNR19SdhVfqH0eVwqOZFmhpYzVg7uc8\r\nyhyVCege8wL7BtNEFtzOcsEkGQl28JQ8hnU=\r\n=5W0A\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"92c3b76fbf9460647a4aff5d9a9ee01af90817d0","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.1.2","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.13.1","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^2.0.0-alpha.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.1","@babel/cli":"^7.17.6","babel-jest":"^27.5.1","@babel/core":"^7.17.8","@babel/preset-env":"^7.16.11","@babel/preset-react":"^7.16.0","@testing-library/react":"^12.1.4","@babel/plugin-transform-modules-commonjs":"^7.17.7"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.5.3","@mui/material":"^5.5.3","react-router-dom":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/react_2.0.0-alpha.2_1648658664694_0.0748430255186805","host":"s3://npm-registry-packages"}},"2.0.0-alpha.3":{"name":"@laboratoria/react","version":"2.0.0-alpha.3","license":"MIT","_id":"@laboratoria/react@2.0.0-alpha.3","maintainers":[{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"f2a79a08f82068a0a4ae91449ffceb3112e7b526","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-2.0.0-alpha.3.tgz","fileCount":28,"integrity":"sha512-p4jz+TckQIJWPgF5FS09Jvfx20KlHgdYaY4cr+BKnseWYdaEU8/oiFmE8QA0j33z5fTZ7ZcUMTPSN0JwTooY5Q==","signatures":[{"sig":"MEUCIEpwNTu0RDVB6iDnk6vY1J5pmxwUclUx9cAZPtZAQ0VEAiEA5xVghh+78/IvFr0nzAntW8JBHJttU5OxtUGRpItPF+s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53171,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRNtXACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrnCw//Y5OArJz4rR6YcrhieCmwrl+JLMBgbVWlvKTI+tU5WTF57Uq6\r\ng3FB7Bo9rKGByTxkYAV44YtG3RTJQwhkEBSYndkGHyE3l6YTUSXeTTQEXzW2\r\nnN/WZ8Vcs0I8jrACoPfD+I1/3OcQcDefJof/k/0BvYhGKEdZCRRjVylZ0BJK\r\nmyZ4sItoqnpUTvNUez2KkvyNt9Lqzy/Y49Tjlxk8FNjzqGX+27/zPROdPMTG\r\nnA2eo6YDBEUUGqMLR9r4A4epQ883S7/TTQUIgx2JCyg5s1gxQiqJ4fdZ6KiT\r\nhH462jgTSmYFo5CsDnkWNKn0/i8Q8k+qji62r2Y2PhI0HelZuyEeMPi7PniX\r\nY9BabhVzMgbvrsponc0zJyAKz+oFlhFlCC8JBMjxmqqihvpARzyifdNYrOY3\r\nquO61jxGayTYRCnsBoq7ke/QW+KQdjbIPvseE+Fp1IeflAjbiL+SdVci5Zql\r\n50MLa2uHnT35CjvTm7Hmb8q0dc/bYFQsC4NJa1SDc44FlbV12fhmq8CXnlhm\r\nqjhWgyN0uxhie5CntWJoox+3WxDic3BW572xTl4yukYhlZsIEgY1rmZvfOgL\r\nzc8oakFgIsK62HyjqJnOSCKu/5gooSZrHwdz1QDnJeHvvUlPlWOfWTNOKS2e\r\nKTSFR0XjDZoYhBtF8ZUtwEYax0Eh77TZk3Y=\r\n=/Rqm\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"52c1f1ad04e62a17857710aeb08a002c10631019","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.1.2","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.13.1","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^2.0.0-alpha.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.1","@babel/cli":"^7.17.6","babel-jest":"^27.5.1","@babel/core":"^7.17.8","@babel/preset-env":"^7.16.11","@babel/preset-react":"^7.16.0","@testing-library/react":"^12.1.4","@babel/plugin-transform-modules-commonjs":"^7.17.7"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.5.3","@mui/material":"^5.5.3","react-router-dom":"^6.0.2"},"_npmOperationalInternal":{"tmp":"tmp/react_2.0.0-alpha.3_1648679767090_0.8725484801971284","host":"s3://npm-registry-packages"}},"1.10.0":{"name":"@laboratoria/react","version":"1.10.0","license":"MIT","_id":"@laboratoria/react@1.10.0","maintainers":[{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"3ab3cb170ef2ea9519a1b9cfc74fa8d2a44b6f8e","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-1.10.0.tgz","fileCount":28,"integrity":"sha512-gkuDlJOQBQJmgqMuPyjCTDAo3DafrQiTyRTQj9k7ftzW8D/+r/KddYc+U5w0vUGMOvNkrSZkI+AQdWLaecpiag==","signatures":[{"sig":"MEUCIQC7n7XIsKAt72qHgRC0a6vzRpHdL7Y9P2rZDHXR+Y1qPAIgLX1jXhBnht9/hBbWJmPPgJGRgjoT0CuPm4V5VKm2oC8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53156,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiSOPqACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmojAg//UbbLWOyTIzlCkj4BWyINSJ1FO6EtDan/kBphPd7EysGDQLyz\r\n5Uld04/2Lg7LE0+DdzELf8xFBJd+0hU65PXEvKo3egxFCl5A4ewy2Mc5k84H\r\nK7bMpRfI0qxUbN38ghPJti0Qd8NcYwYioRV1Fi4RNg8pJXwncBDejQmA9RKL\r\n+JET2tr2OG6pqRwcSzPWZptkVLKO6NVyp3+tHcBxqanPl+znyMdxnrsiJE0q\r\nPmnm/V3ErgCDO+LdVm4yV27ob3phwJc42cppFonIpHlw+PGcvZjMx8jhHJN0\r\nve6h4F7u0rfjOUBNJielcr3jHX+Fh5ScM9InBHasnckde7+pXx66/rnSGmC1\r\n2HHR1jn2dU8BEJxurxc1pZUKVasGO70jtPx1tWSC1Cv+x6+wJtOMH70/FJZL\r\nC19DlXX3H7Nc+1bmbHpXmxmjgtLqIYmONimr9TwWfw9Q9VNWY23qPT6B5YDp\r\nDWJHHlSzQZyBeHoP/AyrvjVoFZy0H55enxapc1EZ6fiHu8rbkTlbnavhkUdT\r\nRTFG6Qf/l9UmZ/12jeqLvDqIHZH8P7SLQ8sMD3UsA5E7MmTZmM8kDcwQdtFj\r\ncF62xPAIsONpeBow5APz6eqEit5ieRmzLq61io8QWdXfXTT6pOco1Iwsp2YX\r\n2zJQ5szddjJ8nLMu/IOCfMY8crvUrIWdM3E=\r\n=GKHx\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"69047fc80d3f51842b6d884c173e775944b77747","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.1.2","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.13.1","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^1.7.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.1","@babel/cli":"^7.17.6","babel-jest":"^27.5.1","@babel/core":"^7.17.8","@babel/preset-env":"^7.16.11","@babel/preset-react":"^7.16.0","@testing-library/react":"^12.1.4","@babel/plugin-transform-modules-commonjs":"^7.17.7"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.5.3","@mui/material":"^5.5.3","react-router-dom":"^6.3.0"},"_npmOperationalInternal":{"tmp":"tmp/react_1.10.0_1648944106113_0.3525436481237634","host":"s3://npm-registry-packages"}},"1.11.0":{"name":"@laboratoria/react","version":"1.11.0","license":"MIT","_id":"@laboratoria/react@1.11.0","maintainers":[{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"684ecb586020dfc98801b5ed6d518f10a47abde7","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-1.11.0.tgz","fileCount":30,"integrity":"sha512-Wlq0/6nmc/Zg+PJP9T+DvKzJsVEpa/n2lYdYpkQ29rE1PxnInEyzcoyKdxWtZKqAFIxUQLbQ7HhLSq9fGf7OSQ==","signatures":[{"sig":"MEUCIQDCHSErDb8ifQPjTYMRGoqY5kiImsRk7AciJpWX0f5D8QIgBQ3TRS0gbEWu6IfTLUJSQ88cp4/HZh7t16o/OBB0b0Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53259,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTKPEACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmoudg//fD0L31jrD+booEhNKeoLqJy3e6VebR2ovvv+yQ2H29O/ke0Z\r\noXVbQx4kuh2YxoG7hxFnrR2aVs37QX+mG7U1K+mD5VmTw8N2is+UGpBqYZfi\r\nQYyPUJLtGkl0tcHVQSL+bWX4eJA0T6SqhZ6lK6AmbkWnc9Zg7N7LvJx03cyx\r\naRhQFdFCB+fbMfulH/bt5BjJtUdn/yGo8ulXsdccioMBIEnZSmOGU0BH2VZO\r\n7dVp4WK5FyV5LTUpiA7Jz2atLitm54Zmln/JiWholKjwmJrnyO/d6ux1Ns2q\r\nuDy4md0ahXzgJSeXIMXQFd8Fs6zMsJpqGryDhRZoXXYtzoZqzaiEunFDyK/U\r\nWwC7L2YoEFDrj2AB4545RNxRw2qJaCisEd+qB+G7o/UwEDzjqxw64+oTuGPe\r\nPRBWkGVsd/9UWpiauZ9iW7VA82ZBCIvAlLd/0SoGGDTRjDHDK0db5kq0XdZI\r\nrsfARyfb7FHG41OW3J3FhWE+0vmhX1V94LIJ/Lsk/Ji4aBWxLRsgE3MTTSHm\r\nDrTLbGc7EVDv4qestxOQtXZUrRz6fNvFXwfJeAha/wvNLciSA5O50HsPqw08\r\nyp6afMu2wCb81u93sbm3fVLnCULZunQZYwyRpUE4W0T3rQTKlw+OLFeQPedj\r\nxLFvBcUWVnkU35JSstxaksCChuS6NLWXkMU=\r\n=Rd5j\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"ccc0d8f5cda1c4a008c448277e616c49d9fd5b50","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.1.2","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.13.1","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^1.7.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.1","@babel/cli":"^7.17.6","babel-jest":"^27.5.1","@babel/core":"^7.17.8","@babel/preset-env":"^7.16.11","@babel/preset-react":"^7.16.0","@testing-library/react":"^12.1.4","@babel/plugin-transform-modules-commonjs":"^7.17.7"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.5.3","@mui/material":"^5.5.3","react-router-dom":"^6.3.0"},"_npmOperationalInternal":{"tmp":"tmp/react_1.11.0_1649189828682_0.158791029432219","host":"s3://npm-registry-packages"}},"2.0.0-alpha.4":{"name":"@laboratoria/react","version":"2.0.0-alpha.4","license":"MIT","_id":"@laboratoria/react@2.0.0-alpha.4","maintainers":[{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"97dacfd194a1a6d00337b73a6d8959cc98dbead3","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-2.0.0-alpha.4.tgz","fileCount":30,"integrity":"sha512-7/xMgJXhIhOrWkPHB/2E1aIfe7refWjy8cOgx6j+MIylqa6e0oe/PTazbY3Kpr11NJ+iuP0/wkdFWNNvhymwHw==","signatures":[{"sig":"MEQCICiH9PwVYrTrO9raN9Oc0rGGg7xd/pANR52uPEG4S3cHAiAS7ZdidcWO/NMqo1B7AHYpu8tbXTd/QMDkdcDAlTmMug==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53274,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTKS3ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpDrw/+NERJz/R02JO0tQ+bBUr+b4QGpBzvE+A0C0IfxodVTgAEyRU7\r\n6oZweR+IJ/uWjCOXcbYZQt9bhm9mcLn6iEDqhRCzxyfoYVk+SIbu9qnhw1kI\r\nbUfjD0uVdt+oDwlUXKBvd4ft9P/sBC0lanvOwn1E8nIYAI32ykcBqYLTz6Wq\r\nivUm/JL6/vf9zZ0gaZVK6QHvFlWPRNXqndCLrAS0hv6wRuzN+4urx9rmt9WU\r\nVTjSiRJESw/637AWvgzLD0EeSGiI7Vr0a+3uCa+BH2cIeUmx8BRBVKrJXeah\r\n+rDWzvx/eXJYusZlvcYjJTVOl9aXF5aO5PQ81CY1vhrRw26d0MAKbSHcI4fp\r\n/aBwB/OC42UOJg5e0dKh4gtkWIDRvQqDKBWcXm9UBF+uA0U8ZRnPyjiWICSD\r\nkpvPirRmO3upCWJ8ushKyqAy6WwDeeG6K2Qw0lJeF1Qt7VBFZUkF+z1yd9TP\r\nvGxAkMKEWt5VwpLQnvGFwW3gB0/rBQEXQAjFwsLP+HdAysv5Bg64/gwChGUp\r\nnt2A9zkqfitaI8zVLZMXO/BKTjvyye6MC9YfaU2uaoo4rmZ6924G+DbJsnon\r\nYd9Uc6qAynlLLbSkGw7HLFZrmSLw2Mxb/H/Wu1pZeV6AxWChNoIMVf1+z9PQ\r\nM67mEV6CYid3oldcUfHzzlgU/p8VtE3pcO4=\r\n=ZRsL\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"db348be4ec42593f28cfda83a45bcdeb595489d2","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.1.2","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.13.1","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^2.0.0-alpha.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.5.1","@babel/cli":"^7.17.6","babel-jest":"^27.5.1","@babel/core":"^7.17.8","@babel/preset-env":"^7.16.11","@babel/preset-react":"^7.16.0","@testing-library/react":"^12.1.4","@babel/plugin-transform-modules-commonjs":"^7.17.7"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.5.3","@mui/material":"^5.5.3","react-router-dom":"^6.3.0"},"_npmOperationalInternal":{"tmp":"tmp/react_2.0.0-alpha.4_1649190071343_0.8588401241599826","host":"s3://npm-registry-packages"}},"1.12.0":{"name":"@laboratoria/react","version":"1.12.0","license":"MIT","_id":"@laboratoria/react@1.12.0","maintainers":[{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"f442880240afcc3efaed216aab11d3d1bf92ea06","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-1.12.0.tgz","fileCount":30,"integrity":"sha512-kZtoCP6kYCXpJ6zYWPl0SoviPuL4ksZH4b0B0oX2I7y6Vkkrb8DswR/OCM2dO5/UFpJEto9bcYJkkKyymTaPtg==","signatures":[{"sig":"MEUCIB7Ed1TUFhJ1UamUtDix4tSmOPVESpt8mRA21+PUUdHtAiEAnDXAilQvVrAGbhKKGZ5AAEOoR4sOcpp2ESmNTTy3Mdo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53146,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJimTzaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrLUA/+IQEYy8tlJmyKm9XZdBgrcKErCcme5WDIqZ8f+N+xKQZ/ZuJd\r\nV7KExEsja+P0hsDCFsOJlOXwkkdPEmC0bcxsuRTgKi/MEqMThCKjfW9r2+iA\r\n9CN7f2eYDuovo7sRZu+NPuQKzUPNbHAB3Kgs2V6vyLmSjiKJ0NaQupCuSxhM\r\nH4bzCwBdwqeUep/TppVQ722jBPIcCbDzZw7HB+95N3ErIRArzBL7DWa/T/mQ\r\nL5/4jMasOx8hPFiPyGFB34THQo3ROrS0+MLjxcw7yetDvAmoWsoW7C0VP6cW\r\nbMWCS5OazEWabrAyAIVuTY53kNfa1qXi1qKqj/HcRJ0HttSLxX1KGdJ/bx5k\r\n+Bq76To8V07jikbSh+G+YXZe35QjXAJTLVTVI/MQOxCBSgrwEKtxlf54WrDY\r\nPoCfvxZAMc3LIFNGVAkEYXhZRrsY+F68OPJQzd6Wk8Kf+M+hzb/yTRi5SHU3\r\nRF4axyIxzXwolP5wj0+XJ5+4dJe3cVtSq2rKx292Fh47QA2GyEw9g+7N9x2M\r\nA35HUghLKgfmn3KFD1GJ3zn1go2TTYHzyRvYYU3mBP6KVPCzWq9KzooL32hP\r\n1xRUnL5EkFlC653xYOMnN7gCoup42gC0aLeuVTg15x5B6dLvZcB2ISbXMpsu\r\ni8xoOALrTF99wabpwHa3gnUk6boiaoYi7CI=\r\n=9rxG\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"262b85e978220bde5f204d5654ff06cff51c0ede","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.10.0","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.14.2","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^1.7.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^28.1.0","@babel/cli":"^7.17.10","babel-jest":"^28.1.0","@babel/core":"^7.18.2","@babel/preset-env":"^7.18.2","@babel/preset-react":"^7.17.12","@testing-library/react":"^12.1.4","jest-environment-jsdom":"^28.1.0","@babel/plugin-transform-modules-commonjs":"^7.18.2"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.8.0","@mui/material":"^5.8.2","react-router-dom":"^6.3.0"},"_npmOperationalInternal":{"tmp":"tmp/react_1.12.0_1654209754473_0.199888077397248","host":"s3://npm-registry-packages"}},"2.0.0-alpha.5":{"name":"@laboratoria/react","version":"2.0.0-alpha.5","license":"MIT","_id":"@laboratoria/react@2.0.0-alpha.5","maintainers":[{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"0b585d7efbd6a7a995fb18fc0f8fdb1a6e4275ca","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-2.0.0-alpha.5.tgz","fileCount":30,"integrity":"sha512-utwWXNs9JPJgKqManUgAXohkDj4h0OI/JJQmTzxhwr4zlzUWOFVuO56TMHVYBKxavA5nGQu5J5mG2cZbRuj1Dw==","signatures":[{"sig":"MEUCICDmcA/RiPm+X9TTIX8TOqC71S6nbNAZ+gFSa9ldwE1MAiEAsusGKDL32VpfxbdSOiM/6DnSL4VZ1ILQ6Kr0tBSzEkA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53161,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJimUyLACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrJAxAAlOnligNTonKtGGdYtUJAegeHp74aGR+H/Ri8l+yNDFv6oS/R\r\nfbD5qs1cjygHTVMeEbXxov0asGDLwZhxmftVl5+rZbaAhDfOJWqNsLEfcyoM\r\n3ZX94yCPf6hQoJMRvvz47+GOUpm2UWRrCinGHGuSlFR8jT/xGmasXXy1GBp7\r\nF6pHzuFdKzZGIPLP6jre7W9ekAtPYnsJVpRt0jDENSHyyvQuK0Q2kA70mHCe\r\nkf9vfbxV2PXxpQdP6wVAjNfcPXA1C1cV5qZ02h8YJ0OWbSPIBXWCTq89agJt\r\nSUFCt7oLcBz1HeWyFNUg+woG3KZqwEqZTt+7EWYVbGfuCt+CX4vz0Tk5PDp6\r\nrYJqcHfL0mOcBAsI+Oh4RIIUcTYc9BcluhoCzUmUESZYxCmJnKLHLS8Tp18K\r\niROeI4v0UtkyIuEAwqN/xjaWXxqFHRMej8ROOeljkCKZFlUh+PhrCw9RLPPA\r\nBPHulmeqQRZV4bUWY4Lxu0suJltjwRBVMRsB/Vyl4UkfuMEdgy5JjrDAS32+\r\nmqAXzthwjY/UrLQzeqLTcs67k5eRd8AsRXlkVh20Yz7fQmcB1o+GweB54Q1s\r\nLAuV5Y6e6uGxn/aeTDLpqqSP37IbbFf5HstWGZ9lHVSdTMyCZF19J0oCXfWO\r\nuiiSjfPyCD4xed7ZHxA3L8oUfR0dXLDy2Qw=\r\n=tWto\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"0a4feff92311fe5fbb5240eda6b222839ef36e3f","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.10.0","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.14.2","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^2.0.0-alpha.5"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^28.1.0","@babel/cli":"^7.17.10","babel-jest":"^28.1.0","@babel/core":"^7.18.2","@babel/preset-env":"^7.18.2","@babel/preset-react":"^7.17.12","@testing-library/react":"^12.1.4","jest-environment-jsdom":"^28.1.0","@babel/plugin-transform-modules-commonjs":"^7.18.2"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.8.0","@mui/material":"^5.8.2","react-router-dom":"^6.3.0"},"_npmOperationalInternal":{"tmp":"tmp/react_2.0.0-alpha.5_1654213771308_0.10509076666277406","host":"s3://npm-registry-packages"}},"2.0.0":{"name":"@laboratoria/react","version":"2.0.0","license":"MIT","_id":"@laboratoria/react@2.0.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"c749597450b1c158e0cc75d333f972002b6bca54","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-2.0.0.tgz","fileCount":30,"integrity":"sha512-O0oJKW2PjhBhbNhtcihpGeIMXsYBjyrv66emEXhGtuYMQmqOUBNrPyU3GLXc5LUy7/3buBPLVFbKm6wtRkMZoQ==","signatures":[{"sig":"MEQCIB9VSiM7b8eKH18HRMsRdgVGasZdiHUaHr2Hb8BtxrBEAiAlo/Q5ro+c5DzJ3uwh0K/Mi6QZ3LeyzWJ2CGyoV70pYA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53145,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiqp63ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp4BA//QvB4l9jUeD0xBZj0ilpjh3RRAky/h0izOcbfcmH6LnZcF8+r\r\n9nmqst6otN2jRa+y0dYxytk28YKukRo9zia/nDTz6ODDUakIlawMbsiqSjTW\r\n7aNguxzpXwHeEmbP9FVKnTsHl4qtuDCEArdwP489MO6M1ls7qNxAWArcej51\r\n2pdgEeF5rPy9EA/WGrHKoMu7AhprdRQi0cu76Hg3X0+CAEqD3ZGH1USVMQ5i\r\n3r2Ncph/fJU90u7GaTEToEuZx2zvp88mnaOxaqLyCPuKvHN6LO0tpqMuvxmU\r\nQ4hwmNkqfKNJlztLB1RsRO/Fi0/GZ/t5aKIWZnyIohLWe6/9bpdwfCpAsDJK\r\n/2FJlTEI8JqL08rPHYdAPrd7MCBpKbQbqJpnFkNhAJ7l/Psi4EpyPNqqVq/i\r\n4q8Yu+Zn2grBBnV0mfhdKfVRZqRxzEG197f/auGrXW0GqRhAAXKm/6BhzRp4\r\n9+btq+V1mn2bZsEqlAUotlm7C5NpoBL6D8lCpcyBw4PYI4SunbsAxx6hVYy1\r\ngMTwNvT+GQutt26vg4KFlJylM3tZyLEJjMvoYaqjIHowQ6ezuW93R//chrlE\r\nc245KO5xBbpBurwwi3Wt+5ikZVo9v13jWfHzUryGcpgkteOfeYkMeC4f4fFa\r\nCP9ouD3EM6Kg/7LWce1eJHADflyBQD+kbHo=\r\n=Rlmk\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"4dac0f42cd46380c32d5d7689ed12d5afb5fc5e1","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.12.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.15.1","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^2.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^28.1.1","@babel/cli":"^7.17.10","babel-jest":"^28.1.1","@babel/core":"^7.18.5","@babel/preset-env":"^7.18.2","@babel/preset-react":"^7.17.12","@testing-library/react":"^12.1.4","jest-environment-jsdom":"^28.1.1","@babel/plugin-transform-modules-commonjs":"^7.18.2"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.8.4","@mui/material":"^5.8.4","react-router-dom":"^6.3.0"},"_npmOperationalInternal":{"tmp":"tmp/react_2.0.0_1655348919058_0.4049666458767782","host":"s3://npm-registry-packages"}},"2.1.0":{"name":"@laboratoria/react","version":"2.1.0","license":"MIT","_id":"@laboratoria/react@2.1.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"00815a96c8d61eb0c2ae7d30bfdf053cff488ee6","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-2.1.0.tgz","fileCount":30,"integrity":"sha512-88cmOz4JpOw6fu7IJ3x0yP8/moSPhR8Zxb/6bNOphwWE5W9dwGhrfjcuUutnZNjPKtY/VQXkjHZgCF0iKCnCKw==","signatures":[{"sig":"MEUCIELfvd07MXgB8/lgtRIBmqaNm7fI+8GI0liQXXTRbsOeAiEArRzKcWHFXO4aAiy8JKPtwfmq80JL5dQGpcGGPKl1lWY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53145,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJitMYgACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqhNg/+IlIL0mjngvP2yj/JBWteQOOmmkgNu+uDFb0S8U0BCFJMh5uc\r\nSRpAJpYKNiVb7hW4KYmUlR/kG7zf1/H3BkeX0kVYZF6W2gfEan8AC0Orr+R5\r\n0NZXh8udrMB+tgHeuqzSeqzbSf21G6vfje24gCc72WKgpXWhDd9NnO7OYOhL\r\nrliFjO3fuwJiLK40MU0PuYohR0CroE5R/2ArnBf7axJp32GD6KCy+Qn9hKGC\r\n2p08YkPHS0bRTTbzSqauJFJ9SNSOEF4PBkX241JkEeHK+KGa4G3sZa/MzSaH\r\n3spCJ87hnd3YXbnukBaTb9qn4dII0lCPt1QzzS9hvf4jEqCNvU5a/YUmlHBv\r\nIvdezLRVVYIVMLlduOBgG7YkCgrD432Yr0qMRm6v/DneVt+imGTJuSsGNsO7\r\nKkWE0kaQIWj3vOOObvyvmqRb6mJipme+jNKaVcsmvtbo0pQocPPU7favjqvB\r\nzKvLlOmR/d6VNLe0OaboxPl6FOGGmFQQZ26AcmzWWKvslKMHM59Gevf7+WCD\r\nnYSiW5V0SEWRrIxKzfMC2bCIi97L+AQWgNSvg1/FHKNScQ4b3YBPj1HXoHWz\r\nIf+tAh7cjdFRgcfw06s4LUCvbwBEf1rmS0GNeRClzlGOTLpg3AB908Eq4w9r\r\nm+ifS4GzrrFXDb+Vo6imEdRBVaVa4SGP7Ro=\r\n=fIsg\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"52951fcbfa4e7135fca087b63b887e5d7f848945","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.12.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.15.1","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^2.1.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^28.1.1","@babel/cli":"^7.17.10","babel-jest":"^28.1.1","@babel/core":"^7.18.5","@babel/preset-env":"^7.18.2","@babel/preset-react":"^7.17.12","@testing-library/react":"^12.1.4","jest-environment-jsdom":"^28.1.1","@babel/plugin-transform-modules-commonjs":"^7.18.2"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.8.4","@mui/material":"^5.8.5","react-router-dom":"^6.3.0"},"_npmOperationalInternal":{"tmp":"tmp/react_2.1.0_1656014368236_0.08655633576203603","host":"s3://npm-registry-packages"}},"2.1.1":{"name":"@laboratoria/react","version":"2.1.1","license":"MIT","_id":"@laboratoria/react@2.1.1","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"1d309361f25546dc8e0120ddea4fb5c38a81dc1a","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-2.1.1.tgz","fileCount":30,"integrity":"sha512-git87ssLWqD/6Om3SjImpa1Ym8yHdI0xOObf8hp02i7etfJ9V8XBVa/x8X8YrEMiu2PbAgdmMvo2kZtvM2pEOQ==","signatures":[{"sig":"MEYCIQDOAwLH7ZDV6TOiiONtRljVYy4BPtD/09O1N2fzXjYC8wIhAIkdvcxnydqOjexa83KJj6TcUt4UK7hTAVUJW0RqSI2E","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53143,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJivjTcACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrD6BAAnAzqK8qrlnemmkC8qsqPLs1KqXv+qSqzsihxCs32lPyyLXo6\r\nWXd95EBkdvSyRMgQ9xf7t+eYfc95w1jwYtr+Z7WQ7rl5CBlxSPFZfwLn6aSL\r\nAAMirfSyWt0958EAGdo1unerBUB+J6utIKbEeTMyoD0p883jaxCgJ3h2cYei\r\nafd/mJgVatUa/zqMBg8DZ6pLCEvCAK/83S8VhlRUX8wBsZtuGkBo+aoh+6U+\r\nrqQUkA/7OJnZhakTs7rNkKZdJ9uzJtjWbNSspwGBg8zHlzR0g0krnhloL/Fl\r\nEIUK8ULdMDTtqqeCVLQt19mZ4cgYrn8LkIMGG5tTnW0DH2YdadW+cx6IVGOS\r\ntIdRudD0oXZWAmPyXvgS/u1EoWgwydHD82DXqTseO2Y68l7hKV3JQk5Id1XB\r\nmap7duRKsfjOzNu/ivxS/jblszwbDpnI7d1mlSYWQW5YcLLzUro4a77zTnXe\r\nZnovgGa8v7ZBlu1Z2OsDCTl2XFf9x/un7tFJWwha+wPwg0OkLT6AqxwO0J9h\r\nVi40JVTukChnsMmxCL3p2CRzcCxtnl+9En7t5kISnJtQZO94cinJHowi+7De\r\nWhJ9+vZDUDwPysGxt7uQxKnVOsFkTIffPcmwS8RYKzZND36bvhQVl4NCnPun\r\n77rIclmDr8mjxRpQf8I0PiJtLwSLKL/uOzI=\r\n=PDk2\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"7b16111663d2703c933c2ad6f8eecd1ee86fb3d6","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.12.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.15.1","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^2.1.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^28.1.2","@babel/cli":"^7.18.6","babel-jest":"^28.1.2","@babel/core":"^7.18.6","@babel/preset-env":"^7.18.6","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.4","jest-environment-jsdom":"^28.1.2","@babel/plugin-transform-modules-commonjs":"^7.18.6"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.8.6","@mui/material":"^5.8.6","react-router-dom":"^6.3.0"},"_npmOperationalInternal":{"tmp":"tmp/react_2.1.1_1656632540515_0.8500770149162342","host":"s3://npm-registry-packages"}},"2.1.2":{"name":"@laboratoria/react","version":"2.1.2","license":"MIT","_id":"@laboratoria/react@2.1.2","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"3dc2e90bf7b483435bbab3ea2a16e968b8806cbf","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-2.1.2.tgz","fileCount":30,"integrity":"sha512-XTPtEPS/pdvz+7oYNIuZ2A3GKdgJb98NnlYzx2QFZ1Ns4uMdAt9jNkAECKAUOqyrGgKvkKUCUwnz9Wte/qxYHQ==","signatures":[{"sig":"MEUCICsI2j2LzmXvqG05+Ti9bF772VxZfDBslkWet0u4PPK6AiEA5CR+y1nmldTYNw9qA+qUvLIjnpsGD5RSaHG2FQ5nFvY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53147,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi9QPIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmprRQ//Se267XWmGIdaUaXOUlsrraMPnRucOnxJl19h6kIqJp+PUkjp\r\nueYNHV1uuZu57HxxBJdDPtLuwwFSCPpRPpnTJOhveV+oaARwij6Rv1nrfGlE\r\nYJag4uoZAFDJuaKqwKvPupbSGwppOMtmN/F9/N7m6h7KW4ajYriMHwFORIzO\r\nb8lgNbb0skxR9tTRJjuC88f1d1HYv3u5Men2l3VIa7vge4SR4wPZ8zHQORvA\r\nWpT3fyzgyL1yfOFr1G1jQOhPROgl7jo37RSw6S7TV6FnM54Fo259GuLzd2n1\r\nkqqH26tHLk256563q9uKxBhGI5r65sy/Qy+q07fCGR/w6YrjtnYS5f/nrfHS\r\nohataTE/jKEUlOg0QJ9Kn+wyY9GTpzGCEwU7dk9+lLtleFLIz/9Ry7EAOWlc\r\nqOUaGA5VE2J9Q0V/mdbyhnZ2WT0da83FfGJN99F6Pz6UVGTq5mjwfLNbMsP/\r\nheQvtgdVweY/HP5JwajptLX1bhQF8PzNgTeY33/ydlEoF33axuM98yi5cFFT\r\nhsFMaJrr10rqcdbx7fhsv6oH6j5Nsncm4B7r7v+NI5+Izo8tm5tmzjpZiT3X\r\n29fYJHyG3WuaOXcfC8nHxHTqYfeQmoGhw72+uMMVTlwk/wSbDrTHx3MinbPe\r\ntAZw2UA8d5VWRrgbvljFt068d3+ydfZM+WU=\r\n=aRJD\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"3c4fb9f9f35465ae6dc0028c83a318a85d2b55d3","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.16.0","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.16.0","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^2.2.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^28.1.3","@babel/cli":"^7.18.10","babel-jest":"^28.1.3","@babel/core":"^7.18.10","@babel/preset-env":"^7.18.10","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.4","jest-environment-jsdom":"^28.1.3","@babel/plugin-transform-modules-commonjs":"^7.18.6"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.9.3","@mui/material":"^5.10.0","react-router-dom":"^6.3.0"},"_npmOperationalInternal":{"tmp":"tmp/react_2.1.2_1660224456711_0.23295524015714753","host":"s3://npm-registry-packages"}},"2.2.0":{"name":"@laboratoria/react","version":"2.2.0","license":"MIT","_id":"@laboratoria/react@2.2.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"98177bd8165e93c1c169eb9fa4d62f05d4e913bf","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-2.2.0.tgz","fileCount":30,"integrity":"sha512-P9avn1ZdSmSAgirYHdB/lLoOsoKdlXRxoJGwiLtXn9ba14MYxRllgJw+i+kvLi3MVyH7sqUqZKXNsSbOvkTCWA==","signatures":[{"sig":"MEYCIQDip/9pA48Yi3MrGN6otWQlvXR2c9yFVpgcKv4kFGpYvwIhAJjSIpt5Df2mmENf0xR6Gs68kaFYEGmPRXIXgcdsQLFy","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53239,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi/5r0ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqyQQ//QWsXjOOAFhA4QLANtoSkx8twlDrVFVHZv3chHE1rtIOeTex8\r\nsn2IZkdOqZHpxDE6dtqlD1JsAoG+5y3dc0DxXDvwIYv0473sdgwQ2JXSt5/L\r\n3uwi7vlCs0rH+CCjnmeOaAoyU+NPjto4Fl9qb4XdF4RJb+BFjOwJX8J8RHWB\r\n5GLpmEiYPuLU4+RgedmeKYkuTEXOcOrSZSJuNAR/C82J4YvRRp+BVHqN5/rM\r\nIPV8hNGVl6VfL8sZ03NfVsrnCnz/nidQTnC70M2IrcqLyE23HB3Bs1Q7/buR\r\n+McEaJM/B1OWSJ4xpjLW/zzlGWRFnuuUVHCEFKLtzzizjouPvMfR3/tkBibS\r\ng2nS+ojzvpTLCLGWod41kEZe5NV2PqvKoz1b4nkGRF47GQsiPrevchLWGMtN\r\nUoCQR3rRpBSNvALBDsT/M6O8CaeGtrnWisxeECQ4oTCrmIDNYgzhONQkL+4l\r\niJYh9OgEFmBhQ2vIRjYjITjX49l6itILmgv2jbrzIYvzhBN8IT63GmCJW/Fp\r\niePjRJm3KrG30vKXjmNZj0HEJRdt9WpRoU8PxL8WgoqflAE+qsylrU0ETGRt\r\nM8cdboDszzJSnPcgM9KmnxPKGEo2JDU3z4m4bMnhP79U2ClrIujfq1OaYPhq\r\neXZITD/J8mbu9k9WVC0wSqQRxOWNcA0OoG0=\r\n=gB2M\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"1162c521f765c87fa46e4435ba742abf15d1b628","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.17.0","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.17.0","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^2.3.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^28.1.3","@babel/cli":"^7.18.10","babel-jest":"^28.1.3","@babel/core":"^7.18.10","@babel/preset-env":"^7.18.10","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.4","jest-environment-jsdom":"^28.1.3","@babel/plugin-transform-modules-commonjs":"^7.18.6"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.9.3","@mui/material":"^5.10.1","react-router-dom":"^6.3.0"},"_npmOperationalInternal":{"tmp":"tmp/react_2.2.0_1660918516011_0.9529984770219544","host":"s3://npm-registry-packages"}},"2.3.0":{"name":"@laboratoria/react","version":"2.3.0","license":"MIT","_id":"@laboratoria/react@2.3.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"b77664e07c5e0f682111633d898732ca6af24c90","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-2.3.0.tgz","fileCount":30,"integrity":"sha512-zbAHl08108ImE07ulwYYzVAc7simDmh38PawEfsRcxAricP+YDIs93lxyyb5hvtnmVJu4dJi6xN2teKlC3d6Gg==","signatures":[{"sig":"MEQCIGqbhPGucoRWbGYRqI4+lSCKh19dSehd4YDuiS9y7eqlAiA97w3oGgdnO+ecuSTmb52k3C98tNJKRpVNF3QIq8o5RQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53291,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjBQ64ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmppCQ//T0yxUs0drgAZIru1yQrZj7WpHPL/aj4ctqpdvUEtPMCv1WyD\r\n9shPOio4ZwCiWQ7EWDAGeWwf03D2aygY6Kcrjc5tLwnBE1ctNiLji14ubzw4\r\nR6gIYlqBli6v+tjQDIJBkxihesN7vRUC8NDXmS8BRDpEPZNl3dcAD6JcbVlC\r\nCEn+QDgmHcrYi8KSxZRhF0NMrjW/YQITibQal11fEx2ZlvKqq+BWElSMM1XY\r\nIE0m+WURTzApPSUGOsi0nW+WEG1bn9pid02HpDeLI1DFAxui+nJjU0xM6J2P\r\nv/TKGG6buSCsAeAAi3u47/Sw7kIMA0OW+BnGTFNojNLhlk0Gqs0kymbwgYkS\r\nCzCIXCpCrDpaRAyXnjlzpkUn124+/yfEYlKI9pe0wGhTXEgU7qEU0yBzc7Bo\r\nVz3ELVJeIQOYcThwIyziRIEWc/0osENNxnIN25xYw9lRglZwFT58CR7M/Hua\r\nIg6+QUq9aLc/jm+bIy/uWgQ4D7ZgGJ3inzQxzPLVgn1VpFPLwJF6XKUKD9Hb\r\n6pR0hZL2cFScsKAjRwZboBrl7oaJb+Wo4zB+fbUTb3S/5W2KH/U0mQYs3otG\r\n3GbSkINktm6LZMybaJKffIWCTzQGTqWOUOYYyNaFi/0x2rkey7aimwN4sbtL\r\nPVv4HT90d/MREd+1Wkhs/L0b8lA4MKxe7qc=\r\n=LWNN\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"6e89e6ebf424d6671990619e321317ac86504183","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.17.0","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.17.0","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^2.4.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^28.1.3","@babel/cli":"^7.18.10","babel-jest":"^28.1.3","@babel/core":"^7.18.13","@babel/preset-env":"^7.18.10","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.4","jest-environment-jsdom":"^28.1.3","@babel/plugin-transform-modules-commonjs":"^7.18.6"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.10.2","@mui/material":"^5.10.2","react-router-dom":"^6.3.0"},"_npmOperationalInternal":{"tmp":"tmp/react_2.3.0_1661275831899_0.574512450185531","host":"s3://npm-registry-packages"}},"2.4.0":{"name":"@laboratoria/react","version":"2.4.0","license":"MIT","_id":"@laboratoria/react@2.4.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"388432a449573aca45d522312464e68063219684","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-2.4.0.tgz","fileCount":30,"integrity":"sha512-W+z5kuahhojwXn2XZtJxhlrSjr0bfi9sE4gkqDkzvf7MEd0TkJe8Q2HhLClYVGUlfMcNjdHdgnC4ePFoF0BsjQ==","signatures":[{"sig":"MEYCIQDc6j2uA9T+vEy65JpgzK6E0k3atoo+5zsRA5dEY1dmdgIhAIzwgzIcNbLy+a7OkiitNOmuS4+8O745oLGqylCW5ibg","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53291,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjELvQACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp/OxAAlcf+ORi9L9xJ4hZAcc4+f4qeEdYUgExX92b8b0Es4RNhcTjI\r\n9h8hD9yDX0mZAgapHZPVrh6S+nKxU3p+N8GQmEtPICWrSjSQ/9exyO0wkmej\r\n+SnVtVEieRGZWWelCPMnvIWEqAquRyPFrXplyd+U88NajQO78zvzf5vDjBMd\r\nz3xe13AesHvZRvdP5n9q0YcVcWAluUEP24jyIBQ5bHX+4+HVO+SEU84QQF30\r\n7Pisz2qbNxD2ueZ0NrY7fkfK2RGtFP0E0DNUkQh+LwbkcxUBsDXtAubjWYOm\r\noaqfvZQzggZDiBB+GJF63wr0wusi5B1fc3MDBwHpiWy+GG7c+xQ+ZJuKwXTN\r\nNLx3FO46HgV/h2fCSpAeQHdrPn74aaRPm3lQdB25oR6GvI9iMnGckdljptG5\r\nu3yGpzbdLSFd1lWP6mh3PaiPXbBkUoINX0uJjYMA3mY3Y9zsVbMmflyairpB\r\nbG97KfPV9rjUWUTWYTDjEwazmRS7f2srriAeDmxjy+69VAKdrq+Ppgoq98sT\r\nNMRTZ1HhJQ5E/6lQdt+tryJLkpzcji/FbYZYXE32b/bNpBm8YlwEHyNaDQlC\r\nexryPgwzLXygwJ+qGDAotGzQ6NOfdVXq3Wg3iBuTS/dZqB4kWXe3bUMShxup\r\nOpq3DJrFiC3LxY9DBBAUZ5ao+vrauUyj+cI=\r\n=+8M1\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"e1f5c5c8e7311ffb96d431bced60bc3c6abfc092","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.17.0","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.17.0","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^2.5.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.1","@babel/cli":"^7.18.10","babel-jest":"^29.0.1","@babel/core":"^7.18.13","@babel/preset-env":"^7.18.10","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.4","jest-environment-jsdom":"^29.0.1","@babel/plugin-transform-modules-commonjs":"^7.18.6"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.10.3","@mui/material":"^5.10.3","react-router-dom":"^6.3.0"},"_npmOperationalInternal":{"tmp":"tmp/react_2.4.0_1662041040298_0.08789452794692143","host":"s3://npm-registry-packages"}},"2.5.0":{"name":"@laboratoria/react","version":"2.5.0","license":"MIT","_id":"@laboratoria/react@2.5.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"b2990afb3538c3a4b16c8d116348fc5af8f031dd","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-2.5.0.tgz","fileCount":30,"integrity":"sha512-29hNWujEAjkeOAR5YjF0voQF1hUc5XVvjiRNxzAv2ltLlndb8vBXkhTlfsrp6OgVdXVhpjyPxIj9FCAZD4z7ug==","signatures":[{"sig":"MEUCIEmfFwgjE0w+qXX3LrOnr4Ydf7nTlHpIorldWwYrbh0YAiEA4nXjvJXPD0s/+Z865UEwJf50DbhsEhvH5LlyW4CKHVI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53289,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjG0TsACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpbBg//UnshgQDxEfEXeqULVBgSL9zVHYjz2Zoan2q5pc8tHIZUdcZF\r\n4XBLbjIz0IQcnd7GVk71ENY/QU7w/1a3Tuf8k3RMVgZ+I2NbR2te6tDRCAl4\r\nTPIVM4dUo8wKvMLoopSKb+mtKgyHSZA10MH80Nt8yHk5Z+jdw7oYm59PDjsW\r\nvBmQfQo6KBQ5t8zQlcPmRjuK1HsAE6oDzTX5+7y7+4vhExxYiB+c7t5/tYMp\r\nIco/aWNU5YRLrF8B9r/WHnDKsUvPRMYqD6GiCox5jGdze06VF2KrMqZYvmLp\r\nbbvHYhAjuX3CpBUW6AO2485eo3sHZpImwYRtTBduYGyovUmKHPd0KJoLmMyq\r\nv+gnS73yf94GabMtwcXmwvwCsu1QG3cUeoqVtbWqB6FoHzwt+60YYniP+nh4\r\nFYgtNJTOwTjfNCnmDCbT/Ep0Z4pbT6O3ohjjMDPcIxqV0blizYX7VjSkZqR2\r\ncstCvB8/gsK/hG+Mu0gJjnteUaWX7w9EnaQJAf0ezRuwVkOCiZW2z0Nb38TS\r\n8B0Iz+Ny0+7xfWz55SijZiQA8Ny5QMgoXnxLISKI6BN/YlEPxXfXkHM0BCGI\r\nEge9ogzq/aim80jr5P2EGApARKbNuA6xNOmkdUO1ydmzVzIR4sOEN/XJTpoQ\r\nN67EFB96qprGT3KxdE5FXZ6ni0qQQi5hfwg=\r\n=fxmR\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"4a47096cacfea53674e00e41953a3c8dc2c04dbf","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.17.0","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.17.0","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^2.6.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.2","@babel/cli":"^7.18.10","babel-jest":"^29.0.2","@babel/core":"^7.19.0","@babel/preset-env":"^7.19.0","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.4","jest-environment-jsdom":"^29.0.2","@babel/plugin-transform-modules-commonjs":"^7.18.6"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.10.3","@mui/material":"^5.10.4","react-router-dom":"^6.3.0"},"_npmOperationalInternal":{"tmp":"tmp/react_2.5.0_1662731500057_0.9922817185707626","host":"s3://npm-registry-packages"}},"2.6.0":{"name":"@laboratoria/react","version":"2.6.0","license":"MIT","_id":"@laboratoria/react@2.6.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"090e64d8af3e29f32c4a219af8347787ec74c401","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-2.6.0.tgz","fileCount":30,"integrity":"sha512-RUHzpfyHQsPpo1eOuyJRIgw/aePmWNyh0qvIbAlIZCTHGuAgBuslSYdkwcQES6JZZ8qB/bSJgQQLDHIGSD8HqA==","signatures":[{"sig":"MEUCIFXZRzVhC4b+no+UZOeltIFtFWJ+4eOivh34n06bwRgQAiEA9ZvauMbLzteEaC36vzGz8kMXCjaxJr0nynJJVnSuYBw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53284,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjI4t7ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqpgg/+IutiXUtCZCu9WMghzpyMTWb0DuuMkJB+bTgixJYxJTXbdm7j\r\nvgjWm5m7IQz2IXNjjwet38bYWreRE+F1edy5S4ci2ZDjRKAG3ig2/0Li2HAW\r\nt0Yxo1/vqEtOOS5+D9TKmmG5lMsC1IHUBl/zawr+FkHvHotWgGV+ehLDtVXm\r\n07B3Z+1YBM0GGBDNmj3AL2HNHR8+IFh2nq92cDAd2y9TGhzICyegREq1xJNX\r\n9vklsK1D4Atky8DKrZhO357F0Kom3OR88qITico+MGTRg1B2NrokSZUQlUxm\r\nl7+cz/Xs8fS0G2B2UFu0oZcdtU1gz+iFRjmHp9fxje8NIVg+ptbLYF33UXe/\r\nF5yiuU4cESHh8+AkL2ztlb+GNvRnl44pMQt+paWNNTp0EcR2R93CvFt1UKAA\r\nVjZEJzIHJwCo95XAaVtv71O9KVIlTO7db442SAxNbKMAwpHVFjzMcqsVtK71\r\nP+ZRASP9lxmEzS8/9hKg4F04xmg1nKfiCWtY8sogNUrtAaDzZoJzyrIAhmTy\r\nsuU5yDgoruFSSDPGZVViBJV4Y0xJDZ+AX9VQ8SDdrbv8sNQx1Nvc1Uio6Zd9\r\nu6wwTpV/aYZsyC1QGOSuaPsAyGtpT+an8tdaDOFptRMaqMkAYCf1EyDht7Tt\r\nhinuPfq5+65x1HjVrK4qhX3Gob+fqFJNdU0=\r\n=DPfO\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"cc105fbdc193a93d294d25aeb0b35510cb764233","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.17.0","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.17.0","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^2.6.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.0.3","@babel/cli":"^7.18.10","babel-jest":"^29.0.3","@babel/core":"^7.19.1","@babel/preset-env":"^7.19.1","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.4","jest-environment-jsdom":"^29.0.3","@babel/plugin-transform-modules-commonjs":"^7.18.6"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.10.3","@mui/material":"^5.10.5","react-router-dom":"^6.4.0"},"_npmOperationalInternal":{"tmp":"tmp/react_2.6.0_1663273851451_0.5916293072780019","host":"s3://npm-registry-packages"}},"2.7.0":{"name":"@laboratoria/react","version":"2.7.0","license":"MIT","_id":"@laboratoria/react@2.7.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"d4bb892819c387c3a7ed970520f61d0f43d73949","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-2.7.0.tgz","fileCount":30,"integrity":"sha512-MHBJb9gL8Pl/+1PySNhQnt9Q5D7PJyoeQjaUkfapGPdi9oIOItOHryMliRDREd2CE/PvF/r8POGGQSxyLND0Aw==","signatures":[{"sig":"MEQCIGPP/PtiytTZIgdrsTx5ukmIK6+Fdm7LhCPElFNFTM9QAiA/huVpxStceoovgDi04tL0J3bwM8u40MgjHpbERUW30Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53306,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjNiA7ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo5jw/9FUeHnDWVPJfyps7DIqkyNCO8+JRLNCSsmNbyCLfqCsPb0VmN\r\n+2nDLZQqPM+JElBUqqbELVN0ttMkM7azBS76/RTHCdu+c/+2Z3z1M8wijOol\r\nRdTCSMTFBu5xTL3mQID41cRBadKBrmjU2wkekfSSY1XaJ0kMZWWP/7JQl1ly\r\nbU4oNPoK1+7nz2BMCJnl7/REuPbtvLmYQU6uJrMBCI6vWjnml3HE96gthxSK\r\nMl1WlwS7U99iMgXuf6zY8Tb+GNLZocIsYpA5yIX+72dhOqSBRVBOI5UDV7bd\r\ntEszGcH9JV0bdTNIQLHDyDMq/JElIKwTqHr9iBlPuGvMuNM6vwiCeIwsd+W2\r\nmfLkamJ/YmAFAXmw9SqFE5F7bM8oHceqNC1Bn4XLzuy5Nj5mUax+8HMpJVCx\r\nj00pzZeOPFfNgwAybpsHfyCDjU+O0FkiFLOW6lcI+LWcwoKmX11nUG80Q1KF\r\nJ3yaGwndgUCaHJ7gdMD+63KVtiQ1uCPQTHD59jW8JIJyBX9eTKDmy/mmErDQ\r\nC6b7sGJTF9g6NGpHdOx851Yuo0ZG9r3rb8J98S5sdjoBL9cLO8Z7c6Vc7b0F\r\nUK1cuz8TmhnU16vOCTUBC+DIfslwrnqotXo1CI3JuzraI3E1fhfPVFOotUp/\r\nXVAt+iBFnw2uwH+Uz9MX67i27n8PRUU7e7I=\r\n=ZzBt\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"8c1737c885a8fe1ddf429cf146e880a45cef6245","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.17.0","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.17.0","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^2.6.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.1.1","@babel/cli":"^7.19.3","babel-jest":"^29.1.0","@babel/core":"^7.19.3","@babel/preset-env":"^7.19.3","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.1.1","@babel/plugin-transform-modules-commonjs":"^7.18.6"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.10.7","@mui/material":"^5.10.7","react-router-dom":"^6.4.1"},"_npmOperationalInternal":{"tmp":"tmp/react_2.7.0_1664491578799_0.8943055898786525","host":"s3://npm-registry-packages"}},"2.7.1":{"name":"@laboratoria/react","version":"2.7.1","license":"MIT","_id":"@laboratoria/react@2.7.1","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"3d782ad92d9137d691c8ead9e117dddf4b109f0a","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-2.7.1.tgz","fileCount":30,"integrity":"sha512-bMgiJDe0u8FwrmZNhL4rDeJZUPvIJvRiRniXe72qITh/CT+Uq51nc/JQ+MsLcnS0MYFAMgXMpVF0zMBlc1rT5g==","signatures":[{"sig":"MEYCIQCnggtk9BxpWoNlj8LQ+6HlTvTXQykRvlXbOyB8hM69UwIhAKlMS6OQNt/qVoilZyIhdvzTA7NUlvrbD6ATfHtHcwxN","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53579,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjRuS9ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrNGQ//TPSvtbn3E+nfYAYidHrC2O/fkTUOqw1H7sgMtu3WJuPBbNZ9\r\nvBQBB7orpV7cs8YzmNfNkcrGTZ6Yns2QKe760GhYARTDYkdtE6bWzsmAohXG\r\nMwfFjxxR6pStwjkt1GsQ7VasyawNaEiv4pxywXpMdynNJRkf0Aa0soU8oFy0\r\nmKK55BmWbwcPpXqz+Cl8wOgxaDMxBXsNCldM74G/7solxLGQZEtjcHOH3sYb\r\nZ9ZjuuoEFqTiExMz+kitG7SEqyKjrnvssyUcYJ+SMBMPgmYUhZbHLpQM1Fl+\r\nEfnFxiWI6bs89OQJGcxOaq1fPmIUJTtFY1FqYt5sX6G+JJNGsbksGoNqpFQj\r\nQjSbLC9hKw8S47dKRoiNWZjiVjPKZm/GNSkBrseGLJmh5qQsxciGBA131zES\r\nj1KWAN8oDkvOXxL9wrc9EVv6jpzK8cPQ+k7X/wUWSc9UbbobyR19UzwzI3kV\r\nGdI9uyVCWGVowIQGEwY4oC1r7+NjIaMiPtt+YcrNi9XmVNJ9JPTnn6Sy+JLJ\r\nMifOEHKQcuSIXp7AI7xX/2NSkbU3gEdu4p8zlMJh1btWGu88JOl74KrxsfQ/\r\nI0ib+2T3XyVbzmb6qfffyiugvDSWRy3DIyhJ8jRu8HK6kuPAY23xrOTR6WjZ\r\nfq14/XHHI5njvWwnSf+YbT6lf/1Y7AC2IKc=\r\n=4pT8\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"ebe66e8e27304f8bc74ebf26ca8f7fac76c45713","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.17.0","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.17.0","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^2.6.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.1.2","@babel/cli":"^7.19.3","babel-jest":"^29.1.2","@babel/core":"^7.19.3","@babel/preset-env":"^7.19.4","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.1.2","@babel/plugin-transform-modules-commonjs":"^7.18.6"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.10.9","@mui/material":"^5.10.9","react-router-dom":"^6.4.2"},"_npmOperationalInternal":{"tmp":"tmp/react_2.7.1_1665590461566_0.8836242728794941","host":"s3://npm-registry-packages"}},"3.0.0-alpha.0":{"name":"@laboratoria/react","version":"3.0.0-alpha.0","license":"MIT","_id":"@laboratoria/react@3.0.0-alpha.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"dd54ea22fbf62ccde35af68a6dde7d358094d326","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-3.0.0-alpha.0.tgz","fileCount":30,"integrity":"sha512-FybUU71JurHZOSklxr8xRcSHj/EB4aPAwhJBlIZPIDhIyTVHJS2lKBKrO5+QgZOiQ6FWCI25oUdU0v63KDKpsw==","signatures":[{"sig":"MEUCIBTumQS6QUGJ+Jzhdjpa8woqCuTpQbPFyICId+07GnoXAiEAsFkP1pP/+KMjNdOr3bRM8ntQt9DYjFc6f9g18ZJgqpk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53921,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjbW4LACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrPrg//X5ftBZe4tMxqezqhoKs9YknkJJQIqbVh5SwIDSGS58+CR0gk\r\nMUwUBPc4j3Nz4ukP/xzv+qVMBmtcZ2kwTik6ln3I4WIM274AnVuMxqHK1Q6E\r\n4QuLH4Mg7zhDwjqIH7WWmQqIm25UFmgE4NFZJs5ZERwFP3h28JzE3KB7794l\r\nKYpbnF+11jmwOKhyQoHmUXs19m3MsTjswN2ODSdP3u56i93Q6xLQNQjCi7CT\r\nqzS7KtOcqQjk4zWbDrG/Bz1ZNE/Rs9Gm24xB7EzFZ2cIqfUv574cP83y983/\r\nKkPUZoscO8MAvZfHmNfAEb5jdS0oc2HUWUwAeypgG8eNLDccMT2qcVcrdtdO\r\nftPtQin81YGrn8t4XYoW7Ko09AIeeGpAorfwwHJ0kJsOhliDXeD/5pDkMavY\r\n+dMRhhui33qwibJ0hKpLpTCOoIdQMbfJedKc1vqQ+tw4ayuiURRepoah5oZ4\r\nbBAolJZWm4RnJqz3TgzT+HzOkMdMzd/lw80OrGrTDeX+ZvnD2bXWL1Aqi/PS\r\nKoomTbAXcQBpV1QCnJQp0UwGHEmXckbL+TrnnL/+DRbfy5iFQhkTvrvZojzB\r\nidqOhmJPj7V+Bs6ZUFFLL8YjLCyWji0TVSwTnlqYHgg+xf0OmJnGYeGpy8vS\r\nViiIHWgZByWAoqmtHDhoE19UPEVkmL6wTGc=\r\n=pYEh\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"6e2c1239f9ea4d07bb549742d7292158e75abcc1","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.2","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.18.0","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^3.0.0-alpha.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.3.1","@babel/cli":"^7.19.3","babel-jest":"^29.3.1","@babel/core":"^7.20.2","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.3.1","@babel/plugin-transform-modules-commonjs":"^7.19.6"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.10.10","@mui/material":"^5.10.13","react-router-dom":"^6.4.3"},"_npmOperationalInternal":{"tmp":"tmp/react_3.0.0-alpha.0_1668115979701_0.9384651788558369","host":"s3://npm-registry-packages"}},"3.0.0-alpha.1":{"name":"@laboratoria/react","version":"3.0.0-alpha.1","license":"MIT","_id":"@laboratoria/react@3.0.0-alpha.1","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"5ebd94c65d00549321fd438e3ae79c5daf4c05ae","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-3.0.0-alpha.1.tgz","fileCount":34,"integrity":"sha512-izqSw/I2lnJaKraKM4cdmtY8sKsSMEBIXb0vTROz1JN67s+ZWjYDGrq7PnRCW1CzjZxfTI7/SFZedFV0uWBfDQ==","signatures":[{"sig":"MEUCID81va7iEyGfagByxNZW4adbUlEkRTlhpE7krmGzi44TAiEApUQeCeqh+1zZIEb+GbQQfvwjlhIWRRUkGPBOwNNFQ+o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":56642,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjf93/ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmoxlw//RQeZ6cylJQu0fzpEeojlbCB2Ob44TNacWIci0/BCYUNeiJtH\r\nHkE+9rY3SNG3QnLEaWVclfbTFySw9vU8z11NMqiELW6kU4VOsfM/KX0TZJX2\r\njymTjD4h77ncVeu5LmQS92fTSO0FdRcCFmeLJLE6nj1N1ZocEyIzvHn4dWvV\r\nhyn6FjQmtw0RnbQCsZTLIHXDCXsFI+qppAmfrQ4nxlDK5hnUYVkO0IKfUFes\r\nV9SN0uZuxpTCVuXgD5raxEu/9R6pkJvmpDXpIrhQCY69Lkx8nr/2XoXqpOAI\r\n+MS3e9UTjy9ZA9De0EHMD4REf4DURb8A9y8S8FxzQIbSMtsxwGbgHjl2fkFz\r\nKbRlira99HYUR/A7FwzUKSs4wKdPOGy2OYesZCfaskNWM/HaXNtUDqLVoo1r\r\n270ePjQZpSq9sXkF0AauwPOOsypf/jW/1WZnG85zm94SlYPHuORDzvgitvS7\r\nOlUSHwTSfmJJuJIXlI1O9bAgEnA4nH2bQrCaTI4JUcdmS0RLBGr7OunD9yq+\r\n14TPBsinNNDj37TPhWnok+DEa4pCy8E6HNGrFCqw9/xnmVp3K1e5UYe7qAju\r\n5IUm5BS3ZqMCykab99cHe6UyMmg0qV6QCDUdakW2ZahoXauQGHFsYaYQYAtA\r\n2cU4kPEh241wDwz7nzULiNcIH9TRq4A+E/Q=\r\n=YZKu\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"a8f5dda9737a7095e398e4cc7567feb1d10d22eb","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.2","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.18.0","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^3.0.0-alpha.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.3.1","@babel/cli":"^7.19.3","babel-jest":"^29.3.1","@babel/core":"^7.20.2","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.3.1","@babel/plugin-transform-modules-commonjs":"^7.19.6"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.10.15","@mui/material":"^5.10.15","react-router-dom":"^6.4.3"},"_npmOperationalInternal":{"tmp":"tmp/react_3.0.0-alpha.1_1669324287408_0.32290563079313306","host":"s3://npm-registry-packages"}},"3.0.0-alpha.2":{"name":"@laboratoria/react","version":"3.0.0-alpha.2","license":"MIT","_id":"@laboratoria/react@3.0.0-alpha.2","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"03248a7aa94b9ae3a4eb9dd95d55a80a12ecce72","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-3.0.0-alpha.2.tgz","fileCount":34,"integrity":"sha512-vCMtTEFvinapZ7GvKNYwZgsOLhnt9VD47UVWspwV9k2mO2VuP0QknS5oU1hVH1hPZXaNPb6rtX24hTD6bFS8pw==","signatures":[{"sig":"MEUCIQC16rxO5gss68V2s8kl5Z4UentWPAtmcMizb52uek9DrAIgY2RbNVrb4wfiznt3ImoFGCSr4/ZlISurJGy5Y84TDko=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":56873,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjgJlTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrvLA/8D7+phAy1UikFHyqhgIIxWwGcA1UAtgTLcJc/T5Z5VZU5NeY6\r\n/z4bK3H2+iyJUblO6HxCSAs56bNFX4TAQCKQKglz8VIVb3I7hCdVAYpd9yzz\r\nzCpR2XwVdx4TynVrwGDvzfqqxwVAQMJH6fNsIT4yGt5Ukfn320m2yHrO1C8B\r\nxH9jD4XXg6FCDTytzoROTnRysoDk6CsLHITdpj4bb3Yf0BSQNwhbSQAaRhUU\r\n2GazG24aS2fL3cX3Je9nbvksasyIlHPEA+xwC/0yZ9Px4aOWG3EXR9ruM0/i\r\n3AIpoQBcfehJFVlK5QxTWucQSo4sVIlAGNk5KYAllIFAjZdVW6Cv82Pvbg09\r\nz5kke2bjWaWa4Fb2utTFfh48LrteIObc4Tk8oCIiVIjYBxy3Brge48eTCsWf\r\n0pmcS/UzXeU3QmkEHZhEjNsw3v88q3TKOcz5CnXyGystkT2IfUzk2KmEfD33\r\nnLf/Wabb43gBrT9lfHpts1mk5FN5jdB/dh5IOCo5/gpMaLX/2ezzilW3XZJK\r\nOhS/FesQnAKoQ3kI2b7EuUT+WfNUmDfNmJB3qxlKgrEnHqIQaM7N2pbZlKCA\r\nMeP49LQXcRsqnAKRluQAevsje5wxNi4YlA32Aretg3rj7MN88X1EugMhIAZP\r\nVK1UtN4gCYm8SsHetBc66E4ZEcmR1z8YpCE=\r\n=xEUi\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"a21f78198bf876164ffe4c8985519ccae84cc356","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.2","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.18.0","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^3.0.0-alpha.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.3.1","@babel/cli":"^7.19.3","babel-jest":"^29.3.1","@babel/core":"^7.20.2","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.3.1","@babel/plugin-transform-modules-commonjs":"^7.19.6"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.10.15","@mui/material":"^5.10.15","react-router-dom":"^6.4.3"},"_npmOperationalInternal":{"tmp":"tmp/react_3.0.0-alpha.2_1669372242993_0.025071177593563698","host":"s3://npm-registry-packages"}},"3.0.0-beta.0":{"name":"@laboratoria/react","version":"3.0.0-beta.0","license":"MIT","_id":"@laboratoria/react@3.0.0-beta.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"1d7d64a0266a9558b64f74011935edb728cb7348","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-3.0.0-beta.0.tgz","fileCount":34,"integrity":"sha512-H5YIif4qlUBc7FizNgdBv1o9F76p+Ljc1/Bc0Nb3TFM7HMMM1CkFXu9HTGjH2NVrsHM0KKl0qDgL5f5Unr7MHg==","signatures":[{"sig":"MEUCIQDyXrHfA1LqRdHo7JL5wbiEHlh/1ByeiTpxONOWzUXUaQIgapCagp46Zj/f1dsGdqKRsFJyDzgFKvDmWKSLUwdqu5I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":56868,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjm0wAACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqG+A//Wky8s9YGtiFDo1IrR89Gva5M6xP0Lgp6Ey+d2KurzCFcUTWA\r\nTTCqYjCdjziK1CX2GC4raDlE9sIHcGlCOVVQBR2bVpHPf16bLQ4F2XJSuUgl\r\nQF2HTRMxFmr+CiDWWzm65Yq9V069N3pqgjuLwuT5pXZjRruRgVuBsaUav1Rv\r\nAlYTvy1yoWQQ/UtECRARdK6Uq2LEqL7Ky7BQaQt+lzQ6p8iWjbCrZttutOdw\r\n04Mn0Qnin0/tn7vRrOnDDp0FGL5XayG6ThZuiQPVLvBDvv+GXp5E2sslGU6a\r\nxf7V2e0xvD9liu/2IE1avxi4rLgW2IO3GA7AwSQwedI20qqRxQmYuTIpa1cP\r\nFrqlNQV7GttZq9zwy2R8VQtS31iafOlbQ5SXY7ZQ9lKfi4vhK4HD2O684/aJ\r\nE8+Cc8pgF7hiFe77tpf5Vj+RgGuO9OaEV7SUdnAjir0NmcjGvm8Rpg1xy3hT\r\nOABWYIrq+RMBnTl1GalfnCwesstPp/gPCUKxaZN35s+9AWfo2s48PwVpR5Vd\r\nL78s2JV3CtodA+5cSwolPiuGJgjFml68VlLOGv1tSUfX+rLEvyJjrWiZmcBE\r\nmQwSmhfezpg5QW+4WokpyZmOIpXIAU0D0W7u0Nx/9R0MKwkdcpWmBUo8/HpI\r\nj5hZRbJT/DH9u3IFPzhakBaKsTQykfJthEc=\r\n=3oQ5\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"afa12ecc536369f51f55915a37fd125e9e7afcf4","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.3","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.19.0","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^3.0.0-beta.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.3.1","@babel/cli":"^7.19.3","babel-jest":"^29.3.1","@babel/core":"^7.20.5","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.3.1","@babel/plugin-transform-modules-commonjs":"^7.19.6"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.11.0","@mui/material":"^5.11.0","react-router-dom":"^6.4.5"},"_npmOperationalInternal":{"tmp":"tmp/react_3.0.0-beta.0_1671121920394_0.21637799908967392","host":"s3://npm-registry-packages"}},"3.0.0":{"name":"@laboratoria/react","version":"3.0.0","license":"MIT","_id":"@laboratoria/react@3.0.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"5b3d744df233001974387033d64b39901e7dff78","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-3.0.0.tgz","fileCount":34,"integrity":"sha512-CZ6hJynU1aUBQ7LJy1ANhDx6d2H4Z82W/Pr9t+erphDIlu205tH8AaQWyQhohLkPKyeHXU+H4oYlSVbwT9hIIg==","signatures":[{"sig":"MEUCIENBgp27MRHHFq1n2ZG+UlQHDdJ3a+k/iMnC7r4CWlPkAiEAkJOrKve5tijPBa6DY9u6i7DPAj9asu3nhBicaLds0RU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":56855,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjnQ2xACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqO4g//ZNjT0Ljs9ScDkEvf327rcdrmRq5Tmk9l53Jr+oX7SF9J5wcp\r\nJL9FKmwVrO9Gjc1S3UHgLaVqVPGEc3CPO24313wA7WMv63HMXl0XX8JwtCx/\r\nCn/cRz+uDSj396gifLjaGAmTl8mkpq/y/Lc3tukM8Ab54JjkgpG//VHH4Ptx\r\nHxreZZJUFs1RaNYAeLhmz2U5d5L8RC7UEw0Cw3cdJc+lp3F4tgRPCKFS8n01\r\n2LIuzpm9wz3OzYDP6FLU1GE4AisPaF1SW4r0WhCCdAk4F4t1v4AcNH+cprL6\r\nd2zkIyIHhKMspyb7DNAhghp7gcK1lUSU7wsoE3Me+Oe7wl4yi29YlRgmlXBN\r\nWSefHYmJite2wZHpaNuKTrAmh+S9j7c71BA8Zs/GBX3XvZih1LU224w+kwsX\r\nAm6Vv/w1XyrzLrEJEURbTE9V+p5YoIhOF/J4R82UMquAO4nZJJprWgfAS1+s\r\nVNuU/GoiC2Q9+VqDYDKhSyY8bloWx3wd7hw5ZKFgdKds/lYSu5eAH+yibSeC\r\n4B8TioBKGdfEP65R/gl11Azr0iXPKRhAPxmJvaEXhhGlmqXNo4EzpR5I5A16\r\nYHEBEv2UfHjZJcZNgrm1t8RsdbpWF8gI0jfl9XFWdjQA3g/0xxtFFnqii/Ad\r\neUapKPZXrf6LRfyNXQsFOBj4XXJYWXt2D4Y=\r\n=c3kD\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"94c028fa0d6ae20c19dbd6044d42ab50bba6ddb3","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.3","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"16.19.0","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^3.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.3.1","@babel/cli":"^7.19.3","babel-jest":"^29.3.1","@babel/core":"^7.20.5","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.3.1","@babel/plugin-transform-modules-commonjs":"^7.19.6"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.11.0","@mui/material":"^5.11.0","react-router-dom":"^6.5.0"},"_npmOperationalInternal":{"tmp":"tmp/react_3.0.0_1671237041383_0.6654451609538727","host":"s3://npm-registry-packages"}},"3.0.1":{"name":"@laboratoria/react","version":"3.0.1","license":"MIT","_id":"@laboratoria/react@3.0.1","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"a80f2d1a6204827a7da600456314a831d5e9282a","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-3.0.1.tgz","fileCount":34,"integrity":"sha512-Y4mdQnYmTbEgZreexqnR8hXS08E/morCTq/80vCVf87O5ogCU+r3Z3I33/GN3w0diEdrNt6DtrIPA3xZKjEYVg==","signatures":[{"sig":"MEQCIFuILFWwmNX6UG6bXyf0M/Z/rZPASLqu0BFJM+d422XjAiBky1mPid56uiyeRA2Ke0LxD2UwdcS2T9dtXE5DvOWnIw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":56857,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjuGUjACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqypA//WVieDUXFdeUBSaWfDTuXaR3K8e7k+2zZbramDqzvprXnwzvH\r\n4+lMyLVdtz3FlEj3T9BDMvKrs6F7TgMFu7Y8Wv/zLLf9aEndyvqnwZ/7xs36\r\nYqE+cqEymwnY6EY2OfnNFU8uudd7ow/kRVUwaKxMR+YCGGoLjzcbZs20z43n\r\nk5K/Q4V+QZPMtMLbUSQSd8dfZP5jsr1v1Y8Gij1wQBGB/nZfL7WJdza67e44\r\nEjeBoYTH5vlV2OzUOCAp/8+AgLsgItjb+ITXCVvUIsJJg4gY1KjL3ZyzeXZt\r\nLjL/m5kykKn8x2gCITBKNkSg27lT8lYKCk6OU4AGJ6xLsr+nFOjiiulOsbCk\r\nh2hnAZdjOxJUEP9bVe/rC/uvCjTxUZzUXsuJIO9Wcg014u0UT1UGbCo09xt5\r\naa6m6TmDNzFa9n45e1ieUvIHwDSCGll55Hvn7jfacSMSgvZzGz8Tmrdfca0u\r\n823s3jTTTSm0B1GttPWM6KginBCWTPLPuvGGFfLRlGSBwzLn0gQKXCgj/ZMZ\r\nwi9rBxxl9qGiB4VR1feTb2HZzamP0Zn1Y9JfmkprB2DS+wnXqFHtFOCXSE8Z\r\nuGiauqSjZVYOTBRhcsQfBllUScL04oP1G1US9YTjCzo01eOEo9dxsllkTkUz\r\nw2wO1R9ZKSg6+F83mcC79lu62OIjOhD4j8o=\r\n=P7Au\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"5ade89b98880abf8ed716676db731713c77f64e7","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.2","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.12.1","dependencies":{"lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^3.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.3.1","@babel/cli":"^7.20.7","babel-jest":"^29.3.1","@babel/core":"^7.20.12","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.3.1","@babel/plugin-transform-modules-commonjs":"^7.20.11"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.11.2","@mui/material":"^5.11.3","react-router-dom":"^6.6.1"},"_npmOperationalInternal":{"tmp":"tmp/react_3.0.1_1673028899423_0.22944690667838863","host":"s3://npm-registry-packages"}},"3.1.0":{"name":"@laboratoria/react","version":"3.1.0","license":"MIT","_id":"@laboratoria/react@3.1.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"9cffadb60c89c732bfb9058fc3f9abbbdd696240","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-3.1.0.tgz","fileCount":56,"integrity":"sha512-hvaGWZfLzoL0qjZ14Uz+Kfuvmjz+gnbUhq3yt4E9nxim2MR9wWMA58Yr3wV7wMtKtpkR/z9gZqp0sXDanQ0REQ==","signatures":[{"sig":"MEQCIHwRv2m9+LS37BFjnqbzg5bjqXLkADcETdRmmryf9d8hAiAjtx4dG/4ePNqneVwvfvx3wj3NTDafBBLW9gwfFyPPeg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":83050,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjvEhQACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoMHA//Yo8zPoqmjIlXiQLg5E2aYnQY3WT5kIfM1CVcRO/Q41GZj3wL\r\nNj6aVVE2TkMBuiEQnfqytY3siwpi/m+Kpz/7HvBLDWnygTfm+QSW9JDGrToX\r\nLT+E/Gj0BAIG/za10SSnQTtEoX+4VaQ22vzmo0q91Y7ENO/XNaJpGcAcrVG0\r\nVi7BZ865HpDmr5CWNP+emKt+BiQK+mmuHUaAL8eMmP18wmhBa4PhLRXedIjp\r\nyy9G475FRjJf66O4fp1TbBzLdh4LKUrfV+V5cFKcjQjKWZC3mdp1gYyvQEzX\r\nIKzdR6WriKLF2N9taJvcX37svPKoW2UZIB0SkfX1jHeBXbVMfm+axrUx9zC/\r\n82N9Uvgg4AGkYJf1iLl9qH8ehWuELQjAsDMoA0o0/qNDeeCcuShsgKQqqT5g\r\ns1LwIMsx+7MQks01C3aaiOV1b0DO+3QkO/YplFV2yL4FMlO/mzfo00Qb2ex6\r\npWd3pBKN2iFXldJT7/GQtSziAnyt9MrV/86ew+BFkMsx7MguOwI9LVvaU+yK\r\nKnPMBchJIWfZ8dkoNtyJo07fa3Iah2+SUsLbucXnMcHiEjBJ55RSGZJJS7qy\r\nqndhjPUEY5UTpJMPEIVeWnPBH6eRx634r8ZMVeZh3ublVMLZpwVBfva6Z8p7\r\naXgv3DeXRetR3vuCzm/f7CQCQHUcQ+HLnj4=\r\n=eO0J\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"b94723e4353382fc26377ea8be1f8a6943c8a9d8","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.2","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.12.1","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.14.0","highlight.js":"^11.7.0","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^3.1.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.3.1","@babel/cli":"^7.20.7","babel-jest":"^29.3.1","@babel/core":"^7.20.12","file-loader":"^6.2.0","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.3.1","@babel/plugin-transform-modules-commonjs":"^7.20.11"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.11.2","@mui/material":"^5.11.4","react-router-dom":"^6.6.1"},"_npmOperationalInternal":{"tmp":"tmp/react_3.1.0_1673283664724_0.7995872445600631","host":"s3://npm-registry-packages"}},"3.2.0":{"name":"@laboratoria/react","version":"3.2.0","license":"MIT","_id":"@laboratoria/react@3.2.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"719b9dc9245ffbcf72e17888e34f1743cf6a4fb6","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-3.2.0.tgz","fileCount":58,"integrity":"sha512-J8kZe3kqlsILNCXUC+nNyhnLgmeINiuTh53h1F5+ZEQr9FJfa95NqTWW47iDnuUjq6kQbYwywP6JfLPpNcE65w==","signatures":[{"sig":"MEUCIC8DT7SjexgXQXH3Z9tLmIjEsYtq5hyjQc6ClSBhPiCEAiEA61CR5RmZEeIjaKSJNDGpImYbohK53ifJnZ5gr+m4D4s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93791,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj0EwDACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoMbxAAj68GJPwht8N77cwnRnGRbD9d24dzitO7G+2gp5/3J/LdejQX\r\nIREkBQHC5tYBB89+VrumazY/wwCLVPcmXbPWvG3S19Y2M0u1UFbKlRMkUmMl\r\nlxTjwtCjCPtQqAZWOqaPXdLKhqUqI+1+DU+hPM1l3vXRreh5Rd3spWgBJUPW\r\nKjyaMC623abz+cpDjpmpePXyhBwwMD+MgtE8VjtmK93BS7hQy4MQXBXEkPcT\r\nitOlzHs1JnKb/WCRxKcR6Emjv5ocD1cta1pIxLT4eN9xA/S9DwQb+lV6cgOS\r\nppaIujdAdSITTXEKf+JXGNSVm/wOhCFDEeAYh3yWdZE0/ebgugU6qweeKt2n\r\nn2kpdKFXrns347AA22gZMVPLteiGLUWjDKrLuISCymHrNzaxqV0ScdRO6zlD\r\n/shbpnyq9jc0I3f7J6g32rPRGhlNe3fyXy2T5pN7y0lH4Ju4GNOvVD/9aSsP\r\nI4PROxnUif1VqMRb1Rvgr401v0QAOw/gGmSlRHE3SJeuIUNyiulPLHKNGH9J\r\nCbyYLskDf1bFkJmznehLsQtfTM9HfsFv7NSHuMTxAD7F2O8jDwn8F/bc439r\r\nXOrGXyG/mtq1fn2oVNcbfiupskds3TEKSo5WKEQkcORrAem6M3oD2hI1zu5j\r\nmTT+1X619Be+dwe0UnrnP9n/NzEXpYe9XVc=\r\n=3NpY\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"26336f8c5e1a20a81f7be9d6b532bf97a6e54929","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.3","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.13.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.14.0","highlight.js":"^11.7.0","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^3.2.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.0","@babel/cli":"^7.20.7","babel-jest":"^29.4.0","@babel/core":"^7.20.12","file-loader":"^6.2.0","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.4.0","@babel/plugin-transform-modules-commonjs":"^7.20.11"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.11.2","@mui/material":"^5.11.6","react-router-dom":"^6.7.0","@mui/icons-material":"^5.11.0"},"_npmOperationalInternal":{"tmp":"tmp/react_3.2.0_1674595331149_0.024056093488284302","host":"s3://npm-registry-packages"}},"3.3.0":{"name":"@laboratoria/react","version":"3.3.0","license":"MIT","_id":"@laboratoria/react@3.3.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"306d6535050cd0970c514887017f6dd08e414e4f","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-3.3.0.tgz","fileCount":58,"integrity":"sha512-LV734RTscsQRXTgPg4XJb93D14ZqUCOq9k5RA3GP6kyHHHM7ELjvi+Kk9rliZa5CnDiUZ5Rbwdx0WYtKU/6cnA==","signatures":[{"sig":"MEYCIQDNUX0OuTMsnCKRtldviuiQ2G1cVKgIq6yONKL4tgZxrgIhALJfBk2A8NFK+2qMTBxhluRN0/FsWyBOAHQIT64sgbr9","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93887,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj2RE8ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrVYhAAoVg55mRPyYG2MjY1P8NPKl7nab2wN5mCmBiKUgZR2UqSPdN5\r\n/bR8b/BtwmXPF6paF9E9V8cOq/uVtpWOaDyj6REFbztGcK3zmsJA/8oKfh/r\r\njR3PDm/ZJCxvX0fzwe27P2jKruMKRQwa43SymgJLAZ72j+MsiiJcjUe4HLT3\r\nu2I5wYIJdf1wNr72+8KceNG3XXnkYRmXEPy3rApqDHva/R56nIlACpxdSRhn\r\nKrKaiGnHy04yRUIZ2baCwRrxH7ZvKK1VeHxp5dxDrwR4lQyopflkjvVfxmxw\r\n4jV+kmBMcLFvfyfqX4v5YR7F57/Bju6v95vY+RyTmLEO3XyO4Xep7EcUacsi\r\nBud3AcuOUoY6LbMSuNZKUeeaE+de/pM0icqhiy36FVRqBbnp2rW6Gb7D5cN4\r\nAw52aQnpGLd9eDTwSwHkike7eC3e2QX8fBXS/9EbN9YrVsSlaJR2uIITF4+b\r\nRRA2c9XGmvGDEWa6/RFbsFzKGryvqPxvQj/s3HU8EMszA+sk04Zj28d8MOXF\r\nRrO1AeSf+Dv6c+h4MFiU7WIBhHn3THDuiEuP9KHeikS/aa2ep+jM5rLEE2DQ\r\nQ23Jb5p0QlGknog1VqMieByO6YONGYt4SCHO8NHe+pPJfjCHo+tUhgWT2hWQ\r\nyfj80Mh5oPTscgO+Jpr5E3NFexh9Yx0Fe7U=\r\n=BpVY\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"f582ff51b5116aba56b9e38c70cc13a74571086c","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.3","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.13.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.15.0","highlight.js":"^11.7.0","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^3.3.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","@babel/cli":"^7.20.7","babel-jest":"^29.4.1","@babel/core":"^7.20.12","file-loader":"^6.2.0","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.4.1","@babel/plugin-transform-modules-commonjs":"^7.20.11"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.11.7","@mui/material":"^5.11.7","react-router-dom":"^6.8.0","@mui/icons-material":"^5.11.0"},"_npmOperationalInternal":{"tmp":"tmp/react_3.3.0_1675170108083_0.1184257758826408","host":"s3://npm-registry-packages"}},"3.3.1":{"name":"@laboratoria/react","version":"3.3.1","license":"MIT","_id":"@laboratoria/react@3.3.1","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"d1a43441e4316e5d2bab70a070f25caa34fe0ce6","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-3.3.1.tgz","fileCount":58,"integrity":"sha512-PvfLshWQsSMlGPQW3voUBJ2ma56HPrEUBpTOgFCk49YKRWGijHadq0PuUv71HcN/5sLFLLQJPZprwVIcnRD/Qg==","signatures":[{"sig":"MEUCIQDnA2tBS6tcH7xT5VWriIg0B9gSg00OaJijKc1zHN/tigIgYPI9147IHa2GD3exfYgKNRlMJ9q/qc1wsJzCpRVxVbE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94087,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj3NUbACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqsBxAAovheTcl7xXXdzzRm07lRq0WQr8IYncdKdIu4xRAcPZqAKxH9\r\nFrfH5u/Dq2q0OhVoMs5t3ZeAooR2izjzUgF0HOu1Oy80Uniw6P/nefgzSbKw\r\neuuxEo6OzJJrXO07hp9qB7urgTPKFQgl27+rbQ4OM83lQEQkvqJY/o8rKspt\r\noyK14Zq+rPr29f7WEY0j/Hz2KNZYygsrGmfIKJ60sexX9YFPcXL8kf094HeL\r\nS4OPPpQDbGs3z8Zqsw3Bo8k5KwmcKM4peSxeVm9bfyLLSlX+aqxuzCZ0pmem\r\noUa2hfmurbxRfc5c/NrVwQW9kFBVSdWbs7/XDVnyA7zvi9Wux5OsXVLb71NQ\r\nh/7QvDhjuVnXJJs/TDFitwStFjZTCFY9/AA3n3N1LxiLs81YPuFdlaCkBUnK\r\nUx8ekTphV2voKIqjTR3yR6nmhujfncNax9QjRD5OiU6bz1RPm349ZHXea4Qy\r\nd/oDcQTPMkUosTkpXRoj04no+FcSsfUslvQ0pAxey2SwZmz/gbgCzov1el7+\r\nnx9YbQnw/YduiN8ptmt0F3ibsJR4k8FbsXoAD4snCsmIbIb6iOecw2c9GDz6\r\nLVISOHOi3x9Uwboe/TpMzO0JUTA1JXX3DIYdiIGITQ/S2PM8lRbuC2mlSQzm\r\nx2gNaAaeK3Wj7OAL9b7RzCPx6blcO7LiEG0=\r\n=iNlH\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"5fa73e72d35a1f5d0cf0fa2c80aa19ef6cfb1068","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.3","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.13.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.15.0","highlight.js":"^11.7.0","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^3.3.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","@babel/cli":"^7.20.7","babel-jest":"^29.4.1","@babel/core":"^7.20.12","file-loader":"^6.2.0","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.4.1","@babel/plugin-transform-modules-commonjs":"^7.20.11"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.11.7","@mui/material":"^5.11.7","react-router-dom":"^6.8.0","@mui/icons-material":"^5.11.0"},"_npmOperationalInternal":{"tmp":"tmp/react_3.3.1_1675416859133_0.1164091189078702","host":"s3://npm-registry-packages"}},"3.4.0":{"name":"@laboratoria/react","version":"3.4.0","license":"MIT","_id":"@laboratoria/react@3.4.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"257dfded13e86bc5a6befdc3cca2a903d114c0e3","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-3.4.0.tgz","fileCount":58,"integrity":"sha512-+FG/M8bB5suj/+XXckm6UDMrmCGINnuGQe0Q3dpOP+VS0NFoxeouYizQ3XjFmnuneSFb5XnhMCNOrZpVHfcotQ==","signatures":[{"sig":"MEQCIBLTN/40HrDhG/txsYXi6Qx4OP4N3ayDQDQhatKu2qJnAiB4+AZEQzHHK6Yireu1MYuQImVKHEbihcoG/y+yhvvq0Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":96013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj3SnbACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo8Lw//V/5JOzqhBxDTDsRk/AaB0QGsEiBXxcB3vKhAftEiGAFZa9v8\r\nirX1OhLDT6vt/Nqe532fBCqqDfF1bLbBb21LhitjLlzAMvhgH/WfaTl8eYku\r\nDqfKQC5gsny5cFwUKz9rjjutuPNHtzAz5UR1OIvbePkNwl40/hjx7+Lji9Nh\r\nArJ/PYmJfbnqxfI2TxmbfjI24gy8gDuZzBo6JzHZ52xqx/E0a+HGACxIf/d2\r\nR+SggGvGnhu0dlYnj3255f4QRAonpXUcpnoBU4jXesPp4yraEOD45oQjSvkx\r\nNzTuDMyG281fTTzGlm7adedSFhB3jJsjzkmQ2Xl6Dnm9bA+BHMGZouVz9HeH\r\nh3YtE+v1LYp2FeNQqbv07fKnr8hoX/iiaHEx6zU1WUWdD+n5WDhsS0BCRygU\r\nI19F7ii53HYV9iC+Mxx4d1Xj677mvmHDZUH56nZoqClJfVcmi66ONHGnWXO0\r\nk/99ojQq8CCjaT2BvCQg1QrAtg9pACqz3FV+zDQwlV1nIiXITsVJTV2jzZrd\r\ne9/fmWWB4In0THpL4ZLCVangd0O1HQ7wfoY3ozwZEVkRctLJoEYudfbAAXwd\r\nnHd9qMVHGu6/Cmt3bOyKUxuB7kIYkoscIA42DpyJVNVaCZL3YkkZSdxpUGDR\r\n6LiAPMJdO2AS1wH7q42qZOcflhzlMZHriAc=\r\n=7e5X\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"1e4cc2b8a1126c573f7270e641d581092ad33b31","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.3","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.13.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.15.0","highlight.js":"^11.7.0","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^3.3.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.1","@babel/cli":"^7.20.7","babel-jest":"^29.4.1","@babel/core":"^7.20.12","file-loader":"^6.2.0","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.4.1","@babel/plugin-transform-modules-commonjs":"^7.20.11"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.11.7","@mui/material":"^5.11.7","react-router-dom":"^6.8.0","@mui/icons-material":"^5.11.0"},"_npmOperationalInternal":{"tmp":"tmp/react_3.4.0_1675438555559_0.8173037724539527","host":"s3://npm-registry-packages"}},"3.5.0":{"name":"@laboratoria/react","version":"3.5.0","license":"MIT","_id":"@laboratoria/react@3.5.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"02a0e5e3d1477f0bbcb5f37af9d18623bc17cb7b","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-3.5.0.tgz","fileCount":60,"integrity":"sha512-hhs5TsvhL6Us/U7aLCJ26zngGY8A4j/Udlh7k66DDiIRBsFR4GVQsbLe7EQuaZnzNN2M9vIJxWxvHoViZND/mQ==","signatures":[{"sig":"MEUCIFXuF0uXpY8Khe5UAd9RZUpY9p3m3KUKGwOa6MdKSw7SAiEAzCKSvfL0DMkUgZXw4rlDtNeh/3BV+FtprekgSeWGChI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":99878,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj45QrACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoIaw//VaN6zuOXkq379gY4Y7je9/ddqdomY+e2jy4BfBy1dIIsxjeF\r\nbFgtRpABftQnWHXUzaO+OX0szCRwaN2ZKR/ASj3wpcWNhpaoKj6x3VvPfBLX\r\n7ch5xg9iZqTa8MdSW0dg+XVHzA5jejABVpqMPe1SRzhl/IHA60JbW7ET3vbq\r\nHgLGYphVDXXsgliyifxdgPNG3uThLA7UrTDqO6HJbHBHWh5bcVuuWMxSoXYJ\r\nptpvh8FaDEkaiqGjhVFaHnOBkAQk7iVqCV4De86YiZBEkt/7QYRCzo5plbnh\r\n/1gf+LPAFLqeG7KMvVOn0rSwPqm/JLCjsZYsG+aYAr6YsQGAKqi69Qu61EkK\r\nbEPffnRBZrEnncTOnnPF3BwZVRuTstCDqe7CR6h35xWKAb53NgQZqq+19nkR\r\njHA8q52NUGFqmvqhi1h4HWci87yH79vNkBl3lcbSWGDwO95XG5Z3Q4XTo+KJ\r\nm9Ia++59llz2iQ9DRruvYXQhiq7bW1csrJ7dx59dAH4JBQ4Jm7vKncTzPuoe\r\nZ6sAm/aGnnfmGzjoVF5sI2PdZiLF2oYalmld/yAL/i3fJKSKOGIvNEe3EPO6\r\nkT27+wBnZ0W9yRvG8Ok68SpwPUGq5QTPuyr8LAp3psLFy4eXeNUhR4IoLZts\r\naatqmeHAmII7Z+i8JCMf7keLhm7ujz5qLFQ=\r\n=2MEH\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"52cb3d5b5bd2164c2dfa2ddf413b5c20fe1be6c6","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.3","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.13.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.15.0","highlight.js":"^11.7.0","mui-tel-input":"^3.0.3","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^3.4.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.4.2","@babel/cli":"^7.20.7","babel-jest":"^29.4.2","@babel/core":"^7.20.12","file-loader":"^6.2.0","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.4.2","@babel/plugin-transform-modules-commonjs":"^7.20.11"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.11.7","@mui/material":"^5.11.8","react-router-dom":"^6.8.1","@mui/icons-material":"^5.11.0"},"_npmOperationalInternal":{"tmp":"tmp/react_3.5.0_1675858987649_0.7707288765353606","host":"s3://npm-registry-packages"}},"4.0.0-alpha.0":{"name":"@laboratoria/react","version":"4.0.0-alpha.0","license":"MIT","_id":"@laboratoria/react@4.0.0-alpha.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"7a272bc5cb9681c6b04a3d02df5330ee38d773ab","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-4.0.0-alpha.0.tgz","fileCount":60,"integrity":"sha512-l/mDVRfPtjz1d84jrJJH7RTS6KRXZMG5e9QtT3OWRCmrN5K93W3NPPX7kuqz32zQuXAkbOZRYYME96sdtVRU+Q==","signatures":[{"sig":"MEYCIQD9zmNalMXXC8clrUtna2wYxlpeUSoLmKs9Rml4da493gIhAIa814pzE34lAv2xotZPcpZBHPk/zTPHgCnQTxjKKA8Y","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101287,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj66r9ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpVtQ//deGrVy8qLC4FMZEK1qmG17Hca7zjLB15z+DH1P7Jrc5kZRFf\r\npf9gmICcodHlqiRGw2RKfo6RiabFZ/MdGxEUPZXSAOMgekrR8rfW0v4vjUTq\r\nCFMjehmH7YgM+a110GnK/DIMFDvUJbNoUvrRgUEdmZj7hG8S7h3Ej3QH3xUS\r\n6Wx66zd7hy8nzyePLCMhbBddYWRx2FAG+ZTBZ/LKb05SjMEhRoncjRkd4kny\r\nIwEaLIPqNV4s2H+Xtn60Zk7Wo21hwXlMSAL6SLbNb8LfSnVVTB3wc6tbkC34\r\nTBxbwQZw+Xk4CxjXv3nUhS97msTUp+n6VBO1qtZ0T1ngU3bCOx2DxEteuVf5\r\nlBgdmucba78RxLqQj0qGXgkQEvnVIsndQZOq8aPAx8bRrr6FTVKGPkDxZrlO\r\nv6YMWT1Om/DYs37UwEl6IUrjS5H+9y9wAKADYuow+gQCpUvTOIgSIOMOzbTS\r\nrst1wCRr5zgaqB8anVluX6XmhbOH6mBvc/sAwAMn+NRqH4XiN2BfrIoes0qR\r\nN/iMENVLGRIgg2ez9IlTHIVfO9w1YxC00JqBmJMH37rLNwOPU8DGvPhOZWaS\r\n8JJPCeqmJHTyPynXv7EXygxlkjQ++MwOq+hOglNs5X8UwLxHE16zkcsz8Ie0\r\n1PdnLLB5uuclFLzQH564mKUMeaeFJr2bvRY=\r\n=N+Xl\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"642138aeb01f4d6527efd872bda0b8ff079935ff","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.3","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.13.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.15.1","highlight.js":"^11.7.0","mui-tel-input":"^3.1.0","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^4.0.0-alpha.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.4.2","@babel/cli":"^7.20.7","babel-jest":"^29.4.2","@babel/core":"^7.20.12","file-loader":"^6.2.0","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.4.2","@babel/plugin-transform-modules-commonjs":"^7.20.11"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.11.9","@mui/material":"^5.11.9","react-router-dom":"^6.8.1","@mui/icons-material":"^5.11.9"},"_npmOperationalInternal":{"tmp":"tmp/react_4.0.0-alpha.0_1676389117052_0.7201736840796782","host":"s3://npm-registry-packages"}},"4.0.0-alpha.1":{"name":"@laboratoria/react","version":"4.0.0-alpha.1","license":"MIT","_id":"@laboratoria/react@4.0.0-alpha.1","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"7eda5cc79c10478cb91031ec00fd5731bfb20b24","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-4.0.0-alpha.1.tgz","fileCount":60,"integrity":"sha512-ZVsk1gGozwi4j7qTihkkrgyE3gbYhXWL2ETuVTpEY+5I1Qdani/81vCpmgWMKe/sQi+MXc3m/NvRheIbAetJLw==","signatures":[{"sig":"MEYCIQD9IMmvG7zKm+diI5dRB5fB1yZR+RFk6VCul48bCFuqfwIhALoH/1hbeDisR1Bevb0uGUNz1T/9xyIRWgaicJJNl2rR","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101492,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj7CAjACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrZQBAAgxY0l0nOjYlb05nmk50nz5A82U09gjqxK+LGY/nRqK/5Q+HB\r\nKX3f3Pe97JyfKKxj6CTBlLObumuNeOzVD4gy0KbQ5BFyElpDQcRQZTwsHD/W\r\nMuiBud/rcEacjXX5nO0C9YFrKTexbpJYvzCdjc7mU20f+Z2Km016A3I1Esjf\r\njWhcOe8Z/3rfEDwYrUvHzqRzBsFAX9R6NUmmF7Eex4r7L8d3GYoYwkfRL8ZZ\r\nwbnFG46DggDEalPcKzMovtX48akwbR/nG0RtDdEbGyfH9r/MDUX9+YoE17bg\r\nqIe4p95W2ZStQ1wLFoVtEx0WPyvOLoChbAqYrP5U1TTMyLMH4QSc5erZ2apQ\r\n7+hbqsv+0KwlXMKqq/oZT9gLPQaI0Mruo7RGE+zyXDnL8fhGZbt+vERPh1d+\r\nRkO4Zguk/6467wwa3eHgYzpEQVWZ+q3qJXn9HYTBi1NPRqbf+lIgJnb7dM8k\r\n07fw2XZd6GwtMQPYvhZrt4rVfohZLajWiHEidgrSaJetwTg+dwdxTX0QyQ/y\r\ns7T5B+XRJ5FFAxtPYyaaXBkfVdEhYV/mnkEPcHi+WF6in1boANj6n6/SUdVg\r\ntk9PKmI1BWCHaQThItcpzwjqYj0LfHIYlmR+18VSUhWS+r+8yEeozDGnNnq1\r\nWxVTK2TMlboMs8BH5P6fDcwYzc2tbEXIJ5I=\r\n=4c6n\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"eb35893d861c073381570f6415bba6a4cb0c0051","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.3","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.13.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.15.1","highlight.js":"^11.7.0","mui-tel-input":"^3.1.0","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^4.0.0-alpha.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.4.2","@babel/cli":"^7.20.7","babel-jest":"^29.4.2","@babel/core":"^7.20.12","file-loader":"^6.2.0","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.4.2","@babel/plugin-transform-modules-commonjs":"^7.20.11"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.11.9","@mui/material":"^5.11.9","react-router-dom":"^6.8.1","@mui/icons-material":"^5.11.9"},"_npmOperationalInternal":{"tmp":"tmp/react_4.0.0-alpha.1_1676419107127_0.9076785778325343","host":"s3://npm-registry-packages"}},"4.0.0-alpha.2":{"name":"@laboratoria/react","version":"4.0.0-alpha.2","license":"MIT","_id":"@laboratoria/react@4.0.0-alpha.2","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"57001fdc5393fbbbbd3d102ee79027165ba16585","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-4.0.0-alpha.2.tgz","fileCount":60,"integrity":"sha512-Kh0QXeBxlQuFJrdmxH0+kCd4t63T800Eo5xsu3USUK33l752Kst0Lf616n3xy/3Oa5A80lby0ET4czmmn++n/g==","signatures":[{"sig":"MEYCIQDoHVRGKKW9tMfmDqTmq8LsY/pBM3n+655gfdST+4YsDQIhAJNBjE63PhM3/Mk5lsxRL+5ZqmCRrc6/2FiFgtCogs1l","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101611,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj7T3tACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqbcg//afzWxgKtgyJ0ClIVrM5WWFi/hd4SEHz0mmdykn4i6Gg5w55Z\r\nLpMxaAP7W6Xgnar8k528p5QvPDvE45RAfGYv2fvb0BYvwMaTPJHS/aqHg7u+\r\nzZCFGiTeS+GfDLuPzvhrTUQE9uoAlpxFRkslPM0hMlKvEFhioMCOWyEv7LOF\r\n1KCgpGmWl/5GRCuX65FmtsYpLpYJu7S8S80Ma3sbO58tl9CkcOfT3xiKwGTx\r\nQDqCd33afAXYYjCHXufZnc5f/gYOKfv9WbpR73hwn5KIAXlennExYhzxixst\r\nfRrFmgioE25iPY10i/D1/DKE8iVxbzqMxqMnzS9ridiaVcAuQT4SySe4Ur9R\r\nWG+X/kcRrAdHOG8+CJ2fLJ/bfZ0L2EP62PudpD+ohkY2ZGCziM6GBkIg6wrT\r\n6Xs3ijJuYQ3VKjjthqJQjTkhoP7KY0eTG4UYEkT/UbJ1RHPk64aGRlSDtsc3\r\n7pjphEhwUpqVmrxsJKm+iyk9KsGpKwMr0OkTGZrsU/GOoA8h+869BfYgAKUp\r\nSNeaCPWmc4NCStbOuLaE6vajRvunk2b8nL6fQZIK8ojPu4vkMikrmXcqK2OO\r\nZiZN8q/IlbdJ6St49ULMUjlTccwfeHpCQGxoD0QLKQqUAJTfz+gOnJjkqEHD\r\n93lFJV1dY+PAeCWhhCRfaFAtLTG6s9sgS1o=\r\n=2cT5\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"b2a2f91af868bd36498408c37137f64be388f9d3","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.3","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.13.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.15.1","highlight.js":"^11.7.0","mui-tel-input":"^3.1.0","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^4.0.0-alpha.3"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.4.3","@babel/cli":"^7.20.7","babel-jest":"^29.4.3","@babel/core":"^7.20.12","file-loader":"^6.2.0","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.4.3","@babel/plugin-transform-modules-commonjs":"^7.20.11"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.11.9","@mui/material":"^5.11.9","react-router-dom":"^6.8.1","@mui/icons-material":"^5.11.9"},"_npmOperationalInternal":{"tmp":"tmp/react_4.0.0-alpha.2_1676492269589_0.40525500515665924","host":"s3://npm-registry-packages"}},"4.0.0-alpha.3":{"name":"@laboratoria/react","version":"4.0.0-alpha.3","license":"MIT","_id":"@laboratoria/react@4.0.0-alpha.3","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"7bb8b18658245f4f744ff63daaf8bf0a84445238","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-4.0.0-alpha.3.tgz","fileCount":60,"integrity":"sha512-iGvhqCApJQ5kM5C7fFKICfZ2Eh9xqtt/1Cm9ZMQZ3TfIKouNbYeoYQy1tscKw4EZGZuj5e1k4RA/XZCVpZUdGA==","signatures":[{"sig":"MEUCIGPiMZURayJbdjO2R8/+LzupH34s39Xu3scD3gYgOVmWAiEA2V6X+RWYaBDzKio+9o1oJvBWOb2K6foYLmgTaherH7c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101770,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj7UctACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrmXQ//a/hR/Auvh9DaSXXMzOsIn6Q8W/DJwtgqQ4KmQmuTVyH3HrcA\r\ntfDGxMQ4zTjWuIWlrNKzhlYSnyNNHpgpxXu9Bi97i0gR4N+ntg2UAR87oWL7\r\nhisKuGDDyp7WNd0S3/Ii0ZHq3EP2Z5puK9I2cCjXpboADb5k5BHVgxEuGbHs\r\nfpVdPIUvbDCvHt0pekG5RxMMZXZc30zDTsJPzcstBzPTlBqmPkC6gNhk5vya\r\nxZpK5ThUIA1OgtsDVr0qLkUBaszHC8OJDYN5GK+RF5eQpR6VLO4vrD2yVf6p\r\ndo3YqSlN+R4vyBqeozi2Wvojt2pCfw8GcKNm4ZrMjCeYoopGgr1cjfgkRc4j\r\nuM2gctZ/iX+uFpR+kYO5/7szL/WvemVw6Rej4LcXPoCPGVoVKFg9IH6KXqx1\r\nnVc2Zp3JhqAiwjWIpuF4yyMNkM1NSldMIdpqRpboCjY5qUV0qEzopNTkMNnE\r\n+QalQQkN4QzLyyMrO3PKd5hQ+yFOBCBC1jUdOzfbrxGiWUZV9iaOf8r7JGvt\r\na/tKoLoku8Aq2mbYHXjO8kxwVgzWSe72Ofb3nri8IEd33+PsWILYyRrwvlH7\r\n+tggHruOTUUO1c688fGUE5FfP/GqwSk4XAgiQd25zVmBO8EG3crAcAWe8qXJ\r\nbNK96ymo7YftzdpMl2sLGCUyaMPX7CE+BJA=\r\n=NrYs\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"92c46fb195b8ffbda034d98761e2924195f8d656","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.3","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.13.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.15.1","highlight.js":"^11.7.0","mui-tel-input":"^3.1.0","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^4.0.0-alpha.3"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.4.3","@babel/cli":"^7.20.7","babel-jest":"^29.4.3","@babel/core":"^7.20.12","file-loader":"^6.2.0","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.4.3","@babel/plugin-transform-modules-commonjs":"^7.20.11"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.11.9","@mui/material":"^5.11.9","react-router-dom":"^6.8.1","@mui/icons-material":"^5.11.9"},"_npmOperationalInternal":{"tmp":"tmp/react_4.0.0-alpha.3_1676494636879_0.13811998835205008","host":"s3://npm-registry-packages"}},"4.0.0-alpha.4":{"name":"@laboratoria/react","version":"4.0.0-alpha.4","license":"MIT","_id":"@laboratoria/react@4.0.0-alpha.4","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"286735dc8a16621f27a20bb18034c601854aef23","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-4.0.0-alpha.4.tgz","fileCount":60,"integrity":"sha512-Eg11P7dQJzD6V493lpFFR3kBSOoB83bW+vq89x17Evjf1wnO1JzQt5jweb1pEG7gzW3LTAXhzG6JM/bw5rYx0w==","signatures":[{"sig":"MEYCIQDPVZrkTxmeh/U4YNiKd1CwDGnjT/+WtSq1jCPvrp1VegIhAPp3xdiwVgVrnPXLR3mSjNLt7yeE8P4xPJp4EvfLFn9O","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101670,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj7VQyACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqjzg//Wk4BsWg6ucUfUUSQGSWjZhcT7kutIQCijOEocJlyAHAgaS4g\r\nMBno45MTf6Uot6PMVm3JY+Sd7Xobx4de7bRG1BA+AI6z9EyO5Hmhtl1P+0xc\r\nMDz0Cpv3nia+BNtN5qFsX5EPxTw2Kj5+hGNdE2b8BjEM0SE9ZkL48Hs0SG5m\r\ncg9uYwbX6F5JC5o0P2ybnTerSXafk5xfaaadrPUrqAyUHp/NcCgaIS+mYpC8\r\nG2uvMZdVrelQeG/tqGVlo4e2ANaNSP2OAgia7w8LbFsHOkLrFbKReAGJjTDm\r\nvb73WMQKokO70ywhnalxS7qNEetU5DOBQnLhu9w8zyDULq9z1MHfG8t6drwd\r\n85034pupYvRpSCcj7Fu/QvvPy2SoTctFu0W/zislCYRjYP6Y3M7++mxFJJyX\r\nLks+O1AD5LdFKvvfuWjofpCTmwHpkzPX/HRRHQgNSm2T8SXM0R3LShWFxvtN\r\n/3jI1tWUhOOxiT2PvtNnki86EwvbJAOL2ELb2sp2F0QlFqLv2/guLXVDMcKo\r\nVA6TW+PBtlvXdoD+0m8n91KRHuQmFE8O7jcwDI8H+qybbwDfxfeLFYbbGIoy\r\n8Lp8iSLAPLqGX+4Xy0A2Jmy4YAgHVkCxBPoK462775LeQOUkcsPltBKzjyc6\r\nBbMfZl/oFuQcVwtdUfvybS9kkAajV3+i+DY=\r\n=T4yU\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"6cd93695e4f5957a7c748c55b6810e1c30c85fc9","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.3","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.13.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.15.1","highlight.js":"^11.7.0","mui-tel-input":"^3.1.0","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^4.0.0-alpha.3"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.4.3","@babel/cli":"^7.20.7","babel-jest":"^29.4.3","@babel/core":"^7.20.12","file-loader":"^6.2.0","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.4.3","@babel/plugin-transform-modules-commonjs":"^7.20.11"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.11.9","@mui/material":"^5.11.9","react-router-dom":"^6.8.1","@mui/icons-material":"^5.11.9"},"_npmOperationalInternal":{"tmp":"tmp/react_4.0.0-alpha.4_1676497970344_0.08600322759308954","host":"s3://npm-registry-packages"}},"4.0.0-beta.0":{"name":"@laboratoria/react","version":"4.0.0-beta.0","license":"MIT","_id":"@laboratoria/react@4.0.0-beta.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"d7dccbe3a355281060bf11f384db71a49651fc19","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-4.0.0-beta.0.tgz","fileCount":62,"integrity":"sha512-N1zYxTSezoShspnlV64GmYf9VHasmJZ1I9eG1MsZvCG/EzAPHPQuo7SXuqT69Is7+N+48tW5bAf8xdzPIKYZ6w==","signatures":[{"sig":"MEUCIQCVUSDSGSlSMrqj6VW+oPaNKoKD4vs4pCPQgsY6N5ylugIgd3NwCLNskm1Rn93BZ1Hwy3JWvL2LoQkq0bD8FCGyK64=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":104498,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj7/IKACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqkCQ/+M/8MwBpKRJHw1TfrU3mEuf/IihsZjcGytmIf/LbRI/1f3iNQ\r\nR7mYCTUzEB5F/4IIejDAi++zMLFcZoVQ5kiha048mEz1Fk9+C73Nh0pxur+7\r\ndBUw7ir67+NqdtJt2Ut+0rkJn1i07O4vI6LlC3+Wad3G5PkjMJMUbDujSIan\r\nLpqgcU4KbQpLSUQ4o7b4XIrDRWk4oAqCNFVURtJgOvJx5jngp6dyGV2nQQs/\r\nk+uzocs6C8w+ZlSxQy1q6fLFpILSVp5zpyVdNxCq7LK8wlxiXXKEnMy+fuOA\r\nfP/IgF86rujRcwyb9NAwqdNMFkYgxYnzWHfaTinYcDV7YGPNRy6qW86yPz6+\r\nGvHfT9J7XAgo6WzrJ2Axx7S6DsmYwLcD+E9LD0vj7m6MTJBZ+PuwAX1vDZiE\r\ntZ2NLFx4WcxaS3JdrX5q2WGj0UX6eNhEHdhKP87tZe+lkX9WymuUPhrSe/w0\r\nnvPEYCQLv9a0r3ji9tGTnkCci96FAqBoOUA4Eq0bzERTSXy/yVGExd+E5jk4\r\ntsn//rnvMzFBIRx5uRxTAkz5MP8wj+4PDmoaVLfeQAFo/C3IuFRBVKJRVPzw\r\n9Vu9H6kdwGYg8CjYZ0mTsXvEsLjvNFRCwGHgJpiBXMjeuLnk4vuGjxwJHvXz\r\nPJtjJ67QKw+ahWVh9Dqw9ST3UJIgSwIKU70=\r\n=chXH\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"8ff0687be61125b360070e8df854cf6810a25a5f","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.3","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.13.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.15.2","highlight.js":"^11.7.0","mui-tel-input":"^3.1.0","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^4.0.0-beta.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.4.3","@babel/cli":"^7.20.7","babel-jest":"^29.4.3","@babel/core":"^7.20.12","file-loader":"^6.2.0","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.4.3","@babel/plugin-transform-modules-commonjs":"^7.20.11"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.11.9","@mui/material":"^5.11.9","react-router-dom":"^6.8.1","@mui/icons-material":"^5.11.9"},"_npmOperationalInternal":{"tmp":"tmp/react_4.0.0-beta.0_1676669450089_0.43746331437092123","host":"s3://npm-registry-packages"}},"4.0.0-beta.1":{"name":"@laboratoria/react","version":"4.0.0-beta.1","license":"MIT","_id":"@laboratoria/react@4.0.0-beta.1","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"47a20762fce5447ac87de3c2c1f61f9a700c4347","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-4.0.0-beta.1.tgz","fileCount":62,"integrity":"sha512-OErst0ALSUlbZQ90G+TczaZFPFI7ZnkK8/q1Id7Lzn1in713Ex2ADqr/OihAC/TOSQAOt77lPABWu1ICgYZkAA==","signatures":[{"sig":"MEQCIHSZVU+vT/joPtOKaSIkjgPNE92Bqtd/5gqlRf11oSMaAiA6/iV5v9RUHH4sLqNn3L0swUhvRFX1Kti2rbya7+hifw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":104231,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj9MXsACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqIOhAAj8OifpVzRxuCGAgtV4WuEGBuq0ltpBBVdg0NUM2jzofT8K9O\r\nOxa3ReUFo9i8XCa++CpOOImyivonetDRG87vARXVcm5Vruj0ycdqRjINtd6G\r\nPBqe94IKakdnQtY+e8NWEippYcfnD1p8WXx/xjTRZaT7OU5CMSGABH4mXC+R\r\ne2JjkSm/nWHZFLSGJbnkKaxIVX0RY/WMMndgWOewQwHaA5xdTVmEOCX59Z8y\r\nfZsMVLpD+rG8ojYpmEzz+AuQuSuqATe93atWIXF34gw0TSR+QDtJoZ14Tlw1\r\nK/t5YLcdxlxj5fVTaCV/iMNLbwOaDV6kKJX6y3F58ml4Zw+720H89qKtXlpi\r\nylqD7ztFITiAsmAOGyCzfKF2gPe4IpdwI+/s1jZOfQoO4lpUnq7OzDPz16G/\r\numYRj0o0Tqfvvm3u/2CBkYSX5cMh7g/eoIUGqARaqj8D9l1Hz3fd1hcaO1oJ\r\n2Hoi/F7v72xtq4gxUScEbWZAdUQjeTp0E0p1l1MPxV70pzCzWCTvUHmVwpNX\r\n7jKho1nD98K2swpjX7qmeHAna1n4B8JIbiuHWTcPUdRsRQsqBEGH4HVyDzDf\r\nVEWSMpeZ2txDDCaXQAHMCy14lcUjrt3XfIW2o8O2T+GDxgL9dIjJVwKOBcHR\r\nJd8dyYbDcPiPYIWdQ3oSLNB8YFdxVEbUF4g=\r\n=P1GQ\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"3eecf8b701aefdd75b501e2de54ede713e6107c2","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.3","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.13.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.15.2","highlight.js":"^11.7.0","mui-tel-input":"^3.1.1","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^4.0.0-beta.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.4.3","@babel/cli":"^7.21.0","babel-jest":"^29.4.3","@babel/core":"^7.21.0","file-loader":"^6.2.0","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.4.3","@babel/plugin-transform-modules-commonjs":"^7.20.11"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.11.9","@mui/material":"^5.11.10","react-router-dom":"^6.8.1","@mui/icons-material":"^5.11.9"},"_npmOperationalInternal":{"tmp":"tmp/react_4.0.0-beta.1_1676985836693_0.9108395977145749","host":"s3://npm-registry-packages"}},"4.0.0-beta.2":{"name":"@laboratoria/react","version":"4.0.0-beta.2","license":"MIT","_id":"@laboratoria/react@4.0.0-beta.2","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"2783d884bbabe194eed488612682fff836374da3","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-4.0.0-beta.2.tgz","fileCount":62,"integrity":"sha512-+d0EZFAVPlZebN54w8RHkvbGM1VlqOSgbJjbxugBqBKFbWzXhE4jfznGt9S+BnkeTOtxB1UTpCBxJ+ABajKZ2g==","signatures":[{"sig":"MEYCIQDqCfYjV46lF0IryjMbOKWDWWxupBWQqNQcEXCxQeI4egIhAPyzDEivJD2az/DMSrGuSp/ozEx3PDZVaEYYiX+ljH/9","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":106233,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj/hDGACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrfDA//Xno+S7nfzqfDOb8jwS1vsCcRYPS3HT2Dj1esD6+XS0ta0l1V\r\nv7VPz2ZQWWwVE/4E6cXfxSQusyh9y/4CPIRCXc5gCrvmmMSme6asRoIlctrj\r\n/Sd3Y2zc0Kp5/OMWTGiHWcDo2PlF+f6H1ADtAvyZDiVXlWHnlN7N7293m55k\r\nRxw5oaUD2qmfyJ/O5w4ShBVf392ZoF46pzV+sY2L1ycwdGz9Etnk3whBGaMS\r\nM9iIOf4KthkNcFKIae3FSk2byBaLWdqe7CNkSZN54n89b6sJjJl23Wd2RMdD\r\nT08O3h+9Fxfq1F00nB+7+tsyts31rbFw8DyicRwO3f3Ehmizmd5l4HYVYoys\r\n4DGY+7weiDrpcBbaOXLgYpSfNXyzbWgzIZGntoGP/APsD67h8yX1ipD7pAAC\r\n4xBpaRFucUJU7TLByNiQagTIZfcYuzK3w/hnSpVKOYFiLg5VN7T36tZpnEsr\r\nLcJEwP1dB855hcONuCeEZaTF6cBm1KM4X4BiT1c82vHD0kafY18gy9wV0H09\r\nksJUmjDEhPCq0iWZ8/aj1Sc8CWb3j9cnuFZcSr9BjCh1JFlJS/apWMgBwhkC\r\n8upT7ut7+L84TAFOYrSbxCLXLA8jqTh63gfNJ9y7R8w9o58HWxFYcfBBUoeD\r\nsNwuAwMFWiOZqTrG4zRlPaJIk1zaDbl6RKQ=\r\n=UJXy\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"7c194d30266fff062b9cdef11b311961c6eeb0e8","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.3","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.13.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.15.2","highlight.js":"^11.7.0","mui-tel-input":"^3.1.1","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^4.0.0-beta.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.4.3","@babel/cli":"^7.21.0","babel-jest":"^29.4.3","@babel/core":"^7.21.0","file-loader":"^6.2.0","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.4.3","@babel/plugin-transform-modules-commonjs":"^7.21.2"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.11.11","@mui/material":"^5.11.11","react-router-dom":"^6.8.2","@mui/icons-material":"^5.11.11"},"_npmOperationalInternal":{"tmp":"tmp/react_4.0.0-beta.2_1677594822082_0.1911285785690704","host":"s3://npm-registry-packages"}},"4.0.0-beta.3":{"name":"@laboratoria/react","version":"4.0.0-beta.3","license":"MIT","_id":"@laboratoria/react@4.0.0-beta.3","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"a2fa5957ed6e01b2514d1619124be3bd3bb56631","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-4.0.0-beta.3.tgz","fileCount":62,"integrity":"sha512-vC5g0FSiWZQPHOEO36b2qbikJfJ+JST+JjeQHyY89+Zh2fYSvcWYs19XVJ8RVl+qPFzuNyIvC9uuJG37TXKusA==","signatures":[{"sig":"MEUCIATeM2H+/6lF2w9R3PNTWTsJRPd6unECLQo+a1lM/ddgAiEApyUGeQVhO4Mhkgf3cI/iqgHq9vg66rS2sY5eQMRTPV0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107928,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj/hGEACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqHzg//QOpyjzQoDZlcEXc+L/BihrenizYUhgEzdRpf3121BOd0oaj8\r\nNe+JtxZ5lnUV+Z+ctfM9kkz/C7BuP1ExippV2hDmNOhkBvTFqXIU/sRO+QrY\r\neoS7dW5pKI0tePzy/gy0N//lQpoBYIZRp/BZud3MsFPMOh9UZUhuErHIjsVF\r\nEQpdZr7+pVcm4ib9BaDrcD4cps7BPOF25aodEetWyNPjGrTsFWyqWtjfSlil\r\nGWsWMxYf6K+dFProB23E4IDzOGmhLW5Atrn8cYC1N6y5c0eyu5PxN2toY0MZ\r\n9TDXcXaagd8tE+MHf6PVCY2cmwMayOba2GKzOw6d8pwegYYKKgudxkeSIf6J\r\nX9xUddEO73C6ZADCXoWn9Kg/QGMfZlHuce8APCCpaqvj1LR+npedJQ6yRsuW\r\noRkegMSg11tFzsNZoD1SpfhqDVcoxt5vwMZM+eWVHLz3iOkng7DBD/5A8E1O\r\nQOFNRzVzKjZfz5aZ58VR91AjfPQTTkOX7j7OWFtuffEYApwc4sy/5ni3Jvie\r\nEqH3uJnN/hKCeSqPBMPlxCR5ZxSmNLO+PoGp+eKBkT8L0QCpasYbE6wtmRkH\r\nUdduhWY6S5b3li0IZMP1B9aweP+fQL9PY5VMCTrnq9p51vQixi6dxCyG5kIH\r\n0x0UsEDAPhBkWdCipW7/pO7QLXHSNfceglg=\r\n=WBpZ\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"f6f4ec8fda97fcb9a1218d16c816c47f61d555ed","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.3","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.13.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.15.2","highlight.js":"^11.7.0","mui-tel-input":"^3.1.1","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^4.0.0-beta.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.4.3","@babel/cli":"^7.21.0","babel-jest":"^29.4.3","@babel/core":"^7.21.0","file-loader":"^6.2.0","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.4.3","@babel/plugin-transform-modules-commonjs":"^7.21.2"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.11.11","@mui/material":"^5.11.11","react-router-dom":"^6.8.2","@mui/icons-material":"^5.11.11"},"_npmOperationalInternal":{"tmp":"tmp/react_4.0.0-beta.3_1677595011930_0.5432448280823909","host":"s3://npm-registry-packages"}},"4.0.0-beta.4":{"name":"@laboratoria/react","version":"4.0.0-beta.4","license":"MIT","_id":"@laboratoria/react@4.0.0-beta.4","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"8589df452b16b6bd63505c1c71af7956648efb5e","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-4.0.0-beta.4.tgz","fileCount":64,"integrity":"sha512-Ur8ZCI0FHSc+GTMemh/PozNLMvshmjDwC/xKRR/01hJ/Pvx39NQy6h0Qtt1MZO7P76IXK8DeveM48dLIQPJyYA==","signatures":[{"sig":"MEYCIQDmXdp2Sy3X4f+8/W7+GYc4JOwActYWNB5VSqQwQQLOwQIhAMfIJ9QtjuiYzPVu3f/VKYd+S+avH2+G8oF6hm5oCfl2","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109304,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkAAb3ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpacRAAoWi/gSTYSIOy0TzQCvhFnUr9Ed2g6b7B/B/KEAUGru8J2467\r\n9KpMonI5pfyXmQVORUi3YygqOcqrz0tSwhiIj3ADiJ2LdhHdxVic6zli3SJ5\r\nBY6PKhrGehwjrUit0TJbreMenMpyUY9dpLGWipzuMYPBsX3x176Rw4wsdibK\r\nbCxJShLDIUk6+awsHwEMX4i28OkfQmutsQaqbWpXpPuH7qvtrCMdSn35vjHK\r\nVKGSlm2/JY6sign6nAS2G6AOqbC6rQzwF42ynAmKsFKXGaCopgsfQrkvxYrr\r\nAfubzTS9z6QNR0GtFz4QTUMP7Fk0UzsCz8xLVRXYH0UvgtdszcHJOCIwGKuZ\r\nEkqQ7yJLMP3wljr+edcl9xjcSq+8D3Hv494lLEN0Ltj3Ex8f/8BqWHQIcDzu\r\n+WJeyTxUNiLlVAYYC0HVl3jQAy0jYVNMM9aODBZ2/Q/rnZd7QXBPh9iVQBuG\r\nUInDkuMenIMdyEEtYCrF5363gkooL8S1oBsa1RUm6THlipIgLGasT1eP1Zg5\r\nejSgQFKTC843vpDKzp2cuck7bm+np0bYCvpQwqOk18T1Z1a2U1Vab45MhZ1j\r\n99crOinwoCNOmn3/L+KQul8BkXEqFTq+imjohqbwAyL21/0ldSo92EOwTWvb\r\n7I4DzZroODHiAmJjbiId9/i+oeyPw2zya8I=\r\n=aotb\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"45c020e6ed22c4704ec5c73b439f978a9446f3f4","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.3","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.13.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.15.2","highlight.js":"^11.7.0","mui-tel-input":"^3.1.1","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^4.0.0-beta.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.4.3","@babel/cli":"^7.21.0","babel-jest":"^29.4.3","@babel/core":"^7.21.0","file-loader":"^6.2.0","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.4.3","@babel/plugin-transform-modules-commonjs":"^7.21.2"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.11.11","@mui/material":"^5.11.11","react-router-dom":"^6.8.2","@mui/icons-material":"^5.11.11"},"_npmOperationalInternal":{"tmp":"tmp/react_4.0.0-beta.4_1677723383375_0.8996557271500027","host":"s3://npm-registry-packages"}},"4.0.0-beta.5":{"name":"@laboratoria/react","version":"4.0.0-beta.5","license":"MIT","_id":"@laboratoria/react@4.0.0-beta.5","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"184a9b8947ef5215450ed90329eb1f6fa2954996","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-4.0.0-beta.5.tgz","fileCount":64,"integrity":"sha512-sgJ0T1sLQ6Vx/Fy8mZBEzar1hgq6tlw753V8xyr/6tnZBKWmFY/8/HV/km5+QnVScFqUtIgtcRcXG8QSakr5kw==","signatures":[{"sig":"MEQCIH9HjR8J0yncljpIJV9yKaijqAtznszP2zY7ugDBNbreAiAEI3zugAYWa4daLPIJduyNdUNvKfKRUKf+YaCCcOoDfQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110665,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkBlqZACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpTzA//eGXB+5u9KJIdWH9C6MOg/VOagzukITbnG6j/puZVVnz8JnUH\r\nNPkIP2WWQDAMZvl5UdsEvAG9Fa25pPj5jlgzOI3y28w/8J5f3erkoWtrLy/g\r\nr270muiFFdA+TVi26EmBGnB8q8byfAMonydlUX+2kmsbG7SXh+VKEDvEEraZ\r\nu5KLBVsteuGIMLOslw5+vXgqgphuDIT1mw/ViCGbiHLB7/CNqGD+28vYkF60\r\nLuxrJ808U7DxdKQ0++hjXc/+LLlmAW96AErV6zIb6icp/q94T7GzOhRXI+kL\r\n3I68gMIYUIdhmbRmcjUjIB41jMMuqNE2UU+He6UhGPGAftCRK1liwuOZZ+SW\r\nXDkKmWF/kDybN19O1O2/34/+VvgxHQQbAopIYk5sbBkGx6yqAqKs6MBCH/J0\r\nWYBt7M2qgSsR4m5Ex70jnQgvdrRkK1X6pdnUtr1E7WphIe59NjXqXH5JyoEa\r\nEpn3uQaVKSzkQ8Tez88NV9Su9ec8R2K1hOPKImoZ0g04MwX9whviFjIL3nM9\r\nghJZe6W3oPBZgJ2XSGXnqIC64urB3NCx7ic+1Lg1JcruUFjZVTFFty30ShKv\r\nlSpBJhklZJd0OOO8qJbjquqc89Mobd6/oG9wr6P0nBF0a5TjwA6SU0371zdl\r\nwm33kwg6hQrcfvtvEH/FOcJTJ4blVIBij78=\r\n=nquY\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"567f82d14a2bf6793f5c18f49137e31561515800","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.3","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.13.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.15.2","highlight.js":"^11.7.0","mui-tel-input":"^3.1.1","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^4.0.0-beta.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.4.3","@babel/cli":"^7.21.0","babel-jest":"^29.4.3","@babel/core":"^7.21.0","file-loader":"^6.2.0","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.4.3","@babel/plugin-transform-modules-commonjs":"^7.21.2"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.11.11","@mui/material":"^5.11.11","react-router-dom":"^6.8.2","@mui/icons-material":"^5.11.11"},"_npmOperationalInternal":{"tmp":"tmp/react_4.0.0-beta.5_1678138009703_0.26470527675599254","host":"s3://npm-registry-packages"}},"4.0.0-beta.6":{"name":"@laboratoria/react","version":"4.0.0-beta.6","license":"MIT","_id":"@laboratoria/react@4.0.0-beta.6","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"eed87bef11dde83de74fb809445da12d74c7d47d","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-4.0.0-beta.6.tgz","fileCount":64,"integrity":"sha512-jnoy9YApBKohXa2YxzZR55eGzEmlKzfLbNK3T4vQv7fOrS7lqAZ47XGrjD9vH3k62TDUqxMB2ikPR3HlHFYSXw==","signatures":[{"sig":"MEYCIQCCtrC1FaVPpoS/v/cX465wENSzEjup/yut/HrPJDqEMQIhAPZ73m+3jYAzjt0XzEdB1oAsou39XbDX0o2MTDZaWJyq","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112005,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkBlrFACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpShA//TjkdCiJ75CiNAe02Rh6UzckRuAM+vdhYjd2c1lLLTo5H6tRo\r\ny1TvuaFtP6iFy5a9b2gtn+StKLr+xzHQePXqT27wlDDmaoQzCfVGv1YZzApk\r\nxgSRrpHD/SbKUMCb7XD47Q3FiMPqKa93IyZe6eZpSk49WEv7Jx9Qbd2wNxV3\r\n3iaD0RrHXrWG7mmDpeAUAHqAU2WdBfM40Ob5Cl87nLAt57mOltjzLInlHbrC\r\njoFnpC0nOTITKLct4Dv7M9le5kX/pe9q7BoRj5PP+3wijMdYOfaDj1s0xvfe\r\n7ji/+xCi79QiYN6jg+ihORQtj/psOjD7YMxTF9dbon5mH2amXNc0eZyFRU0+\r\nB06sEcl2zFUEsGZHzbmRWw8yBEI7G2sN3z295NL0HILrqhRV6EQ9YAMXaZRK\r\nLaeWdaw6dI+aBma0ePTLZh1/ukb6gVCpYgVvRxTfUNHd4oyrhPj5iVIilkxJ\r\nKub7NY4rziC3+7vaQXgdm8kYUv/wtn1cAgs0ggXkJpT12OM306LzgovK0TFb\r\nRXcYOoZ2yvZwfLU+kLaEp2pFROB93xKankoQ1vqmMRPyfIp2UeQIXw3PLF9J\r\nG9dyymUbz/2B2zNDwwP8X+tn3ouHSpvONQa8z+cv2J0dVnK0KIQEYnxRtBFG\r\nTXPQZ4kCUL9HeoLAb1EYEcRq5uiQLA6fWQM=\r\n=Vcet\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"ed4cc1a40c2a2667fa188ea409b6bbf56ba410a9","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.3","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.13.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.15.2","highlight.js":"^11.7.0","mui-tel-input":"^3.1.1","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^4.0.0-beta.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.4.3","@babel/cli":"^7.21.0","babel-jest":"^29.4.3","@babel/core":"^7.21.0","file-loader":"^6.2.0","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.4.3","@babel/plugin-transform-modules-commonjs":"^7.21.2"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.11.11","@mui/material":"^5.11.11","react-router-dom":"^6.8.2","@mui/icons-material":"^5.11.11"},"_npmOperationalInternal":{"tmp":"tmp/react_4.0.0-beta.6_1678138052872_0.7523811169202801","host":"s3://npm-registry-packages"}},"4.0.0-beta.7":{"name":"@laboratoria/react","version":"4.0.0-beta.7","license":"MIT","_id":"@laboratoria/react@4.0.0-beta.7","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"6b8db0edc926356939a6c10cdc23d427dabc02de","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-4.0.0-beta.7.tgz","fileCount":64,"integrity":"sha512-Ro4HBjFuoWtXU2dQFwk+G6d4b3Ei3ot0N2UAV64TAp1dc+zofjgMyty2UyIwotx0dZBnRKFKbkX4plUHVbOc6Q==","signatures":[{"sig":"MEQCID5lVPDsgmQDgkDmcbUXJXlcmBIpuudP5FzKBb231Yo8AiBwWU0XU91e9J78wTULMJJBzbQqhgx4oNU+b6vnbNx5Cw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkBvywACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpfvw/8DNK7thRzrmLND7q+0Lx/Bz97Gh/OsJyT+ZM/j7lznWbXWTZ+\r\njCSAxd6tbv1OL++fsaS3alcXI4U9aZDoza5X4oDX1XfMAZAg6wBYxctv4j60\r\ngOT5Q/Bi1WRbE1u/CLhVKDdD54ORpML3neHjx1tEfEmEiUD1yo1Cd0kZsIAb\r\nZqSszHTgqbsWWBhmYm3UF+M4Gwfs3eaPeNrGi2Z1ft3jtWb1WqMJjnSzyMcA\r\n4YpK3rJiQRXJTLmjber7DOctaOnm877UK33vCqzQR3gc+q+WtG40b+UYUvYy\r\nsDL41fVNUW59MYYwDsYGGvyZ0xKGIK3P/RhxrfPcqINeNNyWRkRXJrCnk5eZ\r\nBEEQpusZQCZ3QfQ8bvGwo8qlUNWJL4+ELVB7cvtnA4YRCJL49B2L4PboO4F9\r\nJyFcnrxGCdbVBkg14Wklc8ijfqAObAB933YbqFohNY1qFFDnAOy8WEYpNpkv\r\nfgR1/V2vybtXy68SPsoqUTgQBnjt6pV+yc/EB87SPeOi8WCLibCyRoAPhH/y\r\n4UY7xPUrLtSeqTcz8p6txigrJDBbPheplKgdkhQbz89V6yjDvy3loUilk0KK\r\nhexQDcXt0fR0K+PY8ADaDgBVOvwDi1W/ne1NDhFwop9yUFA6ZqCXdcAI1+Xp\r\nIyMUfvGKloWiLOQFdGuUzphxa0EYL+Rw5qc=\r\n=C0z9\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"8f481a083867115d4d20dc3f8e8c3b9ac53cf3f7","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.3","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.13.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.15.3","highlight.js":"^11.7.0","mui-tel-input":"^3.1.1","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^4.0.0-beta.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.5.0","@babel/cli":"^7.21.0","babel-jest":"^29.5.0","@babel/core":"^7.21.0","file-loader":"^6.2.0","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.5.0","@babel/plugin-transform-modules-commonjs":"^7.21.2"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.11.12","@mui/material":"^5.11.12","react-router-dom":"^6.8.2","@mui/icons-material":"^5.11.11"},"_npmOperationalInternal":{"tmp":"tmp/react_4.0.0-beta.7_1678179504228_0.15019338913856162","host":"s3://npm-registry-packages"}},"4.0.0-beta.8":{"name":"@laboratoria/react","version":"4.0.0-beta.8","license":"MIT","_id":"@laboratoria/react@4.0.0-beta.8","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"35162e4dd752589919aa607c7d85c521f859fe99","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-4.0.0-beta.8.tgz","fileCount":64,"integrity":"sha512-3LjOp3NwnRwNOAw3TYOOo96J5dt8g2KPHwLBr2ivbhQwByDtL5qn5d+t2GE5EeF6y1jfeBo4LJ3aphXDr3dxgg==","signatures":[{"sig":"MEUCIQCqUrn8LBhSkBJn+DllitytbN6aHepmiEOUFhtb/fH5TgIgP9NT/19IrNmESb+XliAXCi2Vch7QSMNjbc9NnQw97TQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112479,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkBxChACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrUhA/+LnpjD72zW0m7R56A7/tXelD8TT171KVe8fIrHytm8Gf+WOsf\r\n3S4LFPwFffZ9ObUfwnBd2ezu8niciFxA+Y4OWeC7z6HTOHHXm9yBwKuF4EBu\r\nneNu+uCjmmDMeCQ8BSWi7uArx+qZUBCso2eAUdEnHm1RknZw9ZNhTfvTEPH7\r\n2Br+UZa+6X4kB0tEcVZgZBPgVg7g8H8vXI0lRaj6x9oYBvVfB4PnzAaxkDiw\r\nzzTRS9d58LZsPL4xLXc19uszrLW4M5y/Q8X4oiVuRczUIxBtoQ7vzLHurdL8\r\ntNDhiYqF5lCXFCHEPmZ8Nk1mV0vzPOyFHIDR/VhP5TBV/rp7TtSn4pKdpFsv\r\nLFFeDm/t/OR+7039d99sJkDqJ6tL7daafftX2gBy5rT/iru/ONAgIwhBqX+8\r\naTv4cpS9SGcDJMJFf2WKBKjDOjN/2eNmGVfA9+7JTGKr8EIAH3hhqYxejCCy\r\nP2YkhksYsXbSpM/gbYUWq5WZtm7VvvEVutcSGFxge3O9xKnOSebwCVT+fS4s\r\n6Sm5motjbpuoPIH+aMRynMTXUQ/Tax84TBBiohVgQAV5FnC4bgHMeUXc93Bt\r\nuqbWfGBKj4YSlEToOlrMJQCjxcvqW3KxTKDp50Y3vD9Bcq1JRC4t8EM4ElYl\r\nSGeklPd6lKNhcj+VXTEHwZjZsO+TNyZxUOs=\r\n=gNYj\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"97498cdead12576a0fd13a20f6e897f8e25e8797","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.3","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.13.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.15.3","highlight.js":"^11.7.0","mui-tel-input":"^3.1.1","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^4.0.0-beta.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.5.0","@babel/cli":"^7.21.0","babel-jest":"^29.5.0","@babel/core":"^7.21.0","file-loader":"^6.2.0","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.5.0","@babel/plugin-transform-modules-commonjs":"^7.21.2"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.11.12","@mui/material":"^5.11.12","react-router-dom":"^6.8.2","@mui/icons-material":"^5.11.11"},"_npmOperationalInternal":{"tmp":"tmp/react_4.0.0-beta.8_1678184609550_0.10867872710132565","host":"s3://npm-registry-packages"}},"4.0.0-beta.9":{"name":"@laboratoria/react","version":"4.0.0-beta.9","license":"MIT","_id":"@laboratoria/react@4.0.0-beta.9","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"2b9cb3a91c11ec5a8339605a605dce924db994cc","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-4.0.0-beta.9.tgz","fileCount":64,"integrity":"sha512-IqdD+3B38Wt08nhDz6OrdT8mL+DzyQoPOj1sJmRcJljZtkAmoin4nrG9JOmaTsLPjiy+Y0ZSTkKJgk4gP4OX8A==","signatures":[{"sig":"MEUCIQC9Yx42gabtie0xtSZVT9BF+JKZg09ULiY6wpdWrAREAwIgGAf8DwwvOmqmv/Dpui7YFhrHFX5o5j8LjtOxT7xM4Uk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112479,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkBylIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqbsA/7BzJrTCaWzlNZXlaG4ilKMJNAorc/FBH67K72UKOF53PkIobK\r\nL1Ax5WitMP+A+kgAzP3Thp1GUaF9l3zzGevqWuOv0HgdUumy24xCXQOuMqA9\r\nL7NDkGgtnSRizW24AbsT+ox6ZvD/g2ul7hMlemM4I5/eIl3nUyNEs9QKZ+mB\r\n/5N0feVylCQEzjVCBsvT3xDp5xVtdUXx1KUVP8EbPGh0Ekl8f6Goa16SnWpt\r\nAuRVpobC8wx8do7j8E0pHgJpAHxp0Uf51E00hcDlZVgUnZiQv/nFeoVllIP+\r\ny9g14L158NZPdZmAlsjAsRuSOe9u6o/LM27OHSRjOH6LjFTLQKQ8NxHXt5ts\r\nnJTeNxE3iLsoh3j8CxV+nL4tnL77Nroj/DMwgntbvggen5W5zegICKO1bCyI\r\nWdIzvQbzg1Te9cGhO6Jqfr93UJGEJEI4QpADlN5aas2Mu6SNBs1XTZO+TD1O\r\nDV5Kmx3oOdjSm0lacQHWPlVxyHLqh/4+6rkbSwneVDtvlO3Gg2V/+PI/fD7y\r\npO8JPABTpyJip1v/8R1yG+WhXsxE+6oWcTc4zMQMufRRJGRBqEwgWO2ZqWKn\r\nEfnhyBBxrCLWVbtcVaA+Indnki5EwtFmF5ZtdEyLRFlI7ld7zoHENg4GF2ED\r\nAubt929Qc/4gqlkvWZo6lx6OqwIxc0chbvs=\r\n=+6RX\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"b687243d59cd7922500d23d149ec25bd4981daf6","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.3","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.13.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.15.3","highlight.js":"^11.7.0","mui-tel-input":"^3.1.1","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^4.0.0-beta.3"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.5.0","@babel/cli":"^7.21.0","babel-jest":"^29.5.0","@babel/core":"^7.21.0","file-loader":"^6.2.0","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.5.0","@babel/plugin-transform-modules-commonjs":"^7.21.2"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.11.12","@mui/material":"^5.11.12","react-router-dom":"^6.8.2","@mui/icons-material":"^5.11.11"},"_npmOperationalInternal":{"tmp":"tmp/react_4.0.0-beta.9_1678190920491_0.22451369173802171","host":"s3://npm-registry-packages"}},"4.0.0-beta.10":{"name":"@laboratoria/react","version":"4.0.0-beta.10","license":"MIT","_id":"@laboratoria/react@4.0.0-beta.10","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"def8a2ccd86969591d3dced5ed47716319456956","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-4.0.0-beta.10.tgz","fileCount":64,"integrity":"sha512-as0FJW/7hnvn9VsLKGuVPXR8m29RXFKw6f2wEFyWFllXqQ86M4h6hrb0V6QgU+BfBKeEKNLAdGhZEp83elLNdw==","signatures":[{"sig":"MEYCIQDkemeHZuKLWj1BO1mjMxSZx0aA6SFcAI+OLGjRhhBpawIhAMBLMghr2OM53uPjB7Zs8lugey0Ud4AxpPaXv4s9IsMo","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115460,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkB2zXACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr3HQ/+MxrfayTHrxmlmXMM5kBbOaszS2pGqbKRJR+v21YXhhlwQYST\r\nChieu05t1t6FIPD0h+sAl8GH9nVNtyrhvIMSkgto3zwmnnJ80UQGrcbqsZNc\r\nKL8WmavDKg2ChwVFwxADxk0BHgopbqAEpzTXewArWJFTm46x8UiY5C/TEGEW\r\njulHL523dpUKHhFbTeunv5KPvwDnZVfzvzZNxP5TsmKN1BXg/sjtw9SYct4w\r\nTpBg8mFUgSfmfdwXDIY7KsnfULQ4y1oAeY393zsTli7MwKSLBNXeBsUrjPW9\r\nL0a6yGXyz2oC3RwUajKFpJzfqFkILKw+QUMSAzfJX00LCsEBpkN6PmU/QcBg\r\ndgJgZ9Syjf3dxlwzK6+fJEP9B9vWEk+R5Q/1mrvmkWrKeHAU1ECHdbTKbKIG\r\n8zJ8PF1Mm+9NsyMC0Ft7yIbsFqvT5OvHudSwaRM4UBOrygKaGES4ergQ8rzQ\r\naOap+2jZqoWZpvB/O+TcRxNcMaUBeAeOFImW0b+ClkQoGBBYzAd6fjvJlg1L\r\nzxGjvzNj0g/ADcwWz95kpOsv50Rm7wImbXIZpJq+6Nm30pLykWueSq5QBqVC\r\nrDihOc9UDLAl/4NYLmVaAbpo2xrEBh4SeoyBe9BLeFQcLIDC2BWlHUY+me6i\r\n2ug/hDNs8asrGDIsNYDhDdJ7nR3nho7m1cA=\r\n=d44n\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"06dbf9f835cbc0b1dd30f6d6a9995085bf97dbfb","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.3","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.13.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.15.3","highlight.js":"^11.7.0","mui-tel-input":"^3.1.1","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^4.0.0-beta.3"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.5.0","@babel/cli":"^7.21.0","babel-jest":"^29.5.0","@babel/core":"^7.21.0","file-loader":"^6.2.0","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.5.0","@babel/plugin-transform-modules-commonjs":"^7.21.2"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.11.12","@mui/material":"^5.11.12","react-router-dom":"^6.8.2","@mui/icons-material":"^5.11.11"},"_npmOperationalInternal":{"tmp":"tmp/react_4.0.0-beta.10_1678208214868_0.47376835616785384","host":"s3://npm-registry-packages"}},"4.0.0":{"name":"@laboratoria/react","version":"4.0.0","license":"MIT","_id":"@laboratoria/react@4.0.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"68fc8df2b1740c38773b66081432da56668d3eb6","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-4.0.0.tgz","fileCount":64,"integrity":"sha512-NrywMzgC8DYTznbELbfccRJgFntWaTUXgvjZBCDBbwbf7rTGTvTD2RoMungZRrJ3WQiRLDOratlLwXanpoVm/Q==","signatures":[{"sig":"MEUCIASApHAKEWa+dGAY39NQn1rfakO/aHnz4zSuYsZgvxL8AiEAmOJ2hwlbSBkk8lHU//Pfg59Ord8AzOPx1iqs/5UKVsU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115445,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkB4LRACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpaQA/+NvJSaemDlw/dJHKKwahQFE7EYEQlFXtj1JTkNbuw9yNUBXGp\r\n3d0Utk8+UvcLUBQvgTjYNFkSqUgI9Aw4GJ2dzuiLTDTY4bZGDGCd0ccMG7l9\r\njBm/oCfZiJaHIBk2d/6vuOniIkwGGAF1VWKK6iZ1iSzDLP8mS/HMYjGXtPRa\r\n4ii1YDlA7JiVhOXn23CtJ1SPo3zwAy+pX2xxEXQ0QxA4DNOEg/G6uO0MItvT\r\ni6p4E712oq/VokXkRXK9hwI926/7YH3ChSNx4TJeEYQmN10/XNc1jfGe3SNN\r\nuykOynvIe3rHk2bUmOCpmCsZWyAaydEh3bBioYgTBk/H4c0YXo6FmmRTi0Yh\r\nnUKFe84YzL8M7zvFP1QVqEJ+HKQJ0bIEdQrXlM2Fon1453mzffOdK1IHHfJg\r\nux1C5MYqPA7FX244OcFm3+AUXWNug2AUJV3XlEGMzNRO6ERYAVXgO0oV4Qui\r\nGRLAJUOFCPRguSSfhLyvIh2n/f/1Dxi9Ii716nML8XW6dLxA7VaLIfp/xOvr\r\nacr6LVM48A7esqvqWK5LadmeG+0Px7C8KjAaOYV4benF6nfzXeZCxLpS/DC+\r\nbtrbAcg5eSjqaK+sCLqYo2msjEpCGqVXNfUvRqYpZXrEe84RZCZEaV1XHpTQ\r\ncv728zjEszOcMBTKIBXeDX3ceJBOESOdzyQ=\r\n=bRia\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"1faa213ea07fb3546e22795dc4030b882fd90ddd","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"8.19.3","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.13.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.15.3","highlight.js":"^11.7.0","mui-tel-input":"^3.1.1","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^4.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","@babel/cli":"^7.21.0","babel-jest":"^29.5.0","@babel/core":"^7.21.0","file-loader":"^6.2.0","@babel/preset-env":"^7.20.2","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.5.0","@babel/plugin-transform-modules-commonjs":"^7.21.2"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.11.12","@mui/material":"^5.11.12","react-router-dom":"^6.8.2","@mui/icons-material":"^5.11.11"},"_npmOperationalInternal":{"tmp":"tmp/react_4.0.0_1678213841545_0.061869524701815504","host":"s3://npm-registry-packages"}},"5.0.0-beta.0":{"name":"@laboratoria/react","version":"5.0.0-beta.0","license":"MIT","_id":"@laboratoria/react@5.0.0-beta.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"bc272749f9ef5ce18db5d473692003d164c2e07f","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-5.0.0-beta.0.tgz","fileCount":68,"integrity":"sha512-KnCeghuyxpWhrPyhEHRhiGhNeCNtSwrv+Tqxx9i2vKNVV+S2w08/KmbPOasUN+6660pLd6wTh4U98zsbgPfkLg==","signatures":[{"sig":"MEYCIQCVunshC3M8n7FFBHZsnIqiHg4Vw/c7zPARBaBJ4y3SDwIhALg2C5d0ETrcKOKUKz7GFqHQW5O/HISnj1eM/m8+ejAt","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120166,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkSTdCACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoXJA//ekaCUqZxxWoN7Ps0/O2aNvBAO5uDnhSkoFp6/2f77R9Sh3Vh\r\nle6YnR/Wt4wj3fFqzATx5RoovyUGTq0VDa06UcM2J9FHZtV6glykpLl5rNxr\r\nWyp+KtVkL0R5WTtJX04u1/9jSLVnXkVeSR63iz7WPWGouG5sZKhsUgW+rBIW\r\nZ5KIPPejjqGGv+3dOogAWL5R2f88odbzW9wBlqtCvviYlJzHgh3h699rVjem\r\nkeSX+MmIy8K5sEH/kFvGHlT1cDZq7J3vmIGx/vc3ujvVo52zlMog3miedkTW\r\nsiFyawNy6GXRnahuM6IFHbMTlJ4/X8o8jOosX0nT1hDJyxO/MtBclyiUf0Qm\r\nqVUWC3EGJslS7GzU1cuJptZbR6WghVB7lFWkm6lxB84ZTvXZdtF57AJwpu66\r\nzFoUHzZPmjhiy/3rZ9wDt4RxacddgDxNzOJqZD89Vbo38el4RvmTzYKUCVRs\r\n5Lf2p3EpkT3+q4r4UrGZeouS9X2bD4A2l0sEt43z04J3+BT2Wuv1gVNCIalP\r\ndvBXWmVzWka2V46bCaTls9YOz4EHXXR1aB1+kYK1Q4jW5LSNysFT2o+RGIOO\r\n2CPkWPJf50CjQPNa978DuBRN8OSmU/GuYfb4Q1L7HUA5gH2cTc+EUilr41DX\r\nTu4ZkDbx93Dbqs83HO4C0Ef6q7Pu2KNTucU=\r\n=Mi9w\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"b2d7b08172656756abe97015ab39665c4e563d13","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.18.0","highlight.js":"^11.7.0","mui-tel-input":"^3.1.3","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^4.1.0-beta.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.5.0","@babel/cli":"^7.21.0","babel-jest":"^29.5.0","@babel/core":"^7.21.4","file-loader":"^6.2.0","@babel/preset-env":"^7.21.4","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.5.0","@babel/plugin-transform-modules-commonjs":"^7.21.2"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.12.0","@mui/material":"^5.12.2","react-router-dom":"^6.10.0","@mui/icons-material":"^5.11.16"},"_npmOperationalInternal":{"tmp":"tmp/react_5.0.0-beta.0_1682519874684_0.009851043147780958","host":"s3://npm-registry-packages"}},"5.0.0-beta.1":{"name":"@laboratoria/react","version":"5.0.0-beta.1","license":"MIT","_id":"@laboratoria/react@5.0.0-beta.1","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"eb93fd7e0558a1d3bc085a25d3ae5ae255d5ca49","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-5.0.0-beta.1.tgz","fileCount":68,"integrity":"sha512-pOcQgAHj7a4542S4vAGJ0OkI9LowOnaC/aQpgn5Xlu47EgSSoffSvSbN69S0rMbSyg6va4d2BATUbtDc7A0ZsA==","signatures":[{"sig":"MEQCIDq4Ap2hVM9lsGiZ36m8A0KWgsE53h6i8kJnL3zGscitAiApES3XPi2+Z80vPrDOneKVtfG/2JuuoG4LFA5npHqnCg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120052,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkSTmiACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo+LBAAnyd5pyy2KrVLAw4s+O5XjmGRRzsY8T/U5gotgdyJ0SXEIpS+\r\nAyuKN9lCqNsbIVEGYF/PVAxCX3IN4xAxlVOtwJr6gsfFkYujEUWWvyMIgosI\r\nZm1ce72qMSFG/DSt7y5DQqQ1p09jkroTTdqELS47htI24prGHWXip5FlSkmM\r\nOPYFVZE2WE2Sin1Ko3Zqf32Ie8lsoTNbwjOxSYQQdyM6MVrmXdjdsfsnoGKO\r\nqEz0goMeoxZWCQZYrGSBFBXDhxOq51ZvUQj6+juG07aBa0gYVVzX7L+KDYxf\r\nJCU6WYwf7j6mV/vCyyA4sGZBEvGFrq5atTZlPNCbgV6VB6z4i5y/Vd+7BpWx\r\nIFdU+bgsLH4Pse9YZGn41XPTPIuyrfarjGZ0hzJxDn8FsELDtzri2WjAw8BS\r\nHwT9gm2v7NvC/kGaRHXrOziyXc671nNv590NfdRTDhXnRR6B+v1RFJ4E86lJ\r\nMFm2l34oBoPXXKh7RG8bl3Lz4qPFcSQQ+WMccWTnPxesHgdeRSK/pPoDcp/b\r\nI63hBTrgeokcF69jUSnEE/p4thP89gGMgapLJlUHVb6pi+uRUK37pZw1y8L9\r\nsZB1A3LmJh4jxIXl2LPDf4tH0DTxvCKodTigVGPZNxEMVzGLt3ZVv0tD3c8S\r\naDM6EAfvW397mDs1g7we80SbcAl0gqMvIv4=\r\n=Pgow\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"720755f87dffba9cd0c2284b59f12acfda242dc4","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.18.0","highlight.js":"^11.7.0","mui-tel-input":"^3.1.3","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^4.1.0-beta.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.5.0","@babel/cli":"^7.21.0","babel-jest":"^29.5.0","@babel/core":"^7.21.4","file-loader":"^6.2.0","@babel/preset-env":"^7.21.4","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.5.0","@babel/plugin-transform-modules-commonjs":"^7.21.2"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.12.0","@mui/material":"^5.12.2","react-router-dom":"^6.10.0","@mui/icons-material":"^5.11.16"},"_npmOperationalInternal":{"tmp":"tmp/react_5.0.0-beta.1_1682520481952_0.9193814384118371","host":"s3://npm-registry-packages"}},"5.0.0":{"name":"@laboratoria/react","version":"5.0.0","license":"MIT","_id":"@laboratoria/react@5.0.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"262c6886df80091c5312d347ea550f70747564e5","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-5.0.0.tgz","fileCount":68,"integrity":"sha512-6yDzK+18yAEKkiQXanOILvRDlm3Zvz0N4Vqg2l2giqsIUGoKIoJ0FP/YKLiYf9xpvV4iQz+0B5cJa78Fd9zaQQ==","signatures":[{"sig":"MEYCIQDX8YgYSqvGfI18epiNXO7p/Pg110Zt8lgW7fYVCcHtpQIhAIvgy5+vTga/jQQqdAs6Q0FFXpJefGADIN3eOXQJ6D3n","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkSUDNACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqnShAAgsMhpYKUagpPcQr2Ov+3EFhQBfB/KFa4cyZn1flpV90/dRq5\r\ndjlIJu6OjVHSstOtg6d0mJn7Tr65EI8xY6a38ltwJ7EXnlCwKkSNP0/Hy6NN\r\nF1mrhFXPJdVkx4tGxld4nj0Exm8awsiCCQ8PscNwA75PXooEVsmJdLCI38+J\r\nF8Vd7onH+bejeAT0zOsIAtW2FM2457li9p4HO0Pn1sd0EDlatQPVz4fDqkgf\r\n3b09zmMYQ16AjA0QC2D5/y6VXRmyjRtBMBepsuQTrOlUn3CLhsC4M3wSlcMG\r\nUKMYit+IhJ/4Bf5LR0FMyIHrTETpy31kCcfG0s/KeNql/E6DyYIlopMBf4zl\r\nJ+RuWAK1PTFAPp6gqNPTdsFFqyVbcTEamBek19JwP1591NWAVDm4FxYALIwp\r\nvolm0MI+1TvTHlMMPyPZUI910UCOVisz3+37c3wtRw7QAkyfqkMjqw0JGIEk\r\n+PndFZ3kNh6VNHSiv1js5X2ywX6X8x1vYmqBZhR33SW2fObPS5geBFw7z9s2\r\nVWDX7hmalrWzmdmqDuq4blIa8CZP5TMzecj/gWq4xNFOJLfAJITugFHWiREb\r\naXAcJUiklLeitr2eadE+vl7kuT5+uF0dE0+cfkNtQglrn7kZ8epKDWnD1ZZY\r\nXt8g+dScXYkGfdYAUgn/ArsHHbtCmFBco0E=\r\n=HS3e\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"1d33d94a5927b6f0390484056f6005b4faf3f0f3","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.18.0","highlight.js":"^11.7.0","mui-tel-input":"^3.1.3","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^4.1.0-beta.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","@babel/cli":"^7.21.0","babel-jest":"^29.5.0","@babel/core":"^7.21.4","file-loader":"^6.2.0","@babel/preset-env":"^7.21.4","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.5.0","@babel/plugin-transform-modules-commonjs":"^7.21.2"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.12.0","@mui/material":"^5.12.2","react-router-dom":"^6.10.0","@mui/icons-material":"^5.11.16"},"_npmOperationalInternal":{"tmp":"tmp/react_5.0.0_1682522317568_0.6145571772278411","host":"s3://npm-registry-packages"}},"5.0.1":{"name":"@laboratoria/react","version":"5.0.1","license":"MIT","_id":"@laboratoria/react@5.0.1","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"f0a09729f43936c96c9a377b42d476a3249bfb5e","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-5.0.1.tgz","fileCount":68,"integrity":"sha512-41dkTZd/z5ezTUQUx60wGkAcQPxcM1uqK2UsNCrlsTrd1qXs8L2/3yB0z3HJbE5TScPQ9/Q/XhQoFkJDBXitig==","signatures":[{"sig":"MEUCICa5/WsLnjOwfD6P+JNkjamcYSr7d2z/R1zUiWYOJRkFAiEA1f4GqyLmUsGBm4oN2c7EXY92H3m1S1+4ukG173SxK0c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120038,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkSUEtACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoqoQ/8Cm/W+gHfUNxVx5kYhHNGUPRlqtoWbWKm2tX4B9QpF3dcNtYw\r\nUh/QY3qw9NR2P1SyXofSGVhTC1zSvJgdQQz5J1qNbstkTfXkVcoo3p/rCFW5\r\nximBrA6K3cNlWR/lE3w3A+PZrmwcgGdBGqL9Q6R38RBgGuiMxgLp/HhWLkme\r\nG6lPhKLaYN4ggWZ0+LTnjtgjA2yM8djgA4t3rb4NnZiomPzxqScWd6OolprH\r\n5gNbVzgsNh0c/WwleLg+skXDi3e6WhIGdHE6p1kisIDY4RibSnDP5P/5qD2Y\r\n6/gDfyRsqcHgYXsf4zg8gDg+ML/qNYL1PeJdsRyAQUBfFcJYlZaY6q81oQic\r\nWGK0lV9ViyhPVYdArqxsBmSyrQyOIdpjktNbz+bLgB3kWHSO1TBrfkt84MqZ\r\nS8jVqoiSRq5yyNjQ7biIyxOtSZ+s/xWGrzAJRms+8vVrej75cItmgHjDsesD\r\n+/LOd0y5iTj3zuISLL/xR3ZgQ/fiM8KzViLhbY7VJTt/laPoGeB8GSKM7qon\r\nLfJNc99IbZ2FhEoC2IK7dflWCWO0abewE9icrx0w3AhKrKHAigJ4oyfAbB7x\r\nbkKhcxSzf9JrtX20GpJQV2EJ/3AdFdUY9KxEUtI1CYdEhuRMGO94jg0ldYCY\r\nLo2kZ1adB1n8q3x4r/Ce+NParYH1sLzmABI=\r\n=Kp5U\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"769dceb9a72262afd374bb3a986df7c2c0c8251b","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.18.0","highlight.js":"^11.7.0","mui-tel-input":"^3.1.3","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","@babel/cli":"^7.21.0","babel-jest":"^29.5.0","@babel/core":"^7.21.4","file-loader":"^6.2.0","@babel/preset-env":"^7.21.4","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.5.0","@babel/plugin-transform-modules-commonjs":"^7.21.2"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.12.0","@mui/material":"^5.12.2","react-router-dom":"^6.10.0","@mui/icons-material":"^5.11.16"},"_npmOperationalInternal":{"tmp":"tmp/react_5.0.1_1682522413789_0.5592784673166471","host":"s3://npm-registry-packages"}},"5.1.0":{"name":"@laboratoria/react","version":"5.1.0","license":"MIT","_id":"@laboratoria/react@5.1.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"b9f0a8c5d9926dc53c64644841429d22904068ce","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-5.1.0.tgz","fileCount":68,"integrity":"sha512-RF5MeQShOkBSVKHx4rDL4GM+4DFuAEmsEB9Arff17WX7LUKeAKXBsGcDNZslsX8PHVFhiMJetoa9gLKX1x65GQ==","signatures":[{"sig":"MEYCIQD4xmtmtyei05ZlAHKzISE+HiSmwJ8aC19HwyKWfNWGcQIhAN0qeDY5ry9yUh60hnpMRD2qJ33CSxflD2DMwWDKBuiZ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":122786,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkU/+qACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqgOA/9EpgAW03+nOjJehf6yLiTfLjC6SBvbm2ZSgK/fUb5hMw4MVNr\r\nH1XmoDyHf3/NegyqCMyGtWP42hLAllJPXlX9qFYeXN6OjuHP6oFjD55BuGQ4\r\nMCGm4QGTDQMMxIpZKWhDO4h4pFtxaWzAP6uv++ZfqIAt8OA6kA2wgGg191i4\r\nVN6sDvApDw+QSfcTGrzhhEu/lahgyotajXycVVEob1HXWypGvIMDwp181pSJ\r\nU74LzR/RgcxVR/lY/j0OyRr/JUyuGUhDE4gMe9T13TM7fUbuFt8jV7cDkTEm\r\n5ahQnQy/FGaBlxVCxAJ+3GHo3NYetgjWxGgSfgfiSUAEZqf2y76lfzfmNI4s\r\nDNQ2lDhm9N8ydA7dZc2Zefaq2S1T0NRRMKRA+1oaPIba/vuxRw5OvvzQkNAC\r\n/FWwuv3196JU1HfFd251k3NS4LtNswBzEVPSM9o3kXu74iC1Bcp+efYSehdF\r\nImdCA5rXxol8OcDMZ43OOvhdwan07BjW4PkvNqARx1+fnOeKWR+aaW9Yd+OO\r\nvTid9UYantyf1xXFeCAWSKlh3o0IXoJ5Jq993QbKOguRmuX0sur/wwJcdsqR\r\nEqs2sobKD5hLtF5k4douGkOW721EB/akbw6HXnbClEr0iRmrsCAid5ySz1eN\r\nmndMor9ah/075NXEjICgB39pz97w6Eregws=\r\n=Kf11\r\n-----END PGP SIGNATURE-----\r\n"},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"a8a04ee99ba32a84ac1965db5d800bb97b4e4a2f","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.19.0","highlight.js":"^11.8.0","mui-tel-input":"^3.1.3","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.0.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","@babel/cli":"^7.21.5","babel-jest":"^29.5.0","@babel/core":"^7.21.8","file-loader":"^6.2.0","@babel/preset-env":"^7.21.5","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.5.0","@babel/plugin-transform-modules-commonjs":"^7.21.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.12.3","@mui/material":"^5.12.3","react-router-dom":"^6.11.1","@mui/icons-material":"^5.11.16"},"_npmOperationalInternal":{"tmp":"tmp/react_5.1.0_1683226538207_0.08376914416373937","host":"s3://npm-registry-packages"}},"6.0.0-beta.0":{"name":"@laboratoria/react","version":"6.0.0-beta.0","license":"MIT","_id":"@laboratoria/react@6.0.0-beta.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"2597b2fedb2fb0877cf3d7a8bb593a2f668d2b00","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.0.0-beta.0.tgz","fileCount":66,"integrity":"sha512-YlYbzpZaWtYjFFiMJu1Z0LSM0XcHhlklzKrZ8kt863E0i3flU12YKQqZZKPuYLDHoIzam6xordHWTGhHtZAguA==","signatures":[{"sig":"MEQCIH5XieZtSFAzcwLKKLF909chWcVrAgiS06cvwrLVqyoyAiADofjSZVUf2z0macKUtCDYL+CWs+Q+3qUEtONkl3v4Zg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120096},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"ab6733a72eceac5eeb461449fa89093d8240c25d","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.22.0","highlight.js":"^11.8.0","mui-tel-input":"^3.1.3","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.1.0-beta.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.5.0","@babel/cli":"^7.21.5","babel-jest":"^29.5.0","@babel/core":"^7.21.8","file-loader":"^6.2.0","@babel/preset-env":"^7.21.5","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.5.0","@babel/plugin-transform-modules-commonjs":"^7.21.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.13.2","@mui/material":"^5.13.2","react-router-dom":"^6.11.2","@mui/icons-material":"^5.11.16"},"_npmOperationalInternal":{"tmp":"tmp/react_6.0.0-beta.0_1685108803037_0.20160088288884825","host":"s3://npm-registry-packages"}},"6.0.0-beta.1":{"name":"@laboratoria/react","version":"6.0.0-beta.1","license":"MIT","_id":"@laboratoria/react@6.0.0-beta.1","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"6f5501cd8d5e9ee6aed1a227c9489165bd7c79f5","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.0.0-beta.1.tgz","fileCount":66,"integrity":"sha512-/QNy5+gipjy5rORJb/qVBHX44ZrkHQlzoX1TJL5mA4yiB5xA2d0e9ai3mAN+cRub9IjAwk9AF46NWv/1b5Qo1A==","signatures":[{"sig":"MEQCIFJubrKIHh2Bo4L/wT5cxYMZMxraSYTpQK18MAuTpxrvAiBNEph4rGfkIbS+YBsWZyxDX0UMApfvLcBR9ViEIRMnsw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120141},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"0321bf76ea59c102d34a346d18547e69065e23c4","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.22.0","highlight.js":"^11.8.0","mui-tel-input":"^3.1.3","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.1.0-beta.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.5.0","@babel/cli":"^7.21.5","babel-jest":"^29.5.0","@babel/core":"^7.21.8","file-loader":"^6.2.0","@babel/preset-env":"^7.21.5","@babel/preset-react":"^7.18.6","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.5.0","@babel/plugin-transform-modules-commonjs":"^7.21.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.13.2","@mui/material":"^5.13.2","react-router-dom":"^6.11.2","@mui/icons-material":"^5.11.16"},"_npmOperationalInternal":{"tmp":"tmp/react_6.0.0-beta.1_1685225313367_0.8396505641687331","host":"s3://npm-registry-packages"}},"6.0.0-beta.2":{"name":"@laboratoria/react","version":"6.0.0-beta.2","license":"MIT","_id":"@laboratoria/react@6.0.0-beta.2","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"d18db5be322ad226b42c81e86293470d334262cf","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.0.0-beta.2.tgz","fileCount":68,"integrity":"sha512-HV9YoiuNfLz2qxZ7MHA/QyEWgHgMXHzI/JJFcN3gzfqSpU2rm/jPWkIWGHPKCNTRN43Lax7+Zm0M/iwgjjKGlA==","signatures":[{"sig":"MEUCIQDcKnc4JrxJTfbIpSmriGWUcg1oD5LGLmGqdGta/bGl9wIgP/mYZBlm88bz/FIgixI05uy1YUKaMSF+FI6R5EBvwyk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120801},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"40a58ef44c52fb304a18308f23eb87bc25b04378","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.22.0","highlight.js":"^11.8.0","mui-tel-input":"^3.1.3","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.1.0-beta.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.5.0","@babel/cli":"^7.21.5","babel-jest":"^29.5.0","@babel/core":"^7.22.1","file-loader":"^6.2.0","@babel/preset-env":"^7.22.2","@babel/preset-react":"^7.22.3","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.5.0","@babel/plugin-transform-modules-commonjs":"^7.21.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.13.2","@mui/material":"^5.13.3","react-router-dom":"^6.11.2","@mui/icons-material":"^5.11.16"},"_npmOperationalInternal":{"tmp":"tmp/react_6.0.0-beta.2_1685370095401_0.767448544716713","host":"s3://npm-registry-packages"}},"6.0.0-beta.3":{"name":"@laboratoria/react","version":"6.0.0-beta.3","license":"MIT","_id":"@laboratoria/react@6.0.0-beta.3","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"cd145bfe9089a93411a4bf8ffd7c53e6321aa0c8","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.0.0-beta.3.tgz","fileCount":68,"integrity":"sha512-beZT4BdZsqkOfKbLa2yLrXaia6/v4qfjl0ySzNh4h0ItiFhrs2iZN27lt9CfKkAlld3okZq0SHelzdotf4wtSQ==","signatures":[{"sig":"MEUCIQCGO1rbz5FIcdcXx7n79OhZui4FN9rlThu0JNBcWirRrQIgaxZx7gtB3JwTpDTdvzlvuVyw6xXDmocdRWL0mtpD0mg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120801},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"2f7d23de6dcbd57eca5d4546024e18e114dcc083","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.22.0","highlight.js":"^11.8.0","mui-tel-input":"^3.1.3","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.1.0-beta.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.5.0","@babel/cli":"^7.21.5","babel-jest":"^29.5.0","@babel/core":"^7.22.1","file-loader":"^6.2.0","@babel/preset-env":"^7.22.4","@babel/preset-react":"^7.22.3","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.5.0","@babel/plugin-transform-modules-commonjs":"^7.21.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.13.2","@mui/material":"^5.13.3","react-router-dom":"^6.11.2","@mui/icons-material":"^5.11.16"},"_npmOperationalInternal":{"tmp":"tmp/react_6.0.0-beta.3_1685397963852_0.46756583305263","host":"s3://npm-registry-packages"}},"6.0.0-beta.4":{"name":"@laboratoria/react","version":"6.0.0-beta.4","license":"MIT","_id":"@laboratoria/react@6.0.0-beta.4","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"36d34bcfd9721aee4d408113800f21c5476d1bcb","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.0.0-beta.4.tgz","fileCount":68,"integrity":"sha512-LCN9nWhBn2CVo3gLABbWSaUbAVebQY3kx0KubaJ6eSs44UA9siGZ/Gbji0HUTOZE8iOVyLddQi/YtRwFLeukBg==","signatures":[{"sig":"MEUCIQDf23y+qXDJbLsG2UhRurwg1nhcE026yzPz4TvwGEg13QIgdXKdYBkHdPf75fvNEvT8WP7teU6oShSEvKIP5xQjZb4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120801},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"2d864bbaaeba69da135ce1d6c4603fe2de637cb3","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.22.0","highlight.js":"^11.8.0","mui-tel-input":"^3.1.3","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.1.0-beta.5"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.5.0","@babel/cli":"^7.21.5","babel-jest":"^29.5.0","@babel/core":"^7.22.1","file-loader":"^6.2.0","@babel/preset-env":"^7.22.4","@babel/preset-react":"^7.22.3","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.5.0","@babel/plugin-transform-modules-commonjs":"^7.21.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.13.2","@mui/material":"^5.13.3","react-router-dom":"^6.11.2","@mui/icons-material":"^5.11.16"},"_npmOperationalInternal":{"tmp":"tmp/react_6.0.0-beta.4_1685526553278_0.24673983418355339","host":"s3://npm-registry-packages"}},"6.0.0-beta.5":{"name":"@laboratoria/react","version":"6.0.0-beta.5","license":"MIT","_id":"@laboratoria/react@6.0.0-beta.5","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"b8bd3294d161c8d943ce197b20679448cce0752c","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.0.0-beta.5.tgz","fileCount":68,"integrity":"sha512-/JAFjBCkqYsnLmHI3F/Ij+AZbIirVdOWMr2X3i1MObhhzDyogrIYqsaAvTlR2Jbs1qc8m3cprDckxyW85ainrg==","signatures":[{"sig":"MEUCIQDaTlnEkwiL5hiwV10MAvR3LNeOYb8v6n/+KfPlQcMPqwIgFeaJ7f3M6BHbOYmy25RNcU1BfeXidfsHCltHzON1aNI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120739},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"f695932ed81ae45d288d16148fbf9f4c7ab63a4b","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.22.0","highlight.js":"^11.8.0","mui-tel-input":"^3.1.3","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.1.0-beta.5"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.5.0","@babel/cli":"^7.21.5","babel-jest":"^29.5.0","@babel/core":"^7.22.1","file-loader":"^6.2.0","@babel/preset-env":"^7.22.4","@babel/preset-react":"^7.22.3","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.5.0","@babel/plugin-transform-modules-commonjs":"^7.21.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.13.2","@mui/material":"^5.13.3","react-router-dom":"^6.11.2","@mui/icons-material":"^5.11.16"},"_npmOperationalInternal":{"tmp":"tmp/react_6.0.0-beta.5_1685619725112_0.13535268470279282","host":"s3://npm-registry-packages"}},"6.0.0":{"name":"@laboratoria/react","version":"6.0.0","license":"MIT","_id":"@laboratoria/react@6.0.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"0a2adf59aae738d4d15f4384e1c032c24362e4c7","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.0.0.tgz","fileCount":68,"integrity":"sha512-oun94i5ECMDcfTxuPufJ6i8Qb8Tayc7PZbxi8ivqKNHGhCrMFRgLSSrsEElzgi2vpZI6bLrSV47i2TZ/ft5S+g==","signatures":[{"sig":"MEUCIAzD3RWFOUyOnOCNDTE4MsJRiMSMMan/r9d0YHcr8oFbAiEAn9/xNkx3sNf5Ro4DkhpR3Ven4gpZYRxRmFnrPlRSmxA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120725},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"7d6a95ec65d575e4f25cb6310b4194a357b29d0f","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git describe --tags --abbrev=0)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.22.0","highlight.js":"^11.8.0","mui-tel-input":"^3.2.0","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.1.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","@babel/cli":"^7.21.5","babel-jest":"^29.5.0","@babel/core":"^7.22.1","file-loader":"^6.2.0","@babel/preset-env":"^7.22.4","@babel/preset-react":"^7.22.3","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.5.0","@babel/plugin-transform-modules-commonjs":"^7.21.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.13.2","@mui/material":"^5.13.3","react-router-dom":"^6.11.2","@mui/icons-material":"^5.11.16"},"_npmOperationalInternal":{"tmp":"tmp/react_6.0.0_1685980348367_0.9145871932965277","host":"s3://npm-registry-packages"}},"6.1.0-beta.0":{"name":"@laboratoria/react","version":"6.1.0-beta.0","license":"MIT","_id":"@laboratoria/react@6.1.0-beta.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"e5c047237188bbd9532cefab3ecfce3956e023f1","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.1.0-beta.0.tgz","fileCount":68,"integrity":"sha512-2bnw79X3+c18pUFInUVzagnAJIFFhGPfIIF9oD+f5V74fLIG59Xrcob/nPzL+gyV1MME3i14pQI/2n/6/sK22g==","signatures":[{"sig":"MEYCIQCKxS83esVDxLPiUHRXQRKHWHvbiHFbKegCcNkGBciq9AIhAISq7wv/IQomJ5O/SBJS2v1e16eKGxkKFf5Qc7vJDf/+","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":121554},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"3b65265d5b53211584ee1250937e8ddf143a03e7","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.22.0","highlight.js":"^11.8.0","mui-tel-input":"^3.2.0","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.1.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.5.0","@babel/cli":"^7.22.5","babel-jest":"^29.5.0","@babel/core":"^7.22.5","file-loader":"^6.2.0","@babel/preset-env":"^7.22.5","@babel/preset-react":"^7.22.5","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.5.0","@babel/plugin-transform-modules-commonjs":"^7.22.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.13.2","@mui/material":"^5.13.4","react-router-dom":"^6.12.1","@mui/icons-material":"^5.11.16"},"_npmOperationalInternal":{"tmp":"tmp/react_6.1.0-beta.0_1686321492269_0.7599632289525173","host":"s3://npm-registry-packages"}},"6.1.0-beta.1":{"name":"@laboratoria/react","version":"6.1.0-beta.1","license":"MIT","_id":"@laboratoria/react@6.1.0-beta.1","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"e42ad896555e01d86818c40fc29ee4b421f88131","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.1.0-beta.1.tgz","fileCount":68,"integrity":"sha512-ca6AXdaF2qyXZGoa8bixYnNwuJnFWH4zEXqCiH2G2qouutzj2El5SEx1CnKOSaHcb1aBU/zMSoIGR2V1weHXSA==","signatures":[{"sig":"MEYCIQDtnQlQTnr6nUWzFdgZgX7CvebPRzK1cEnQGrgUHDp+9AIhAIj8R7unHQTfphViIqBIsqGwuJICx+2DptdXxnrRTM2n","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":122047},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"fea7883a9bb828de5d60827f7dd5fed0e68b5ebb","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.22.0","highlight.js":"^11.8.0","mui-tel-input":"^3.2.0","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.1.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.5.0","@babel/cli":"^7.22.5","babel-jest":"^29.5.0","@babel/core":"^7.22.5","file-loader":"^6.2.0","@babel/preset-env":"^7.22.5","@babel/preset-react":"^7.22.5","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.5.0","@babel/plugin-transform-modules-commonjs":"^7.22.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.13.2","@mui/material":"^5.13.4","react-router-dom":"^6.12.1","@mui/icons-material":"^5.11.16"},"_npmOperationalInternal":{"tmp":"tmp/react_6.1.0-beta.1_1686331339145_0.19125976572300818","host":"s3://npm-registry-packages"}},"6.1.0":{"name":"@laboratoria/react","version":"6.1.0","license":"MIT","_id":"@laboratoria/react@6.1.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"b1360263faa044a803375bb7a8219d517ddc4259","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.1.0.tgz","fileCount":68,"integrity":"sha512-Qcc1RJui0XV5zN2C3x8w8sT+wXRIHV2ZpQWYYMazahMATGzGU+q4tOxUGRjMkX+3KL1EUS3hqAf9BboICJ8vhA==","signatures":[{"sig":"MEYCIQCU/JAU0FtVVpo8yToZfqAckvIy4tcUSHiJbYcZDGM+BwIhAOnw7aCRiBmbU9PXJ/W27eFSLeSDDCeG/p/ACsRwEeDu","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":122040},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"3b7f71af4fc31f57d980228e0ccd12723b3bed0c","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.22.0","highlight.js":"^11.8.0","mui-tel-input":"^3.2.0","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.1.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.5.0","@babel/cli":"^7.22.5","babel-jest":"^29.5.0","@babel/core":"^7.22.5","file-loader":"^6.2.0","@babel/preset-env":"^7.22.5","@babel/preset-react":"^7.22.5","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.5.0","@babel/plugin-transform-modules-commonjs":"^7.22.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.13.2","@mui/material":"^5.13.4","react-router-dom":"^6.12.1","@mui/icons-material":"^5.11.16"},"_npmOperationalInternal":{"tmp":"tmp/react_6.1.0_1686334614207_0.6829114534019296","host":"s3://npm-registry-packages"}},"6.2.0-beta.1":{"name":"@laboratoria/react","version":"6.2.0-beta.1","license":"MIT","_id":"@laboratoria/react@6.2.0-beta.1","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"af3f558a0c990088b28b89c8aeddd7219aaf1376","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.2.0-beta.1.tgz","fileCount":68,"integrity":"sha512-VOIipmVkmY6SWRTF8/NQtKSkpXbMbM+Zb2pcMHDBYD5EqbNjfPg9HIHobNzet7rDxBR+Q56XEPWYwNzmsRqs1Q==","signatures":[{"sig":"MEUCIQCTeHFyFJvbG489tNSwXtxRk0jJYq2HR5Mv/jKANB7juwIgAMYJsaPw08O3fQVVKJOChDlGM0pk5arwzfS7m5AwNgk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":122054},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"b84491c89d88b738de24db0205a11374c87def4f","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.22.1","highlight.js":"^11.8.0","mui-tel-input":"^3.2.0","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.2.0-beta.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.5.0","@babel/cli":"^7.22.5","babel-jest":"^29.5.0","@babel/core":"^7.22.5","file-loader":"^6.2.0","@babel/preset-env":"^7.22.5","@babel/preset-react":"^7.22.5","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.5.0","@babel/plugin-transform-modules-commonjs":"^7.22.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.13.2","@mui/material":"^5.13.5","react-router-dom":"^6.12.1","@mui/icons-material":"^5.11.16"},"_npmOperationalInternal":{"tmp":"tmp/react_6.2.0-beta.1_1686583963894_0.7825953407878965","host":"s3://npm-registry-packages"}},"6.2.0-beta.2":{"name":"@laboratoria/react","version":"6.2.0-beta.2","license":"MIT","_id":"@laboratoria/react@6.2.0-beta.2","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"4bc5a41665e98677d15ae7ab08d566a53b0c7ac9","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.2.0-beta.2.tgz","fileCount":68,"integrity":"sha512-2kNV99QUyZ9PmjcMcrb8/NCe0KXGNnXq/hmGK4f4iwzQA15zJ02Oh/NnLvQF9I4Ivouo3gq5rSNx7ic8gqGbWQ==","signatures":[{"sig":"MEUCIA+0lVQzdPRVrTwBmeI7EEO4io/J3nuEWyaqKqL6M2qfAiEAi1so/sKaQMcgvM/hQKOLJOeccv7iKn+Cc2ADjgOfsEk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":122054},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"26895cfdf0e1cae5cae0c7d2e353a4f731c061bd","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.22.1","highlight.js":"^11.8.0","mui-tel-input":"^3.2.0","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.2.0-beta.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.5.0","@babel/cli":"^7.22.5","babel-jest":"^29.5.0","@babel/core":"^7.22.5","file-loader":"^6.2.0","@babel/preset-env":"^7.22.5","@babel/preset-react":"^7.22.5","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.5.0","@babel/plugin-transform-modules-commonjs":"^7.22.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.13.2","@mui/material":"^5.13.5","react-router-dom":"^6.12.1","@mui/icons-material":"^5.11.16"},"_npmOperationalInternal":{"tmp":"tmp/react_6.2.0-beta.2_1686586487877_0.2956466895935217","host":"s3://npm-registry-packages"}},"6.2.0-beta.3":{"name":"@laboratoria/react","version":"6.2.0-beta.3","license":"MIT","_id":"@laboratoria/react@6.2.0-beta.3","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"3d284fd86b170cb9585c0b008f137cba9bc18e5c","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.2.0-beta.3.tgz","fileCount":68,"integrity":"sha512-SBfZU4F07wc7pOiTS2mOzHS2LgRVEOFKs/cWabGYxId6jT5qwJpi8YaDmBab2KE/7Mfp+J0ZPqSHURPkyHNrFw==","signatures":[{"sig":"MEYCIQCVeqhcNhPxPlAgwugVTmwj3RGRWilsLv/NpmaActswJwIhAIsD060IXM3x/I6v1N996zEHHNMC9DVkV5KccWiYbQV2","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123125},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"2268e648c1f5af7e662944fc789e17451838cbb2","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.22.1","highlight.js":"^11.8.0","mui-tel-input":"^3.2.0","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.2.0-beta.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.5.0","@babel/cli":"^7.22.5","babel-jest":"^29.5.0","@babel/core":"^7.22.5","file-loader":"^6.2.0","@babel/preset-env":"^7.22.5","@babel/preset-react":"^7.22.5","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.5.0","@babel/plugin-transform-modules-commonjs":"^7.22.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.13.2","@mui/material":"^5.13.5","react-router-dom":"^6.12.1","@mui/icons-material":"^5.11.16"},"_npmOperationalInternal":{"tmp":"tmp/react_6.2.0-beta.3_1687257585642_0.10167457640537814","host":"s3://npm-registry-packages"}},"6.2.0-beta.4":{"name":"@laboratoria/react","version":"6.2.0-beta.4","license":"MIT","_id":"@laboratoria/react@6.2.0-beta.4","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"e1e50b341d096c5a2cbe9c0421ab2a52776a7494","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.2.0-beta.4.tgz","fileCount":68,"integrity":"sha512-uerfiRAnMCPxcKGI2TLp5jhVeKu2WQpMfjPmctFtPXnqZvGCyA9/mK0iPYPxo7PNnUn72zIB4PnFm6r961FFcQ==","signatures":[{"sig":"MEUCIBehOb8QM6NXz7zw3HbUYSWEcHCjCX8L21n8P4jNf2P0AiEAhQNl9fHPmSXaCZ7zNoNT52ONM5HzVkfZUeewelFGZCo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123229},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"bc67b51ebe674c5dc98906e8348b1a30e36ed16f","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.22.1","highlight.js":"^11.8.0","mui-tel-input":"^3.2.0","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.2.0-beta.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.5.0","@babel/cli":"^7.22.5","babel-jest":"^29.5.0","@babel/core":"^7.22.5","file-loader":"^6.2.0","@babel/preset-env":"^7.22.5","@babel/preset-react":"^7.22.5","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.5.0","@babel/plugin-transform-modules-commonjs":"^7.22.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.13.2","@mui/material":"^5.13.5","react-router-dom":"^6.12.1","@mui/icons-material":"^5.11.16"},"_npmOperationalInternal":{"tmp":"tmp/react_6.2.0-beta.4_1687259576156_0.4008005570418478","host":"s3://npm-registry-packages"}},"6.2.0-beta.5":{"name":"@laboratoria/react","version":"6.2.0-beta.5","license":"MIT","_id":"@laboratoria/react@6.2.0-beta.5","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"c1f1786b54582a84af0a91a8e330a9846ca1211f","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.2.0-beta.5.tgz","fileCount":68,"integrity":"sha512-cREM4S9wadRn68Mjp/wEGhT0i2XJudRqDXn741iInjSslopW/i1OD+MJrhyRyLmoMsDj6i9B+AvgZji/C677hg==","signatures":[{"sig":"MEQCIEzou3UDXfNUbTF+lrrJKCSt/gCA/Y6sxVUYtMhjmRuRAiAxA1iFsnoRNfpw1ZL30JzevlnvcVY/77IqB2TJdsiraw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123445},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"922b80a1ee820b05afd2de7f30c93381e8524631","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.23.0","highlight.js":"^11.8.0","mui-tel-input":"^3.2.0","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.2.0-beta.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.5.0","@babel/cli":"^7.22.5","babel-jest":"^29.5.0","@babel/core":"^7.22.5","file-loader":"^6.2.0","@babel/preset-env":"^7.22.5","@babel/preset-react":"^7.22.5","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.5.0","@babel/plugin-transform-modules-commonjs":"^7.22.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.13.2","@mui/material":"^5.13.5","react-router-dom":"^6.13.0","@mui/icons-material":"^5.11.16"},"_npmOperationalInternal":{"tmp":"tmp/react_6.2.0-beta.5_1687355707911_0.15315858027211915","host":"s3://npm-registry-packages"}},"6.2.0-beta.6":{"name":"@laboratoria/react","version":"6.2.0-beta.6","license":"MIT","_id":"@laboratoria/react@6.2.0-beta.6","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"105eee7b5631092f8f3cedf8f8609f88df812194","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.2.0-beta.6.tgz","fileCount":68,"integrity":"sha512-wfJ4iO0NrxHYTduqyEhvVUZpewzWe9TxkduZV/3WB+aGJkvjF/Q00jZILWYB58IrzlvCXykQQ8FEvI4RvJ0KnA==","signatures":[{"sig":"MEQCIDZm0Ijth1DRlZx2efHekaJX22OBZlzKlGxE2PPnFJl9AiBYZzIvn2fIzCyAwB6AVFBVT1iCYLqDs8qF1oQHcT9nNQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123975},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n* `REACT_APP_LABORATORIA_JOBS_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"1b9d4bc63fb5a832020a6d12fae39e47d2e5e872","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.23.0","highlight.js":"^11.8.0","mui-tel-input":"^3.2.0","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.2.0-beta.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.5.0","@babel/cli":"^7.22.5","babel-jest":"^29.5.0","@babel/core":"^7.22.5","file-loader":"^6.2.0","@babel/preset-env":"^7.22.5","@babel/preset-react":"^7.22.5","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.5.0","@babel/plugin-transform-modules-commonjs":"^7.22.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.13.2","@mui/material":"^5.13.5","react-router-dom":"^6.13.0","@mui/icons-material":"^5.11.16"},"_npmOperationalInternal":{"tmp":"tmp/react_6.2.0-beta.6_1687975669227_0.5519695373204374","host":"s3://npm-registry-packages"}},"6.2.0":{"name":"@laboratoria/react","version":"6.2.0","license":"MIT","_id":"@laboratoria/react@6.2.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"5ee3efbfa9f753e1a5a186ade00460223a82f43b","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.2.0.tgz","fileCount":68,"integrity":"sha512-qYaPv9U69YHm7fr8JLptElEZHVmMOZDa5jXHxYC/kSRw0uKrBiVfyJZgLn+C1pdCMDULcUwK8Ht/E5N6clAcGg==","signatures":[{"sig":"MEQCICgz5UsdHdnWuH1BV44VC3Yvj8gxYI6zk6R2SjhUUOcoAiBhJnzIXQwcKc30cQYDUozxNeImvEUTTc4bWLP1ItYKAg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123960},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"18b18489156a89e7ec25136ea9c845cd11b04a4e","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.23.1","highlight.js":"^11.8.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.2.0"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.6.0","@babel/cli":"^7.22.6","babel-jest":"^29.6.0","@babel/core":"^7.22.6","file-loader":"^6.2.0","@babel/preset-env":"^7.22.6","@babel/preset-react":"^7.22.5","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.6.0","@babel/plugin-transform-modules-commonjs":"^7.22.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.13.7","@mui/material":"^5.13.7","react-router-dom":"^6.14.1","@mui/icons-material":"^5.13.7"},"_npmOperationalInternal":{"tmp":"tmp/react_6.2.0_1688595838494_0.4348665295376668","host":"s3://npm-registry-packages"}},"6.3.0-beta.0":{"name":"@laboratoria/react","version":"6.3.0-beta.0","license":"MIT","_id":"@laboratoria/react@6.3.0-beta.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"d52699775d320ab714454da8e44a726a366487d4","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.3.0-beta.0.tgz","fileCount":68,"integrity":"sha512-x3DM4jBBKrnhEyZ+ziufD+Tos+wKWGnsCDVxJhmWVi3QxBOlOEJ1eeBtCK5lrDwA+rfFucM/5+lP0wZcDiNfxw==","signatures":[{"sig":"MEQCIAuQ/9sHCMs/1/w4hkx6dA6cF2nd1mbl2+M1ipdAuxsPAiBbih1DyUMuFBagwSncxmvZV9FDrR0os73G0FNp8KumcQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123759},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"c22b9f412c2f9825929633b9e309e2af0e0abd2c","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.23.3","highlight.js":"^11.8.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.3.0-beta.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.6.1","@babel/cli":"^7.22.6","babel-jest":"^29.6.1","@babel/core":"^7.22.8","file-loader":"^6.2.0","@babel/preset-env":"^7.22.7","@babel/preset-react":"^7.22.5","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.6.1","@babel/plugin-transform-modules-commonjs":"^7.22.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.13.7","@mui/material":"^5.13.7","react-router-dom":"^6.14.1","@mui/icons-material":"^5.13.7"},"_npmOperationalInternal":{"tmp":"tmp/react_6.3.0-beta.0_1689038563499_0.5514630669300644","host":"s3://npm-registry-packages"}},"6.3.0-beta.1":{"name":"@laboratoria/react","version":"6.3.0-beta.1","license":"MIT","_id":"@laboratoria/react@6.3.0-beta.1","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"726ba34bf7c99552e7a19c46dd8e807799efde8f","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.3.0-beta.1.tgz","fileCount":72,"integrity":"sha512-l9khsvSBah9VLyy48lWf8Gwwm2iM13zWthPmbJg328cd5g6jMJiDhMeV39FAtUsZxPttIV8KFW02fkJjBog81g==","signatures":[{"sig":"MEUCIGd+lJVNxQg9/CBkHhLlbqeedjlTgwan55+2R6ruVjiaAiEAgWx5IsSKCMqw0C7/fBFHITR7dMvj8MqBvS89SsUDIQs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137382},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"e4e0944a4904d75f70ada60da59f0536875531be","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.23.4","highlight.js":"^11.8.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.3.0-beta.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.6.1","@babel/cli":"^7.22.9","babel-jest":"^29.6.1","@babel/core":"^7.22.9","file-loader":"^6.2.0","@babel/preset-env":"^7.22.9","@babel/preset-react":"^7.22.5","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.6.1","@babel/plugin-transform-modules-commonjs":"^7.22.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.1","@mui/material":"^5.14.1","react-router-dom":"^6.14.2","@mui/icons-material":"^5.14.1"},"_npmOperationalInternal":{"tmp":"tmp/react_6.3.0-beta.1_1689779885878_0.015690338822848426","host":"s3://npm-registry-packages"}},"6.3.0-beta.2":{"name":"@laboratoria/react","version":"6.3.0-beta.2","license":"MIT","_id":"@laboratoria/react@6.3.0-beta.2","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"1da518949dbec0b1cf397cd8769e4afdda2ef65d","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.3.0-beta.2.tgz","fileCount":72,"integrity":"sha512-2bhBjQiGm8MsCz7A7hj/1CitPY/W45WbamMbSUtowERtFhZmrmSXuQXhl0j4ryVeBG4g1FY9uxYfB8lgH76OFQ==","signatures":[{"sig":"MEQCIGi0dcb4VBVCWXCj/S18u+GEKJgTF15Mjc0UpqgJVfGqAiADfsuH4sruMmaapxdmHxC/3npGS6J21f7frxv72r2eSw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137382},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"5c73e9c65b72f41e12e5c62672c2410da15f504a","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.23.4","highlight.js":"^11.8.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.3.0-beta.3"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.6.1","@babel/cli":"^7.22.9","babel-jest":"^29.6.1","@babel/core":"^7.22.9","file-loader":"^6.2.0","@babel/preset-env":"^7.22.9","@babel/preset-react":"^7.22.5","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.6.1","@babel/plugin-transform-modules-commonjs":"^7.22.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.1","@mui/material":"^5.14.1","react-router-dom":"^6.14.2","@mui/icons-material":"^5.14.1"},"_npmOperationalInternal":{"tmp":"tmp/react_6.3.0-beta.2_1689796560494_0.6300696108442958","host":"s3://npm-registry-packages"}},"6.3.0-beta.3":{"name":"@laboratoria/react","version":"6.3.0-beta.3","license":"MIT","_id":"@laboratoria/react@6.3.0-beta.3","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"f7deb7225e59477e2e121fb339e1aa245755c7e3","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.3.0-beta.3.tgz","fileCount":72,"integrity":"sha512-vfCBUSw75xg038aYF8EsLxy/5QRFekhS22+/qEIdrCtSi652IO6ZjMbam7nRMNhW7AusSBFE6x8L/XhcmfdZUg==","signatures":[{"sig":"MEMCHwDsafNUdR/7C5FGUu+BPN7BTmhu/7HeO2nvqCGdjpgCIAWt+kM7bfpolF1s3Nzhxa/mQMydETBSGGKq48r78URM","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":143619},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"1582c1c8441efd608fb9fbd73d7fd2c87c16a4ed","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s (%an)\"","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.23.4","highlight.js":"^11.8.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.3.0-beta.3"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.6.1","@babel/cli":"^7.22.9","babel-jest":"^29.6.1","@babel/core":"^7.22.9","file-loader":"^6.2.0","@babel/preset-env":"^7.22.9","@babel/preset-react":"^7.22.5","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.6.1","@babel/plugin-transform-modules-commonjs":"^7.22.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.1","@mui/material":"^5.14.1","react-router-dom":"^6.14.2","@mui/icons-material":"^5.14.1"},"_npmOperationalInternal":{"tmp":"tmp/react_6.3.0-beta.3_1689957396316_0.1749570690515978","host":"s3://npm-registry-packages"}},"6.3.0-beta.4":{"name":"@laboratoria/react","version":"6.3.0-beta.4","license":"MIT","_id":"@laboratoria/react@6.3.0-beta.4","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"42edc0a29da3d336843a673b60e286b95ac30c9c","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.3.0-beta.4.tgz","fileCount":72,"integrity":"sha512-IQHCn55a8oqM9KlXgLqv3YXDv8U528N1eZI10qbJYfvkHItMbgBCDTJ74JBX01euIOweRIjyfy+liy/3kG20Bw==","signatures":[{"sig":"MEUCICgFVXFOUZAyUbE8XpOqWxesdvT7J2CCU1XKygc0qctXAiEAzRbH0n0/WU2GHGnjY18LkEASzuHWM+pNa1ckBkHLjA0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":144276},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"ae2097766a55aa1c7ad9a82116178aa6a148bc2e","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.23.4","highlight.js":"^11.8.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.3.0-beta.3"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.6.1","@babel/cli":"^7.22.9","babel-jest":"^29.6.1","@babel/core":"^7.22.9","file-loader":"^6.2.0","@babel/preset-env":"^7.22.9","@babel/preset-react":"^7.22.5","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.6.1","@babel/plugin-transform-modules-commonjs":"^7.22.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.1","@mui/material":"^5.14.1","react-router-dom":"^6.14.2","@mui/icons-material":"^5.14.1"},"_npmOperationalInternal":{"tmp":"tmp/react_6.3.0-beta.4_1689977595808_0.9387309304199187","host":"s3://npm-registry-packages"}},"6.3.0-beta.5":{"name":"@laboratoria/react","version":"6.3.0-beta.5","license":"MIT","_id":"@laboratoria/react@6.3.0-beta.5","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"eb3af162bcdad54c69c7a51458f317f68ec8c1f5","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.3.0-beta.5.tgz","fileCount":72,"integrity":"sha512-XVDmSrp08XgBTwPTuO7MIT5bRy97+4nPdIzcuCJf7fYU7rw6xuO1TrVJo/3anU0SEc27x1dG79SoeB+fQ7NFtg==","signatures":[{"sig":"MEQCIEN9RuH4h66F/yl0sNZjXLjtSfcxCBZE1erbmOAsuy+2AiAqTYXJYcIaKUkz64g2Sm2izHMhVU0Tg/E1z9fwXWFBiQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":143951},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\n```\n","engines":{"node":">=14"},"gitHead":"f48d3e2bc6d571f93f1a47ac3a176892dc06b563","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.23.4","highlight.js":"^11.8.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.3.0-beta.3"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.6.1","@babel/cli":"^7.22.9","babel-jest":"^29.6.1","@babel/core":"^7.22.9","file-loader":"^6.2.0","@babel/preset-env":"^7.22.9","@babel/preset-react":"^7.22.5","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.6.1","@babel/plugin-transform-modules-commonjs":"^7.22.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.1","@mui/material":"^5.14.1","react-router-dom":"^6.14.2","@mui/icons-material":"^5.14.1"},"_npmOperationalInternal":{"tmp":"tmp/react_6.3.0-beta.5_1689982423721_0.8420010779921925","host":"s3://npm-registry-packages"}},"6.3.0":{"name":"@laboratoria/react","version":"6.3.0","license":"MIT","_id":"@laboratoria/react@6.3.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"5eddfc683351aa8e1d6026aecbadf0ac7468f1d2","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.3.0.tgz","fileCount":72,"integrity":"sha512-n/GoC8UoA9N8NXdT+xnEfO64996xWz6kQEXCc7FGEhTOzIOJN0aIhL38+pYWDX/ZyKIhQZkiEUAjOhty+LGRpw==","signatures":[{"sig":"MEQCIFS1pQQaTj8TCJgGF9xcS52ImV3gOdNtaN7DsTh+1j7aAiALeaZj4fefYdEvyU3Ys314TfXxB2IYg70X4rDwAD/jOA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":143937},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"a9bca352fe02e3be6ac0fa86395f1b38d21ad153","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.23.4","highlight.js":"^11.8.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.3.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.6.1","@babel/cli":"^7.22.9","babel-jest":"^29.6.1","@babel/core":"^7.22.9","file-loader":"^6.2.0","@babel/preset-env":"^7.22.9","@babel/preset-react":"^7.22.5","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.6.1","@babel/plugin-transform-modules-commonjs":"^7.22.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.1","@mui/material":"^5.14.1","react-router-dom":"^6.14.2","@mui/icons-material":"^5.14.1"},"_npmOperationalInternal":{"tmp":"tmp/react_6.3.0_1689986863370_0.7342422926772991","host":"s3://npm-registry-packages"}},"6.4.0-beta.0":{"name":"@laboratoria/react","version":"6.4.0-beta.0","license":"MIT","_id":"@laboratoria/react@6.4.0-beta.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"caa11b6e8201aa9ad6522145fa2af485395a2f7d","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.4.0-beta.0.tgz","fileCount":74,"integrity":"sha512-GYNC6iGPcPn6umLwknrHikjxGIJMs+N+x0L9J1S1Ggtj8Hh5MqeEp+QJ7uTalHz3W6T5K2rJKcY0wV4nZ2NbzQ==","signatures":[{"sig":"MEYCIQCPPuH274L6JIy/hFkgqN/Hn8bQm4eKAwavMJr1A8ZiDQIhALyd8mpjIfB5wjeL/xyeGDNYkvcxigiYWn4LIsSZ0upJ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":146343},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\nnpm start\n```\n","engines":{"node":">=14"},"gitHead":"37c5df4c9f2f0edb7aeb85c3a9e82e513efe4763","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.24.0","highlight.js":"^11.8.0","@sentry/react":"^7.64.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.3.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.6.2","@babel/cli":"^7.22.10","babel-jest":"^29.6.2","@babel/core":"^7.22.10","file-loader":"^6.2.0","@babel/preset-env":"^7.22.10","@babel/preset-react":"^7.22.5","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.6.2","@babel/plugin-transform-modules-commonjs":"^7.22.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.5","@mui/material":"^5.14.5","react-router-dom":"^6.15.0","@mui/icons-material":"^5.14.3"},"_npmOperationalInternal":{"tmp":"tmp/react_6.4.0-beta.0_1692030786273_0.896455906913074","host":"s3://npm-registry-packages"}},"6.4.0-beta.1":{"name":"@laboratoria/react","version":"6.4.0-beta.1","license":"MIT","_id":"@laboratoria/react@6.4.0-beta.1","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"61158bea77f18da3126f927d7197f1c326cf0ff3","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.4.0-beta.1.tgz","fileCount":74,"integrity":"sha512-BulSkEltRMm2GGmshpTtvod6uF38qB1QuRhSBiH3XYos68yBbKzWaQ0Q5+xN8wnYqzLcgyvTolXg2pRnbX1Ehg==","signatures":[{"sig":"MEUCIQD3Od1QSWxRU6b65ITfj1uXy92SjN/QBMGKHIHGgjsCAQIgQYitHfig7yOm0Eq7llyuMkTrHdZaiNa6jHbOo6UIQP8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":146344},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\nnpm start\n```\n","engines":{"node":">=14"},"gitHead":"607d86de5167c2a8864d016607ceaf71599286fc","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.24.0","highlight.js":"^11.8.0","@sentry/react":"^7.64.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.3.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.6.2","@babel/cli":"^7.22.10","babel-jest":"^29.6.2","@babel/core":"^7.22.10","file-loader":"^6.2.0","@babel/preset-env":"^7.22.10","@babel/preset-react":"^7.22.5","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.6.2","@babel/plugin-transform-modules-commonjs":"^7.22.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.5","@mui/material":"^5.14.5","react-router-dom":"^6.15.0","@mui/icons-material":"^5.14.3"},"_npmOperationalInternal":{"tmp":"tmp/react_6.4.0-beta.1_1692048770229_0.24825681256660648","host":"s3://npm-registry-packages"}},"6.4.0-beta.2":{"name":"@laboratoria/react","version":"6.4.0-beta.2","license":"MIT","_id":"@laboratoria/react@6.4.0-beta.2","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"a412786b4ef3985d84e9abf28b6035c651fb7db5","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.4.0-beta.2.tgz","fileCount":74,"integrity":"sha512-VUH6jjiEJviUufTD0kyAgyyxtL2rzBjNB7fcBV9lV7f/JUjlNVET5X83lZDg2suWzBK+MSCy3HXpJj1dPz54Ag==","signatures":[{"sig":"MEYCIQDvmF+HlJe06O5MudWz7a0WrasYApuIy3jEwdVuJPYvFwIhAPc0fGLg74/LdbqH0yqwl/v3CYFlW04QtHajgfIaGIwv","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":146309},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\nnpm start\n```\n","engines":{"node":">=14"},"gitHead":"3a5f7d88c1f794f574ad58fa17425602eb1cb571","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.24.0","highlight.js":"^11.8.0","@sentry/react":"^7.64.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.3.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.6.2","@babel/cli":"^7.22.10","babel-jest":"^29.6.2","@babel/core":"^7.22.10","file-loader":"^6.2.0","@babel/preset-env":"^7.22.10","@babel/preset-react":"^7.22.5","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.6.2","@babel/plugin-transform-modules-commonjs":"^7.22.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.5","@mui/material":"^5.14.5","react-router-dom":"^6.15.0","@mui/icons-material":"^5.14.3"},"_npmOperationalInternal":{"tmp":"tmp/react_6.4.0-beta.2_1692054417845_0.9196972151525591","host":"s3://npm-registry-packages"}},"6.4.0":{"name":"@laboratoria/react","version":"6.4.0","license":"MIT","_id":"@laboratoria/react@6.4.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"f1c4f8b5f5b1377a2c82d2ceeed14f13be62680d","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-6.4.0.tgz","fileCount":74,"integrity":"sha512-zCZP/cRGVYaDavTVVOtWc0kmjVag5ToRtmPek7l7FFqQxGHeeFBA+2gdbZsfr84TodbLRHP7sIQDrx/snbA2JA==","signatures":[{"sig":"MEYCIQCtzQDtk3+dXmPcCry2XRWKkKcD6iIXxPWri+9wx2Iu9QIhALOLnOYHiQQ32UNQimc2qxA/5D9oNVXLc8ZCFwj/JQxt","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":146302},"jest":{"testEnvironment":"jsdom","moduleNameMapper":{"\\.(css|less|sass|scss)$":"<rootDir>/__mocks__/css.js"},"transformIgnorePatterns":[]},"main":"./dist/index.js","engines":{"node":">=14"},"gitHead":"743177d4ecd3f4bc171416601c78b46c525b1aaa","scripts":{"test":"jest --verbose --coverage","build":"rm -rf dist && npm run transpile","watch":"npm run transpile -- --watch","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'","transpile":"babel ./src --out-dir dist --copy-files --ignore src/**/*.spec.js,src/**/__mocks__ --no-copy-ignored"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.24.0","highlight.js":"^11.8.0","@sentry/react":"^7.64.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^5.3.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.6.2","@babel/cli":"^7.22.10","babel-jest":"^29.6.2","@babel/core":"^7.22.10","file-loader":"^6.2.0","@babel/preset-env":"^7.22.10","@babel/preset-react":"^7.22.5","@testing-library/react":"^12.1.5","jest-environment-jsdom":"^29.6.2","@babel/plugin-transform-modules-commonjs":"^7.22.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.5","@mui/material":"^5.14.5","react-router-dom":"^6.15.0","@mui/icons-material":"^5.14.3"},"_npmOperationalInternal":{"tmp":"tmp/react_6.4.0_1692057267493_0.46096667250240153","host":"s3://npm-registry-packages"}},"7.0.0-beta.0":{"name":"@laboratoria/react","version":"7.0.0-beta.0","license":"MIT","_id":"@laboratoria/react@7.0.0-beta.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"a96a1cf1d8fed60c4b6e3bb44447995acdd447b4","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-7.0.0-beta.0.tgz","fileCount":41,"integrity":"sha512-upw2sqsZwcS2hTPe/SkFgnRYsc+ePfv4oKjHXONCSesAZRLVyLVjEKrD1IKo1RNsqz+DbbyV2SUzLtuChVDFpg==","signatures":[{"sig":"MEQCIGZ6JerFTbmlgVLwhE3ZgsnZUtEVLfKJoZjab9tboTmVAiA2f0YIb1PWYV2s3esQNXQwUeefJWB+VWg2kk0ZYUwkzQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":78105},"type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\nnpm start\n```\n","engines":{"node":">=16"},"gitHead":"81280a817d1ca2db40df405691cc6c07e1ebc546","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.24.1","highlight.js":"^11.8.0","@sentry/react":"^7.64.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^6.0.0-beta.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^22.1.0","vitest":"^0.34.2","@vitest/coverage-v8":"^0.34.2","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.5","@mui/material":"^5.14.5","react-router-dom":"^6.15.0","@mui/icons-material":"^5.14.3"},"_npmOperationalInternal":{"tmp":"tmp/react_7.0.0-beta.0_1692731033726_0.6477470624014494","host":"s3://npm-registry-packages"}},"7.0.0-beta.1":{"name":"@laboratoria/react","version":"7.0.0-beta.1","license":"MIT","_id":"@laboratoria/react@7.0.0-beta.1","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"74784bbbf48e42c857dceede27b7e5f00ef0d888","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-7.0.0-beta.1.tgz","fileCount":41,"integrity":"sha512-VGO01oHmnOir+Iu0y6gtS8K7L7Lxe6AlvgFYkYGGUmRRWdBd2bYEbLeS5YTz+sPerFxHDpgtVp1UrjLbO5WQnw==","signatures":[{"sig":"MEYCIQDftGCmaWxXHHQ/ulZ9dFitR7oCLwtB0mTFlisyo32QJQIhAMxghwiIXrdpY4j2FWgefp/HPOQcbnO8hNi64M2KSW92","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":78106},"type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\nnpm start\n```\n","engines":{"node":">=16"},"gitHead":"303645bcaedbcc8ffdd8e04a902c8728859193bb","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.24.1","highlight.js":"^11.8.0","@sentry/react":"^7.64.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^6.0.0-beta.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^22.1.0","vitest":"^0.34.2","@vitest/coverage-v8":"^0.34.2","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.5","@mui/material":"^5.14.5","react-router-dom":"^6.15.0","@mui/icons-material":"^5.14.3"},"_npmOperationalInternal":{"tmp":"tmp/react_7.0.0-beta.1_1692733126433_0.9560007076452277","host":"s3://npm-registry-packages"}},"7.0.0-beta.2":{"name":"@laboratoria/react","version":"7.0.0-beta.2","license":"MIT","_id":"@laboratoria/react@7.0.0-beta.2","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"245c3ac9265d76b8bbfe3705db0de9ba27d43fbf","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-7.0.0-beta.2.tgz","fileCount":41,"integrity":"sha512-A0YWA0Y5vxMAPi5EUWg/l16p2GRxwUupsV9e20/OsSxPdgJsRkBtiVq/XPNAUGHL5viKLdDjS6J2uPjq/ngdyA==","signatures":[{"sig":"MEUCIQDl7LNYLbP/l1FhcWtFcprjua1SPDz8OIU6OB12LKSEPAIgfXJHiW6qYIW7bsKUaSLHGO2kWFjX3Lcqv14ByY0S0J4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":78134},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\nnpm start\n```\n","engines":{"node":">=16"},"gitHead":"0792bd6e88473fe97c0b0346bf18eabd5c87e395","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.24.1","highlight.js":"^11.8.0","@sentry/react":"^7.64.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^6.0.0-beta.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^22.1.0","vitest":"^0.34.2","@vitest/coverage-v8":"^0.34.2","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.5","@mui/material":"^5.14.5","react-router-dom":"^6.15.0","@mui/icons-material":"^5.14.3"},"_npmOperationalInternal":{"tmp":"tmp/react_7.0.0-beta.2_1692734419438_0.5072660499943937","host":"s3://npm-registry-packages"}},"7.0.0-beta.3":{"name":"@laboratoria/react","version":"7.0.0-beta.3","license":"MIT","_id":"@laboratoria/react@7.0.0-beta.3","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"523b50e59ab4628c33bc600b97f41901136b5f56","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-7.0.0-beta.3.tgz","fileCount":41,"integrity":"sha512-OUWMSC8sXXK9V+Q0T4foUsWvaxXZM1qYkV4syoXw2I6cKrZ3tozsGysj8IcVMFx6dYg081kndFGhA7xsdyZZPw==","signatures":[{"sig":"MEYCIQDjQMQRVmSh5CXQpE14KwF42KTQQbZXfwgLgOWJOC1clQIhAPyQkIK9rLz8sh1qw2VTZ8wj8KU5RO3biUsRGbvI4cx8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":78302},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\nnpm start\n```\n","engines":{"node":">=16"},"gitHead":"2dcafd0751d232f2775dbf2bd82b4d338f5a7150","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.24.1","highlight.js":"^11.8.0","@sentry/react":"^7.64.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^6.0.0-beta.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^22.1.0","vitest":"^0.34.2","@vitest/coverage-v8":"^0.34.2","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.5","@mui/material":"^5.14.5","react-router-dom":"^6.15.0","@mui/icons-material":"^5.14.3"},"_npmOperationalInternal":{"tmp":"tmp/react_7.0.0-beta.3_1692734862548_0.3621616995013983","host":"s3://npm-registry-packages"}},"7.0.0-beta.4":{"name":"@laboratoria/react","version":"7.0.0-beta.4","license":"MIT","_id":"@laboratoria/react@7.0.0-beta.4","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"cd979aa3a3684c7aa2e7e4ede7d0a314d443c7ab","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-7.0.0-beta.4.tgz","fileCount":41,"integrity":"sha512-HmCV1Y1WfOeRyH/ETtW1c3jpz1C/pPnTy5HPkei08cSPbm4Wo5ADN/LTKnhO8/rmruOWOnLIxqBYUYUGTTi6Gg==","signatures":[{"sig":"MEQCIB+2Di8hISbBBkSpYZLioXu/KtycwFd6ELu0fH6NlpG6AiANU0VGg0p2JdifvMPdJTKTfi8DWPDVxJyD435vIeVlBQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":78312},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `REACT_APP_FIREBASE_API_KEY`\n* `REACT_APP_FIREBASE_PROJECT`\n* `REACT_APP_LABORATORIA_CORE_API_URL`\n\nAdemás, para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\nen el proyecto correspondiente, se debe configurar la siguiente variable de\nentorno:\n\n* `REACT_APP_GA_ID`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\nnpm start\n```\n","engines":{"node":">=16"},"gitHead":"564b540115b9e27a0fa14e819436c9a57c724e33","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.24.1","highlight.js":"^11.8.0","@sentry/react":"^7.64.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^6.0.0-beta.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^22.1.0","vitest":"^0.34.2","@vitest/coverage-v8":"^0.34.2","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.5","@mui/material":"^5.14.5","react-router-dom":"^6.15.0","@mui/icons-material":"^5.14.3"},"_npmOperationalInternal":{"tmp":"tmp/react_7.0.0-beta.4_1692735016939_0.7195565719906418","host":"s3://npm-registry-packages"}},"7.0.0-beta.5":{"name":"@laboratoria/react","version":"7.0.0-beta.5","license":"MIT","_id":"@laboratoria/react@7.0.0-beta.5","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"c6d8c600053ece12934507d5efe3a2dd725d4c08","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-7.0.0-beta.5.tgz","fileCount":41,"integrity":"sha512-dF8fCr01r+v48OaoGC/88a3/T8euf0C77XJa0l+bsCRPKqPtXfYewn/H4VKinti7zeZzx+NEUC2WeYjgFDUzWA==","signatures":[{"sig":"MEUCIQDW7pjjms2BgJxiWvCUKUHxlfgWvdCR+tmIghDJto8zrwIgUv1BdVLobxwuZHN+UaA2rrmSXR1VAFVyYPo/O+M1jvk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":78221},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\nnpm start\n```\n","engines":{"node":">=16"},"gitHead":"383c6901c84b1c469d9a8034c093419ed48aa54d","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.24.1","highlight.js":"^11.8.0","@sentry/react":"^7.64.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^6.0.0-beta.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^22.1.0","vitest":"^0.34.2","@vitest/coverage-v8":"^0.34.2","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.5","@mui/material":"^5.14.5","react-router-dom":"^6.15.0","@mui/icons-material":"^5.14.3"},"_npmOperationalInternal":{"tmp":"tmp/react_7.0.0-beta.5_1692746156238_0.6666099234629548","host":"s3://npm-registry-packages"}},"7.0.0-beta.6":{"name":"@laboratoria/react","version":"7.0.0-beta.6","license":"MIT","_id":"@laboratoria/react@7.0.0-beta.6","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"253c8c7b277906092643d9d00aaee6e638fc3900","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-7.0.0-beta.6.tgz","fileCount":41,"integrity":"sha512-qzvqjC3sSmCf173ecbTg8P9iGAgT4jP1BNIAbTp0aNSkt6Rp33Q0DE17Dq0gOvyQ51fy/BmdI9I0NTos7m5QYg==","signatures":[{"sig":"MEQCIC3/Mn8RTSybz9bbTEg0qUBfpc1lDHqaGqzsmJFbYWvfAiAyKINZ0LdbY24eu4v5+kCycOlG7PmZsLo28WHhV0MN3w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":78043},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\nnpm start\n```\n","engines":{"node":">=16"},"gitHead":"22ae8e9ae0352f5dd2250aa6721bf9615ea6ae09","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.24.1","highlight.js":"^11.8.0","@sentry/react":"^7.64.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^6.0.0-beta.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^22.1.0","vitest":"^0.34.2","@vitest/coverage-v8":"^0.34.2","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.5","@mui/material":"^5.14.5","react-router-dom":"^6.15.0","@mui/icons-material":"^5.14.3"},"_npmOperationalInternal":{"tmp":"tmp/react_7.0.0-beta.6_1692820783624_0.6209400430701297","host":"s3://npm-registry-packages"}},"7.0.0-beta.7":{"name":"@laboratoria/react","version":"7.0.0-beta.7","license":"MIT","_id":"@laboratoria/react@7.0.0-beta.7","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"df7c6d551cc787619d077579c46fb2fbee321bbf","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-7.0.0-beta.7.tgz","fileCount":41,"integrity":"sha512-A4PVhuTdPLRbFLla+kPUvmFHmyOSMaWX3KSlvTXpgskbDGe39m94HomNeklzWoohEJa7mkTm1WjxvMdv5j0Krg==","signatures":[{"sig":"MEUCIQDVnX+uUkwrIiuRhhtA7lzanGXkXI87x/bkw/ANcq1TSgIgY7JehCVu2nlmNJclkyvInqMUOF4PSB4YyB4Ax+Jf/bs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":77790},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\nnpm start\n```\n","engines":{"node":">=16"},"gitHead":"ffaec1298a52fda38ad03bc8a178211256df4fa4","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.24.1","highlight.js":"^11.8.0","@sentry/react":"^7.64.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^6.0.0-beta.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^22.1.0","vitest":"^0.34.3","@vitest/coverage-v8":"^0.34.3","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.6","@mui/material":"^5.14.6","react-router-dom":"^6.15.0","@mui/icons-material":"^5.14.6"},"_npmOperationalInternal":{"tmp":"tmp/react_7.0.0-beta.7_1693241152683_0.7706684513175139","host":"s3://npm-registry-packages"}},"7.0.0-beta.8":{"name":"@laboratoria/react","version":"7.0.0-beta.8","license":"MIT","_id":"@laboratoria/react@7.0.0-beta.8","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"5895c9149eee439e2cc15356f82f8efb931d9ba8","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-7.0.0-beta.8.tgz","fileCount":41,"integrity":"sha512-mZKXclDYDlSo1oZKelsuJtIXk+QiqBrPj3Z5NwOcrfpWJQIt2v6aLQZvhgNoPIlGZeM0OHY5EMkbn2KPcoKMXA==","signatures":[{"sig":"MEUCIQDtMnhE0oTcnzsyQNHc7ZgWxs0OF4CNRbXHXAPK0jXi2AIgdpCqyHiau3vz0gVRkgpqRHmC+HTbEacNWDBUcjsOVoI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":78232},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\nnpm start\n```\n","engines":{"node":">=16"},"gitHead":"8807cf9c5cd0a39a918c719a58685b252f15478d","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.24.1","highlight.js":"^11.8.0","@sentry/react":"^7.65.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^6.0.0-beta.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^22.1.0","vitest":"^0.34.3","@vitest/coverage-v8":"^0.34.3","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.7","@mui/material":"^5.14.7","react-router-dom":"^6.15.0","@mui/icons-material":"^5.14.7"},"_npmOperationalInternal":{"tmp":"tmp/react_7.0.0-beta.8_1693326719557_0.16792042732027435","host":"s3://npm-registry-packages"}},"7.0.0-beta.9":{"name":"@laboratoria/react","version":"7.0.0-beta.9","license":"MIT","_id":"@laboratoria/react@7.0.0-beta.9","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"a9cfe6ebe11d37a8861f71938bf7b5599fc67cfc","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-7.0.0-beta.9.tgz","fileCount":41,"integrity":"sha512-pr/ex0sBRTzmgiahC9v2Ytl37Zsp6hnoztMqSo0VE15QE+M/uEFBiGU1j3yXPv+ciTCk96Zblpyd6oFqhniueA==","signatures":[{"sig":"MEUCIQD4b5+rr1zipzApTt+G1MQe5vmmwW5hTywyvc55mAFJBgIgV2rtmA5LSxvqzXjsDRFyWIqSvaQAR86igtVHZRpTXSQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":78232},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\nnpm start\n```\n","engines":{"node":">=16"},"gitHead":"a4b3d9856c8c69b3ecebcbe11c6831e67d370504","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.24.1","highlight.js":"^11.8.0","@sentry/react":"^7.66.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^6.0.0-beta.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^22.1.0","vitest":"^0.34.3","@vitest/coverage-v8":"^0.34.3","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.7","@mui/material":"^5.14.7","react-router-dom":"^6.15.0","@mui/icons-material":"^5.14.7"},"_npmOperationalInternal":{"tmp":"tmp/react_7.0.0-beta.9_1693511984925_0.6081889607029944","host":"s3://npm-registry-packages"}},"7.0.0-beta.10":{"name":"@laboratoria/react","version":"7.0.0-beta.10","license":"MIT","_id":"@laboratoria/react@7.0.0-beta.10","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"79e690cce9c57af4b761af67ca522eaeeb7b8e24","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-7.0.0-beta.10.tgz","fileCount":41,"integrity":"sha512-gwIADWuR2YwJh4zCogiryOU7E5QGbRJHhn+Aw682xac3FOGdDd9nP9Ji4JLrDjgyWHLIHg/Bj69SaFCCeEIwuQ==","signatures":[{"sig":"MEQCIB8S9sUiBjDeNxrGamNnFZxHiDggauJuDgDvw6UXjZGlAiB3qFHdwfUxw7EEwPaCddV0MgpzJhuwZsWiMoFwZ4OVKw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":78237},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\nnpm start\n```\n","engines":{"node":">=16"},"gitHead":"161a7f1a7280587e197781a6283eb4c5b10cb7b9","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.24.1","highlight.js":"^11.8.0","@sentry/react":"^7.66.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^6.0.0-beta.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^22.1.0","vitest":"^0.34.3","@vitest/coverage-v8":"^0.34.3","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.7","@mui/material":"^5.14.7","react-router-dom":"^6.15.0","@mui/icons-material":"^5.14.7"},"_npmOperationalInternal":{"tmp":"tmp/react_7.0.0-beta.10_1693517913307_0.24158408284654054","host":"s3://npm-registry-packages"}},"7.0.0-beta.11":{"name":"@laboratoria/react","version":"7.0.0-beta.11","license":"MIT","_id":"@laboratoria/react@7.0.0-beta.11","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"f84dfc1ee61cc8598f5f7ba128e9ef1c08b5154a","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-7.0.0-beta.11.tgz","fileCount":41,"integrity":"sha512-Nm724u4PX9Msw7YUA5GHIzQ6d2S0rWv6IEBRsvO/NTula8SkxnPBjfKU6v8/IExDX9NUewJnmNedpDvf6dDE3A==","signatures":[{"sig":"MEUCIA6c2Q5T2crKPASA447HiKD8XQTWpz/bb5y60FakaNsYAiEApq20VsdsdA2qkTdrd6WuF0shO2gevshGoWbtfj7FjI0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":78530},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\nnpm start\n```\n","engines":{"node":">=16"},"gitHead":"526c36fb124d7e9964e7ccaff76e3d3157b43a71","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.24.1","highlight.js":"^11.8.0","@sentry/react":"^7.66.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^6.0.0-beta.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^22.1.0","vitest":"^0.34.3","@vitest/coverage-v8":"^0.34.3","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.7","@mui/material":"^5.14.7","react-router-dom":"^6.15.0","@mui/icons-material":"^5.14.7"},"_npmOperationalInternal":{"tmp":"tmp/react_7.0.0-beta.11_1693573805537_0.8672445660347234","host":"s3://npm-registry-packages"}},"7.0.0":{"name":"@laboratoria/react","version":"7.0.0","license":"MIT","_id":"@laboratoria/react@7.0.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"60e06c3476f0bb877e3e9f1c7580df121125a646","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-7.0.0.tgz","fileCount":41,"integrity":"sha512-1T5NzQ8L5fvyZDicsgsKFIH2Qdod9ygazYcNRHRFX90Pc7c38gOZo88dBi16k0WYPKDDFwZ09iXcoYQ1Prp+gg==","signatures":[{"sig":"MEUCIQDPyxeNBoYXn64b+o23M706lkAbIaS5V6lG/nlaWFkDgwIgJVfuha67FUfIRKO0MrmgGp032vi8/7wZIwj+CgBiiCc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":78515},"main":"./src/index.js","type":"module","module":"./src/index.js","engines":{"node":">=16"},"gitHead":"9fbdcae94f21dcbbe130dc8cd125dd88e3e70cf0","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.24.1","highlight.js":"^11.8.0","@sentry/react":"^7.68.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^6.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^22.1.0","vitest":"^0.34.4","@vitest/coverage-v8":"^0.34.4","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.7","@mui/material":"^5.14.8","react-router-dom":"^6.15.0","@mui/icons-material":"^5.14.8"},"_npmOperationalInternal":{"tmp":"tmp/react_7.0.0_1694451716860_0.985094863955547","host":"s3://npm-registry-packages"}},"7.0.1-beta.0":{"name":"@laboratoria/react","version":"7.0.1-beta.0","license":"MIT","_id":"@laboratoria/react@7.0.1-beta.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"e2f888942cbbf542f0de70b5fcb8231ab9d80d94","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-7.0.1-beta.0.tgz","fileCount":41,"integrity":"sha512-OwZPhn3OFPfzZODDJc5gVdiEZZDmYzKQ9KYhNQ74U8Wouf3oBXCqJMUwKfkw2nxsbxDB3qdQe8GEjDibgPM8vg==","signatures":[{"sig":"MEUCICodbhuBcfgn6B/ILBI63vRsDL2wbzKb3oeLWbGzq8FKAiEApOiJak3GEfLixNkC9yTJl4h8Mg+1an6EWX0mDxE3e3Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":78749},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\nnpm start\n```\n","engines":{"node":">=16"},"gitHead":"0e26e3852accac056a23f6deac824f330691295c","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.28.0","highlight.js":"^11.8.0","@sentry/react":"^7.72.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^6.0.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^22.1.0","vitest":"^0.34.5","@vitest/coverage-v8":"^0.34.5","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.11","@mui/material":"^5.14.11","react-router-dom":"^6.16.0","@mui/icons-material":"^5.14.11"},"_npmOperationalInternal":{"tmp":"tmp/react_7.0.1-beta.0_1695753304946_0.47350420920095293","host":"s3://npm-registry-packages"}},"7.0.1":{"name":"@laboratoria/react","version":"7.0.1","license":"MIT","_id":"@laboratoria/react@7.0.1","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"a779fc9d77ca4568192810fcd7fa073ca217278a","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-7.0.1.tgz","fileCount":41,"integrity":"sha512-FNH3rsVK2VacUrUR5oTKFxVAjBRJy0Hr6/dtiECkCwPCtsM5P1U47RuGZnfIJVSPgiDxQARr824UonKKrqbujA==","signatures":[{"sig":"MEUCIGfwyQ9JwL3bExxIqGOW0WIas21lYOIvlfDviHisXE9pAiEA8Kp6PGKPEqFtTXJAIctf9lMyWrVFHm48/tpczgQkauI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":78743},"main":"./src/index.js","type":"module","module":"./src/index.js","engines":{"node":">=16"},"gitHead":"1a6e07251bcc6e6eac00257d09c52964467130a8","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.5.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.16.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.28.0","highlight.js":"^11.8.0","@sentry/react":"^7.72.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^6.0.0"},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^22.1.0","vitest":"^0.34.5","@vitest/coverage-v8":"^0.34.5","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.11","@mui/material":"^5.14.11","react-router-dom":"^6.16.0","@mui/icons-material":"^5.14.11"},"_npmOperationalInternal":{"tmp":"tmp/react_7.0.1_1695754643511_0.6618498698503175","host":"s3://npm-registry-packages"}},"7.1.0-beta.0":{"name":"@laboratoria/react","version":"7.1.0-beta.0","license":"MIT","_id":"@laboratoria/react@7.1.0-beta.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"fe0ebc0f7d278ea95f18f07d3555b8f702cd9d9a","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-7.1.0-beta.0.tgz","fileCount":41,"integrity":"sha512-erJdPO7dmEmvMTk1N03KCvThSlxADpTDYzQIqqJJUOThs7LVR62xr77VHIxFfnyV+KssHnW9mzJ/QZcZCYnCPw==","signatures":[{"sig":"MEQCID+DgxwzOdV/CjQtz/NWYA1DmgeEz80XBCr/w9mazLSyAiB/QD5e4G8iTgxPiwpqCJUTVm1VxwwBRCDvh0FIuMQtNQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":78756},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\nnpm start\n```\n","engines":{"node":">=16"},"gitHead":"b1598cd3b38678a6f18ab2c91765350efb989053","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.8.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.18.2","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.31.0","highlight.js":"^11.9.0","@sentry/react":"^7.75.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^6.1.0-beta.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^22.1.0","vitest":"^0.34.6","@vitest/coverage-v8":"^0.34.6","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.15","@mui/material":"^5.14.15","react-router-dom":"^6.17.0","@mui/icons-material":"^5.14.15"},"_npmOperationalInternal":{"tmp":"tmp/react_7.1.0-beta.0_1698184805474_0.6929229969118744","host":"s3://npm-registry-packages"}},"7.1.0-beta.1":{"name":"@laboratoria/react","version":"7.1.0-beta.1","license":"MIT","_id":"@laboratoria/react@7.1.0-beta.1","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"80d1f64f5a3a00eab4e6ea6a43ba82fea871b774","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-7.1.0-beta.1.tgz","fileCount":41,"integrity":"sha512-yu7Nwrfg+5pCM0xVqoMJk41t1yjvobK+wMQgPsldWbKSpNwc4ghrmmwDOvEaP9dQJ53p7cVLjwDCS4x8rrQzzA==","signatures":[{"sig":"MEUCIQCcRpjZD2/48wGRmGrqYsfIQ9gs6xd456bF3uU1PJqokAIgHFiAkPjj0azlsCQE2xKUEF0P6b5lty/GO058m71MjSg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":78757},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\nnpm start\n```\n","engines":{"node":">=16"},"gitHead":"12de34a6bce914420160564b90d0b3e6a2614f1c","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.8.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.18.2","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.31.0","highlight.js":"^11.9.0","@sentry/react":"^7.75.1","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^6.1.0-beta.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^22.1.0","vitest":"^0.34.6","@vitest/coverage-v8":"^0.34.6","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.15","@mui/material":"^5.14.15","react-router-dom":"^6.17.0","@mui/icons-material":"^5.14.15"},"_npmOperationalInternal":{"tmp":"tmp/react_7.1.0-beta.1_1698398583049_0.03377581662117213","host":"s3://npm-registry-packages"}},"7.1.0-beta.2":{"name":"@laboratoria/react","version":"7.1.0-beta.2","license":"MIT","_id":"@laboratoria/react@7.1.0-beta.2","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"4f98b5d0c9d0cfccbe576a74be2ff38ba96deed4","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-7.1.0-beta.2.tgz","fileCount":41,"integrity":"sha512-F1myrtx/e48Bv9dLJfNcce/OrfOXF/jPh6/clGQzecU9JcuzGX3UbgcWH+j+/I2CUGdSLNGyKmxAuPddCy9/FQ==","signatures":[{"sig":"MEUCIEkD37SP8KC+0c7YmkqbZO9y2c0GwlGehisvvX0ttUdrAiEA0OVWZgdoy/BG9Sgm2Ln/rX8estvEtbwJQeAuvFwxWOw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":78931},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\nnpm start\n```\n","engines":{"node":">=16"},"gitHead":"1e2a78afe149eb5cd42ed720dc1edb699f2014af","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.8.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.18.2","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.31.0","highlight.js":"^11.9.0","@sentry/react":"^7.75.1","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^6.1.0-beta.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^22.1.0","vitest":"^0.34.6","@vitest/coverage-v8":"^0.34.6","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.15","@mui/material":"^5.14.15","react-router-dom":"^6.17.0","@mui/icons-material":"^5.14.15"},"_npmOperationalInternal":{"tmp":"tmp/react_7.1.0-beta.2_1698399452001_0.6385832365392985","host":"s3://npm-registry-packages"}},"7.1.0-beta.3":{"name":"@laboratoria/react","version":"7.1.0-beta.3","license":"MIT","_id":"@laboratoria/react@7.1.0-beta.3","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"542e688926aaeb023aa04edbe8f8916efb9acadb","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-7.1.0-beta.3.tgz","fileCount":43,"integrity":"sha512-1zPfnZ84XysR6Z0z3wP3sMypA36Jqe4cLZQ2CPmfdA/ZxLTlczkzf76FiqNkIqCLywfAL1F0VB3eXrfZH+1iUw==","signatures":[{"sig":"MEQCIFRhjfJ6EteLPEHgaExfe9z5TJw0KtI+1+iDTeAXaJi2AiBqAMzR05V0Dh6Afyn9381Q5HAgo4u4h8FKY0xQsRiGpA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":80146},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\nnpm start\n```\n","engines":{"node":">=16"},"gitHead":"4857c7a986f00fbf1a3f29c738764110c84e745a","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.8.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.18.2","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.31.0","highlight.js":"^11.9.0","@sentry/react":"^7.75.1","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^6.1.0-beta.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^22.1.0","vitest":"^0.34.6","@vitest/coverage-v8":"^0.34.6","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.15","@mui/material":"^5.14.15","react-router-dom":"^6.17.0","@mui/icons-material":"^5.14.15"},"_npmOperationalInternal":{"tmp":"tmp/react_7.1.0-beta.3_1698403197516_0.8636986082002909","host":"s3://npm-registry-packages"}},"7.1.0-beta.4":{"name":"@laboratoria/react","version":"7.1.0-beta.4","license":"MIT","_id":"@laboratoria/react@7.1.0-beta.4","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"3b4508602c1a55c006760893d58aaf469b016726","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-7.1.0-beta.4.tgz","fileCount":43,"integrity":"sha512-06MhX9KGOFcsDOhXHaBQMOjwQzwM40Q9NbweHBSlPYH5LrxT6phzTYCj6Us9FJD0Yt/hqJhqwB7PIYxDucljmw==","signatures":[{"sig":"MEYCIQD8TvQtbrhuJgUd8F2Z1ygK+tBvif3n1ItPcDRf+o4HHAIhAMiKsu4Qr8NzmvnOA1/JCyYIyDV59MPZXkI8bEYwmzJG","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":80148},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\nnpm start\n```\n","engines":{"node":">=16"},"gitHead":"09cc46d4bb076138288fae7bbfe10e17d5fdcfb8","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.8.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.18.2","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.31.0","highlight.js":"^11.9.0","@sentry/react":"^7.75.1","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^6.1.0-beta.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^22.1.0","vitest":"^0.34.6","@vitest/coverage-v8":"^0.34.6","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.15","@mui/material":"^5.14.15","react-router-dom":"^6.17.0","@mui/icons-material":"^5.14.15"},"_npmOperationalInternal":{"tmp":"tmp/react_7.1.0-beta.4_1698404285318_0.7562143875642473","host":"s3://npm-registry-packages"}},"7.1.0-beta.5":{"name":"@laboratoria/react","version":"7.1.0-beta.5","license":"MIT","_id":"@laboratoria/react@7.1.0-beta.5","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"cb3ae80d5a5d9d51a24e8730b3df1b640073965e","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-7.1.0-beta.5.tgz","fileCount":43,"integrity":"sha512-P+XdDlfS2zPT/NWeeLZn0SZzJufd1XpwzB+T5njSBQrxSC81MiOw7PtwwSlmd7Onqw3PC1+8qJ+1erbDNx6Mlg==","signatures":[{"sig":"MEUCIQC4DbN8w7ZlvGzBFPEOWjpN7Q8GwjkiLtCIN/iBV3CTGwIgC1ZNFuVEPYVXsiQc9/K+GE2w+y5SKpclmerPibRagBo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":80464},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\nnpm start\n```\n","engines":{"node":">=16"},"gitHead":"9f7c9cb5154aa075616811751670e54be26f86e5","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.8.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.18.2","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.31.1","highlight.js":"^11.9.0","@sentry/react":"^7.76.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^6.1.0-beta.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^22.1.0","vitest":"^0.34.6","@vitest/coverage-v8":"^0.34.6","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.15","@mui/material":"^5.14.15","react-router-dom":"^6.17.0","@mui/icons-material":"^5.14.15"},"_npmOperationalInternal":{"tmp":"tmp/react_7.1.0-beta.5_1698680789958_0.5865709946192883","host":"s3://npm-registry-packages"}},"7.1.0":{"name":"@laboratoria/react","version":"7.1.0","license":"MIT","_id":"@laboratoria/react@7.1.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"6b70bd48169971279122781d13f8efb45aac75ac","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-7.1.0.tgz","fileCount":43,"integrity":"sha512-iZasne9D9p1u0eH3EyIWQwirjCm0lYKTxlDrOnX+gxaPPBhn6MBS6OuYxMmNrNhp3+nGJYpOPmK5D1X8MfljaQ==","signatures":[{"sig":"MEUCIGWptSNBw/XR0PKFa8VKhAzrRqSzfPIUVkjOnn6Iv+ArAiEA3iaDdOT3wMt0AZ/u2T2KpZ2/Ki4I/CJ40yBdxHCksQY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":80450},"main":"./src/index.js","type":"module","module":"./src/index.js","engines":{"node":">=16"},"gitHead":"a7b9aa28f3cf07988eca0017af59e5276e66d14b","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.8.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.18.2","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.31.1","highlight.js":"^11.9.0","@sentry/react":"^7.77.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^6.1.0"},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^22.1.0","vitest":"^0.34.6","@vitest/coverage-v8":"^0.34.6","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.16","@mui/material":"^5.14.16","react-router-dom":"^6.17.0","@mui/icons-material":"^5.14.16"},"_npmOperationalInternal":{"tmp":"tmp/react_7.1.0_1698755032984_0.06401364242631025","host":"s3://npm-registry-packages"}},"8.0.0-beta.0":{"name":"@laboratoria/react","version":"8.0.0-beta.0","license":"MIT","_id":"@laboratoria/react@8.0.0-beta.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"51e0d1c1b5d4626ac8f8545aa5597701e6011f48","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-8.0.0-beta.0.tgz","fileCount":43,"integrity":"sha512-HSVrNySo6Y+sZVIIYAznJv4sClHzAGHIOQoD5u0z7HC+BUQ8ZKO9c74rQMAS8cBg3ZI1f3ayrQQyTOF9UDkltg==","signatures":[{"sig":"MEQCICe2QhNiF5biAyzTHsx5B9Ta3Fjh0XxuaFn/s8HOJrz0AiATUyIOMbhw+Z0gt4NPU3fM1D+Ii13ojBl39R8lFp5IPw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":80758},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\nnpm start\n```\n","engines":{"node":">=16"},"gitHead":"8e68604d93d458a01f4cc8f721e879ea2abe5bb2","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"9.8.1","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"18.18.2","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.31.1","highlight.js":"^11.9.0","@sentry/react":"^7.80.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^6.1.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^22.1.0","vitest":"^0.34.6","@vitest/coverage-v8":"^0.34.6","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.17","@mui/material":"^5.14.17","react-router-dom":"^6.18.0","@mui/icons-material":"^5.14.16"},"_npmOperationalInternal":{"tmp":"tmp/react_8.0.0-beta.0_1699830756613_0.31382311828422904","host":"s3://npm-registry-packages"}},"8.0.0-beta.1":{"name":"@laboratoria/react","version":"8.0.0-beta.1","license":"MIT","_id":"@laboratoria/react@8.0.0-beta.1","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"bd4987d041896939397ba65a76ad5ecf170d3e70","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-8.0.0-beta.1.tgz","fileCount":43,"integrity":"sha512-7HAB3A2hIiB8xZ5ayYjyPstTDeTHqZqsLc4vqKAEeG2k6cnT8xbyetu7SGlruJgiZ0TNFT06xLTotxutQP22YA==","signatures":[{"sig":"MEUCIQD6S+hMpOe+S/1Y8m9qUlbFXXlKYdcJrYBBOg/xGEC/8wIgLZh1mQXmFJwIzLW9/4og4/McW7BTYRGlIg6Or1Um8vk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":80766},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\nnpm start\n```\n","engines":{"node":">=18"},"gitHead":"483615eee962ef8b2b797a1829f82e1bad6f8dc5","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"10.1.0","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"20.9.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.31.2","highlight.js":"^11.9.0","@sentry/react":"^7.81.1","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^7.0.0-beta.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^22.1.0","vitest":"^0.34.6","@vitest/coverage-v8":"^0.34.6","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.18","@mui/material":"^5.14.18","react-router-dom":"^6.20.0","@mui/icons-material":"^5.14.18"},"_npmOperationalInternal":{"tmp":"tmp/react_8.0.0-beta.1_1700695913801_0.05229743090574157","host":"s3://npm-registry-packages"}},"8.0.0-beta.2":{"name":"@laboratoria/react","version":"8.0.0-beta.2","license":"MIT","_id":"@laboratoria/react@8.0.0-beta.2","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"3f2e6b48c773169d02d79486afab1ee912e5cf0e","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-8.0.0-beta.2.tgz","fileCount":43,"integrity":"sha512-mF2pH1GDGARgcK7ET3Uob6rHzKZ26AOV7+QtyYG3mKvWkjtzICSxheK7JpXdKtZZMCLF4UTfrkPyKLuxv9Iung==","signatures":[{"sig":"MEYCIQDsdO8r3bwsGq65TT/YFGvA4muY4V4dSrQ1saHyPFlzrgIhAJSdjs+BW+kfNzsM6dFNzPIYkXyeaqiaANwcdFfRUaU2","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":80757},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\nnpm start\n```\n","engines":{"node":">=18"},"gitHead":"bfd2cb6506268f8950449b4504d3b82c23abfb3b","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"10.2.3","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"20.10.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.32.1","highlight.js":"^11.9.0","@sentry/react":"^7.86.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^7.0.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^23.0.1","vitest":"^1.0.4","@vitest/coverage-v8":"^1.0.4","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.14.20","@mui/material":"^5.14.20","react-router-dom":"^6.20.1","@mui/icons-material":"^5.14.19"},"_npmOperationalInternal":{"tmp":"tmp/react_8.0.0-beta.2_1702381369151_0.5263572856011336","host":"s3://npm-registry-packages"}},"8.0.0-beta.3":{"name":"@laboratoria/react","version":"8.0.0-beta.3","license":"MIT","_id":"@laboratoria/react@8.0.0-beta.3","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"082b7957b8382ff22855c86544a57aa4e6031194","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-8.0.0-beta.3.tgz","fileCount":43,"integrity":"sha512-loP02lt6ZJPWhqeDmstb2scsnaYFUuHyUH+m5/k3ZlxVb0b+ASoKccTcNzqU53XUgpInSkbcRFIsjCdu/T8wtg==","signatures":[{"sig":"MEYCIQCALQujN2oUm8jZXSpouVl67TaAXs06B/6JzrLd7knDRAIhAIpGEiItcU3ANF11wMYacmiAV4tuShkSUXH8ZZTimnrd","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":80754},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\nnpm run watch\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.cache\nnpm start\n```\n","engines":{"node":">=18"},"gitHead":"e7ab1f55498e259bb39d9e26408ff36ab235ae73","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"10.2.3","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"20.10.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.32.3","highlight.js":"^11.9.0","@sentry/react":"^7.95.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^7.1.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^24.0.0","vitest":"^1.2.1","@vitest/coverage-v8":"^1.2.1","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.15.6","@mui/material":"^5.15.6","react-router-dom":"^6.21.3","@mui/icons-material":"^5.15.6"},"_npmOperationalInternal":{"tmp":"tmp/react_8.0.0-beta.3_1706098493842_0.8966352488789728","host":"s3://npm-registry-packages"}},"8.0.0-beta.4":{"name":"@laboratoria/react","version":"8.0.0-beta.4","license":"MIT","_id":"@laboratoria/react@8.0.0-beta.4","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"dfd9d811848f98a820c366ba03897dd49f3caf85","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-8.0.0-beta.4.tgz","fileCount":44,"integrity":"sha512-HWr2Oy9NcMyb36Umxh9MChlu5tjXZaId/G9g9WTO8USvwajhk3IZjxvZIyxnO8fesb+QsmISEJ8v2xe+me2xQQ==","signatures":[{"sig":"MEUCIQCQyRibPPkudD0AG5R9OH05RtvD1RLYFvv19xo4ggFKegIgGKRWYfP3YnpSb5Yhh++0B6tjdaPpKcfKv2iZuN3OPi4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":82500},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.vite* && npm start\n```\n","engines":{"node":">=18"},"gitHead":"d64e65783370b624b8c56f4cc00d8eae24bc8db8","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"10.2.4","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"20.11.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.32.3","highlight.js":"^11.9.0","@sentry/react":"^7.95.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^7.1.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^24.0.0","vitest":"^1.2.1","@vitest/coverage-v8":"^1.2.1","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.15.6","@mui/material":"^5.15.6","react-router-dom":"^6.21.3","@mui/icons-material":"^5.15.6"},"_npmOperationalInternal":{"tmp":"tmp/react_8.0.0-beta.4_1706142958055_0.5207509287831789","host":"s3://npm-registry-packages"}},"8.0.0-beta.5":{"name":"@laboratoria/react","version":"8.0.0-beta.5","license":"MIT","_id":"@laboratoria/react@8.0.0-beta.5","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"fc732e1fab71a8ab316d677ba8971e1ca1546e56","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-8.0.0-beta.5.tgz","fileCount":44,"integrity":"sha512-Vp5lf/cc9/xMEzM+4JQlTb0XfIZ2JVTDQVgIRLnqXM+BnB0aDCtRzHfDbQzFWGTcPAZqB55f6/MKkC4V2djQ6w==","signatures":[{"sig":"MEUCIQC7a8mSb3oayfwNOSYQGGCUwM0xCN1db7lGhPYo6DDjCAIgGEdUiLoTlK498hCUeDbK9WeOi2Iiqsl4s8Os9NKe2GA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84249},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`RelationPicker`](./src/RelationPicker)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.vite* && npm start\n```\n","engines":{"node":">=18"},"gitHead":"ff6ab227cee12a171baebac5057aa1f85c7d0e88","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"10.2.4","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"20.11.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.32.5","highlight.js":"^11.9.0","@sentry/react":"^7.99.0","mui-tel-input":"^3.2.2","lodash.throttle":"^4.1.1","@laboratoria/sdk-js":"^7.1.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^24.0.0","vitest":"^1.2.2","@vitest/coverage-v8":"^1.2.2","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.15.6","@mui/material":"^5.15.6","react-router-dom":"^6.21.3","@mui/icons-material":"^5.15.6"},"_npmOperationalInternal":{"tmp":"tmp/react_8.0.0-beta.5_1706668794733_0.5551613307896133","host":"s3://npm-registry-packages"}},"8.0.0-beta.6":{"name":"@laboratoria/react","version":"8.0.0-beta.6","license":"MIT","_id":"@laboratoria/react@8.0.0-beta.6","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"c97e3e9430f4a77c6fdf5e062b25169c2a6fa9ff","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-8.0.0-beta.6.tgz","fileCount":43,"integrity":"sha512-CGa1ohEr8P52kJ8XwqNsvYnFJntIjMGmj/hNbSPzgAsNjrGDKRyBLUX/uEWF3zt82rnUrinxYxKtzcg22AKLxg==","signatures":[{"sig":"MEUCIQC1ylQqFS3wcaPXYTN05EVWXLwubdpPRFIxwdU+sWaDXwIgRaeUjPAeUoSd/+s3OHaJvd9b7avyWRzHcJPVVny5Byc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":79645},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`ModelAutocomplete`](./src/ModelAutocomplete)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.vite* && npm start\n```\n","engines":{"node":">=18"},"gitHead":"04d6d8c78a38c585759a65bb2dcee70f39845a25","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"10.2.4","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"20.11.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.32.5","highlight.js":"^11.9.0","@sentry/react":"^7.99.0","mui-tel-input":"^3.2.2","lodash.debounce":"^4.0.8","@laboratoria/sdk-js":"^7.2.0-beta.0"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^24.0.0","vitest":"^1.2.2","@vitest/coverage-v8":"^1.2.2","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.15.7","@mui/material":"^5.15.7","react-router-dom":"^6.21.3","@mui/icons-material":"^5.15.7"},"_npmOperationalInternal":{"tmp":"tmp/react_8.0.0-beta.6_1706787199144_0.7821949160244661","host":"s3://npm-registry-packages"}},"8.0.0-beta.7":{"name":"@laboratoria/react","version":"8.0.0-beta.7","license":"MIT","_id":"@laboratoria/react@8.0.0-beta.7","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"f2c6541ffa96e2d6d6f01fc2a8d888aad766d283","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-8.0.0-beta.7.tgz","fileCount":43,"integrity":"sha512-uxh27ukJXnZ4zO2Mv9lAOCsBOmnN/PuE0ChBUzrBU1pw52YxnodcrqwD7XzeWvues9XDKU3u6wpt7MvaXhenSg==","signatures":[{"sig":"MEUCIQDYP3jJwv6PAwK0Np5GvT/rhYor8qn22hvJK60rgBsy0wIgS2WT2L9oROpWqY9liuCNctoPLZ4D4AiPSdHxzar1dEc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":79645},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`ModelAutocomplete`](./src/ModelAutocomplete)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.vite* && npm start\n```\n","engines":{"node":">=18"},"gitHead":"34525f74113ba58697e5d1f7762665f14d9bc9ee","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"10.2.4","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"20.11.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.32.5","highlight.js":"^11.9.0","@sentry/react":"^7.99.0","mui-tel-input":"^3.2.2","lodash.debounce":"^4.0.8","@laboratoria/sdk-js":"^7.2.0-beta.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^24.0.0","vitest":"^1.2.2","@vitest/coverage-v8":"^1.2.2","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.15.7","@mui/material":"^5.15.7","react-router-dom":"^6.21.3","@mui/icons-material":"^5.15.7"},"_npmOperationalInternal":{"tmp":"tmp/react_8.0.0-beta.7_1706809680160_0.4345226981803614","host":"s3://npm-registry-packages"}},"8.0.0-beta.8":{"name":"@laboratoria/react","version":"8.0.0-beta.8","license":"MIT","_id":"@laboratoria/react@8.0.0-beta.8","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"a75d8aeafc4a5435e9f57a108b4fde681cea413b","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-8.0.0-beta.8.tgz","fileCount":43,"integrity":"sha512-09deIHR4YXHl73aBddT/PmMKsUV3Fjk0G7v7Jlq3Rcuu69FcTv9137BK46UowNstQe8kTEBU6B0ad/mz1/y76A==","signatures":[{"sig":"MEQCICZSazV+mekovBmtFYixqDe9lRhmrnBxOyULof9jfq9/AiB0AJx70qdvmi2KXJJRnfjt6XHu5SQ2ZTlqinX8NZnEQQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":79645},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`ModelAutocomplete`](./src/ModelAutocomplete)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.vite* && npm start\n```\n","engines":{"node":">=18"},"gitHead":"e41d9fc29431958c62da2420c04c3dd22f5058fa","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"10.2.4","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"20.11.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.32.5","highlight.js":"^11.9.0","@sentry/react":"^7.99.0","mui-tel-input":"^3.2.2","lodash.debounce":"^4.0.8","@laboratoria/sdk-js":"^7.2.0-beta.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^24.0.0","vitest":"^1.2.2","@vitest/coverage-v8":"^1.2.2","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.15.7","@mui/material":"^5.15.7","react-router-dom":"^6.22.0","@mui/icons-material":"^5.15.7"},"_npmOperationalInternal":{"tmp":"tmp/react_8.0.0-beta.8_1706900523687_0.6541907730076952","host":"s3://npm-registry-packages"}},"8.0.0-beta.9":{"name":"@laboratoria/react","version":"8.0.0-beta.9","license":"MIT","_id":"@laboratoria/react@8.0.0-beta.9","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"4daaf4c7cf0e917f8f4c9fd18fba2460e00bbddc","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-8.0.0-beta.9.tgz","fileCount":77,"integrity":"sha512-6HJYSqxrEJP6Ta8JmBByVeh/+KOEUK4DT3fiXPjsHII+w6pGbs02rDhVXVo8YBe9EZR74oTGU6WjdgJXQGbGKg==","signatures":[{"sig":"MEYCIQCL37XA3jr+5S6RXuvXC8xOhRxjdCUJNy48iye578R1+gIhAJ+MalA+gVwxyKADMQF5S9P+XRfBUDyRLYeL+aY+h9AJ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":163217},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`ModelAutocomplete`](./src/ModelAutocomplete)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.vite* && npm start\n```\n","engines":{"node":">=18"},"gitHead":"e2387aa989070f145a566461ca9795c5317fb443","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"10.2.4","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"20.11.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.32.5","highlight.js":"^11.9.0","@sentry/react":"^7.99.0","mui-tel-input":"^3.2.2","lodash.debounce":"^4.0.8","@laboratoria/sdk-js":"^7.2.0-beta.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^24.0.0","vitest":"^1.2.2","@vitest/coverage-v8":"^1.2.2","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.15.7","@mui/material":"^5.15.7","react-router-dom":"^6.22.0","@mui/icons-material":"^5.15.7"},"_npmOperationalInternal":{"tmp":"tmp/react_8.0.0-beta.9_1707245739963_0.2540448002000617","host":"s3://npm-registry-packages"}},"8.0.0-beta.10":{"name":"@laboratoria/react","version":"8.0.0-beta.10","license":"MIT","_id":"@laboratoria/react@8.0.0-beta.10","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"2b8b0948b0ba865c55e02f2c989b919e538658a6","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-8.0.0-beta.10.tgz","fileCount":77,"integrity":"sha512-lGx/UJgBaWGgtJyzhSrD7pieBMxBQ8e5c8c4qvQNscpz7/Mc6QvvUcAwkLxDzn4ncjKpiF4X1sCJ0yKHMU74VA==","signatures":[{"sig":"MEUCID4qOz4CUAMNznfRDyz8hvYJTbG8btGu3mQS0sUcjg8mAiEAghBU+m9hoB01UtK8f6nQSn+dgW7UHmhAEy9MXSywNOk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":164801},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`ModelAutocomplete`](./src/ModelAutocomplete)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.vite* && npm start\n```\n","engines":{"node":">=18"},"gitHead":"3c70876145b9637e38f40adb0023d7627d662a6f","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"10.2.4","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"20.11.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.32.5","highlight.js":"^11.9.0","@sentry/react":"^7.99.0","mui-tel-input":"^3.2.2","lodash.debounce":"^4.0.8","@laboratoria/sdk-js":"^7.2.0-beta.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^24.0.0","vitest":"^1.2.2","@vitest/coverage-v8":"^1.2.2","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.15.7","@mui/material":"^5.15.7","react-router-dom":"^6.22.0","@mui/icons-material":"^5.15.7"},"_npmOperationalInternal":{"tmp":"tmp/react_8.0.0-beta.10_1707390025605_0.5058393355400146","host":"s3://npm-registry-packages"}},"8.0.0-beta.11":{"name":"@laboratoria/react","version":"8.0.0-beta.11","license":"MIT","_id":"@laboratoria/react@8.0.0-beta.11","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"d804001f8dd19e6152655689c09b01ec8ff91c01","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-8.0.0-beta.11.tgz","fileCount":77,"integrity":"sha512-ET9RWmWA3X8p22wpKxQU2hB8VyiF6QY4Wh7y1pB8rbVm+L1cb8RvzoZhPilCQmsX89si/2Y09Up+H2FNSCk4yQ==","signatures":[{"sig":"MEUCIQChIUgYoid0fh4pLTJ8v4ovnrlYw9FwSXaOddvXtLG6mQIgOtCYtlaQBjG64A5uu7Gc1zkY24f5yS2CB34hMO/z9XM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":164802},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`ModelAutocomplete`](./src/ModelAutocomplete)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.vite* && npm start\n```\n","engines":{"node":">=18"},"gitHead":"66d154cf7f47aefd25146dac66d80fcb53317e4c","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"10.2.4","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"20.11.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.32.6","highlight.js":"^11.9.0","@sentry/react":"^7.100.1","mui-tel-input":"^3.2.2","lodash.debounce":"^4.0.8","@laboratoria/sdk-js":"^7.2.0-beta.3"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^24.0.0","vitest":"^1.2.2","@vitest/coverage-v8":"^1.2.2","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.15.9","@mui/material":"^5.15.9","react-router-dom":"^6.22.0","@mui/icons-material":"^5.15.9"},"_npmOperationalInternal":{"tmp":"tmp/react_8.0.0-beta.11_1707425028180_0.746989792039322","host":"s3://npm-registry-packages"}},"8.0.0-beta.12":{"name":"@laboratoria/react","version":"8.0.0-beta.12","license":"MIT","_id":"@laboratoria/react@8.0.0-beta.12","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"1d05052eed7cb29ca20c9cc8df1d650a9fe425be","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-8.0.0-beta.12.tgz","fileCount":77,"integrity":"sha512-3/Dz18CkCVR7hDBnHDvuDLd8yRid/DMc4GLEJ3WNsJmLvLiARm8xuURDb3BHU+PJA8OT3NhIqJQZER6gxlsTNQ==","signatures":[{"sig":"MEUCIQDFG+3eIb9rGYfYhDW+irHG7AaY8EH8QAliR6PZ9zFvtQIgYdlObV0veKZO6Ow1dN8IytrrFJqHRFEkjJSNfofzqbQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":164856},"main":"./src/index.js","type":"module","module":"./src/index.js","readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`ModelAutocomplete`](./src/ModelAutocomplete)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.vite* && npm start\n```\n","engines":{"node":">=18"},"gitHead":"63159851334355242e19ce27911c945e6ad8dd16","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"10.2.4","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"20.11.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.32.6","highlight.js":"^11.9.0","@sentry/react":"^7.100.1","mui-tel-input":"^3.2.2","lodash.debounce":"^4.0.8","@laboratoria/sdk-js":"^7.2.0-beta.3"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jsdom":"^24.0.0","vitest":"^1.2.2","@vitest/coverage-v8":"^1.2.2","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.15.9","@mui/material":"^5.15.9","react-router-dom":"^6.22.0","@mui/icons-material":"^5.15.9"},"_npmOperationalInternal":{"tmp":"tmp/react_8.0.0-beta.12_1707479901449_0.31786272810565075","host":"s3://npm-registry-packages"}},"8.0.0":{"name":"@laboratoria/react","version":"8.0.0","license":"MIT","_id":"@laboratoria/react@8.0.0","maintainers":[{"name":"mfdebian","email":"alfredo.arosteguy@gmail.com"},{"name":"bouli","email":"contato@bouli.com.br"},{"name":"lupomontero","email":"lupomontero@gmail.com"}],"dist":{"shasum":"d3c360da0c09baa1e24edbc93c25750e425d7192","tarball":"https://registry.npmjs.org/@laboratoria/react/-/react-8.0.0.tgz","fileCount":77,"integrity":"sha512-KzUT7+MlYV9MgWGpH24eZIqOqo/1fgNOVriSSpmZF6J783yubcs/3x9nMECErBz+JrsPnY4Tcsq2ppGZQEKM6A==","signatures":[{"sig":"MEUCIQD3WqKbj4ydkJ5Z4Alh7giQAVe/kcI56y65Imhy/T6XigIgVtnP9r8xReRVtj4+DI00dLlzjQNTkMDZSX5ISeO1+gM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":164841},"main":"./src/index.js","type":"module","module":"./src/index.js","engines":{"node":">=18"},"gitHead":"32838caff815c76522ef266196c2ba09326a8289","scripts":{"test":"vitest run --coverage","link-sdk":"rm -rf node_modules/@laboratoria/sdk-js && ln -s ../../../sdk-js node_modules/@laboratoria/","changelog":"git log $(git tag | grep -v -E \"alpha|beta|rc\" | sort | tail -1)..HEAD --oneline --format=\"* %h %s\" | grep -v 'chore(release): Bump'"},"_npmUser":{"name":"lupomontero","email":"lupomontero@gmail.com"},"_npmVersion":"10.2.4","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","directories":{},"_nodeVersion":"20.11.0","dependencies":{"react-ace":"^10.1.0","ace-builds":"^1.32.6","highlight.js":"^11.9.0","@sentry/react":"^7.100.1","mui-tel-input":"^3.2.2","lodash.debounce":"^4.0.8","@laboratoria/sdk-js":"^7.2.0"},"_hasShrinkwrap":false,"devDependencies":{"jsdom":"^24.0.0","vitest":"^1.2.2","@vitest/coverage-v8":"^1.2.2","@testing-library/react":"^12.1.5"},"peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","@mui/styles":"^5.15.9","@mui/material":"^5.15.9","react-router-dom":"^6.22.0","@mui/icons-material":"^5.15.9"},"_npmOperationalInternal":{"tmp":"tmp/react_8.0.0_1707501869889_0.4712777002295838","host":"s3://npm-registry-packages"}}},"time":{"created":"2021-12-02T04:32:57.215Z","modified":"2025-11-26T17:52:19.567Z","0.1.0":"2021-12-02T04:32:57.370Z","0.1.1":"2021-12-02T04:42:11.808Z","0.2.0":"2022-01-11T16:31:55.930Z","1.0.0":"2022-01-26T23:38:47.095Z","1.1.0":"2022-02-01T00:30:20.461Z","1.2.0":"2022-02-03T02:04:00.253Z","1.3.0":"2022-02-09T00:25:34.768Z","1.4.0":"2022-02-16T00:03:44.078Z","1.5.0":"2022-03-10T21:19:32.450Z","1.6.0":"2022-03-11T18:08:23.833Z","1.7.0":"2022-03-22T21:21:51.498Z","1.8.0":"2022-03-22T23:50:06.203Z","1.8.1":"2022-03-28T15:50:17.499Z","2.0.0-alpha.0":"2022-03-28T16:33:16.494Z","2.0.0-alpha.1":"2022-03-29T02:04:10.707Z","1.9.0":"2022-03-29T23:51:01.831Z","2.0.0-alpha.2":"2022-03-30T16:44:24.846Z","2.0.0-alpha.3":"2022-03-30T22:36:07.292Z","1.10.0":"2022-04-03T00:01:46.274Z","1.11.0":"2022-04-05T20:17:08.858Z","2.0.0-alpha.4":"2022-04-05T20:21:11.491Z","1.12.0":"2022-06-02T22:42:34.680Z","2.0.0-alpha.5":"2022-06-02T23:49:31.489Z","2.0.0":"2022-06-16T03:08:39.246Z","2.1.0":"2022-06-23T19:59:28.431Z","2.1.1":"2022-06-30T23:42:20.664Z","2.1.2":"2022-08-11T13:27:36.859Z","2.2.0":"2022-08-19T14:15:16.219Z","2.3.0":"2022-08-23T17:30:32.237Z","2.4.0":"2022-09-01T14:04:00.504Z","2.5.0":"2022-09-09T13:51:40.257Z","2.6.0":"2022-09-15T20:30:51.678Z","2.7.0":"2022-09-29T22:46:19.020Z","2.7.1":"2022-10-12T16:01:01.736Z","3.0.0-alpha.0":"2022-11-10T21:32:59.880Z","3.0.0-alpha.1":"2022-11-24T21:11:27.595Z","3.0.0-alpha.2":"2022-11-25T10:30:43.152Z","3.0.0-beta.0":"2022-12-15T16:32:00.548Z","3.0.0":"2022-12-17T00:30:41.556Z","3.0.1":"2023-01-06T18:14:59.583Z","3.1.0":"2023-01-09T17:01:04.903Z","3.2.0":"2023-01-24T21:22:11.382Z","3.3.0":"2023-01-31T13:01:48.289Z","3.3.1":"2023-02-03T09:34:19.272Z","3.4.0":"2023-02-03T15:35:55.770Z","3.5.0":"2023-02-08T12:23:07.819Z","4.0.0-alpha.0":"2023-02-14T15:38:37.206Z","4.0.0-alpha.1":"2023-02-14T23:58:27.286Z","4.0.0-alpha.2":"2023-02-15T20:17:49.775Z","4.0.0-alpha.3":"2023-02-15T20:57:17.056Z","4.0.0-alpha.4":"2023-02-15T21:52:50.512Z","4.0.0-beta.0":"2023-02-17T21:30:50.247Z","4.0.0-beta.1":"2023-02-21T13:23:56.903Z","4.0.0-beta.2":"2023-02-28T14:33:42.232Z","4.0.0-beta.3":"2023-02-28T14:36:52.067Z","4.0.0-beta.4":"2023-03-02T02:16:23.588Z","4.0.0-beta.5":"2023-03-06T21:26:49.838Z","4.0.0-beta.6":"2023-03-06T21:27:33.105Z","4.0.0-beta.7":"2023-03-07T08:58:24.360Z","4.0.0-beta.8":"2023-03-07T10:23:29.733Z","4.0.0-beta.9":"2023-03-07T12:08:40.617Z","4.0.0-beta.10":"2023-03-07T16:56:55.076Z","4.0.0":"2023-03-07T18:30:41.730Z","5.0.0-beta.0":"2023-04-26T14:37:54.838Z","5.0.0-beta.1":"2023-04-26T14:48:02.217Z","5.0.0":"2023-04-26T15:18:37.746Z","5.0.1":"2023-04-26T15:20:13.942Z","5.1.0":"2023-05-04T18:55:38.417Z","6.0.0-beta.0":"2023-05-26T13:46:43.244Z","6.0.0-beta.1":"2023-05-27T22:08:33.513Z","6.0.0-beta.2":"2023-05-29T14:21:35.579Z","6.0.0-beta.3":"2023-05-29T22:06:04.051Z","6.0.0-beta.4":"2023-05-31T09:49:13.552Z","6.0.0-beta.5":"2023-06-01T11:42:05.287Z","6.0.0":"2023-06-05T15:52:28.553Z","6.1.0-beta.0":"2023-06-09T14:38:12.474Z","6.1.0-beta.1":"2023-06-09T17:22:19.331Z","6.1.0":"2023-06-09T18:16:54.409Z","6.2.0-beta.1":"2023-06-12T15:32:44.113Z","6.2.0-beta.2":"2023-06-12T16:14:48.086Z","6.2.0-beta.3":"2023-06-20T10:39:45.815Z","6.2.0-beta.4":"2023-06-20T11:12:56.375Z","6.2.0-beta.5":"2023-06-21T13:55:08.206Z","6.2.0-beta.6":"2023-06-28T18:07:49.471Z","6.2.0":"2023-07-05T22:23:58.712Z","6.3.0-beta.0":"2023-07-11T01:22:43.744Z","6.3.0-beta.1":"2023-07-19T15:18:06.103Z","6.3.0-beta.2":"2023-07-19T19:56:00.677Z","6.3.0-beta.3":"2023-07-21T16:36:36.529Z","6.3.0-beta.4":"2023-07-21T22:13:15.967Z","6.3.0-beta.5":"2023-07-21T23:33:43.906Z","6.3.0":"2023-07-22T00:47:43.601Z","6.4.0-beta.0":"2023-08-14T16:33:06.495Z","6.4.0-beta.1":"2023-08-14T21:32:50.501Z","6.4.0-beta.2":"2023-08-14T23:06:58.039Z","6.4.0":"2023-08-14T23:54:27.753Z","7.0.0-beta.0":"2023-08-22T19:03:53.970Z","7.0.0-beta.1":"2023-08-22T19:38:46.665Z","7.0.0-beta.2":"2023-08-22T20:00:19.660Z","7.0.0-beta.3":"2023-08-22T20:07:42.882Z","7.0.0-beta.4":"2023-08-22T20:10:17.134Z","7.0.0-beta.5":"2023-08-22T23:15:56.466Z","7.0.0-beta.6":"2023-08-23T19:59:43.827Z","7.0.0-beta.7":"2023-08-28T16:45:52.857Z","7.0.0-beta.8":"2023-08-29T16:31:59.833Z","7.0.0-beta.9":"2023-08-31T19:59:45.104Z","7.0.0-beta.10":"2023-08-31T21:38:33.566Z","7.0.0-beta.11":"2023-09-01T13:10:06.901Z","7.0.0":"2023-09-11T17:01:57.070Z","7.0.1-beta.0":"2023-09-26T18:35:05.144Z","7.0.1":"2023-09-26T18:57:23.664Z","7.1.0-beta.0":"2023-10-24T22:00:05.872Z","7.1.0-beta.1":"2023-10-27T09:23:03.218Z","7.1.0-beta.2":"2023-10-27T09:37:32.248Z","7.1.0-beta.3":"2023-10-27T10:39:57.720Z","7.1.0-beta.4":"2023-10-27T10:58:05.721Z","7.1.0-beta.5":"2023-10-30T15:46:30.223Z","7.1.0":"2023-10-31T12:23:53.182Z","8.0.0-beta.0":"2023-11-12T23:12:36.897Z","8.0.0-beta.1":"2023-11-22T23:31:53.995Z","8.0.0-beta.2":"2023-12-12T11:42:49.310Z","8.0.0-beta.3":"2024-01-24T12:14:54.022Z","8.0.0-beta.4":"2024-01-25T00:35:58.233Z","8.0.0-beta.5":"2024-01-31T02:39:54.971Z","8.0.0-beta.6":"2024-02-01T11:33:19.318Z","8.0.0-beta.7":"2024-02-01T17:48:00.303Z","8.0.0-beta.8":"2024-02-02T19:02:03.884Z","8.0.0-beta.9":"2024-02-06T18:55:40.145Z","8.0.0-beta.10":"2024-02-08T11:00:25.809Z","8.0.0-beta.11":"2024-02-08T20:43:48.351Z","8.0.0-beta.12":"2024-02-09T11:58:21.613Z","8.0.0":"2024-02-09T18:04:30.067Z"},"license":"MIT","description":"Este repo contiene componentes, hooks y otras cositas que queremos reusar entre varias interfaces de Laboratoria. Este módulo depende de [`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y contiene un _hook_ (`useApp`) que nos da ","maintainers":[{"email":"mariano.crowe@laboratoria.la","name":"mariano-laboratoria"}],"readme":"# @laboratoria/react\n\nEste repo contiene componentes, hooks y otras cositas que queremos reusar entre\nvarias interfaces de Laboratoria. Este módulo depende de\n[`@laboratoria/sdk-js`](https://www.npmjs.com/package/@laboratoria/sdk-js) y\ncontiene un _hook_ (`useApp`) que nos da acceso al objeto `app` del SDK. Con lo\ncual, si estás usando este módulo desde una app en React, no necesitas instalar\ndirectamente `@laboratoria/sdk-js`.\n\nSe asume que las interfaces en cuestión todas usan [React](https://reactjs.org/),\n[React router DOM](https://reactrouter.com/) y [MUI](https://mui.com/).\n\n```json\n{\n  \"peerDependencies\": {\n    \"@mui/material\": \"^5.5.3\",\n    \"@mui/styles\": \"^5.5.3\",\n    \"react\": \"^17.0.2\",\n    \"react-dom\": \"^17.0.2\",\n    \"react-router-dom\": \"^6.3.0\"\n  }\n}\n```\n\n## Hooks\n\n* [`useApp`](./src/app/)\n\nEl _hook_ `useApp` nos da una referencia al objeto `app` de\n`@laboratoria/sdk-js`, el cual se puede configurar con las siguientes variables de entorno:\n\n* `FIREBASE_API_KEY`\n* `FIREBASE_PROJECT`\n* `LABORATORIA_CORE_API_URL`\n* `GA_ID`: para registrar los _eventos_ de [Google Analytics](./src/googleAnalyticsTag/index.js)\n  en el proyecto correspondiente\n* `VERSION`\n* `SENTRY_DSN`\n\n## Componentes\n\n* [`Loading`](./src/Loading)\n* [`ModelForm`](./src/ModelForm)\n* [`ModelAutocomplete`](./src/ModelAutocomplete)\n* [`DistinctFilter`](./src/DistinctFilter)\n\n## MUI\n\n* [`themeConfig`](./theme/index.js)\n* [Base CSS](./theme/index.css)\n\n<!--\nIcons?\n\n* `logo.svg`\n* `isotipo.svg`\n-->\n\n## Example\n\nAgregamos fuentes via hoja de estilos en HTML.\n\n```html\n<link\n  href=\"https://fonts.googleapis.com/css2?family=Bitter:wght@100;200;400;500;700&family=Open+Sans:wght@300;400;500;700&display=swap\"\n  rel=\"stylesheet\">\n```\n\nEn archivo _main_ o _index_ de nuestra aplicación:\n\n```jsx\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport {\n  createTheme,\n  ThemeProvider,\n  StyledEngineProvider,\n} from '@mui/material/styles';\nimport CssBaseline from '@mui/material/CssBaseline';\n// Importamos `AppProvider` y `themeConfig`\nimport { AppProvider, themeConfig } from '@laboratoria/react';\n// Importamos el CSS base...\nimport '@laboratoria/react/src/theme/index.css';\nimport App from './components/App';\n\nReactDOM.render(\n  <React.StrictMode>\n    <StyledEngineProvider injectFirst>\n      <ThemeProvider theme={createTheme(themeConfig)}>\n        <AppProvider>\n          <CssBaseline />\n          <App />\n        </AppProvider>\n      </ThemeProvider>\n    </StyledEngineProvider>\n  </React.StrictMode>,\n  document.getElementById('root')\n);\n```\n\n## Workers\n\nEste repo incluye unos Web Workers (`src/workers/`) que debes incluir en tu\ncarpeta `public` o similar, para que estén disponibles el la raíz del servidor\nweb.\n\n***\n\n## Dev install\n\nPara usar este repo _linkeado_ localmente en otros repos que lo usen como\ndependencia (`laboratoria.la`, `admin`, etc):\n\n```sh\n# en @laboratoria/react\nrm -rf node_modules\nnpm i --omit peer\nnpm run link-sdk\n\n# en repo que usa @laboratoria/react\nnpm run link-react\nrm -rf node_modules/.vite* && npm start\n```\n","readmeFilename":"README.md"}