{"_id":"boteasy-dom","_rev":"65-6dc68eb19c2f9768c0669be0728d5f48","name":"boteasy-dom","dist-tags":{"latest":"1.2.8","beta":"1.2.4-beta-rslde3ey","experimental":"1.2.3-experimental-hi0ct5jcrkw","next":"1.2.8-next-remeke-1.2.7"},"versions":{"1.0.0":{"name":"boteasy-dom","version":"1.0.0","description":"Esta documentação é inspirada no jQuery e desenvolvido exclusivamente para a plataforma Boteasy, mas está liberado o uso para qual quer finalidade.","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"keywords":["boteasy",".net","boteasy-dom"],"author":{"name":"Ronaldo S."},"license":"ISC","bugs":{"url":"https://github.com/theronaldostar/boteasy-dom.git"},"homepage":"https://github.com/theronaldostar/boteasy-dom","gitHead":"fcf5c0451b4ca20d1d3dd89e869b111f764792cf","_id":"boteasy-dom@1.0.0","_nodeVersion":"14.17.1","_npmVersion":"6.14.13","dist":{"integrity":"sha512-ZndsUKzI/xyl1QZkzGcF4nPz5uBaru6lMOGeV9VKuuiIJi3jnrTrgFPEZ701mtDwGtExYPrK3JKN6UNf0e7YcQ==","shasum":"52dce3a8366f2d89e4bdcd990e0265c895f44e42","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.0.0.tgz","fileCount":3,"unpackedSize":8722,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPnEtCRA9TVsSAnZWagAAw1AQAIH08qXSMTytCRbPbT+2\n/g7at7a00Ckiz4UFKMjDF5Nps6+wxTZeE+/j09eLDKDb7eBnMdlJur1hZGIj\nOKfqUcQOXrRpy0P7ZLlYQcCPG/4GDdVl4aD95xcZ57Lag2hbUo68c3nNBBmt\nDrRLli1WwvN4k+pCc83ePg7cKPueE3pQp3tpOOpfpfk5R4z6+NK0kn6Yvqgp\npoXynasoglyF8WKeDx55ipUoflJe7WvRlRf5+V/fnj5YPvN/dCIaBgbD9x4d\nXUYkts5Eukn4hoP7CA2unGQ0gT/JsBX1CermkA4eDqCSbkNlRjsk2hcgBTXg\nPpA/HkFcOiPc1a6TnvFs/tmGlgxkReja8OOFoLVozo+4ZY3Z3tlD5A9I2Q5n\nXKCNKXYaiPRKx1XegxnHpUKrz0hPvWO4BDOYyFGhqR703r63DOKUSzsJsKI5\nAADMT5zaTqEDao8lmdKvOkyrN9JZE3E8KoqjP3zazl4Be9Yafz1ELxdTNY93\n/24/yj8IHN+SKJLdrp1mSQxL4mSMzv0nIuwj5gvF8mUYj3Cf7OQfILvCdIYg\nKwBZKJnfnrfXedIBZ17fxxIQ33xu+7VaHJwF8rjW03+EBJVdqzznW/E9gRSO\nDAuOmBLmGApRbdDFNX3fW4JAIr6cWZ7xk81sRad8L58Sejr3LMi3I6qeAPyN\n6qcw\r\n=aa9k\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBLyF2o1oxLjvqZcjqGrYx6g8fPn2EXVZWLZt7egTzLvAiA4rpypkB44bIjLF1iW/E9pgs1806e9Wzbu9xqXCK0b0A=="}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.0.0_1631482157441_0.5344350017693478"},"_hasShrinkwrap":false},"1.0.1":{"name":"boteasy-dom","version":"1.0.1","description":"Esta documentação é inspirada no jQuery e desenvolvido exclusivamente para a plataforma Boteasy, mas está liberado o uso para quais quer outras aplicações.","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"keywords":["boteasy-dom","boteasy","dom",".net"],"author":{"name":"Ronaldo S."},"license":"ISC","bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"homepage":"https://github.com/theronaldostar/boteasy-dom#readme","gitHead":"557a9af3a23153f36662865be58b5629dd42ad01","_id":"boteasy-dom@1.0.1","_nodeVersion":"14.17.1","_npmVersion":"6.14.13","dist":{"integrity":"sha512-a76xLkWcKiaPLH/tjmaMxLFfXH+PkWWAsKbjZp56WbsPhIqxwuncmtqvAou3lyshtpFyrMF8qT3lzaNyjxiozQ==","shasum":"bc9f6f3aa5501f45a27a1b3bdba3afa52122c8f6","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.0.1.tgz","fileCount":3,"unpackedSize":9189,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhP/g+CRA9TVsSAnZWagAAnQoP+QGXADxWmLj4Qeya5TCt\nA06hWe++OpS6vIzrauABYnslTx1QCQlJE2zRu/R9WrcHjrvJewb5Qagnh6WH\n/WPmUmZzkdtdBL8I98zHdxtZzG+4ojnZeyai0jvbqSM4gu5v4t1aZkgJUbgT\nhzlwlJVlrbg+tjAWXC9qxz4QLm+6BV47VYPdeGrnlKSO52uS1iPr+9wiWbaX\nqlgGX8j6bpaz6JVz2ca6bU4FfXW2NulwgEXRONnDG8YXYTP+ia6nJ/3NkDwT\nAbHvxcccZS9+wrAej0zsGYZGjGax32mY9t5rn2WtQLQyr9lYDOSysWTMLz+6\nYcUXPB+sGgz5iDP+Y+QOO8J204/Gn7V05bE+eAS2K8zKxxrXObETV1TvY1qC\nF49Wks+2wZkqJIGMHyX7Zxfupy6b+rMmmTpC/brkViQDr6KAex0m5pyMEh2F\na8ComOe407karhaI77NCkk+l9nxwLLWQ2TnFTYY0p2hBYpc/Sbr0YVkNe2d5\nkMjU6HEUjy3QRc0W/gkDICb6OYj9CshbwgfHhRLebjfxEfYbrt1Us8j3S2Pd\nbIVeSuiC7m+6DjjAKtV5NWxTvmv+zZZMKR0gMhqUJByuNscATsFZrmKHlyr3\nleAWJvyhy0jNPZBvFR7PzRqWW0KsD/DBGyexRO4a8Rr/PYf0USOOV6O9+sdt\n60oV\r\n=A0h5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDXPWh20wkB+R/9A246zizhDfbRFcZ4khk5ntfh66qzmAiEAlKDRRllt/bBp5hRbud2o8CCdYBCx9pymACTJmTUW2sk="}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.0.1_1631582270096_0.7304252621908298"},"_hasShrinkwrap":false},"1.0.2":{"name":"boteasy-dom","version":"1.0.2","description":"Esta documentação é inspirada no jQuery e desenvolvido exclusivamente para a plataforma Boteasy, mas está liberado o uso para quais quer outras aplicações.","main":"index.js","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"keywords":["boteasy-dom","boteasy","dom"],"author":{"name":"Ronaldo S."},"license":"MIT","bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"homepage":"https://github.com/theronaldostar/boteasy-dom#readme","gitHead":"cec6d9ead23cf440e4596691cc5106bf3456a6c6","_id":"boteasy-dom@1.0.2","_nodeVersion":"14.17.1","_npmVersion":"6.14.13","dist":{"integrity":"sha512-8WzTiP+9+03F1IXktjO1LK/m4u2d4mU1/pCrL3/93EY8gPErTZ6WqDG27XQUykFPZgX+9XpamUUbBSzw7qMpDw==","shasum":"ec43a8d6cfba27b459da8328c03bbf0dc25ae940","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.0.2.tgz","fileCount":4,"unpackedSize":9509,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQDOiCRA9TVsSAnZWagAAAVYQAJVityGKnEAYjfyGbtyr\noU5a7f8aW7BvukFe42tnbYY/HEzkH2ENobTCRHuH9zkixju+GsV7Ys4ArMGB\nd0SP1eW/AkR7/C6E4cpf0eS6hh7yyhlLj14x2HW3gY+ax73G7iEttEr3HIXU\nnsunDIA1GGl2vxwfmkhbSVel97wcV3nF3A8H9uRhNVP7k3RfGURRYfzNWx03\nIXAplID38VlN3bPzCgdwSJN2kM4f2JmbDi+Eu72mfhkwn8hDaAMqIZuviqLT\nUTwi+aLg5aqT4JgE5cViKToJMaXKC5qzixxMv7w9ncNvxmA2rdH8zcl3YlwU\ncCJhLpO0EJQQDI0qCH+qw6s5tmHBrVyZRHPOFPpyWMrBprHqIbupV7GYCnET\nTGvlIqOYYDiM6QI2Jl+lGeuYpr4OqF1+xTEIiUs8glrWUWnb81ucmtzpsUB/\nfAPzLFXGdYiR0hzw356+/Id+xTO0qFvHxV5pfcK/EInHZMeHpkiUf/wUulyy\n9rijlL01rIexmwd8A572wRDqL1PAs+PAOQdsR0NI7PXXaAnWp1PQrXeSCC7j\nWhRfm1lrCsLzxDKYaCeI6oSmM0NpTTkVzbtg81A8bWNuHDSjD1ldiZo1Cp6N\nO2P3KXI0z50FCn683Hztu86LzEf3hHmnsgWOe1MHDB5jTG6qV0wTXzSGbpn7\nx092\r\n=yeya\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFjn84yLuh3U2sM3LOt+BLKQsqYw06bOZoXuAfHN4TlkAiEAs2OBpcIE5Bh+CzT+m/qOwEI/EvRPxl+l5m8Sg99I62s="}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.0.2_1631597474569_0.8143489879647052"},"_hasShrinkwrap":false},"1.0.3":{"name":"boteasy-dom","version":"1.0.3","description":"This document is inspired by jQuery and developed exclusively for the Boteasy platform, but can be used on other platforms.","peerDependencies":{"react":"^17.0.2","react-dom":"^17.0.2","styled-components":"^5.3.1"},"main":"index.js","author":{"name":"Ronaldo S."},"license":"MIT","homepage":"https://github.com/theronaldostar/boteasy-dom#readme","keywords":["boteasy-dom","boteasy","dom"],"scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"gitHead":"18160748b73ccd58c107b22218969769f858e07b","_id":"boteasy-dom@1.0.3","_nodeVersion":"14.18.0","_npmVersion":"6.14.15","dist":{"integrity":"sha512-uvqMA2EzYjpysARtDJW73MbX4bQZ9KWcMzT7ijCTrImMfBE2ahSzScQIeCksNuplFnFt/OLSP7/QBGgOv+AozA==","shasum":"b0bce1a9332bb2f4cde3ca93925acdb0ac40fa90","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.0.3.tgz","fileCount":4,"unpackedSize":9632,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEJegZc6hlfXMV8hO0bpCZouWxxIWVd5cwxVAVrx3WRvAiBhPAZGT0OVmxqbaBpang8sdSg+8uby8LABDbEOGSexEw=="}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.0.3_1634145829460_0.14887234170075359"},"_hasShrinkwrap":false},"1.0.4":{"name":"boteasy-dom","version":"1.0.4","description":"This document is inspired by jQuery and developed exclusively for the Boteasy platform, but can be used on other platforms.","main":"index.js","author":{"name":"Ronaldo S."},"license":"MIT","homepage":"https://github.com/theronaldostar/boteasy-dom#readme","keywords":["boteasy-dom","boteasy","dom"],"scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"gitHead":"246ac22c58d6b941e169b6163917d47f3448d278","_id":"boteasy-dom@1.0.4","_nodeVersion":"14.18.0","_npmVersion":"6.14.15","dist":{"integrity":"sha512-Zmwspa0/+joLLF1Xv9KKhj9BwLqk9Z7Xo5SSj6sX50sSFTR0AyFcLl259cUX1SZsn9gDXwLCwzO7FajqY9hhpQ==","shasum":"4507264d31cd4eae626e647bfe4d0651afc59498","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.0.4.tgz","fileCount":4,"unpackedSize":9746,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICubpZpStVd2UF7de6cTvtjP+cFE1cBgj99lxuGDRky0AiEAsjnb6s4B4uYBtuWq+VJ116hT2ttiSOaF1CeWaT0pI1w="}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.0.4_1634244263464_0.28963568150390806"},"_hasShrinkwrap":false},"1.0.5":{"name":"boteasy-dom","version":"1.0.5","description":"This document is inspired by jQuery and developed exclusively for the Boteasy platform, but can be used on other platforms.","main":"index.js","author":{"name":"Ronaldo S."},"license":"MIT","homepage":"https://github.com/theronaldostar/boteasy-dom#readme","keywords":["boteasy-dom","boteasy","dom"],"scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"gitHead":"70b20767e3c6e1851baab775f55e6a9adefcbf1b","_id":"boteasy-dom@1.0.5","_nodeVersion":"14.18.0","_npmVersion":"6.14.15","dist":{"integrity":"sha512-/jh2f5GZF9SOv3Q4akn2AbuPEoZtIpex4H+sgO8MOC72cXnz/0KAzClxk2nADzLYwLbRzm3qGxIOnLeMKQH4Yw==","shasum":"fb863a7815fecc78367686229642bafd1723d57a","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.0.5.tgz","fileCount":4,"unpackedSize":9971,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCMfGBZUCy9JAu5nLNtyIFv8QLo6le5IK+M7dr4VuX9awIhANCGVSL4ALVbMibOwQd8ZUn+hay2soz8078MDUCNPL27"}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.0.5_1634413208492_0.10199952785557032"},"_hasShrinkwrap":false},"1.0.6-beta":{"name":"boteasy-dom","version":"1.0.6-beta","description":"This document is inspired by jQuery and developed exclusively for the Boteasy platform, but can be used on other platforms.","main":"index.js","author":{"name":"Ronaldo S."},"license":"MIT","homepage":"https://github.com/theronaldostar/boteasy-dom#readme","keywords":["boteasy-dom","boteasy","dom"],"scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"gitHead":"043462649d02b676b258930d47f9d326f8ef6e2c","_id":"boteasy-dom@1.0.6-beta","_nodeVersion":"14.18.0","_npmVersion":"6.14.15","dist":{"integrity":"sha512-N445QkeXLP0Pu+hArCcgeXhcgGbsQCFEzwpHmZtocx1LtEJeU0bxoAN0oYQBJbGYOAQQg+Hr9BaBPHjQMNDnbA==","shasum":"91945b1392ba21b08c2529ab7887b581b9f24bb0","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.0.6-beta.tgz","fileCount":4,"unpackedSize":9953,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCYIW9efFdz4ooeUacNGk8ofF6GPIb/fHpQJHga9EWXNgIgEmR8dbvbXlfXa/nvl/6cim1TJ7D1vzuZmBP4vzsLmW0="}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.0.6-beta_1634424965230_0.28589819204687505"},"_hasShrinkwrap":false},"1.0.6":{"name":"boteasy-dom","version":"1.0.6","description":"This document is inspired by jQuery and developed exclusively for the Boteasy platform, but can be used on other platforms.","main":"index.js","author":{"name":"Ronaldo S."},"license":"MIT","homepage":"https://github.com/theronaldostar/boteasy-dom#readme","keywords":["boteasy-dom","boteasy","dom"],"scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"gitHead":"21d83df9d9c431f45dac320391d3ef5711436cad","_id":"boteasy-dom@1.0.6","_nodeVersion":"14.18.0","_npmVersion":"6.14.15","dist":{"integrity":"sha512-516bpq8z88qUGw4X+8RcRvn4gCMNynjy6KTTdgZ+PCkTfQfMOYuUvP2c8AkdWIMALJk0d2H8HOOKYqb34WQ0gg==","shasum":"d1a03a1c867c40bea7f49ef61eeda39e73d05289","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.0.6.tgz","fileCount":4,"unpackedSize":9949,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCPjsbs1L85Cy0/3Zi5xrMSiPJx+A9N8gSxjjyVyG6qOAIhAMB0pNG9f1Hj20MHxrYXS5M5GcyGpilH4c/tFE93hoKe"}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.0.6_1634507997463_0.2929540620730533"},"_hasShrinkwrap":false},"1.0.7-experimental-0-20211031":{"name":"boteasy-dom","version":"1.0.7-experimental-0-20211031","description":"This document is inspired by jQuery and developed exclusively for the Boteasy platform, but can be used on other platforms.","main":"index.js","author":{"name":"Ronaldo S."},"license":"MIT","homepage":"https://github.com/theronaldostar/boteasy-dom#readme","keywords":["boteasy-dom","boteasy","dom"],"scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"gitHead":"5cadea3345d96292a115fe54655df390d85dcfe6","_id":"boteasy-dom@1.0.7-experimental-0-20211031","_nodeVersion":"14.18.0","_npmVersion":"6.14.15","dist":{"integrity":"sha512-RHQgMFujxxf65yeZeVKapfC4W9tVT7+e4+XYYyzMzkfvFBuWUkKvTpoHSDRIqOBsP/VAhAdzo3MhK68GXM1sFA==","shasum":"af6d25de6f915c529f12b878af83dfbba0e7433e","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.0.7-experimental-0-20211031.tgz","fileCount":4,"unpackedSize":11766,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHsHvnnazSh20wp8e82VIqtSxSDC7jiR4Agz9Pqgge69AiEA75KiNCQpM6waieiE9+Zul15akpboK6o0fzFUhzNA7AI="}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.0.7-experimental-0-20211031_1635660298355_0.6689874911952596"},"_hasShrinkwrap":false},"0.0.0-experimental-l3dtb2q4upq":{"name":"boteasy-dom","version":"0.0.0-experimental-l3dtb2q4upq","description":"This document is inspired by jQuery and developed exclusively for the Boteasy platform, but can be used on other platforms.","main":"index.js","author":{"name":"Ronaldo S."},"license":"MIT","homepage":"https://github.com/theronaldostar/boteasy-dom#readme","keywords":["boteasy-dom","boteasy","dom"],"scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"gitHead":"38c904d56cb7c36b755d8e0eca945dcad81784c8","_id":"boteasy-dom@0.0.0-experimental-l3dtb2q4upq","_nodeVersion":"14.18.0","_npmVersion":"6.14.15","dist":{"integrity":"sha512-lV7sOH8/mCCIHdmMk2V8DUKyr5+Qq/+7p1NRIBHl98QZ3QbCZOZMdcZX0QIJXaq3OgHBmoPa7i14eSLz2509rg==","shasum":"d2025995746667fcad75426f275aa0225093bb0b","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-0.0.0-experimental-l3dtb2q4upq.tgz","fileCount":4,"unpackedSize":16523,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCTZU4BdMBm9bOhs+HGjDlojjgcllrLK+4lsIM+tMKBzAIhAKQj+enO7pnMz5xZ+H2ENjMzl09kcJzflQ/SaqpCthD5"}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_0.0.0-experimental-l3dtb2q4upq_1636193799779_0.263575882957793"},"_hasShrinkwrap":false},"1.0.7-beta-jzulusz9uj":{"name":"boteasy-dom","version":"1.0.7-beta-jzulusz9uj","description":"This document is inspired by jQuery and developed exclusively for the Boteasy platform, but can be used on other platforms.","main":"index.js","author":{"name":"Ronaldo S."},"license":"MIT","homepage":"https://github.com/theronaldostar/boteasy-dom#readme","keywords":["boteasy-dom","boteasy","dom"],"scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"readme":"# boteasy-dom\r\n* This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.\r\n\r\n# How to use?\r\n\r\n```shell\r\nnpm i boteasy-dom\r\n```\r\n\r\n# How to use JSX?\r\n* If you want to use jsx and want to use our renderer, use this in the file:\r\n\r\n```shell\r\n/**\r\n * @jsx Boteasy.createElement\r\n * @jsxFrag Boteasy.Fragment\r\n * @jsxRuntime classic\r\n*/\r\n```\r\n\r\n# Import:\r\n\r\n```shell\r\nimport Boteasy from \"boteasy-dom\";\r\n/**\r\n * @jsx Boteasy.createElement\r\n * @jsxFrag Boteasy.Fragment\r\n * @jsxRuntime classic\r\n * Tells babel to use Boteasy.createElement for JSX.\r\n * See how to use globally: https://babeljs.io/docs/en/babel-plugin-transform-react-jsx#usage\r\n*/\r\n```\r\n\r\n# .version:\r\n* a boteasy-dom version\r\n\r\n```shell\r\nBoteasy.version;\r\n```\r\n\r\n# .Fragment:\r\n* Fragment for components\r\n\r\n```shell\r\nBoteasy.Fragment;\r\n```\r\n\r\n# .dom:\r\n* document\r\n\r\n```shell\r\nBoteasy.dom;\r\n```\r\n\r\n# .undef:\r\n* undefined\r\n\r\n```shell\r\nBoteasy.undef;\r\n```\r\n\r\n# .link:\r\n* window.location\r\n\r\n```shell\r\nBoteasy.link;\r\n```\r\n\r\n# .storage:\r\n* window.localStorage\r\n\r\n```shell\r\nBoteasy.storage;\r\n```\r\n\r\n# .css():\r\n* This function is for you to add or remove class on one or multiple elements;\r\n\r\n```shell\r\nBoteasy.css.add(\"input\", \"class\");\r\n```\r\n\r\n```shell\r\nBoteasy.css.remove(\"input\", \"class\");\r\n```\r\n\r\n# .html(target, value):\r\n* This function serves to add or remove an element in the DOM;\r\n\r\n```shell\r\nBoteasy.html(\"label\", \"Just a test!\");\r\n```\r\n\r\n# .prop(target, bolean):\r\n* This function serves to enable/disable elements;\r\n\r\n```shell\r\nBoteasy.prop(\"input\", true);\r\n```\r\n\r\n```shell\r\nBoteasy.prop(\"input\", false);\r\n```\r\n\r\n# .tests(target, value):\r\n* This function serves to perform input tests;\r\n\r\n```shell\r\nBoteasy.tests(\"input#fullname\", \"your fullname\").then(status => {});\r\n```\r\n\r\n# wait(target, bolean):\r\n* This function serves to disable the entire site/App so that the user does not make multiple clicks or leave the page during a request;\r\n\r\n```shell\r\nBoteasy.wait(true);\r\n```\r\n\r\n```shell\r\nBoteasy.wait(false);\r\n```\r\n\r\n# .copy(value):\r\n* This function serves to copy a text to a clipboard;\r\n\r\n```shell\r\nBoteasy.copy(\"Just a test!\");\r\n```\r\n\r\n# .request({}):\r\n* This function serves to perform AJAX requests;\r\n\r\n```shell\r\nBoteasy.request({\r\n\turl: \"\",\r\n\tmethod: \"GET\",\r\n\theaders: {},\r\n\tdata: {},\r\n\tdataType: \"json\",\r\n\tcors: false,\r\n\tsuccess: () => {},\r\n\terror: () => {}\r\n});\r\n```\r\n\r\n# .createElement();\r\n* This function serves to create elements to be rendered by Boteasy-dom;\r\n\r\n```shell\r\nBoteasy.createElement(Boteasy.Fragment, null,\r\n\tBoteasy.createElement(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#fff\", \"font-weight\": \"bold\"}})\r\n);\r\n```\r\n\r\n# .createRoot():\r\n* This function serves to create a route to Boteasy-dom,\r\n* Send the second parameter as  true to give permission to hydrate;\r\n\r\n```shell\r\nconst container = Boteasy.dom.querySelector(\"#modal\");\r\nconst modal = Boteasy.createRoot(container, true);\r\n```\r\n\r\n* Render the element in the root;\r\n\r\n```shell\r\nconst element = Boteasy.createElement(\"h1\", null, \"Hello, world!\");\r\nmodal.render(Boteasy.createElement(element));\r\n```\r\n\r\n* hydrate the element in the root;\r\n\r\n```shell\r\nconst name = \"Ronaldo S.\";\r\nconst element = Boteasy.createElement(\"h1\", null, \"Hello, \", name);\r\nmodal.hydrate(Boteasy.createElement(element));\r\n```\r\n\r\n* Remove the element in the root;\r\n\r\n```shell\r\nmodal.unmount();\r\n```","readmeFilename":"README.md","gitHead":"6f7f830cd7e510f8a6003ae1e860bafb826dc833","_id":"boteasy-dom@1.0.7-beta-jzulusz9uj","_nodeVersion":"14.18.0","_npmVersion":"6.14.15","dist":{"integrity":"sha512-I7uOeWavfHwko2slnGtF1hWem0VusfZUR8Z/l2zW6OD/wpSx1f0g+YEdDn0c773RrAMjmFzhtv3GIziSZg2fog==","shasum":"9fabab24b26015f13ad2bad64d491513ab71b2ed","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.0.7-beta-jzulusz9uj.tgz","fileCount":4,"unpackedSize":16851,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICZqh3kP01S+phueRG7RNJOJfLi0JoX4gi+wq7BNlRJVAiAGrTCxUh83bUn0Iop+K50drbOq6cZWdJNXUDpJe3cvZQ=="}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.0.7-beta-jzulusz9uj_1636284380462_0.7413541653738862"},"_hasShrinkwrap":false},"1.0.7":{"name":"boteasy-dom","version":"1.0.7","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","main":"index.js","author":{"name":"Ronaldo S."},"license":"MIT","homepage":"https://github.com/theronaldostar/boteasy-dom#readme","types":"types/index.d.ts","keywords":["boteasy-dom","boteasy","dom"],"scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"gitHead":"fa67161c81d7da4987092249f0bf886882f156e2","_id":"boteasy-dom@1.0.7","_nodeVersion":"14.18.0","_npmVersion":"6.14.15","dist":{"integrity":"sha512-zgx2QwOOUvdnWEK1XYcg4g6UdHPAfN502+Lmdk2O7hC198s9f/6GKU4SXWAeByoYwoLkedTqQmP5Z/z3i7wNIw==","shasum":"82d30daf1e8f45c3b4458e089d5adfa3916e99ce","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.0.7.tgz","fileCount":4,"unpackedSize":18104,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBZixBw0WTZKwGULNaVsuAgJDCfAbP/7X7Xx3xe7ZVL8AiA9Xw9aUoNBc21Nxx/AZsErDWvbX9XPjvl7nGlKjoKZUA=="}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.0.7_1636712754835_0.06739941996682863"},"_hasShrinkwrap":false},"1.0.8-experimental-ei65g49nmi":{"name":"boteasy-dom","version":"1.0.8-experimental-ei65g49nmi","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","main":"index.js","author":{"name":"Ronaldo S."},"license":"MIT","homepage":"https://github.com/theronaldostar/boteasy-dom#readme","types":"types/index.d.ts","keywords":["boteasy-dom","boteasy","dom"],"scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"readme":"# boteasy-dom\r\n* This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.\r\n\r\n# How to use?\r\n\r\n```shell\r\nnpm i boteasy-dom\r\n```\r\n\r\n# How to use JSX?\r\n* If you want to use jsx and want to use our renderer, use this in the file:\r\n\r\n```shell\r\n/**\r\n * @jsx Boteasy.createElement\r\n * @jsxFrag Boteasy.Fragment\r\n * @jsxRuntime classic\r\n*/\r\n```\r\n\r\n# Import:\r\n\r\n```shell\r\nimport Boteasy from \"boteasy-dom\";\r\n/**\r\n * @jsx Boteasy.createElement\r\n * @jsxFrag Boteasy.Fragment\r\n * @jsxRuntime classic\r\n * Tells babel to use Boteasy.createElement for JSX.\r\n * See how to use globally: https://babeljs.io/docs/en/babel-plugin-transform-react-jsx#usage\r\n*/\r\n```\r\n\r\n# .version:\r\n* a boteasy-dom version\r\n\r\n```shell\r\nBoteasy.version;\r\n```\r\n\r\n# .Fragment:\r\n* Fragment for components\r\n\r\n```shell\r\nBoteasy.Fragment;\r\n```\r\n\r\n# .dom:\r\n* document\r\n\r\n```shell\r\nBoteasy.dom;\r\n```\r\n\r\n# .undef:\r\n* undefined\r\n\r\n```shell\r\nBoteasy.undef;\r\n```\r\n\r\n# .link:\r\n* window.location\r\n\r\n```shell\r\nBoteasy.link;\r\n```\r\n\r\n# .storage:\r\n* window.localStorage\r\n\r\n```shell\r\nBoteasy.storage;\r\n```\r\n\r\n# .css():\r\n* This function is for you to add or remove class on one or multiple elements;\r\n\r\n```shell\r\nBoteasy.css.add(\"input\", \"class\");\r\n```\r\n\r\n```shell\r\nBoteasy.css.remove(\"input\", \"class\");\r\n```\r\n\r\n# .html(target, value):\r\n* This function serves to add or remove an element in the DOM;\r\n\r\n```shell\r\nBoteasy.html(\"label\", \"Just a test!\");\r\n```\r\n\r\n# .prop(target, bolean):\r\n* This function serves to enable/disable elements;\r\n\r\n```shell\r\nBoteasy.prop(\"input\", true);\r\n```\r\n\r\n```shell\r\nBoteasy.prop(\"input\", false);\r\n```\r\n\r\n# .tests(target, value):\r\n* This function serves to perform input tests;\r\n\r\n```shell\r\nBoteasy.tests(\"input#fullname\", \"your fullname\").then(status => {});\r\n```\r\n\r\n# wait(target, bolean):\r\n* This function serves to disable the entire site/App so that the user does not make multiple clicks or leave the page during a request;\r\n\r\n```shell\r\nBoteasy.wait(true);\r\n```\r\n\r\n```shell\r\nBoteasy.wait(false);\r\n```\r\n\r\n# .copy(value):\r\n* This function serves to copy a text to a clipboard;\r\n\r\n```shell\r\nBoteasy.copy(\"Just a test!\");\r\n```\r\n\r\n# .request({}):\r\n* This function serves to perform AJAX requests;\r\n\r\n```shell\r\nBoteasy.request({\r\n\turl: \"\",\r\n\tmethod: \"GET\",\r\n\theaders: {},\r\n\tdata: {},\r\n\tdataType: \"json\",\r\n\tcors: false,\r\n\tsuccess: () => {},\r\n\terror: () => {}\r\n});\r\n```\r\n\r\n# .createElement();\r\n* This function serves to create elements to be rendered by Boteasy-dom;\r\n\r\n```shell\r\nBoteasy.createElement(Boteasy.Fragment, null,\r\n\tBoteasy.createElement(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#fff\", \"font-weight\": \"bold\"}})\r\n);\r\n```\r\n\r\n# .createRoot():\r\n* This function serves to create a route to Boteasy-dom,\r\n* Send the second parameter as  true to give permission to hydrate;\r\n\r\n```shell\r\nconst container = Boteasy.dom.querySelector(\"#modal\");\r\nconst modal = Boteasy.createRoot(container, true);\r\n```\r\n\r\n* Render the element in the root;\r\n\r\n```shell\r\nconst element = Boteasy.createElement(\"h1\", null, \"Hello, world!\");\r\nmodal.render(Boteasy.createElement(element));\r\n```\r\n\r\n* hydrate the element in the root;\r\n\r\n```shell\r\nconst name = \"Ronaldo S.\";\r\nconst element = Boteasy.createElement(\"h1\", null, \"Hello, \", name);\r\nmodal.hydrate(Boteasy.createElement(element));\r\n```\r\n\r\n* Remove the element in the root;\r\n\r\n```shell\r\nmodal.unmount();\r\n```\r\n\r\n# .useState():\r\n* This function is just for adding some local states.\r\n\r\n\r\n```shell\r\nconst [state, setState] = Boteasy.useState(10); //{state: 10}\r\nsetState(prev => (prev + 1)); //{state: 11}\r\n```\r\n\r\n# .useEffect():\r\n* None information!\r\n\r\n```shell\r\nuseEffect(() => {\r\n\t//TODO: Your code!\r\n}, []);\r\n```","readmeFilename":"README.md","gitHead":"b99f82e869b068f83ffd4e3856204cafdef1f300","_id":"boteasy-dom@1.0.8-experimental-ei65g49nmi","_nodeVersion":"14.18.0","_npmVersion":"6.14.15","dist":{"integrity":"sha512-HVqG6rFhLLsM/7LOwp6RHwnw69bpTFK4xaiAuEFIEKAIE5O1aXqnSyHUMcl3MafSnwg22GSEAB08gu1C66TMVg==","shasum":"8caacef4978654e089dcd655db99f148392f25ed","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.0.8-experimental-ei65g49nmi.tgz","fileCount":4,"unpackedSize":18377,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBUbk0mSVnEo+PykD13KE3Kpi76wYb+s4Z9pkIoShh+BAiEAt4hxBDv4uopi9yAt7Af0BkydZZPw9qWhrUTHA+TUHEE="}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.0.8-experimental-ei65g49nmi_1636730931030_0.8178899805582018"},"_hasShrinkwrap":false},"1.0.7-correction":{"name":"boteasy-dom","version":"1.0.7-correction","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","main":"index.js","author":{"name":"Ronaldo S."},"license":"MIT","homepage":"https://github.com/theronaldostar/boteasy-dom#readme","types":"types/index.d.ts","keywords":["boteasy-dom","boteasy","dom"],"scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"gitHead":"0fdc3b5ded3c9a1ab25e2dfd3ba6ccd898228261","_id":"boteasy-dom@1.0.7-correction","_nodeVersion":"14.18.0","_npmVersion":"6.14.15","dist":{"integrity":"sha512-A0+K9bbSeHsw6jCUHh88CEtstGpto6sToZmULS/ctigVASRekPneSw2JUfEkm0Dneilkjg8p8RuHAYTvEnOKog==","shasum":"7fa1f69ef0ae813fdbda6bb9602acfef8833e5e7","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.0.7-correction.tgz","fileCount":5,"unpackedSize":18663,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDVOHBk7+++a2MY+A89miDlj+Zpy3CievOTawSnpb+BBgIhAPCnKeg0h3uCIn8x5TZYGLiYPU3D4ZnOAcjR2Z4vCukK"}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.0.7-correction_1636733680658_0.33302800764707463"},"_hasShrinkwrap":false},"1.0.7-correction-1":{"name":"boteasy-dom","version":"1.0.7-correction-1","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","main":"index.js","author":{"name":"Ronaldo S."},"license":"MIT","homepage":"https://github.com/theronaldostar/boteasy-dom#readme","keywords":["boteasy-dom","boteasy","dom"],"scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"gitHead":"05fb00ece9f43f15809355a2087ed3365de7d1de","_id":"boteasy-dom@1.0.7-correction-1","_nodeVersion":"14.18.0","_npmVersion":"6.14.15","dist":{"integrity":"sha512-ET6iKxnIR1EeEvQjNRfd/ckcrMhDoH+9go3pQthXkQmA5wzFZAml0OZKRmFKUJqgEHp6kotKslXV2JgCBygjqw==","shasum":"ba1363af515ccf0ec0448a8a59551a4535ccfe0b","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.0.7-correction-1.tgz","fileCount":4,"unpackedSize":18338,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnQZpCRA9TVsSAnZWagAAl+IP/00LodUpAtZVHgA/wSBh\nE1NmjiTySq0svqSZll4VKyE3e4GP+5DnTErIP3uXwJWsT2V9RYfgJs9b7AsQ\nqNJYCYo83lN7CLKmJLGREkY5EDB7Ocf2622Q054OuUfBnq5FerWBFzea2X+x\niQ/TbI62uV5dqL9+7oUlrELvG5SzPd4uEcNyxXflgCMPpspYopMcxHCU+MP2\ne5mCY+ccOO5kvTyFzj3X+cvadhq6FB4xwExbBaKukDplmJfjYuu2uDlWX0wz\nOhKnJfrGD5A/CqCASMdF0DJXbctAnDj1ic3UUiDmM2bdkmLZadz652YjCoA1\n4+NQQ2WmaFb5Fs6lYISnmRWAFYpwKMUCF3vdgK3nMxAYwubITQC28PHWZ7zy\nNqk1aU2vrKQ9E3bsMOlI/qJHPtQ/R/e1gky/olbSL0FQnhHlJPOKXYPFk2KB\nXqoF8qScS6u5QCA+Osr7Y97e+LRYICXkJbolbqkyT7D38RokCWZT3MYoY1CJ\nVOxEB6sDrKtP+uI9TmkADfCrkEiS49YFgbsZ+XXwXoAzx4wjpjg/oU/bQErK\n+/FLc8LeoFsg2/UdHLQfPn9jlwg+lTK20f9rGWWhzeSCTOthGJRnLQ2V0ZwJ\nARvbODkTeW+pUJs+Y63Ws+iTcc7g7lDCRqqVBoREmGHHNOBQpjdaN3oDEwA6\nMCmK\r\n=N0ne\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBvGftGRAhZ2OSl6RzPKkQBVS87P/eIrSYLC6t0FMemsAiEAr0tySqK5jhwv1X6LpINXhL3TzqM/h+CVWlnuSvOBFbQ="}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.0.7-correction-1_1637680745837_0.9516963907548011"},"_hasShrinkwrap":false},"1.0.8":{"name":"boteasy-dom","version":"1.0.8","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","main":"index.js","author":{"name":"Ronaldo S."},"license":"MIT","homepage":"https://github.com/theronaldostar/boteasy-dom#readme","keywords":["boteasy-dom","boteasy","dom"],"scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"gitHead":"b1d25ee360b50e7238b2fd3d6042342657a5df68","_id":"boteasy-dom@1.0.8","_nodeVersion":"14.18.0","_npmVersion":"6.14.15","dist":{"integrity":"sha512-bTvgxvV3RmpI+0VpA2ZOlUbQ0HklxiGPsbVPqnVqXYkeZOgcXFcg7QaJvad41V6DC9IfLH5FTdcRy8QtVnERVQ==","shasum":"2b14ca1e4b5566fcbb4e97c74db789d16305f38b","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.0.8.tgz","fileCount":4,"unpackedSize":18182,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiAsIBCRA9TVsSAnZWagAAyYAP/juRYt1RoMePMXmB8+Fs\nX/ACb/iHwYqqz2JlmtnhFqHc4y+bTJA7WFXVCLmT1vYZ8iHACu0MXenN6oUq\ntQsO60yZSwxkU7M+TXhej7vMPzhTOUEMCyYbjqtu/DtZb4OPA9NbCVUhE1fF\nnpq8cHKkupEelqVWY9Y+xf7qusl102fLVkdkrxUWSTNmRHnCINLIUUyROq5b\n/X9m9GfpEbqbIF4nD2V+nTnAqgc8CWXHUR3UqdJXwxG8+/czYI/dANEPfEG8\nZa0iWuYr4h6sVg4paaQ8DnjSVLZgtgxfY09x3S93fT5E2wFMcriFe5UzhoTZ\nJFN4tCmburfzgqbKoa1CQCzpo2mBgyDR29+mtNYrGNHU8u8NROn8RJWi1cjT\nuxy4T45+hHsZduVX+5TslV3MLHBth2430b8flxo1KqWtNp+5IoOtcRkUf6eA\nj8DBcC2Mea8RW3u7W/3slJ7nSUC4+/QjbF85aIzbXDvwEM0eCJStQ5TZKPgS\nxzlw+QGv21TH2+W8Yhyrdt1uNMK36Q+l57VUYCEfk0Y2YfK8Dsy0THwbyxIO\nEnQyFdovcUMDNPpar000rqmFm0zTEl22OQocStbzyn7UII+ZL97ixjwW+Jnz\nxCVUuiOHP4PRoR5yzA7AxTmp21ulJqeg1KSXS0k7QFBAUhpFgdJI6lA76pQX\n+4Vv\r\n=H0kV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDGo3p7Nn5ZI+MVFA+2NSYhnrE0hm+TAvw/Ebs8wTSQXAIgI1fcGHqzBVOKlkyq7Cbxltjgd9PyyJkqbdBbHV4poQY="}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.0.8_1644347905330_0.6965979408704759"},"_hasShrinkwrap":false},"1.0.9":{"name":"boteasy-dom","version":"1.0.9","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","main":"index.js","author":{"name":"Ronaldo S."},"license":"MIT","homepage":"https://github.com/theronaldostar/boteasy-dom#readme","keywords":["boteasy-dom","boteasy","dom"],"scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"gitHead":"9ccd29e3dd0202f1ccc7a2cd4f5bd352fb8e4f99","_id":"boteasy-dom@1.0.9","_nodeVersion":"14.18.0","_npmVersion":"6.14.15","dist":{"integrity":"sha512-ohEg9Ck7/cUK+kHeFpy8E0knvjtNNF4B05C1luS42vpdBYOWnq3I2YMRjR/LQqjG38xe0pLXKSj18uibuqxEQw==","shasum":"8722cd6547f993ad7fb00f014863eeca160884ca","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.0.9.tgz","fileCount":4,"unpackedSize":19157,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJiCi5uCRA9TVsSAnZWagAApQMP/1gedeyyYVSGAZg6JVwi\naOYzE376F3xf1V+kCDRykmxvY+B55Vf+JBXzOPwhpofKstFxuQA2cQDWMXrP\nxMDBZg7Ck6ae9S72Wmio81v1X/azkNmZBLjYYUAxaXtKBUvGTd0UV/M8ZVsd\nY2hykbxYy1Ph/sLFJgMvPdXZ4tb1EHqLwLW7624RoNT7lPt0YNf5ZA5BKNBh\nfEd3p3dAbakRoz0sselYLF4N/plqcfvnkHNF6bgA/v+84wxYFb9IAzoRRdQF\n6GV4TEfsC1s3DwnYFdQMfnzvfB8y44Ruy0puKWp/CWG0J0vUb8QGu/vo0bC0\nbpqZcEaExVxojk5Qgtz2yMwtVbl/bsXCs03f1HnQsYSIMVoaXFSTvwT5DDRH\nSpfXlI8AKKzE/S6E2f1uYnEidK3/OoKIzB8jdiLeltoW4OVAk7xK06mTFej7\nLmIN2e23PbAoG9GwizCgmlhrXOS1phnQqGrwLnKAIuO/+BTcq0Xzed3SPeVq\nad6ZR4qcUJ86v2vcInk639s6gIE0FhZuXCU2OQc4ctAmLS1WsiVybummN/EZ\n7DHot88rdtCJWlDQ8aZRXpNF+3ZV6h43jfs9TQWj0webFMvRCUrb7KgACnDG\nN1pJYgsKl+m8U+RMhrQTe8uuF94In0tqDOzMW+GAxSofMXEPa/uVZZ2W1OdP\nrmdL\r\n=x4JN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCpaITHfQS4uuKBpNtMjiOQgEe2H4HIZElQH9E69GgPDwIhAOLqC6gNgSSRXKoQEYgbFcOUT4A2/GZ8MT/h2cJiD5ck"}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.0.9_1644834414218_0.9453441959220703"},"_hasShrinkwrap":false},"1.1.0":{"name":"boteasy-dom","version":"1.1.0","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"gitHead":"1f0af7f533f8f11361ade09cd8cc4f97fdba1529","_id":"boteasy-dom@1.1.0","_nodeVersion":"14.18.0","_npmVersion":"6.14.15","dist":{"integrity":"sha512-MOXG1Sb6D44WNsiFWTtLMd472ouLcwNtYPE5FW+AXSk48tWXkv8SEjL9ukirK8TF1hpihtSfbIJhA9ukP5qMvA==","shasum":"e356a76e6f74050d54d173e6aa8499d61c24618a","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.1.0.tgz","fileCount":4,"unpackedSize":19731,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiFqoTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpynQ/8D8GZlSCzjJ5IXxYn2YGRInYXOdxn1tAN4rtapJ7fgiaS2HV+\r\nGV2HY0MAGIIOV8OrFGvfIeuOqT0PwRZFQBN20yHlrzz/jNCtt56ZWM7Zb7Mc\r\nBb6jk7nnQ7AFNieJHNd4C4tdFdmvdjwcOyF64K/QVkNg9WwY3Y/Iwi9mDE5F\r\nizn5aYKitSTFW4KTF+3sOsv5hD+0QYxZKYDvlmJvSohw/ZXOd2fiAliFdH5n\r\nPllV7X0326Li7qStCdEuSBFDM5GZi+720zMsxMvoPM3BrG9Q8wkMJsWB4okX\r\nJ40MeLiIEgMW7jo1U5EsE+d8M2No67gcUzOHHafePuR/U7GVthR404ro1J0c\r\nx4mjzLPxi6DXC/sOB3aWdT98u2fSp/F5E6uM3tYi46iZl8y7lz75eLPfOvtY\r\nH51Zaf14bjocV6/pI37U559ftIkIPHajj//jyj9F6wwHBStirDHT/CLay4h6\r\njs7pfkrGdZDv/91aHOzdpeo0chy2/YCBVqSNEeTezsMWdIzi1DsE8Ow19Fgr\r\nGIxNW5bWXD670nJ/dzHPRY6kz2p7uTDGVciC6teilZmhulHeBg/OoxO55p7l\r\noNMuDFaM9e0nXB1dhQU7ldXUU49thKtC42BG33dv5AcYYpgpS4ShmkBvvUiT\r\nEuy6aFbd9/ALjEDJfjKN7550FJSEcwMeZW0=\r\n=KWQd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHEu3qYKnepULhKHwAQXauRDWLAjQLY0Xx9oHmL+UzSMAiEAxovVyJ/yGzyw6wluBVI0FGOuZrCvfSH7clAXEwKr+3Q="}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.1.0_1645652499209_0.03500871923521531"},"_hasShrinkwrap":false},"1.1.1":{"name":"boteasy-dom","version":"1.1.1","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"gitHead":"cc4c27f130b23dbcc39ee2a6a6262e2e6fa18d38","_id":"boteasy-dom@1.1.1","_nodeVersion":"14.18.0","_npmVersion":"6.14.15","dist":{"integrity":"sha512-03AEXTfQMMHP5CBkSMJ+xZFFk3UvNGHC0iBOnnFueAa9n+VDuoQK6xubNZ5ip2EEWHZw7U9UDyxhkgkCrlQn6Q==","shasum":"324cd4568496be2ebb1113f46815be86bfdd7f28","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.1.1.tgz","fileCount":4,"unpackedSize":19989,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiGm5LACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo/RA/8Carkc9y7vhCWbyLGGc274Gbf6kORrqWN7isaT9CFR4hMRxeO\r\nVNaUcF0Xlev1yKI5F8B54ugpdWnxQmbikXsIG0GxgHoZHW19SVgz++rSEDse\r\nxc50lFmRxInhxd/SxFC1amdgKbxMJ4wILc871EY9m24E4/fJ8GVz2gFq5v3M\r\n7+eKQIRe4+XPeEamh6hINb4prmfngecOCzzcOyje/RTUoxYHGb4S2VNqCpaQ\r\nwfvUrMEx1tVvfR8PGgx8q14tgbWtVzeTM5Ot1SpPe3rV93jChUstiN/14gu0\r\nvvoXS7iNNhr28VRSkan9djeiokuerLwd3bu44SDz8sqAk+ZojM3O02arbhRm\r\n0i+XmjQYWt1gmPNN0TGYPg6kOalf6BzEjtTis6/XyUAAVFMolSMD3YOE3W8A\r\naZl0Yzrgrp9+DBsPkGx7Yf9vw8Ydo/Pg02veB7oSFmxUfOYeiUk5tNpICoNA\r\nchnxWGBcCA93KcKsi4sHX8BfvhwaacQeYFrFHa/5PZx8b8MWw4ni2X98jK9i\r\nQ0KzaPz1ti7amK+hZdec4mYSYKKUOCIy+cR2dtXv1+Oeh5dto5lFci769duI\r\nQ29jHiomz48rOkz9ZhTvG+c7EJQzTl7eOD2gCl8MMOIcdB/YepKKoFOrrITs\r\ngWAHiRHcaakog1mzGiiUiWVtwgfib+AMJ1Y=\r\n=1vl1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCCHDzwiggnv+TrLx/r3sBHKYLH4rTNQAz6m5LFBXvpQgIgR56NIp3+9pO4T8Bo6JRQSvZPGsVZ7aZZe/ji9Dh+GlQ="}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.1.1_1645899339616_0.7659009947330642"},"_hasShrinkwrap":false},"1.1.2":{"name":"boteasy-dom","version":"1.1.2","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"gitHead":"e52e05ad00f8ceff981c791eaa84c3b25cf30ead","_id":"boteasy-dom@1.1.2","_nodeVersion":"14.18.0","_npmVersion":"6.14.15","dist":{"integrity":"sha512-VZP2arrcTQb+iB3sqL71GafUcLKrCPEL1tJfQZ1EMG5rnXKtojzjJ/rdjCFVcKFXFNo3A+oZ3q9LrMQ9vkgdLw==","shasum":"0e5606af57f53a4c1f61a2fb7e03f2c294bdbc39","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.1.2.tgz","fileCount":4,"unpackedSize":6038,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiHW82ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrYTw//ZITXkNzQE5ZsMjnn1RMearRUoty0+oopvwkpz1FRmaFC9ouz\r\nMSAjk2XYZn5S2SKFac/gXhd/qhU7lQ6oSSoBRN9FuvkbnJDZNK4ljocPDW0k\r\nK6AeMXKrq3VxWKfFgwyILIGNaibeLSMsa9JM7j1Je0scBOsdG/dOXh1f7jV3\r\ncO9VXSLkRss/MZL72HCVbUt+go+MBE6URJdAz2zvS7jmkKZ1j0d37160pdXs\r\nNQZ2EQw/MvT/j0969g2XCsxeyiYusWCIfSy9v+il6oSbAhVBTEdHChnoEE8c\r\nGNliqNffi01/Zyu9fQfbFq49gBgL1atKrBbiAcvtoUqGirE09Pom3LhFam2y\r\nePpl5r3GGmMGSBkhxejT+I90kGqN1erbYgBJyXS6eizMf9dJBY5cMeNVfHQ1\r\nf+OI91tiV8a78AgEoyqUiPvdg49c3HE/viCR09ibokQF/0geadq7wqRi4Hmv\r\nXH5eNRXTl87ASeXZO7aaubVjaPngEa/qBIPIWCng1YPhbSRDTB8D5BC1zZrV\r\nKiZ1g0Rf+oX5Ztp9H0MheYA5eLLK3rYQmXgoYEOGpM5iJxbcP3lRVEWs9D2j\r\nYcW6/MXSFdnq05K3cRANVNw99ceUH3WAdPioFjohcJ0ogH5+B3UNlrWQwnD/\r\nggrt1M2G5pLYiKh8DihxQkykVzx8noSFwZc=\r\n=z2ah\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQClXRw25rXVhA081RMxA8Yw9Yfc+BBB+AvxAD7Mz553eQIgC8kCYemfLI/ZKUr27C9KdRXfAr2bl2AQrHl/E0nS+wk="}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.1.2_1646096182348_0.033139179731553225"},"_hasShrinkwrap":false},"1.1.2-correction":{"name":"boteasy-dom","version":"1.1.2-correction","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"gitHead":"e52e05ad00f8ceff981c791eaa84c3b25cf30ead","_id":"boteasy-dom@1.1.2-correction","_nodeVersion":"14.18.0","_npmVersion":"6.14.15","dist":{"integrity":"sha512-c+TRCGcbi9JjoiWEAqM2oQgeJ4THCTP/NRPFdxXO7i1PYwORVDkZSXwLEvGfzFyfcDBSzf20BqxSRV250YH4yw==","shasum":"8ee86862b9f25a10fe71062a59259734dd110e00","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.1.2-correction.tgz","fileCount":7,"unpackedSize":22119,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiHXG0ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoVdg//Wt8LRrBlp50SjutVaTCkvV6zaatVgLfw9GHGU5w911WaXYhi\r\nzM0BSMm2yT4JVrqlSgh+hM773xi3flhsk/qYbM8hRQofyQE/xIC0ToZ84y7s\r\nKN/uJg7y+6RiKsXP6kp8gcad6+RhLux73GiVof5yKEP2/yH746FI8ro8WDh+\r\nBzGJlsBB2dPToqR7qMs5t4e9Yl/NR/R7BftxA2JLhewaQwkhKJJBEoRW9dnq\r\nH1RbOgjDgAK3UqK8uV32YJt5qhN6mV0eUSlzwUD3KQ9SSGAwlqutElbzxfln\r\nr50Nxe6EWxZAPbZ6grDO91OB3F6byqJJ/DVULGh1okA0OzYOnQWE92OrIAcy\r\nt0i3L/I+/x7tRmx3b1hctAYJSHLZtaNmLYxycvTlbDhpOZveqr0c43KkwQ7X\r\nOmTgPiB6ObQ0ANWAHAFbulLD4HB2bUqwqzct+9PDu2//ICh2AurM1bGQopZU\r\n7oNS1LPcpclnntUMvgSjGCZ1zJ6nLcHX3fYF0YHDe21DO/AnXdyjcFhtwfEr\r\nrKe7QhuySkVTF+JzUFH1W5/bcQydaZjvr2cN+h5LFwFrso/K0GPc9vfzYs2r\r\nEXKnB4vKhzRdzc/62Kub1uwjzORLoeP3s1WSnS8XM5LF5VCv2wBqUCthwarq\r\n8phx1Y6hTeANsgb7rIGjKc7Ac+FWXW6KWs4=\r\n=POdG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBZdWHJTa3g4y18g1xg4114YmIMGmxwzy+t0+gNochw0AiEA5jzuDNXs9maJBNuiw37ER8HhdHipwAHUWM7AFQsRuqk="}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.1.2-correction_1646096820220_0.29373660635169574"},"_hasShrinkwrap":false},"1.1.3":{"name":"boteasy-dom","version":"1.1.3","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"gitHead":"7ef5124f6fe26d01f3e56acf0332925483b0391a","_id":"boteasy-dom@1.1.3","_nodeVersion":"14.18.0","_npmVersion":"6.14.15","dist":{"integrity":"sha512-CpHq3ieHbwQ7j4ITGpi5V1Wq832J+c0gQnBKSoqzHYuZFTsiWojMDkIoDLgx1BZnpYVWwdiwen6mhonRHIfa2Q==","shasum":"e9a964c7791ac39d2f4dae4d2e3360df87eb5961","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.1.3.tgz","fileCount":7,"unpackedSize":22081,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiHXgiACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmocBxAAoMKKu0BYSxAuBkMDuiCG5nTXBPDURGu68ss+9DlsYpNtztUz\r\nwMq2Vw0GEaZinmp0CMWTPiW8cw37wZGWdecuqjaxU5XgnIu3rCP9GpiZvjc4\r\n1kdpw/SjAKwzlgpUmww5n2qyQn/0sTgk83Wb/APncT7rUU9tlbxNRHTmFq0j\r\nTrG/tWui8+i6FbRECDkjpijPjmT1/onoF8bDzf8Xch/asLZ93QvoNKRTiL8N\r\n2IgVLQVTj8iag3/JccKkTHwwgkuK60Xpt/NIRAoVOB9au+vKbnNniz2ECi6D\r\n44qiuvPEcU4icCsY91G5zMJjZgymUIJTrELKLU2mpZtOjqegWjh9+3r2n5AA\r\n9ixCW7aH1FwkrrpuoTCnsYVYtEkr416CRfs+hwYNOzvo0CPDOLWCBBeDNKNU\r\nDFiK0LTHtEFdXeftQj7OD1jKvXX3UFTHvTJfFhd33fzt+S6JjTJ5835Solnv\r\n5YHlaLkDqtJzdJNajtOvH8NwWH6NlZc2T7j9JIUR6+bhRkPKBFjlglcYTZtU\r\neaGFbf9hB14HImCByMnpX630iyisjrI1L3Ul2NAid84zRUoFQ9yPx3uKAUXV\r\n0EAnoov/jfDdMe3BevU6yg0R40XhBdsSZyPtmV4pFu7YrNR+i7z3njRyQmVC\r\nu/KCAhEx8p+XQFu3Av8yPDJ/VRvDTnEJfO4=\r\n=y6IL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHsemjsd+xif14E9ViReT1PUvgGK+eMwlXo9vHWWyiC5AiEAsSsd1788EKGqYmx9HqSlm6Q+S9ewBgiE3xdg5G5lnzI="}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.1.3_1646098465834_0.5348016822204453"},"_hasShrinkwrap":false},"1.1.4":{"name":"boteasy-dom","version":"1.1.4","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"gitHead":"c4b439f9261cbbd3d5f4d66dbc9c9552003e51f5","_id":"boteasy-dom@1.1.4","_nodeVersion":"14.18.0","_npmVersion":"6.14.15","dist":{"integrity":"sha512-rpgUi4MbtQK1GQXaQG8yMVnudJDcV8mh1WJmYoxN0s6TiMd6xnNUwXGjikW2mKXCexICppKdXmiXYK/2ZtqwuQ==","shasum":"e11157d5076ae06465b76faf313af3b87f87a15d","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.1.4.tgz","fileCount":5,"unpackedSize":21734,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiHiLbACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrXJA/9GZZc1A3vLvdRSA4DmE1gK80udOwLc0wHqWOJQBEBu1DbXvg+\r\nSJeH088wk4u0XEilQhABNZYjSbmi7AaPI5sDDZcnD3WVgY1m4z+RVLL53hie\r\n4vwcIy8d0RQ/0OJkhFTUbV9fWF3F0khmEYlVgJzfwsvsCuo/pkDz31B4YoaZ\r\nRM2RPJu7Phe9tyI2lpZ8ds/2hgSp0qJZ4GNsCuN779JgE8r5Dkp7B5txnEFt\r\nm9ZnGJAX+XtgOQNAPNVy6cq5R3bAP2SJjKRAr2mM+y4ABBEOEHyuT0a62u10\r\nW/+8jKaC3dMHaYm+zmuLchT9Zybj0Co8oAm36pv6KsYp7AicZt+cgw2PMf2s\r\nO9vJBEGoSvYeYYSHyOMHRUqP1nOukGHk/3ABhuYszfH99Oo8D5U7rnDCEO+U\r\nJrgzh5S4hlRKLNrUrnWCFeNlTd81ylg5ARje67EGRBZ0ZLIKiQKXH+DgSV0S\r\n8EN6o5K+4+YObpwq+2gZtorREhExx/0R7Ty2OtlO72b6RGB9eJWHRww7Ravh\r\nN2Bp1W4DSCmK0yYYbTA1OlBlihyxjLL9UJTzHruxYpIOrbLFKBe5TroHa12S\r\nlRpk3UagAFm40F0wRQlj6a+b8A31DlHRgUuwyysUlpItLt2qYEDlxjpT03qY\r\nJAcXYCLjxE6Ddf5c/mKGWlzvJL/GAFzY96g=\r\n=FDwd\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCW9Y3uTOSuVWWUvIxOMgY+LNsbidpjhrhcxq53lmJhZwIhAN6p50NtiFWXQsqxGGyiT7AtGE+JxYaCGjz0fAUiPHTL"}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.1.4_1646142171392_0.34272268909656445"},"_hasShrinkwrap":false},"1.1.5-experimental-l6m74urx6ue":{"name":"boteasy-dom","version":"1.1.5-experimental-l6m74urx6ue","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"authors":[{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"}],"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"gitHead":"8c9e027a57f683c4d23416f0f6f9188cd6cbb50f","readme":"# [BoteasyDOM](https://boteasy.net/) &middot; [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/theronaldostar/boteasy-dom/blob/main/LICENSE)  [![npm version](https://img.shields.io/npm/v/boteasy-dom.svg?style=flat)](https://www.npmjs.com/package/boteasy-dom)  [![npm version](https://badge.fury.io/js/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)  [![Downloads](https://img.shields.io/npm/dm/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)\r\n\r\n* This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms!\r\n---\r\n\r\n# How to use?\r\n\r\n```shell\r\nnpm i boteasy-dom\r\n```\r\n\r\n# Import:\r\n\r\n```shell\r\nimport BoteasyDOM from \"boteasy-dom\";\r\n/**\r\n * @jsx createElement\r\n * @jsxFrag Fragment\r\n * @jsxRuntime classic\r\n * Tells babel to use createElement for JSX.\r\n * See how to use globally: https://babeljs.io/docs/en/babel-plugin-transform-react-jsx#usage\r\n*/\r\nconst {  } = BoteasyDOM;\r\n```\r\n\r\n# .version:\r\n* a boteasy-dom version\r\n\r\n```shell\r\nversion;\r\n```\r\n\r\n# .Fragment:\r\n* Fragment for components\r\n\r\n```shell\r\nFragment;\r\n```\r\n\r\n# .dom:\r\n* document\r\n\r\n```shell\r\ndom;\r\n```\r\n\r\n# .link:\r\n* window.location\r\n\r\n```shell\r\nlink;\r\n```\r\n\r\n# .storage:\r\n* Manipulates: window.localStorage\r\n\r\n```shell\r\nstorage.set(\"boteasy\", {first: \"boteasy\", last: \"dom\"});\r\n```\r\n\r\n```shell\r\nstorage.get(\"boteasy\");\r\n```\r\n\r\n```shell\r\nstorage.remove(\"boteasy\");\r\n```\r\n\r\n```shell\r\nstorage.clear();\r\n```\r\n\r\n# .css():\r\n* This function is for you to add or remove class on one or multiple elements;\r\n\r\n```shell\r\ncss.add(\"input\", \"class\");\r\n```\r\n\r\n```shell\r\ncss.remove(\"input\", \"class\");\r\n```\r\n\r\n# .html(target, value):\r\n* This function serves to add or remove an element in the DOM;\r\n\r\n```shell\r\nhtml(\"label\", \"Just a test!\");\r\n```\r\n\r\n# .prop(target, bolean):\r\n* This function serves to enable/disable elements;\r\n\r\n```shell\r\nprop(\"input\", true);\r\n```\r\n\r\n```shell\r\nprop(\"input\", false);\r\n```\r\n\r\n# .tests(target, value):\r\n* This function serves to perform input tests;\r\n\r\n```shell\r\ntests(\"input#fullname\", \"your fullname\").then(status => {});\r\n```\r\n\r\n# wait(target, bolean):\r\n* This function serves to disable the entire site/App so that the user does not make multiple clicks or leave the page during a request;\r\n\r\n```shell\r\nwait(true);\r\n```\r\n\r\n```shell\r\nwait(false);\r\n```\r\n\r\n# .copy(value):\r\n* This function serves to copy a text to a clipboard;\r\n\r\n```shell\r\ncopy(\"Just a test!\");\r\n```\r\n\r\n# .request({}):\r\n* This function serves to perform AJAX requests;\r\n\r\n```shell\r\nrequest({\r\n\turl: \"https://www.example.com/api/\",\r\n\tmethod: \"GET\",\r\n\theaders: {},\r\n\tdata: {},\r\n\tdataType: \"json\",\r\n\tcors: false,\t\r\n\tsuccess: () => {},\r\n\terror: () => {}\r\n});\r\n```\r\n\r\n# .createElement();\r\n* This function serves to create elements to be rendered by Boteasy-dom;\r\n\r\n```shell\r\ncreateElement(Fragment, null,\r\n\tcreateElement(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#fff\", \"font-weight\": \"bold\"}})\r\n);\r\n```\r\n//TODO: `<input type=\"email\" className=\"boteasy\" style={{color: \"#fff\", \"font-weight\": \"bold\"}} />`\r\n\r\n\r\n# .createRoot():\r\n* This function serves to create a route to Boteasy-dom,\r\n* Send the second parameter as  true to give permission to hydrate;\r\n\r\n```shell\r\nconst container = dom.querySelector(\"#modal\");\r\nconst modal = createRoot(container, true);\r\n```\r\n\r\n* Render the element in the root;\r\n\r\n```shell\r\nconst element = createElement(\"h1\", null, \"Hello, world!\");\r\nmodal.render(createElement(element));\r\n```\r\n//TODO: `<h1>Hello, world!</h1>`\r\n\r\n\r\n* hydrate the element in the root;\r\n\r\n```shell\r\nconst name = \"Ronaldo S.\";\r\nconst element = createElement(\"h1\", null, \"Hello, \", name);\r\nmodal.hydrate(createElement(element));\r\n```\r\n//TODO: `<h1>Hello, Ronaldo S.</h1>`\r\n\r\n\r\n* Remove the element in the root;\r\n\r\n```shell\r\nmodal.unmount();\r\n```\r\n\r\n# .useState():\r\n* This function is just for adding some local states.\r\n\r\n```shell\r\nconst [state, setState] = useState(10);\r\nsetState(prev => (prev + 1));\r\n```\r\n\r\n# .useEffect():\r\n* ---\r\n\r\n```shell\r\nuseEffect(() => {\r\n\t//TODO: effect();\r\n}, [deps]);\r\n```\r\n\r\n# .match({}, index):\r\n* This function serves to get an index of an object;\r\n\r\n```shell\r\n<<<<<<< HEAD\r\nmatch({first: \"boteasy\", last: \"dom\"}, \"last\");\r\n```\r\n=======\r\nBoteasyDOM.match({first: \"boteasy\", last: \"dom\"}, \"last\");\r\n```\r\n>>>>>>> d46c7268addbb7ce5ca882537eeed00cf3b638d4\r\n","readmeFilename":"README.md","_id":"boteasy-dom@1.1.5-experimental-l6m74urx6ue","_nodeVersion":"17.6.0","_npmVersion":"8.5.1","dist":{"integrity":"sha512-yAWERNpnMW7SNgzCQj4U8wUkufId34Cnu9FfHmDYo4957MNIOCULncnkWZ6SeqX4Ryq/LlC/Ae7wv39QT7UBXw==","shasum":"c8aa0009d2eabd854355feb97e328c9cecfafb5c","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.1.5-experimental-l6m74urx6ue.tgz","fileCount":5,"unpackedSize":22249,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiLwwaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrg9g/9Ed7PugDP6flCne+7uF7CIgXh5aaNotv5mgNr4Eb9jP1sUO+f\r\nKx0kRJkE+Kc3wALcIFumi0sixWchALVRdhzcPsB++cfwZeW1Zs2ZgvVaP43s\r\n1PAlDGpCqrpawhBXop6l3up1UZqgX3LyTriG6tC71JQb8j7wl8haSTZy+Q1w\r\n57ovuVOa7ZG3Qenu/wuBl1bGpz8eLNSpDR1QwbELplV5RKI96la5gcwpRCZ7\r\n+DLDkva02DqfT7ZO+qssjegw6em0+CwYi2pkJIVzaoAVHd1dTdXLbSOX93rI\r\njsP3ZZo26I/fGlu6PmXQTj0g3yPGOSXFRRWjrGFmRq2bLcVXGCpsSrD6iICI\r\nKopNCOFSCFNXHmpOt48Qt2LTO1G4p3FNclqcM+lz5/FxT0xH6ZLZxD13MreE\r\ngeLIAPJWAf7qpXTbdJPFmoa1SfSLiqaKOWj0fQ/daiDddoUJLVBKKVQyH61T\r\n5AWvVfAY+ThHp5T9CHAq2fM+owatEANc4lTWQ5Q69iX00imvSQsZ9K0bH2oE\r\nZ/cDQqVL5ydehZD5NLiGZoYPZrqAvG3gmxO8IJjitRZSTXbjLug+cfmrEXGb\r\n37AmwnsA3fMZ0J08S3zING9b61/qaxf8e+Z+Sv/0ZwRTSFwQMvX6gcSiV4eW\r\n0WHb0gigJEk8ql8QF4hMEd141daSnrOv8IA=\r\n=PuoH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGrU9yLr3Nha6FAI71/+URbi/UzZIrkbmar0VOytCbkdAiEAwVSJXV1SgE8aV+/kCR8qr2k0bkorMNPk4B1wFaA36f8="}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.1.5-experimental-l6m74urx6ue_1647250458554_0.060411320380530986"},"_hasShrinkwrap":false},"1.1.5":{"name":"boteasy-dom","version":"1.1.5","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"gitHead":"62e9a542a62da60680892fabdc36aa67cd961ad8","_id":"boteasy-dom@1.1.5","_nodeVersion":"16.14.1","_npmVersion":"8.5.0","dist":{"integrity":"sha512-Iy1cR15nDSqpcbYCc3t7av+erxFdVX8w9qjG7yt08qtJ/pwPgtjt4UszYNEc55E+ZnTAzgmiPQ4OnYVpQbWweA==","shasum":"71ae0019e683c963220c8f4aa85f8be3f8123c50","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.1.5.tgz","fileCount":5,"unpackedSize":22054,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPsGoACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrHhQ/8D9L/eyaEw8TOXjr3hQ+aujpvZE7S2gfGaKG80JBJtPE1MZfI\r\n5gEhD6EK+jQveHr0rZ9KCbK/ZQFjj0r+VaCSu7wcId9GaJzPfGXm6cYMVoFh\r\nH7RyCK7siOyVdSnCbJ7B3D0aaCkrGPgC2zNBsZvmSSD4mVBa44EqjnyJIcnf\r\nxJYYblmldsFWbopk0aaWQpcr+V5vwD46WJ7I70PbULPVcVt9q5AVgYeV7r+7\r\nS1OCVHRDXoWIAIqwgjAIP6+s618GOh3/tp+JingHRgQsWVCDVeVpXqsAz8Y7\r\nC1z4rAUN8tS1GSRSMWt7Xrw267LTMzyOCSau7I/zJRav5vZ9RKSawIbplFoj\r\nJfk1IUsaqAAT+kcRdOjq18qZU4VIA5Pln/B/I4ShUCEQP9tBXR8rTCkxYGQm\r\nooe6/tA67X7u9Q+OebXWPuOf8y0M9xZ3FNo6qhcB8h+5G+FvvjyaPKgnJG4f\r\nqbVlyzHPXMxQ21PGGAiKmi+UMnkdUhDCnHGPviGKvW9xFnJ7P28CGarm7F/Z\r\nqaOVJOM8GLr5f25W4kvYuU60LEOi9g9XJ8Jxg1h3eyqyG5iJim4lu9zVFQ6t\r\n3354d7OwlYnQF2JEWYFIaWMn9x8nGcDxf88RpS3mvugDrOTB0x4ph9Q/rJCo\r\noUv/E33NTv26CThEMC/v004S/mZKnP50fZc=\r\n=UiLE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDaOTnrAQUbGBEQi6kT3gOdvltrPeDJcpECZL4VHTa1KgIhAOXhxLcexD+vAJQXeXFsmSbn3VVsdVFQ+5I4mtjhKdfz"}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.1.5_1648279976825_0.7272320608252791"},"_hasShrinkwrap":false},"1.1.5-next-jukj1xpvqk-20220331":{"name":"boteasy-dom","version":"1.1.5-next-jukj1xpvqk-20220331","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"gitHead":"62e9a542a62da60680892fabdc36aa67cd961ad8","_id":"boteasy-dom@1.1.5-next-jukj1xpvqk-20220331","_nodeVersion":"16.14.1","_npmVersion":"8.5.5","dist":{"integrity":"sha512-Gi6wcPuFFtorNa9Rt/DmrEgUJub+6PHQlp722nR1HDU2/xiRmLaalm41+EfS0YWxDMF8hDkYn6e9On3hjVH0bA==","shasum":"3061e9dd1ab026707a0a059784a9c5981da8369e","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.1.5-next-jukj1xpvqk-20220331.tgz","fileCount":5,"unpackedSize":22523,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEfJlkdA/sC5XY2Wi2rV7j9zN/KcFpatm++/lWQqhBy6AiEAlHm01qq0MPNS8K+O5Q3dpSjDYoODmtadQyPk0zMD474="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiRmrGACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrr3A/9EUQRPkp2XlAeaogzzVPuHTt3W9CKi+uznxMiWLHP/exmSWqf\r\nMx6lCBMVN2fpvEutB4VdEtf6ry12cncjCAmDMEE3PMKZwp3cdut98llTeRJt\r\nMVt1IOg44TgzAW0g2n4U3TU5N+ejhB+nuZA64yWTDmJeuZ6OCTfNoVMlMgio\r\nyr+2GsNk80UN+jGPq7cDvoGKcS+O6+wALFDxwlP7m2XbgTYc1WLzcvIvVyoo\r\nHeobkh9Stx0RcpQjbF4YAKgjqIlIRPlznzBklRhoijJfcPUayn1V+L1HhwrB\r\nRX4MApE6MNvpRt/6apRBj4grmrvkp8+Sen3xua8TZ9F4lh5/KVuSVBuVAqjU\r\nvc4CDXUVPFiutnzjq6DE8OEPUV7uF6yAYVQarag5lMpvBJHq+ail7mcNQJOE\r\nG6URXDJo9OwlMn/AydfnVQaaDsgLEi8ZAJPKRmPx6/vqmr9QxivWoh2xXKhy\r\nPjezGsELByY2N2hQIZVfrdVq+e8Yy8Pa91PG/Bc1L2zoHHN9qcRKI+q5qsYW\r\nqhj18VHtMHJUy5v+6yAbqJsb5M8gJJzN+swYP3G3N0SZzk83vZNU30LfoOFg\r\nCJhHrqJ9XcRQnPlp4sLn7gvAllaMdJammuoUjhPwPsBZXUi1yURf9dgj52Gw\r\nOMpWS0FZXu5kZHt0pTyQ/141OnqQOI80g64=\r\n=t7Nx\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.1.5-next-jukj1xpvqk-20220331_1648782021882_0.08249699066543625"},"_hasShrinkwrap":false},"1.1.6":{"name":"boteasy-dom","version":"1.1.6","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"gitHead":"422e59aaf5f92d5a65bd02e78fb59d7e790a4bff","_id":"boteasy-dom@1.1.6","_nodeVersion":"16.14.1","_npmVersion":"8.5.5","dist":{"integrity":"sha512-2At1HOGiqQANSSLFTe/BbplOrf54GzghnCGJhWEl6+vakIJNwZ6jkTvcqAeZAwJABhOmS1QTWPnMgpoiEq1YmA==","shasum":"d4e777f8223b93faf569d6d863c45ae6f66290b4","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.1.6.tgz","fileCount":5,"unpackedSize":22532,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBxCbAeyO2Rn85cINg4IG34NioNXW3Z+3AYBPF8WAN2eAiEAyvFedIeXz8bicgKZFXq9tbkmv78uSLMfH4ddJnJgFNA="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiSEDKACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqiaw/9HSMoGfj4g9WXBHbSE1RhR9u/cI7sZE+JZKGbJ0hcEZoiZjWV\r\nnlls7dV5jh3IYL3ga0GOxaI3EpYYvvLcMaTsW1ulKPUtATzcJ59LNdARGEVy\r\nuI9gqC57XvHtBPjI9wg2Czlo1zhqfjny5ND0RF0tmfAJGb6b5yvoZtMRUkKY\r\nSGLlFJHYn0JnwBUHf9qmJQ7AhbIKr2A4sjTAorcJgHsDm0bKcFY7pyc1y1tq\r\ngOHf7yix9Br75cesvQzp7Fkj+0wfazm+7c2e4ezUFAdX6aNOtQrd34EN2/ZV\r\n2Onwfy0GFMJzu6mnd04fwn3+LYPFK3T14B+VoyesmgxWbSuP5l2cSiBMObAk\r\nKfvKHK8VcLzopmsNIMnkPHfLGdomdlKRMCW42hgJlu2LnELeubZCtesoYX1x\r\ntwHOmVidlAiLQenERJbpGpPjxbRkXfR5CPMXBGm4sgDq43jJs7OyJZkH9aVk\r\nwRY0ciC6DjeuuMqXWX8MDgiu9CTxl4/EP/l/GeSr8nq1XJidFknxUHJS3rj1\r\na3ucitKERVS//gI+HdmO9SA65yyRSRFsaF/35hqdzB019R9En4fxTgAuHLc6\r\n8Vn+MkAh3Z4JPmPZLbuZFG0y7q8Jv4lc5IVEM4RUzmNr2QYfKkVwrdI5CKKF\r\n98FhyOBsapOGb8PgfkT9EghXQcTT3qY5e4c=\r\n=pjeZ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.1.6_1648902345940_0.6414519413460966"},"_hasShrinkwrap":false},"1.1.6-0923fojegcvn-20220402":{"name":"boteasy-dom","version":"1.1.6-0923fojegcvn-20220402","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"gitHead":"0a0d862cfd8fa374354002283394ce784abe5f40","_id":"boteasy-dom@1.1.6-0923fojegcvn-20220402","_nodeVersion":"16.14.1","_npmVersion":"8.5.5","dist":{"integrity":"sha512-YmOwhtNq9GQxFbzWs5tXBfwF1auqpMN0lvntCmxGjyaiWj4WonfmhkluEMbKnWrexRmmtMNapd6iyfOwqxUW7Q==","shasum":"a751400dd5f0d5d3754718534a2cc45b29e08df8","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.1.6-0923fojegcvn-20220402.tgz","fileCount":5,"unpackedSize":22560,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDwDtOx44Z5X9UBYBlyBDPxorC1MqazSY2raRhpZL0+9AIhAN0Z8X3HMlrmeV5ynjb11auaRas+IwR+Hv/LNc0gfqrI"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiSGglACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrbVg/9GOvDvTDLs5pYNbGKOAY7O3K80hbTwACRJtGgI04w8F0S3P3L\r\nMkG4t8g46vkjExgdfVfIvQ6+3ydzKLuVGkyAQdbtUKh/vrVcwSGNM5R8cJsE\r\nWUU0+LjEE5h7Q9Nct3OiPxXrxS4/3Y5M+S72Y3U2WkFyae17oiZFMjm4mTXN\r\n6sXqLyXOe6XTC4bUNsgKCCT5xqhBrEcqjuL925Of+GeoiV0uvkHrEnp0hi/8\r\ne5b23aHUxGbH8Z0g66qSF2LHB79WR/zQxFng3MeVCfeyjKiuiQbFiQomiUh4\r\nzyBj/qVyj4f27uwwd47Vj0XvwwRFyak3HaErjI/WjwvkkjvLknqVVsUso1JU\r\nX5KVe9/miCIl09GRF3YIPRJCeJSasRwekbV6kmY4sxWLkGUQQMVrEFQHIqUm\r\nsIc2K1y+huEARQCiEHGziA9fF19NFDGw9inANTbpuebLkbDUrskwjaVJQV1T\r\nfBceD3DIWCHEIGkDjZo6y8pH7JBOc8NyiCviLHzXmLoLS3bZREC6Ntcj0Aeh\r\nqWq/UX1RK8Uocur4OuWOHOoaXuPTQWpdDbfp4oqEp7OQzPbUWSK2BKUoo75i\r\nVtil8jxJtLHVjZ79fY/98tpIvuteCXKXUATCfzjRbZlwymYvQKP94V26X2+d\r\nqauB701WJSCHlZQ4TnYgos3STTtWRNWusCs=\r\n=0a1c\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.1.6-0923fojegcvn-20220402_1648912421180_0.8639128266650751"},"_hasShrinkwrap":false},"1.1.7":{"name":"boteasy-dom","version":"1.1.7","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"gitHead":"0a0d862cfd8fa374354002283394ce784abe5f40","_id":"boteasy-dom@1.1.7","_nodeVersion":"16.14.1","_npmVersion":"8.5.5","dist":{"integrity":"sha512-GR9YZ4SRSaX4E0bmYDt2uhnQvrbO6LH36JLhXz1Bwhelb+TeWA5UlfiGV5sTAL1zhSAa8kxYBmkxClX8sA7HQQ==","shasum":"905fe3be45bbca386a44921b32e6dc0f85401222","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.1.7.tgz","fileCount":5,"unpackedSize":22517,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCTyyWltgC42wT/R8tj0dr7FSXTcmbGTN4E2dZLBKDD/gIhAJKoV/M3rfgtmf9LXoB/o5drIA9yDgft/inYUkwuAm5N"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiSGilACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoXJBAAkkyQ0796fpxSUpA95mWg9iRscyb9UCjzr5sT92Kcc8v0ytcI\r\nxKu6mzUcYqisXJPKb20DH1cVY0lw5Lwq56/ENSDigEeHXLKrAPrZ3nSH+TC2\r\nEdxid12MVNrtMp+vw/4ytAYdO2XCDX62qyNHzNzOc01Ux3Fts9sLR5BPXW/n\r\n2EyjvuStUDWZimixZITVR8EK2FOJDA+Fy6kl47ycOZWb8wndN9G6eWfUsskj\r\nEFtxrQEcqDNca5lIk6isk3mKsiLOYTwR8NxffNsIkfw6xtm2Gp/ldC2ZVX4e\r\nTrdiGwytlVsVmxbGi0Vli4g9vtP71FfX+5tYiZ3HRQFVNTIK6p07s+sc01OA\r\nuuUXBSRqK514No9z/9C5ExyXmmqDtx/78soUFGsiUQjqKjcRbhZ0yboDkT67\r\nUD3hO8KokF3ekCuuz5TiL6T3VXMmY+Z89c3s/gRqO1J7itR2yFz5R9OeP9l/\r\nvS2PqR782Y4uINYI+7iDwy5aP3Ko6mqXuTS4O0JH7ZtJKLKS3JMNP0+840bl\r\n+Os3Fsk/WVe+xTRx4yo7uPsuO+FvtVLN66atjMvoQNpDadPXcmxigpyXNoYC\r\nvs4hSC0yl6bRbVikLmPdDqdf+pN/rJ9dImfYWCaUXNcsoLAtOwN28VLSlULv\r\nG8v6BXH13wYFzVLlw4DtTOFsd1d/wN/+EmY=\r\n=x2+4\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.1.7_1648912549223_0.8223088765403623"},"_hasShrinkwrap":false},"1.1.7-next-cxp7kbe6pi5":{"name":"boteasy-dom","version":"1.1.7-next-cxp7kbe6pi5","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"readme":"# [BoteasyDOM](https://boteasy.net/) &middot; [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/theronaldostar/boteasy-dom/blob/main/LICENSE)  [![npm version](https://img.shields.io/npm/v/boteasy-dom.svg?style=flat)](https://www.npmjs.com/package/boteasy-dom)  [![npm version](https://badge.fury.io/js/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)  [![Downloads](https://img.shields.io/npm/dm/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)\r\n\r\n* This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms!\r\n---\r\n\r\n# How to use?\r\n\r\n```shell\r\nnpm i boteasy-dom\r\n```\r\n\r\n# Import:\r\n\r\n```shell\r\nimport BoteasyDOM from \"boteasy-dom\";\r\n/**\r\n * @jsx createElement\r\n * @jsxFrag Fragment\r\n * @jsxRuntime classic\r\n * Tells babel to use createElement for JSX.\r\n * See how to use globally: https://babeljs.io/docs/en/babel-plugin-transform-react-jsx#usage\r\n*/\r\nconst {  } = BoteasyDOM;\r\n```\r\n\r\n# .version:\r\n* a boteasy-dom version\r\n\r\n```shell\r\nversion;\r\n```\r\n\r\n# .Fragment:\r\n* Fragment for components\r\n\r\n```shell\r\nFragment;\r\n```\r\n\r\n# .dom:\r\n* document\r\n\r\n```shell\r\ndom;\r\n```\r\n\r\n# .link:\r\n* Get information or change your app's URL, easily and accurately!\r\n\r\n```shell\r\n/**\r\n * url: https://www.example.com\r\n *\r\n * to: https://www.example.com/help\r\n * reload: 1000 = 1 second\r\n * host: example.com\r\n * route: /help\r\n*/\r\n```\r\n\r\n```shell\r\nlink.to(\"help\");\r\n```\r\n\r\n```shell\r\nlink.reload(1000);\r\n```\r\n\r\n```shell\r\nlink.host;\r\n```\r\n\r\n```shell\r\nlink.route;\r\n```\r\n\r\n# .storage:\r\n* Manipulates: window.localStorage\r\n\r\n```shell\r\nstorage.set(\"boteasy\", {first: \"boteasy\", last: \"dom\"});\r\n```\r\n\r\n```shell\r\nstorage.get(\"boteasy\");\r\n```\r\n\r\n```shell\r\nstorage.remove(\"boteasy\");\r\n```\r\n\r\n```shell\r\nstorage.clear();\r\n```\r\n\r\n# .css():\r\n* This function is for you to add or remove class on one or multiple elements;\r\n\r\n```shell\r\ncss.add(\"input\", \"class\");\r\n```\r\n\r\n```shell\r\ncss.remove(\"input\", \"class\");\r\n```\r\n\r\n# .html(target, value):\r\n* This function serves to add or remove an element in the DOM;\r\n\r\n```shell\r\nhtml(\"label\", \"Just a test!\");\r\n```\r\n\r\n# .prop(target, bolean):\r\n* This function serves to enable/disable elements;\r\n\r\n```shell\r\nprop(\"input\", true);\r\n```\r\n\r\n```shell\r\nprop(\"input\", false);\r\n```\r\n\r\n# .tests(target, value):\r\n* This function serves to perform input tests;\r\n\r\n```shell\r\ntests(\"input#fullname\", \"your fullname\").then(status => {});\r\n```\r\n\r\n# wait(target, bolean):\r\n* This function serves to disable the entire site/App so that the user does not make multiple clicks or leave the page during a request;\r\n\r\n```shell\r\nwait(true);\r\n```\r\n\r\n```shell\r\nwait(false);\r\n```\r\n\r\n# .copy(value):\r\n* This function serves to copy a text to a clipboard;\r\n\r\n```shell\r\ncopy(\"Just a test!\");\r\n```\r\n\r\n# .request({}):\r\n* This function serves to perform AJAX requests;\r\n\r\n```shell\r\nrequest({\r\n\turl: \"https://www.example.com/api/\",\r\n\tmethod: \"GET\",\r\n\theaders: {},\r\n\tdata: {},\r\n\tdataType: \"json\",\r\n\tcors: false,\t\r\n\tsuccess: () => {},\r\n\terror: () => {}\r\n});\r\n```\r\n\r\n# .createElement();\r\n* This function serves to create elements to be rendered by Boteasy-dom;\r\n\r\n```shell\r\ncreateElement(Fragment, null,\r\n\tcreateElement(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#fff\", \"font-weight\": \"bold\"}})\r\n);\r\n```\r\n//TODO: `<input type=\"email\" className=\"boteasy\" style={{color: \"#fff\", \"font-weight\": \"bold\"}} />`\r\n\r\n\r\n# .createRoot():\r\n* This function serves to create a route to Boteasy-dom,\r\n* Send the second parameter as  true to give permission to hydrate;\r\n\r\n```shell\r\nconst container = dom.querySelector(\"#modal\");\r\nconst modal = createRoot(container, true);\r\n```\r\n\r\n* Render the element in the root;\r\n\r\n```shell\r\nconst element = createElement(\"h1\", null, \"Hello, world!\");\r\nmodal.render(createElement(element));\r\n```\r\n//TODO: `<h1>Hello, world!</h1>`\r\n\r\n\r\n* hydrate the element in the root;\r\n\r\n```shell\r\nconst name = \"Ronaldo S.\";\r\nconst element = createElement(\"h1\", null, \"Hello, \", name);\r\nmodal.hydrate(createElement(element));\r\n```\r\n//TODO: `<h1>Hello, Ronaldo S.</h1>`\r\n\r\n\r\n* Remove the element in the root;\r\n\r\n```shell\r\nmodal.unmount();\r\n```\r\n\r\n# .useState():\r\n* This function is just for adding some local states.\r\n\r\n```shell\r\nconst [state, setState] = useState(10);\r\nsetState(prev => (prev + 1));\r\n```\r\n\r\n# .useEffect():\r\n* ---\r\n\r\n```shell\r\nuseEffect(() => {\r\n\t//effect();\r\n\t//TODO: Under development! On moment.\r\n}, [deps]);\r\n```\r\n\r\n# .match({}, index):\r\n* This function is a direct alternative to \"switch ~ case\".\r\n\r\n```shell\r\nconst index = null;\r\nmatch({\r\n\tfirst: \"boteasy\",\r\n\tlast: \"dom\",\r\n\tdefault: \"latest\"\r\n}, index);\r\n```","readmeFilename":"README.md","gitHead":"1095bdf6f8437cac5510a77abeae90f0b43c1cea","_id":"boteasy-dom@1.1.7-next-cxp7kbe6pi5","_nodeVersion":"16.14.1","_npmVersion":"8.5.5","dist":{"integrity":"sha512-fmy+89RZlAnCXgPBEYUXb5zbH4CNXTy2L4Qf3bl0KbzaVPO3vr2hMUn2g3zMmnrQCrGrvgjfYelzZ1ntHRMCDw==","shasum":"deced32cb7f92b4df53e658652475991a92c0f67","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.1.7-next-cxp7kbe6pi5.tgz","fileCount":5,"unpackedSize":23289,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDESa0wzQ82tjUrZuYvLtHqbUSepHm1+nOWnYehBvChswIgateosuYckA0zou0U8adht1HGEweNPngZVqhfXd7xpLo="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUI2eACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmohXw//YHW0N3KicYGhLdu53nQrtHa3EO/omt5lMw7RWoXO/Mgvnffs\r\nEbHAdv4oZCALkAEpgHHrMzmPnDWG6ksefoxGsvxWVdiKIik/dmLIjdLYe8/O\r\nHJra7dDl5X/e/E1dbRYU2H8yzxjRrGlEI0grRxR818iVM5RQXHV65I0qXWlU\r\nLymUoC+JJ0dBqIOTYyY7bCJs7tEW5eVUkKxpxcXRIfVb7m8+B6t6K9w242RH\r\n8C+a55uzNqX8Hbo6SyuJbQmpHRWhJsYNhcuHmRl8RyZmwVFlr6D8Jq8edm7n\r\nV2oXm1ISbX+SUDJU4gBif5BWof63aJZoanNiyp0g+PwBygwrix9GhjCf+bdu\r\nSw3IbyJwqe1WZ4brVRR4AaYVOuODfC9pdiCePQt/CFmQlj/1OmPqON+7Q6VJ\r\nE5ETWdsJBl9Gn9dSCjzuzk5lEnuhMww3gQqNZ8X45ZHXC36XS+ZPycJoJxln\r\nQLCr/M0ARS/XiHAI9oaAGIEoTfE1rdmpILBR2z3Gv52jLofMcQMZjky9j/EL\r\naMuC2Ff2jjC1/0SOgMvvviDXAs8qsshDY6rKwoO3CUwXrzAhNbztdJ5yA8ku\r\nk4KNuOiKzn3kdXFppU43CyY1z0yYAEqnAJ+yKos2zcKtzG0quPFFFAVNXXCY\r\nqCtiX3hgQgr2Nf4NmCrnCFrKbZa4Sd+rL7E=\r\n=t197\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.1.7-next-cxp7kbe6pi5_1649446302435_0.17508558779374295"},"_hasShrinkwrap":false},"1.1.7-next-cxp7kbe6pi5-correction":{"name":"boteasy-dom","version":"1.1.7-next-cxp7kbe6pi5-correction","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"readme":"# [BoteasyDOM](https://boteasy.net/) &middot; [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/theronaldostar/boteasy-dom/blob/main/LICENSE)  [![npm version](https://img.shields.io/npm/v/boteasy-dom.svg?style=flat)](https://www.npmjs.com/package/boteasy-dom)  [![npm version](https://badge.fury.io/js/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)  [![Downloads](https://img.shields.io/npm/dm/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)\r\n\r\n* This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms!\r\n---\r\n\r\n# How to use?\r\n\r\n```shell\r\nnpm i boteasy-dom\r\n```\r\n\r\n# Import:\r\n\r\n```shell\r\nimport BoteasyDOM from \"boteasy-dom\";\r\n/**\r\n * @jsx createElement\r\n * @jsxFrag Fragment\r\n * @jsxRuntime classic\r\n * Tells babel to use createElement for JSX.\r\n * See how to use globally: https://babeljs.io/docs/en/babel-plugin-transform-react-jsx#usage\r\n*/\r\nconst {  } = BoteasyDOM;\r\n```\r\n\r\n# .version:\r\n* a boteasy-dom version\r\n\r\n```shell\r\nversion;\r\n```\r\n\r\n# .Fragment:\r\n* Fragment for components\r\n\r\n```shell\r\nFragment;\r\n```\r\n\r\n# .dom:\r\n* document\r\n\r\n```shell\r\ndom;\r\n```\r\n\r\n# .link:\r\n* Get information or change your app's URL, easily and accurately!\r\n\r\n```shell\r\n/**\r\n * url: https://www.example.com\r\n *\r\n * to: https://www.example.com/help\r\n * reload: 1000 = 1 second\r\n * protocol: http: | https:\r\n * host: example.com\r\n * route: /help\r\n*/\r\n```\r\n\r\n```shell\r\nlink.to(\"help\");\r\n```\r\n\r\n```shell\r\nlink.reload(1000);\r\n```\r\n\r\n```shell\r\nlink.protocol;\r\n```\r\n\r\n```shell\r\nlink.host;\r\n```\r\n\r\n```shell\r\nlink.route;\r\n```\r\n\r\n# .storage:\r\n* Manipulates: window.localStorage\r\n\r\n```shell\r\nstorage.set(\"boteasy\", {first: \"boteasy\", last: \"dom\"});\r\n```\r\n\r\n```shell\r\nstorage.get(\"boteasy\");\r\n```\r\n\r\n```shell\r\nstorage.remove(\"boteasy\");\r\n```\r\n\r\n```shell\r\nstorage.clear();\r\n```\r\n\r\n# .css():\r\n* This function is for you to add or remove class on one or multiple elements;\r\n\r\n```shell\r\ncss.add(\"input\", \"class\");\r\n```\r\n\r\n```shell\r\ncss.remove(\"input\", \"class\");\r\n```\r\n\r\n# .html(target, value):\r\n* This function serves to add or remove an element in the DOM;\r\n\r\n```shell\r\nhtml(\"label\", \"Just a test!\");\r\n```\r\n\r\n# .prop(target, bolean):\r\n* This function serves to enable/disable elements;\r\n\r\n```shell\r\nprop(\"input\", true);\r\n```\r\n\r\n```shell\r\nprop(\"input\", false);\r\n```\r\n\r\n# .tests(target, value):\r\n* This function serves to perform input tests;\r\n\r\n```shell\r\ntests(\"input#fullname\", \"your fullname\").then(status => {});\r\n```\r\n\r\n# wait(target, bolean):\r\n* This function serves to disable the entire site/App so that the user does not make multiple clicks or leave the page during a request;\r\n\r\n```shell\r\nwait(true);\r\n```\r\n\r\n```shell\r\nwait(false);\r\n```\r\n\r\n# .copy(value):\r\n* This function serves to copy a text to a clipboard;\r\n\r\n```shell\r\ncopy(\"Just a test!\");\r\n```\r\n\r\n# .request({}):\r\n* This function serves to perform AJAX requests;\r\n\r\n```shell\r\nrequest({\r\n\turl: \"https://www.example.com/api/\",\r\n\tmethod: \"GET\",\r\n\theaders: {},\r\n\tdata: {},\r\n\tdataType: \"json\",\r\n\tcors: false,\t\r\n\tsuccess: () => {},\r\n\terror: () => {}\r\n});\r\n```\r\n\r\n# .createElement();\r\n* This function serves to create elements to be rendered by Boteasy-dom;\r\n\r\n```shell\r\ncreateElement(Fragment, null,\r\n\tcreateElement(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#fff\", \"font-weight\": \"bold\"}})\r\n);\r\n```\r\n//TODO: `<input type=\"email\" className=\"boteasy\" style={{color: \"#fff\", \"font-weight\": \"bold\"}} />`\r\n\r\n\r\n# .createRoot():\r\n* This function serves to create a route to Boteasy-dom,\r\n* Send the second parameter as  true to give permission to hydrate;\r\n\r\n```shell\r\nconst container = dom.querySelector(\"#modal\");\r\nconst modal = createRoot(container, true);\r\n```\r\n\r\n* Render the element in the root;\r\n\r\n```shell\r\nconst element = createElement(\"h1\", null, \"Hello, world!\");\r\nmodal.render(createElement(element));\r\n```\r\n//TODO: `<h1>Hello, world!</h1>`\r\n\r\n\r\n* hydrate the element in the root;\r\n\r\n```shell\r\nconst name = \"Ronaldo S.\";\r\nconst element = createElement(\"h1\", null, \"Hello, \", name);\r\nmodal.hydrate(createElement(element));\r\n```\r\n//TODO: `<h1>Hello, Ronaldo S.</h1>`\r\n\r\n\r\n* Remove the element in the root;\r\n\r\n```shell\r\nmodal.unmount();\r\n```\r\n\r\n# .useState():\r\n* This function is just for adding some local states.\r\n\r\n```shell\r\nconst [state, setState] = useState(10);\r\nsetState(prev => (prev + 1));\r\n```\r\n\r\n# .useEffect():\r\n* ---\r\n\r\n```shell\r\nuseEffect(() => {\r\n\t//effect();\r\n\t//TODO: Under development! On moment.\r\n}, [deps]);\r\n```\r\n\r\n# .match({}, index):\r\n* This function is a direct alternative to \"switch ~ case\".\r\n\r\n```shell\r\nconst index = null;\r\nmatch({\r\n\tfirst: \"boteasy\",\r\n\tlast: \"dom\",\r\n\tdefault: \"latest\"\r\n}, index);\r\n```","readmeFilename":"README.md","gitHead":"cb80fae081bb5165f8634cb525b837637713d267","_id":"boteasy-dom@1.1.7-next-cxp7kbe6pi5-correction","_nodeVersion":"16.14.1","_npmVersion":"8.5.5","dist":{"integrity":"sha512-f6uC9zATgXiZEkJQqZfrLf+z1C+Eo6SbOjP/wLkGxDV+9BanMPj3ILIO8rkTCL1Vc0BAjDJpbq7nZCzrI4Rtlw==","shasum":"f7caa10ed83bd48d5d3540777857a7225edca8c5","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.1.7-next-cxp7kbe6pi5-correction.tgz","fileCount":5,"unpackedSize":23431,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBNEIU1MYeCtQL+qzyf3oH/QkTtt+XyjZvw5X727IYJlAiEAoNQTh7J0b439Gtr1WSQoA4dVo9v9caH5HohD70bNYE8="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUJKcACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp23xAAo0hquIM6Wl7MsdvqZWi6ZbtDjNlPYVbLRDGWj/jLtQUddFSg\r\nT/cU1DiF8KriHckDFrq+0cDAAVq/Mo1v11u4k2jFrlNAsdd+9KlNLxBqyLhp\r\n/0SiVhrPGSa/oB+ukOmn2z1SHRF8zUal+04NlSgpAxXC0gBBwpIkN7lPXrGZ\r\n3IUrrg8ozR9K+cRwJv18YVaTVp9bNn/Thi4kjHh0HTCQeB4k8R6iEP7pUkdi\r\nqyXrlg1L6fS2GUwk72c1ZWa2uERSr8YHCekwfPqLNpA2iXftN7e+DtXViAbi\r\nJBk+UlU4DJIoJoNiBGvNwtrFEKy1NnVa7/KeAeVZqpA6f3Zvl6QXSBcIYc5Q\r\n3TBejp7PWpHcQKP9kT9W5aYKcT+IAznYxuyrPdVOhBsR+wc9JCW+OUOyB4Hq\r\ni+4mR5jEMqEOrGlRkckADJVKfNqtsuJUa8o/LCpZ5JZ9WAjIsH/u0Yr3nrcZ\r\npYpL1zfWGAu0Ky965RRB02C4HjOGLDCCHDgamdh0S2GaeS0fU+wT5Ph9SwXS\r\nMeq5EzygHWpAeg2yCVu4ZgKQGYohpYwRBnl/KORSCBmTG9s6Sx2XFfkMsHOB\r\n5P8CZ5Pm8Pje4nz+lHTo8H9IWjGngGj63RTRUH1tJuUV4+0AAc8/aLI4gUOp\r\nhBV5S6Q57gWiRc7GfKqPe/aFNfTm+WpsO70=\r\n=co6O\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.1.7-next-cxp7kbe6pi5-correction_1649447580412_0.5581432322687954"},"_hasShrinkwrap":false},"1.1.8-beta-q9mr2v6j10i":{"name":"boteasy-dom","version":"1.1.8-beta-q9mr2v6j10i","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"readme":"# [BoteasyDOM](https://boteasy.net/) &middot; [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/theronaldostar/boteasy-dom/blob/main/LICENSE)  [![npm version](https://img.shields.io/npm/v/boteasy-dom.svg?style=flat)](https://www.npmjs.com/package/boteasy-dom)  [![npm version](https://badge.fury.io/js/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)  [![Downloads](https://img.shields.io/npm/dm/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)\r\n\r\n* This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms!\r\n---\r\n\r\n# How to use?\r\n\r\n```shell\r\nnpm i boteasy-dom\r\n```\r\n\r\n# Import:\r\n\r\n```shell\r\nimport BoteasyDOM from \"boteasy-dom\";\r\n/**\r\n * @jsx createElement\r\n * @jsxFrag Fragment\r\n * @jsxRuntime classic\r\n * Tells babel to use createElement for JSX.\r\n * See how to use globally: https://babeljs.io/docs/en/babel-plugin-transform-react-jsx#usage\r\n*/\r\nconst {  } = BoteasyDOM;\r\n```\r\n\r\n# .version:\r\n* a boteasy-dom version\r\n\r\n```shell\r\nversion;\r\n```\r\n\r\n# .Fragment:\r\n* Fragment for components\r\n\r\n```shell\r\nFragment;\r\n```\r\n\r\n# .dom:\r\n* document\r\n\r\n```shell\r\ndom;\r\n```\r\n\r\n# .link:\r\n* Get information or change your app's URL, easily and accurately!\r\n\r\n```shell\r\n/**\r\n * url: https://www.example.com\r\n *\r\n * to: https://www.example.com/help\r\n * reload: 1000 = 1 second\r\n * protocol: http: | https:\r\n * host: example.com\r\n * route: /help\r\n*/\r\n```\r\n\r\n```shell\r\nlink.to(\"help\"); //TODO: keep history!\r\nlink.to(\"help\", false);\r\n```\r\n\r\n```shell\r\nlink.reload(1000);\r\n```\r\n\r\n```shell\r\nlink.protocol;\r\n```\r\n\r\n```shell\r\nlink.host;\r\n```\r\n\r\n```shell\r\nlink.route;\r\n```\r\n\r\n# .storage:\r\n* Manipulates: window.localStorage\r\n\r\n```shell\r\nstorage.set(\"boteasy\", {first: \"boteasy\", last: \"dom\"});\r\n```\r\n\r\n```shell\r\nstorage.get(\"boteasy\");\r\n```\r\n\r\n```shell\r\nstorage.remove(\"boteasy\");\r\n```\r\n\r\n```shell\r\nstorage.clear();\r\n```\r\n\r\n# .css():\r\n* This function is for you to add or remove class on one or multiple elements;\r\n\r\n```shell\r\ncss.add(\"input\", \"class\");\r\n```\r\n\r\n```shell\r\ncss.remove(\"input\", \"class\");\r\n```\r\n\r\n# .html(target, value):\r\n* This function serves to add or remove an element in the DOM;\r\n\r\n```shell\r\nhtml(\"label\", \"Just a test!\");\r\n```\r\n\r\n# .prop(target, bolean):\r\n* This function serves to enable/disable elements;\r\n\r\n```shell\r\nprop(\"input\", true);\r\n```\r\n\r\n```shell\r\nprop(\"input\", false);\r\n```\r\n\r\n# .tests(target, value):\r\n* This function serves to perform input tests;\r\n\r\n```shell\r\ntests(\"input#fullname\", \"your fullname\").then(status => {});\r\n```\r\n\r\n# wait(target, bolean):\r\n* This function serves to disable the entire site/App so that the user does not make multiple clicks or leave the page during a request;\r\n\r\n```shell\r\nwait(true);\r\n```\r\n\r\n```shell\r\nwait(false);\r\n```\r\n\r\n# .copy(value):\r\n* This function serves to copy a text to a clipboard;\r\n\r\n```shell\r\ncopy(\"Just a test!\");\r\n```\r\n\r\n# .request({}):\r\n* This function serves to perform AJAX requests;\r\n\r\n```shell\r\nrequest({\r\n\turl: \"https://www.example.com/api/\",\r\n\tmethod: \"GET\",\r\n\theaders: {},\r\n\tdata: {},\r\n\tdataType: \"json\",\r\n\tcors: false,\t\r\n\tsuccess: () => {},\r\n\terror: () => {}\r\n});\r\n```\r\n\r\n# .createElement();\r\n* This function serves to create elements to be rendered by Boteasy-dom;\r\n\r\n```shell\r\ncreateElement(Fragment, null,\r\n\tcreateElement(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#fff\", \"font-weight\": \"bold\"}})\r\n);\r\n```\r\n//TODO: `<input type=\"email\" className=\"boteasy\" style={{color: \"#fff\", \"font-weight\": \"bold\"}} />`\r\n\r\n\r\n# .createRoot():\r\n* This function serves to create a route to Boteasy-dom,\r\n* Send the second parameter as  true to give permission to hydrate;\r\n\r\n```shell\r\nconst container = dom.querySelector(\"#modal\");\r\nconst modal = createRoot(container, true);\r\n```\r\n\r\n* Render the element in the root;\r\n\r\n```shell\r\nconst element = createElement(\"h1\", null, \"Hello, world!\");\r\nmodal.render(createElement(element));\r\n```\r\n//TODO: `<h1>Hello, world!</h1>`\r\n\r\n\r\n* hydrate the element in the root;\r\n\r\n```shell\r\nconst name = \"Ronaldo S.\";\r\nconst element = createElement(\"h1\", null, \"Hello, \", name);\r\nmodal.hydrate(createElement(element));\r\n```\r\n//TODO: `<h1>Hello, Ronaldo S.</h1>`\r\n\r\n\r\n* Remove the element in the root;\r\n\r\n```shell\r\nmodal.unmount();\r\n```\r\n\r\n# .useState():\r\n* This function is just for adding some local states.\r\n\r\n```shell\r\nconst [state, setState] = useState(10);\r\nsetState(prev => (prev + 1));\r\n```\r\n\r\n# .useEffect():\r\n* ---\r\n\r\n```shell\r\nuseEffect(() => {\r\n\t//effect();\r\n\t//TODO: Under development! On moment.\r\n}, [deps]);\r\n```\r\n\r\n# .match({}, index):\r\n* This function is a direct alternative to \"switch ~ case\".\r\n\r\n```shell\r\nconst index = null;\r\nmatch({\r\n\tfirst: \"boteasy\",\r\n\tlast: \"dom\",\r\n\tdefault: \"latest\"\r\n}, index);\r\n```","readmeFilename":"README.md","gitHead":"857af07f507f94869256568aeec4085cbbaa097c","_id":"boteasy-dom@1.1.8-beta-q9mr2v6j10i","_nodeVersion":"16.14.1","_npmVersion":"8.5.5","dist":{"integrity":"sha512-ckKm3Sph3XbtfQyQmOZ2jHqWi9ue9bhv3dL0JFGAKIMmetmpDxFmq5R0sTYVLWbBpOk1wUteIZHW5x8ZiqrVVg==","shasum":"87b4a84dec8726397778251564a8353994cc3bad","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.1.8-beta-q9mr2v6j10i.tgz","fileCount":5,"unpackedSize":23526,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEPYdt3HiIz8dJTQA1+FpeGkCaUPMUrGrmnQpCb05jiBAiEAg/MtMc0waYz3UHPbSGYBarydZ2qVDofvV2wtTix+wPw="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUJ4NACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpPuQ/+KqjcjltHtGzSMsFMG93uXncs25gffXvvnlJ6jt4Gfd27a2I/\r\nEWhN1/10Q/JtAEAGUvxhuqObPGy0vQWaDwRmPYg57NFMqX0wDRhSj8ONlcVD\r\nIxlHJKaxe4+DHJG7zwacqQDhfAqLOn87jFijUAEw9gBk6VC1rmeZ7N1T0Kfc\r\nXRR1NuS/VfYRyB+iRehm1ov1NyDBj3c9BARS6KiJgwiPv9YlcqFCs0Hejume\r\nV3cvHsxuUcgHPKvFHdSFnn46pm2C9R30wTdAoEfwSTPIupMMDy9mhAHQRTJv\r\n2azudTgE3NRbUZPM7bGjvftU0XsRvDvHDq+KAFmcRb1IJoL2tEsbS6Ef9cWI\r\n3dj9fjqLtr8AAJEhSYFE/Y0q5My5+lK6tv0dTpa+NKbPZxH3/7Un9ue3LxWg\r\nXfao+lVNIVpKcTyxgLhOi4E2+uArm3eGq0ZhhCh4y1oacwzZ/Vb2xjrPeqk+\r\nmInOx3lXA2roMPI6HogcKM1ofFOBfY3pBkxwp8i7tFFNjy3HyMqwx5OwI7kb\r\np76Y3P0lsUCEQTPz9tDZKNFz+wFnY9MGdesaGVFykIr9RbME/l+uUU4Ng44J\r\nwQ72ZnoxMQvAq1hTNWkXHH2PbFoBxcGFMQkHGecIR4f5uJGIYOzIhl7TgdFy\r\neDkDae/60AuIHxbX4S/HVEogoTDSvJGyWzM=\r\n=w37C\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.1.8-beta-q9mr2v6j10i_1649450509761_0.9592057220480072"},"_hasShrinkwrap":false},"1.1.8":{"name":"boteasy-dom","version":"1.1.8","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"gitHead":"6c215d977ce90918093db8663242d652d7321f96","_id":"boteasy-dom@1.1.8","_nodeVersion":"16.14.1","_npmVersion":"8.5.5","dist":{"integrity":"sha512-5uZ0IQSh7ANVngCDIGlLRKNGBKViAzzi6EvyXwK4NWTlivF3b5lA4OYBlUlwhOjZ7qRx+Ps6ADqbwXIeYPdJFQ==","shasum":"122df79b1fd6ad4354b8d34b5c06524c4106a24a","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.1.8.tgz","fileCount":5,"unpackedSize":23612,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD/pv1S574ELhfFTurgvYsAmyr3IhtC6ImvoU+HEnacdgIgHDlydzP5KDBR/29QegJc7Wbf6V2qM+3B9r2jSg/U8cw="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiWfv2ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr3sw/+Ox+erLwT+XP7Ex4VFAQ1pl8ICaBcfRE0mz55TfIyrhRBKVXM\r\nfmsLMRNwgMwTNS76l8t8Tp+4s02aAuFr8jLEBtjldp2bhkmG97YR+dVuhG3w\r\nTo6h3dx5oqLZ2niU+tjqeDrtvqfEA8wfdRG1SsKcklo9b4XqUhRfG4MRTnlG\r\n/cfRfh9mSqUotYhiBrjZVqaIKUtud9hO9L4XcsLxCD4ljSo7KmX0kw/TTw/T\r\nabMJgkY6waXC7iZOEzmNWEuI4Yz8Ovtu8z4sEX0lbvfIzQOaLIc6mveUcbM8\r\nhgMw+PdDnI4TpbcP+9/WXEMwXYWI5JJIKDX61mCfQSieUpZst+ZtIoJt0JHs\r\nbL5e/n1TpTuIuNR9xfPdnTIfsu3zFMVGu2u03SEqTq8uTtNWN4CJ/i/LSfQ6\r\nXizsGxyYDwtxbriu2wbhrLDDU2NPiRRFUaGfU82TkhsgHp/36rWP0h4vSYbv\r\nDTt1DvMCKC4nIpaGC6ihjkJdXquO3yc1wEzyisOupqKfDexSNp0ZGAdt4q+u\r\nuEehCskTLAAJMjwPxyydP5HJXRB9/vBuMCcMKrOHOHrd8ZvSgCpcCU8nnmbv\r\nZGy7fvsLuHSrpp+JBAuq8/4EYidARFDJX6+yOtBuJfHpSw5H7kZCB/d7VAGw\r\nwbgixkRaRZQaKuhgKUczUSw6hrHfgTMM9mA=\r\n=zaQG\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.1.8_1650064374528_0.7313192542029314"},"_hasShrinkwrap":false},"1.1.8-next-py5tcgpjrms":{"name":"boteasy-dom","version":"1.1.8-next-py5tcgpjrms","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"readme":"# [BoteasyDOM](https://boteasy.net/) &middot; [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/theronaldostar/boteasy-dom/blob/main/LICENSE)  [![npm version](https://img.shields.io/npm/v/boteasy-dom.svg?style=flat)](https://www.npmjs.com/package/boteasy-dom)  [![npm version](https://badge.fury.io/js/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)  [![Downloads](https://img.shields.io/npm/dm/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)\r\n\r\n* This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms!\r\n---\r\n\r\n# How to use?\r\n\r\n```shell\r\nnpm i boteasy-dom\r\n```\r\n\r\n# Import:\r\n\r\n```shell\r\nimport BoteasyDOM from \"boteasy-dom\";\r\n/**\r\n * @jsx createElement\r\n * @jsxFrag Fragment\r\n * @jsxRuntime classic\r\n * Tells babel to use createElement for JSX.\r\n * See how to use globally: https://babeljs.io/docs/en/babel-plugin-transform-react-jsx#usage\r\n*/\r\nconst {  } = BoteasyDOM;\r\n```\r\n\r\n# .version:\r\n* a boteasy-dom version\r\n\r\n```shell\r\nversion;\r\n```\r\n\r\n# .Fragment:\r\n* Fragment for components\r\n\r\n```shell\r\nFragment;\r\n```\r\n\r\n# .dom:\r\n* document\r\n\r\n```shell\r\ndom;\r\n```\r\n\r\n# .link:\r\n* Get information or change your app's URL, easily and accurately!\r\n\r\n```shell\r\n/**\r\n * url: https://www.example.com\r\n *\r\n * to: https://www.example.com/help\r\n * reload: 1000 = 1 second\r\n * protocol: http: | https:\r\n * host: example.com\r\n * route: /help\r\n*/\r\n```\r\n\r\n```shell\r\nlink.to(\"help\"); //TODO: keep history!\r\nlink.to(\"help\", false);\r\n```\r\n\r\n```shell\r\nlink.reload(1000);\r\n```\r\n\r\n```shell\r\nlink.protocol;\r\n```\r\n\r\n```shell\r\nlink.host;\r\n```\r\n\r\n```shell\r\nlink.route;\r\n```\r\n\r\n# .storage:\r\n* Manipulates: window.localStorage\r\n\r\n```shell\r\nstorage.set(\"boteasy\", {first: \"boteasy\", last: \"dom\"});\r\n```\r\n\r\n```shell\r\nstorage.get(\"boteasy\");\r\n```\r\n\r\n```shell\r\nstorage.remove(\"boteasy\");\r\n```\r\n\r\n```shell\r\nstorage.clear();\r\n```\r\n\r\n# .css():\r\n* This function is for you to add or remove class on one or multiple elements;\r\n\r\n```shell\r\ncss.add(\"input\", \"class\");\r\n```\r\n\r\n```shell\r\ncss.remove(\"input\", \"class\");\r\n```\r\n\r\n# .html(target, value):\r\n* This function serves to add or remove an element in the DOM;\r\n\r\n```shell\r\nhtml(\"label\", \"Just a test!\");\r\n```\r\n\r\n# .prop(target, bolean):\r\n* This function serves to enable/disable elements;\r\n\r\n```shell\r\nprop(\"input\", true);\r\n```\r\n\r\n```shell\r\nprop(\"input\", false);\r\n```\r\n\r\n# .tests(target, value):\r\n* This function serves to perform input tests;\r\n\r\n```shell\r\ntests(\"input#fullname\", \"your fullname\").then(status => {});\r\n```\r\n\r\n# wait(target, bolean):\r\n* This function serves to disable the entire site/App so that the user does not make multiple clicks or leave the page during a request;\r\n\r\n```shell\r\nwait(true);\r\n```\r\n\r\n```shell\r\nwait(false);\r\n```\r\n\r\n# .copy(value):\r\n* This function serves to copy a text to a clipboard;\r\n\r\n```shell\r\ncopy(\"Just a test!\");\r\n```\r\n\r\n# .request({}):\r\n* This function serves to perform AJAX requests;\r\n\r\n```shell\r\nrequest({\r\n\turl: \"https://www.example.com/api/\",\r\n\tmethod: \"GET\",\r\n\theaders: {},\r\n\tdata: {},\r\n\tdataType: \"json\",\r\n\tcors: false, //TODO: true for active\r\n\tsuccess: () => {},\r\n\terror: () => {}\r\n});\r\n```\r\n\r\n# .createElement();\r\n* This function serves to create elements to be rendered by Boteasy-dom;\r\n\r\n```shell\r\ncreateElement(Fragment, null,\r\n\tcreateElement(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#fff\", \"font-weight\": \"bold\"}})\r\n);\r\n```\r\n//TODO: `<input type=\"email\" className=\"boteasy\" style={{color: \"#fff\", \"font-weight\": \"bold\"}} />`\r\n\r\n\r\n# .createRoot():\r\n* This function serves to create a route to Boteasy-dom,\r\n* Send the second parameter as  true to give permission to hydrate;\r\n\r\n```shell\r\nconst container = dom.querySelector(\"#modal\");\r\nconst modal = createRoot(container, true);\r\n```\r\n\r\n* Render the element in the root;\r\n\r\n```shell\r\nconst element = createElement(\"h1\", null, \"Hello, world!\");\r\nmodal.render(createElement(element));\r\n```\r\n//TODO: `<h1>Hello, world!</h1>`\r\n\r\n\r\n* hydrate the element in the root;\r\n\r\n```shell\r\nconst name = \"Ronaldo S.\";\r\nconst element = createElement(\"h1\", null, \"Hello, \", name);\r\nmodal.hydrate(createElement(element));\r\n```\r\n//TODO: `<h1>Hello, Ronaldo S.</h1>`\r\n\r\n\r\n* Remove the element in the root;\r\n\r\n```shell\r\nmodal.unmount();\r\n```\r\n\r\n# .useState():\r\n* This function is just for adding some local states.\r\n\r\n```shell\r\nconst [state, setState] = useState(10);\r\nsetState(prev => (prev + 1));\r\n```\r\n\r\n# .useEffect():\r\n* ---\r\n\r\n```shell\r\nuseEffect(() => {\r\n\t//effect();\r\n\t//TODO: Under development! On moment.\r\n}, [deps]);\r\n```\r\n\r\n# .match({}, index):\r\n* This function is a direct alternative to \"switch ~ case\".\r\n\r\n```shell\r\nconst index = null;\r\nmatch({\r\n\tfirst: \"boteasy\",\r\n\tlast: \"dom\",\r\n\tdefault: \"latest\"\r\n}, index);\r\n```\r\n","readmeFilename":"README.md","gitHead":"666c365fb601af78e8cac7458a1b83cb0b68a75e","_id":"boteasy-dom@1.1.8-next-py5tcgpjrms","_nodeVersion":"16.14.1","_npmVersion":"8.5.5","dist":{"integrity":"sha512-6MNVIeI6EexLda6FVnLBiPY5TmQPxurTeuExOwXTqVs8UIDdcYD6tcnjyRyDdACkpErqjnRg3gzBBsxwkaQePQ==","shasum":"77569b3af7b54c81e9bfee6e3020ced14b282041","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.1.8-next-py5tcgpjrms.tgz","fileCount":5,"unpackedSize":23568,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDCn48PuxtbwQpoWvNkR3UwQFD7PTpOdMOVbPGysBpM6gIgaCBRSjSLZh2bK2CE6clq5J5sRspsYiAbLx6YxUTgfPI="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiWgEeACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpQ+xAAipo4PdxWICFMitoljKoRUnrtjFgmkzWxIqTUFQCtfWBSgo4/\r\na2b9qTgrJvuXHhOKZRKgwcNCJa1iNrVjm9T0GtWO6YTC3zmh/2zl+8S5neYQ\r\nmS5MfkbjnMV8WNRT8zWXsYObLv/ps648CjTgq58Xf4kKNUBGAAboOr/tdUQt\r\nVU38k8GFVuJz6jOt6u69L66APAQhVhHxEyC+Hxq5hnz5W9SRc8UYhNv8uw8Z\r\neleS0i+3zk8nNurPdsAM7qDT42ZpwRydpowLk+HvNN2ewtizLbIST38XrDEO\r\nnLlndfdgMFI/bTExw0bYnOpaDbp6Hrd2TZTYptSbc6TOyJ0M1/uB7y4hbgrK\r\nBRofZYN3f7Yq5bcfzwyiFjQnJHtbldkarXeYGQ5VUWF0KgfXfSlFBjG79n7D\r\n0a67Rm0/LJI4T3D4EPUcPIi3QLGF0biAWtKgarVj05Cd5Ts2HVbt6pQLG+f3\r\n4cj5aPoIK7JfSLs6jXDv986GqI0mDZ6tCbpmrPjoRCuXSj4iUqb/En8Ri1Ud\r\nDH+k9YQWvjfRMDilDVnZfcjwz4WxOF5UIzChb5if7CKdovkv3QCH4SpbVoh3\r\nMoFtoKg860USBL4YcCkwnM1hbzuA36ng/iJ6GT3sY6d63H9URPFkudmmaIAp\r\n3rGpyRsR+lDc4AkPFRhbuq/iScLV3SS7KTI=\r\n=YaZB\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.1.8-next-py5tcgpjrms_1650065694742_0.8414271666559985"},"_hasShrinkwrap":false},"1.1.8-next-2xat0i0hgrx":{"name":"boteasy-dom","version":"1.1.8-next-2xat0i0hgrx","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"readmeFilename":"README.md","readme":"# [BoteasyDOM](https://boteasy.net/) &middot; [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/theronaldostar/boteasy-dom/blob/main/LICENSE)  [![npm version](https://img.shields.io/npm/v/boteasy-dom.svg?style=flat)](https://www.npmjs.com/package/boteasy-dom)  [![npm version](https://badge.fury.io/js/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)  [![Downloads](https://img.shields.io/npm/dm/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)\n\n* This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms!\n---\n\n# How to use?\n\n```shell\nnpm i boteasy-dom\n```\n\n# Import:\n\n```shell\nimport BoteasyDOM from \"boteasy-dom\";\n/**\n * @jsx createElement\n * @jsxFrag Fragment\n * @jsxRuntime classic\n * Tells babel to use createElement for JSX.\n * See how to use globally: https://babeljs.io/docs/en/babel-plugin-transform-react-jsx#usage\n*/\nconst {  } = BoteasyDOM;\n```\n\n# .version:\n* a boteasy-dom version\n\n```shell\nversion;\n```\n\n# .Fragment:\n* Fragment for components\n\n```shell\nFragment;\n```\n\n# .dom:\n* document\n\n```shell\ndom;\n```\n\n# .link:\n* Get information or change your app's URL, easily and accurately!\n\n```shell\n/**\n * url: https://www.example.com\n *\n * to: https://www.example.com/help\n * reload: 1000 = 1 second\n * protocol: http: | https:\n * host: example.com\n * route: /help\n*/\n```\n\n```shell\nlink.to(\"help\"); //TODO: keep history!\nlink.to(\"help\", false);\n```\n\n```shell\nlink.reload(1000);\n```\n\n```shell\nlink.protocol;\n```\n\n```shell\nlink.host;\n```\n\n```shell\nlink.route;\n```\n\n# .storage:\n* Manipulates: window.localStorage\n\n```shell\nstorage.set(\"boteasy\", {first: \"boteasy\", last: \"dom\"});\n```\n\n```shell\nstorage.get(\"boteasy\");\n```\n\n```shell\nstorage.remove(\"boteasy\");\n```\n\n```shell\nstorage.clear();\n```\n\n# .css():\n* This function is for you to add or remove class on one or multiple elements;\n\n```shell\ncss.add(\"input\", \"class\");\n```\n\n```shell\ncss.remove(\"input\", \"class\");\n```\n\n# .html(target, value):\n* This function serves to add or remove an element in the DOM;\n\n```shell\nhtml(\"label\", \"Just a test!\");\n```\n\n# .prop(target, bolean):\n* This function serves to enable/disable elements;\n\n```shell\nprop(\"input\", true);\n```\n\n```shell\nprop(\"input\", false);\n```\n\n# .tests(target, value):\n* This function serves to perform input tests;\n\n```shell\ntests(\"input#fullname\", \"your fullname\").then(status => {});\n```\n\n# wait(target, bolean):\n* This function serves to disable the entire site/App so that the user does not make multiple clicks or leave the page during a request;\n\n```shell\nwait(true);\n```\n\n```shell\nwait(false);\n```\n\n# .copy(value):\n* This function serves to copy a text to a clipboard;\n\n```shell\ncopy(\"Just a test!\");\n```\n\n# .request({}):\n* This function serves to perform AJAX requests;\n\n```shell\nrequest({\n\turl: \"https://www.example.com/api/\",\n\tmethod: \"GET\",\n\theaders: {},\n\tdata: {},\n\tdataType: \"json\",\n\tcors: false, //TODO: true for active\n\tsuccess: () => {},\n\terror: () => {}\n});\n```\n\n# .createElement();\n* This function serves to create elements to be rendered by Boteasy-dom;\n\n```shell\ncreateElement(Fragment, null,\n\tcreateElement(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#fff\", \"font-weight\": \"bold\"}})\n);\n```\n//TODO: `<input type=\"email\" className=\"boteasy\" style={{color: \"#fff\", \"font-weight\": \"bold\"}} />`\n\n\n# .createRoot():\n* This function serves to create a route to Boteasy-dom,\n* Send the second parameter as  true to give permission to hydrate;\n\n```shell\nconst container = dom.querySelector(\"#modal\");\nconst modal = createRoot(container, true);\n```\n\n* Render the element in the root;\n\n```shell\nconst element = createElement(\"h1\", null, \"Hello, world!\");\nmodal.render(createElement(element));\n```\n//TODO: `<h1>Hello, world!</h1>`\n\n\n* hydrate the element in the root;\n\n```shell\nconst name = \"Ronaldo S.\";\nconst element = createElement(\"h1\", null, \"Hello, \", name);\nmodal.hydrate(createElement(element));\n```\n//TODO: `<h1>Hello, Ronaldo S.</h1>`\n\n\n* Remove the element in the root;\n\n```shell\nmodal.unmount();\n```\n\n# .useState():\n* This function is just for adding some local states.\n\n```shell\nconst [state, setState] = useState(10);\nsetState(prev => (prev + 1));\n```\n\n# .useEffect():\n* ---\n\n```shell\nuseEffect(() => {\n\t//function();\n\t//TODO: Under development! On moment.\n}, [deps]);\n```\n\n# .match({}, index):\n* This function is a direct alternative to \"switch ~ case\".\n\n```shell\nconst index = null;\nmatch({\n\tfirst: \"boteasy\",\n\tlast: \"dom\",\n\tdefault: \"latest\"\n}, index);\n```\n","licenseText":"MIT License\n\nCopyright (c) since 2020 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.","_id":"boteasy-dom@1.1.8-next-2xat0i0hgrx","dist":{"shasum":"7259999a6a320059b4732eb0f4937a9c86985eb2","integrity":"sha512-sul5X+Qd03toHog7OGgR0UNhV5aMia4fXc5aQlepnrU3+D9SidnzcCp/dCliQCDO0RFKtT28PQD/NtyIhek4BA==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.1.8-next-2xat0i0hgrx.tgz","fileCount":6,"unpackedSize":23837,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICYggatMgSTNjXxvmlsCLUwp4/SfIrq+kM6SXtFJae0hAiEA1ewWQF6yfHDhuy2y+PnTogslE8dBHOWg8/YG9sRehQ0="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJibmA/ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqbNQ//SRitD6wk0cSnjp3GIap1hHHSsyZIfl8488LUmYDwU/AoPa8z\r\nBu8SSD4aARXCtHPQ/k6ShfxZosKHs65mxI4u24f+VGN52m3n0QTzDtRzVR30\r\nu9Zu3kxfSqD5KxDIYit8V7W6s1UAmEVImQtJX7AlRBeKih2Eh8psWSp6CNiQ\r\nyMR9tiBZOvIX9mCkDyGcCKWQND1yyD9i4DferfhTdEEpkDL8ieJNgU3HBWyz\r\nYIu4q1+w4PeIDqpfVK3+P1QsKTs0q6Sb4XEv9hUUozXCeCp/oOKYSm4FtoRg\r\n8zqi9f220/lTTZx2o1JNgHnF7GjRPQM70WL0CaVEyUmGcpIJyvuuzRGLAgD2\r\ngtakRtOU1b6d9TUyD16RTf64NawW3OUF5NF2yTyCG6+xZXxK79ZnKkrvTOAl\r\nygLXn2ckCeU0p4gVKeIgpeNQf03CLeL7/bpqSMqHXENpsAqdC8+JKiGprlKt\r\nwhVatO9fJ3b5x0oot0QhwW5iMHSuhf5n+jkJalOai2Ksl3Jl0Xko+M1yEeUy\r\nC184scPriBgWLcWk2oepgv8m8fuBbCkXAt73sVET8SXcVe3Y9yITPK7AX12/\r\nYt6BRKRxCBAMru41dRjWpkyJLA5VicpSK4gS2//4N7eWZjoW4MEfQR8Lg42c\r\nIPjwIa4cMETjbJMHAlI1tC6+XbwZ+EAGOhI=\r\n=5iWw\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.1.8-next-2xat0i0hgrx_1651400767218_0.2113290551380067"},"_hasShrinkwrap":false},"1.1.9":{"name":"boteasy-dom","version":"1.1.9","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"licenseText":"MIT License\n\nCopyright (c) since 2020 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"boteasy-dom@1.1.9","dist":{"shasum":"fc912f13ea7d3098b2449d0519f0f93313ada239","integrity":"sha512-+HONPBiHqdM8+Hn6/MJA9S3rxQVhs5CA3YTFWsB1Gj2mGYgElTFs426YK+gx7XvSXElqcfT1H33qEKjnE+eAHw==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.1.9.tgz","fileCount":6,"unpackedSize":23772,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDOA7uhISAHoX0bVgXd7hGQiVgAboVc7UyKk5mxaOCdcAIgd+JQH4u3B3ZSYChs/2YqkM77gJAiswLx/vatr1eoSKg="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJicfMcACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoF7A//ctLO8xfhVTabgPybJoT/3ocu5sEDfvuUQLkciSberRyKnSKs\r\n9rOQWi62cKagHZZBgfd01ya/2OG++qW0oWTlk/2Deg1d7/fm+UYC2qbMePRX\r\nHMmS5pcr6uETcpy8RV77jtBKV6uNiu8XVqJ+axS8VaMhd2/tDEh3bLjdwgtg\r\nE9JrXG1WvrKJmQnhrKbW8hQoDg2AAy3lviJ7Uo/kuT98Xhpau2DJYRfSO3qt\r\nm0m5wATYLomW6fb1/vLGtuSqp4wZyWOa4g5nAdiBYQ6MnhNbLF7+Qb1kLCsN\r\nggQx+j6rRfZeLbYY5OdXj1pwthYZfHoVIhd1+XmI6ZKqI7/V7qg7aEBf3fqM\r\nIj1yW2iaydlfEhIvN3HCao6hrA6ChaIdyO80RNO36lOZIg1sUtCg/bmb0RDQ\r\ncTf8YddJ6hIlHEwRXNQuuZa+o7cO9dPsjgygZDuPCxuTclP5LsAVA4GY7mEB\r\n9olm6jb/esfVsPOi1L7HFsPxoSYL/2sYkCYlah+8JBxLdj+TwKUi3hHIrwlX\r\nJg92l/5eTFeiKqStAeAQ2GlSTRSGqwJSXpt9WPWYkbKB23JKavuSttg4OjqT\r\nnxRG8TyQMdlDQiiYnLJxiEBe98t7A9QcYXZPZ50ZxSlvQrPSTs08v4dl5CRZ\r\n0SbVX3OfIV/iKnykyyRHJaX4h0iD1L2Znhc=\r\n=wgsM\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.1.9_1651634972778_0.6721351086509817"},"_hasShrinkwrap":false},"1.2.0-beta-0ixh03hjrnro":{"name":"boteasy-dom","version":"1.2.0-beta-0ixh03hjrnro","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"readmeFilename":"README.md","readme":"# [BoteasyDOM](https://boteasy.net/) &middot; [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/theronaldostar/boteasy-dom/blob/main/LICENSE)  [![npm version](https://img.shields.io/npm/v/boteasy-dom.svg?style=flat)](https://www.npmjs.com/package/boteasy-dom)  [![npm version](https://badge.fury.io/js/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)  [![Downloads](https://img.shields.io/npm/dm/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)\n\n* This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms!\n---\n\n# How to use?\n\n```shell\nnpm i boteasy-dom\n```\n\n# Import:\n\n```shell\nimport BoteasyDOM from \"boteasy-dom\";\n/**\n * @jsx createElement\n * @jsxFrag Fragment\n * @jsxRuntime classic\n * Tells babel to use createElement for JSX.\n * See how to use globally: https://babeljs.io/docs/en/babel-plugin-transform-react-jsx#usage\n*/\nconst {  } = BoteasyDOM;\n```\n\n# .version:\n* a boteasy-dom version\n\n```shell\nversion;\n```\n\n# .Fragment:\n* Fragment for components\n\n```shell\nFragment;\n```\n\n# .dom:\n* document\n\n```shell\ndom;\n```\n\n# .link:\n* Get information or change your app's URL, easily and accurately!\n\n```shell\n/**\n * url: https://www.example.com\n *\n * to: https://www.example.com/help\n * reload: 1000 = 1 second\n * protocol: http: | https:\n * host: example.com\n * route: /help\n*/\n```\n\n```shell\nlink.to(\"help\"); //TODO: keep history!\nlink.to(\"help\", false);\n```\n\n```shell\nlink.reload(1000);\n```\n\n```shell\nlink.protocol;\n```\n\n```shell\nlink.host;\n```\n\n```shell\nlink.route;\n```\n\n# .storage:\n* Manipulates: window.localStorage\n\n```shell\nstorage.set(\"boteasy\", {first: \"boteasy\", last: \"dom\"});\n```\n\n```shell\nstorage.get(\"boteasy\");\n```\n\n```shell\nstorage.remove(\"boteasy\");\n```\n\n```shell\nstorage.clear();\n```\n\n# .css():\n* This function is for you to add or remove class on one or multiple elements;\n\n```shell\ncss.add(\"input\", \"class\");\n```\n\n```shell\ncss.remove(\"input\", \"class\");\n```\n\n# .html(target, value):\n* This function serves to add or remove an element in the DOM;\n\n```shell\nhtml(\"label\", \"Just a test!\");\n```\n\n# .prop(target, bolean):\n* This function serves to enable/disable elements;\n\n```shell\nprop(\"input\", true);\n```\n\n```shell\nprop(\"input\", false);\n```\n\n# .tests(target, value):\n* This function serves to perform input tests;\n\n```shell\ntests(\"input#fullname\", \"your fullname\").then(status => {});\n```\n\n# wait(target, bolean):\n* This function serves to disable the entire site/App so that the user does not make multiple clicks or leave the page during a request;\n\n```shell\nwait(true);\n```\n\n```shell\nwait(false);\n```\n\n# .copy(value):\n* This function serves to copy a text to a clipboard;\n\n```shell\ncopy(\"Just a test!\");\n```\n\n# .request({}):\n* This function serves to perform AJAX requests;\n\n```shell\nrequest({\n\turl: \"https://www.example.com/api/\",\n\tmethod: \"GET\",\n\theaders: {},\n\tdata: {},\n\tdataType: \"json\",\n\tcors: false, //TODO: true for active\n\tsuccess: () => {},\n\terror: () => {}\n});\n```\n\n# .createElement();\n* This function serves to create elements to be rendered by Boteasy-dom;\n\n```shell\ncreateElement(Fragment, null,\n\tcreateElement(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#fff\", \"font-weight\": \"bold\"}})\n);\n```\n//TODO: `<input type=\"email\" className=\"boteasy\" style={{color: \"#fff\", \"font-weight\": \"bold\"}} />`\n\n\n# .createRoot():\n* This function serves to create a route to Boteasy-dom,\n* Send the second parameter as  true to give permission to hydrate;\n\n```shell\nconst container = dom.querySelector(\"#modal\");\nconst modal = createRoot(container, true);\n```\n\n* Render the element in the root;\n\n```shell\nconst element = createElement(\"h1\", null, \"Hello, world!\");\nmodal.render(createElement(element));\n```\n//TODO: `<h1>Hello, world!</h1>`\n\n\n* hydrate the element in the root;\n\n```shell\nconst name = \"Ronaldo S.\";\nconst element = createElement(\"h1\", null, \"Hello, \", name);\nmodal.hydrate(createElement(element));\n```\n//TODO: `<h1>Hello, Ronaldo S.</h1>`\n\n\n* Remove the element in the root;\n\n```shell\nmodal.unmount();\n```\n\n# .useState():\n* This function is just for adding some local states.\n\n```shell\nconst [state, setState] = useState(9);\nsetState(prev => (prev + 1));\n```\n\n# .useEffect():\n* ---\n\n```shell\nuseEffect(() => {\n\t//function();\n\t//TODO: Under development! On moment.\n}, [deps]);\n```\n\n# .match({}, index):\n* This function is a direct alternative to \"switch ~ case\".\n\n```shell\nconst index = null;\nmatch({\n\tfirst: \"boteasy\",\n\tlast: \"dom\",\n\tdefault: \"latest\"\n}, index);\n```\n\n# .isTwins({}, {}):\n* As the name says, this function is for you to compare if two objects or array are equal.\n\n```shell\nconst array = [\"boteasy\", \"dom\"];\nconst _array = [\"boteasy\", \"dom\", \"latest\"];\nisTwins(array, _array); //TODO: false\n```","licenseText":"MIT License\n\nCopyright (c) since 2020 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.","_id":"boteasy-dom@1.2.0-beta-0ixh03hjrnro","dist":{"shasum":"5e8421ee2f2045e626efc4edbd31e6db6466aa2f","integrity":"sha512-jgTWS7G8/yXavbbFDvMOgvlWCdZMWjEMW1CwdV6XTTezajW7pLA9Jeg3NJfPna9BYB9ELO2txJz80UVy/XBxnw==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.0-beta-0ixh03hjrnro.tgz","fileCount":6,"unpackedSize":24517,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD2YL3AQu7G7Ma7HQuN4tufCLxXXXlTx3ObmkDN4Sm5qQIgUs2Cr7qti43UeqTXIHKYJQNNxwd6hgd6v1S1kQIUIq8="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiekYaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoLHg/8Cxvi9Q7q1KNQoHUiO5ma8ieKAPhG1PdTuKsXqSyXzzlSWaga\r\n1jbN0WC/jzSX3XvLghMcj33O7gpF2kxsf5RnYubzz4qvJxKBCN2K6wtQySjh\r\nc6G+9WrNzrmpYNoLUNGZW/g7d3QwtrJws5TPdar28DW3MXg3V9HsEmLchKT1\r\nmPVR6TNl2KxU/ezZf5u7g8ozH+wXpTMyQ+KgnY+kjND8vixOZAS6sxq8P/P8\r\n8HEMBuoW2O/XiXO1TjWO/Y8C4Vu8FwS0alvGNQyJyfg7kA/yy6Yw7A9Dp7j1\r\n2GCWGGQ/cGEanUbBjI80h5ORjcBbJtRJm7oYkIXTbYgz0ZqSX3WniRrj9OW2\r\nF/QqaukgTLtcUTb9drPjVpwEeZTEfqwJm1r7DZmqGIr7PBj2255CyzkEe5kU\r\nIlVz8B9J5JcnxI1/rbZIhai4WSu1iNSppNpHb2U+i+KtWOpMx7W/3auDtyRl\r\nbv4v15nP9Knb2JB9v5u6+6M+X2mPxk98XpeSBb83UK6R9SzjXp2W6rkug1mh\r\nuwtH6jaxcgGGvNfKWLRDO/ne3NbuCCTy6WryxlEPdjhGNZGwcR1UvMn0DUNu\r\nuSoDwFMh1ztZwV4wkrrXhDNT5imdXPWRShKnJpZwN+SABnd5ODCrSdp+5JqA\r\ng8y3ZAzuQYjENxdhxp2GBBfuG9ek0AmLzmA=\r\n=XUpB\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.0-beta-0ixh03hjrnro_1652180506716_0.42899391251888885"},"_hasShrinkwrap":false},"1.2.0-next-4u0xm1k9tg5":{"name":"boteasy-dom","version":"1.2.0-next-4u0xm1k9tg5","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"readmeFilename":"README.md","readme":"# [BoteasyDOM](https://boteasy.net/) &middot; [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/theronaldostar/boteasy-dom/blob/main/LICENSE)  [![npm version](https://img.shields.io/npm/v/boteasy-dom.svg?style=flat)](https://www.npmjs.com/package/boteasy-dom)  [![npm version](https://badge.fury.io/js/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)  [![Downloads](https://img.shields.io/npm/dm/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)\n\n* This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms!\n---\n\n# How to use?\n\n```shell\nnpm i boteasy-dom\n```\n\n# Import:\n\n```shell\nimport BoteasyDOM from \"boteasy-dom\";\n/**\n * @jsx createElement\n * @jsxFrag Fragment\n * @jsxRuntime classic\n * Tells babel to use createElement for JSX.\n * See how to use globally: https://babeljs.io/docs/en/babel-plugin-transform-react-jsx#usage\n*/\nconst {  } = BoteasyDOM;\n```\n\n# .version:\n* a boteasy-dom version\n\n```shell\nversion;\n```\n\n# .Fragment:\n* Fragment for components\n\n```shell\nFragment;\n```\n\n# .dom:\n* document\n\n```shell\ndom;\n```\n\n# .link:\n* Get information or change your app's URL, easily and accurately!\n\n```shell\n/**\n * url: https://www.example.com\n *\n * to: https://www.example.com/help\n * reload: 1000 = 1 second\n * protocol: http: | https:\n * host: example.com\n * route: /help\n*/\n```\n\n```shell\nlink.to(\"help\"); //TODO: keep history!\nlink.to(\"help\", false);\n```\n\n```shell\nlink.reload(1000);\n```\n\n```shell\nlink.protocol;\n```\n\n```shell\nlink.host;\n```\n\n```shell\nlink.route;\n```\n\n# .storage:\n* Manipulates: window.localStorage\n\n```shell\nstorage.set(\"boteasy\", {first: \"boteasy\", last: \"dom\"});\n```\n\n```shell\nstorage.get(\"boteasy\");\n```\n\n```shell\nstorage.remove(\"boteasy\");\n```\n\n```shell\nstorage.clear();\n```\n\n# .css():\n* This function is for you to add or remove class on one or multiple elements;\n\n```shell\ncss.add(\"input\", \"class\");\n```\n\n```shell\ncss.remove(\"input\", \"class\");\n```\n\n# .html(target, value):\n* This function serves to add or remove an element in the DOM;\n\n```shell\nhtml(\"label\", \"Just a test!\");\n```\n\n# .prop(target, bolean):\n* This function serves to enable/disable elements;\n\n```shell\nprop(\"input\", true);\n```\n\n```shell\nprop(\"input\", false);\n```\n\n# .tests(target, value):\n* This function serves to perform input tests;\n\n```shell\ntests(\"input#fullname\", \"your fullname\").then(status => {});\n```\n\n# wait(target, bolean):\n* This function serves to disable the entire site/App so that the user does not make multiple clicks or leave the page during a request;\n\n```shell\nwait(true);\n```\n\n```shell\nwait(false);\n```\n\n# .copy(value):\n* This function serves to copy a text to a clipboard;\n\n```shell\ncopy(\"Just a test!\");\n```\n\n# .request({}):\n* This function serves to perform AJAX requests;\n\n```shell\nrequest({\n\turl: \"https://www.example.com/api/\",\n\tmethod: \"GET\",\n\theaders: {},\n\tdata: {},\n\tdataType: \"json\",\n\tcors: false, //TODO: true for active\n\tsuccess: () => {},\n\terror: () => {}\n});\n```\n\n# .createElement();\n* This function serves to create elements to be rendered by Boteasy-dom;\n\n```shell\ncreateElement(Fragment, null,\n\tcreateElement(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#fff\", \"font-weight\": \"bold\"}})\n);\n```\n//TODO: `<input type=\"email\" className=\"boteasy\" style={{color: \"#fff\", \"font-weight\": \"bold\"}} />`\n\n\n# .createRoot():\n* This function serves to create a route to Boteasy-dom,\n* Send the second parameter as  true to give permission to hydrate;\n\n```shell\nconst container = dom.querySelector(\"#modal\");\nconst modal = createRoot(container, true);\n```\n\n* Render the element in the root;\n\n```shell\nconst element = createElement(\"h1\", null, \"Hello, world!\");\nmodal.render(createElement(element));\n```\n//TODO: `<h1>Hello, world!</h1>`\n\n\n* hydrate the element in the root;\n\n```shell\nconst name = \"Ronaldo S.\";\nconst element = createElement(\"h1\", null, \"Hello, \", name);\nmodal.hydrate(createElement(element));\n```\n//TODO: `<h1>Hello, Ronaldo S.</h1>`\n\n\n* Remove the element in the root;\n\n```shell\nmodal.unmount();\n```\n\n# .useState():\n* This function is just for adding some local states.\n\n```shell\nconst [state, setState] = useState(9);\nsetState(prev => (prev + 1));\n```\n\n# .useEffect():\n* ---\n\n```shell\nuseEffect(() => {\n\t//function();\n\t//TODO: Under development! On moment.\n}, [deps]);\n```\n\n# .match({}, index):\n* This function is a direct alternative to \"switch ~ case\".\n\n```shell\nconst index = null;\nmatch({\n\tfirst: \"boteasy\",\n\tlast: \"dom\",\n\tdefault: \"latest\"\n}, index);\n```\n\n# .isTwins({}, {}):\n* As the name says, this function is for you to compare if two objects or array are equal.\n\n```shell\nconst array = [\"boteasy\", \"dom\"];\nconst _array = [\"boteasy\", \"dom\", \"latest\"];\nisTwins(array, _array); //TODO: false\n```\n","licenseText":"MIT License\n\nCopyright (c) since 2020 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"boteasy-dom@1.2.0-next-4u0xm1k9tg5","dist":{"shasum":"571bc942428b36d559e99e51744e65d6c1b21fb9","integrity":"sha512-sA2LF3xgyi40TjMKKYyKtuhprHS7fFOFoD+r2k/oYE1zYduJU4/zxv/bLFVV6VNEQV0TM3tdHmqQw4LB/1aNzQ==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.0-next-4u0xm1k9tg5.tgz","fileCount":6,"unpackedSize":24529,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEN17Pe7bZNQkNz4URXgbYB73KKl9kkWBE9+E3ZPlBpLAiBz8qPVYEiuTTyf3CYblDNk5wysDBYKWxPQqTZzz9nIwA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJielX4ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqSBw//YsRmg/eUVENZRTCU3e1E0O9oX+c4e0V/vJjwN2vTcSMTveS1\r\nYvTd32U3emNg2y8QzAodgZFG5w0yYofIj9oTvEVyor3IHD+TArE2/YzXu/Jy\r\np0f/BAqZIp3Ea+BKeEQL9pTKGwZz7XuSNB0tux/xf30Wo8datB321v6rmY+v\r\nIeLzCjmMcpfqLQ8xkcmKi1bPJZ12mAqyqk3zaeTl+3u3A5GYdxD6ySgR3jDx\r\ndb3FoiMYMGUxmIF8ena/tHSpb54mWdVNIwOWU2sgtMxkfgR8P64tZFeYZ8FM\r\nnampjJnvux0CPQ0gEKi+3mQvSYKj3DSPngbTkxkbM6SYZRkloTNrmOhNQo4I\r\nanTY40q9fGoKeFDIieaUzcyNDW6k0D8rMd8VYaVPSUQx1dg9twMrh9l3Bmr6\r\n0QuYN7R4JQhbnwyR/6QpqFyhzOdvaUxffgs2c/gu4IoioT3/c2TacxOMhA3V\r\nKJpw1Hyc2/AleGG2k1sSTafQJBYICGmCAzDsILFn4PGiYWceOUUDj6TZwGZn\r\nraEiOrQtKl890OvyVnjfjbtdEIQhyCwSyZ9XSVthCF1sdRcJIqDgaw5tNBn9\r\nTizxjGNxuMtWRoWOR+8B/aHa6SIQvI4Zt6MScJvVJ/H2V4xFrrHOSUsao3Kk\r\n4sFI2cHmYAzYWRjKNq+3x2us+sX6GA2WP1s=\r\n=Gv7x\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.0-next-4u0xm1k9tg5_1652184568223_0.9212101701471864"},"_hasShrinkwrap":false},"1.2.0":{"name":"boteasy-dom","version":"1.2.0","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"licenseText":"MIT License\n\nCopyright (c) since 2020 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.","_id":"boteasy-dom@1.2.0","dist":{"shasum":"6b28f865cde06834b4f07133b28e21e828c82f7b","integrity":"sha512-Xbvpdlb0RSDlBHX1m8m2NbvbVj9s7lDebvBOhXGaTp0337S0q3nqrvYvcI0i2dnJE8cLGzyVuh5G22DJZhEIdA==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.0.tgz","fileCount":6,"unpackedSize":26801,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDCdACCE1OE0vzbk1l8MYToD2T/oHjcMlCyodtFP62yOwIgVTyBs3bDmOhyUBAU99YRx7UhXrn/siSD8vvWvMSQbXU="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJifgVQACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr0dRAAlgycJNPb3x4mq7H/qcW22bd8NkX1Vpx6AECa4mlJgHMWZdrc\r\nKapA/8BFpBeuqNDj2ByTOnX0bvUjAsQRM+K+u5B9hAiBdSA0yb3MgLqkp7Uv\r\nYjvi8uXe25E5wYBbPFZykO49/uKBk1WJHveoKZKP0Yy7ZMHv/CcxAmrWMO0A\r\nG46Ebvt7YYGfvkD2e/IySq0TR3qvyo5Nwi2TOAhBUVKnHmjOf808pWljDzqS\r\nS6FUBWHztD0R7Ki/9gNNQ4A1ZGQOwBtl/yWCAdyUUEYv8gH4S7CpEpzwa3t4\r\nGjcVj/xO5AxFiCSU5WhSNhJyXph5/cveqq7U4CV2WwAG4ARSHKzTtC7h03NT\r\nlmPedD0my+2Csao8jI306jzz7MstnMrRzz+/HRQPAQrqgM5nhf542m6ipvx4\r\na1IfFT4rDabF12xg7MtERUyVnqmyaJqfGY1sXEWlhmqoL4rLc51JH3JR5FZo\r\nAUTGfyB3gR9PpJ+9s+JS3DGbcDo9gL6HxpW+IieONaB/FVsjOyG87o9eNjjo\r\n5+LzI2MCni8JBDEdq9yhk3sP9nc7UWUX2xhtO7iojaIEkLPTW8gnZLEJDZaQ\r\nR0H1mfz9XHrlIj4VO2SnVKiqd2EHCZAj1h65EssrZuG3odeExWibkYhTsqRf\r\nR6UWtz/ykWykLixCPiKguujIxGiofeL2qak=\r\n=LeAv\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.0_1652426064675_0.4607997121822214"},"_hasShrinkwrap":false},"1.2.0-latest-mgutzcx1k0p":{"name":"boteasy-dom","version":"1.2.0-latest-mgutzcx1k0p","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"licenseText":"MIT License\n\nCopyright (c) since 2020 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"boteasy-dom@1.2.0-latest-mgutzcx1k0p","dist":{"shasum":"09a0a657285f2a0d91999839a03fef90b443da39","integrity":"sha512-OhRuSrTNEqPP0Iz0jy2eHlHlm+9JBPHKwxPWywQl4/QibsIem+TvcQ3KGOIFF0BvBQHtKv2whm2CGHtlbSTsPA==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.0-latest-mgutzcx1k0p.tgz","fileCount":6,"unpackedSize":26932,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC0VuO3O65e1ll60Ww54buKUA1REIZ9yJBD5pvDk7OQ2QIgTKJvuRqL3bdO+Ukp0QcGaAB0MwC9D9W9YdtEUox5qRo="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJifgwHACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqYpQ//StHtQ4J/PgTzYsPDs9P2Z5huS/w3ysQTyBme+aBqkmmSh0VQ\r\naE64/6qtrZVxQdhsFhyoqutF4RkdftJDuW9LmKzKbrCf/QOdSLQe5iNItWli\r\ncgB85x4F0jzgjETmTZV4J5OCEZfczQ5w7cT1PO0w/LJU6aRLT5Z2OHdnYpKk\r\neJgf3KpbwAi1Kqx7nu9mmuO0Ie1Ve4O/yUIGCqx718/ETePkum0N5msAekSj\r\ngCo9ll8aP061CBQ4JQVwVVUayDq3TDRTAyqAncK8LacQhg8buF9LWVQRGY9M\r\nI5+LXx8CNthMBgb3hgeoOA1dRffS5p/xYiUJbEdPxEETRNVRIXrVV21UkZGs\r\nENOVRY+BuC7+Emi+1kkWsNzWtPCzdcCOTi5OSgYU2rg32xdfeMlVRV0bhnKN\r\n26DRAFIvXk0d87xnUBuIuIPplaT/kW9wGNVnhVSXoDbOnLW04TLphMKN5kdU\r\nbEQHWv560VaxLyeEtwF/2mb4vPGFUU2/xSG8fQ3oQGd6/wwTKL2kFux3IZQc\r\nGlTD2e0vINcSGZBGwkepE7tziW+rXj4UqkYebVBvzXBTKHoDr/CPg9Nw7KkB\r\nL5VMMCr2OvyS6tTux7k+eI7q9/adHC5WGIKbW7UTeEKoE0qvC098K3g4PUZ8\r\nUpDLAMcpUXD2tgul2ArheSBKzCy0h3ool0s=\r\n=0Tkt\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.0-latest-mgutzcx1k0p_1652427783643_0.8777056117260622"},"_hasShrinkwrap":false},"1.2.0-correction":{"name":"boteasy-dom","version":"1.2.0-correction","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"licenseText":"MIT License\n\nCopyright (c) since 2020 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.","_id":"boteasy-dom@1.2.0-correction","dist":{"shasum":"ad55c6356e39fd3cd545e92f5ebeac7cb1202700","integrity":"sha512-YcU5qvlzOAnXPW6tpa0tpztKvb2qXXhDl7SDw8iHDkW6LqQnehnr7i0zdrXfgnKrouSbQ5r7nFtRGpXK7s1A9Q==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.0-correction.tgz","fileCount":6,"unpackedSize":26919,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICvj3ulRIigNFaH/fr9Uq7CAl74nzM2wzAoLFVg/psGdAiEAi97zsEKnV9KZDMBeLHHM54+Nmi3tTY7EIAR1F3rbVDQ="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJifg/nACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqEthAAmeNhbtTHw24xIpvfEtoUhSGyhRjdVJRJZUPJCOFs/uV2pgG8\r\nRZhx876uhfMAhViCFIEBcLUPewwi/NHmfBNuOjIbcEHQd2nTHkYyWEF0SD+K\r\nvNC6wnihryse8c+DUZjq1zEW03bS6roapszShg42BairqaT/WpxrveXYqIDp\r\nz61nM2UdCpFfsaYsOtfPhJv4KoMDqWUR/bzm+shahyXgy/IVvXnDW6x+zgFN\r\nMJgUN0rKqWfNEa7T3KYZBdV/mRRPV78yFgv39q2totSh/hl4MmTUc5GlADxj\r\nMAA2ULUeUldFjvd20Fc12hhGqKeUbg5xLXRvMORB8gNiVNf8pkSFGnOFJUii\r\nB5nWMq1eAPwJy/z9kDt+32z9Fp2CtGgJY6xQsLQbtfMifyJ2jabX3HF74Xsh\r\nFR323CV3TCzyrHtj5Kst4bF9i8Du04NqaFTNDCtubM0Qxr49kOQFiBuy37qT\r\nTHd8UXft3CrPlbRzR/pbW0gYicyTDID7n517PW4tidxvyTYl1p8WxN8aMSPr\r\nvSVql52PG5/2DBtYKPtY0ijeahl58EmS/rR4ZPMS0yp3HuwzSrePPlknLy45\r\n7kAIvaSbvFqlysJfPLUCtQ5ZyeSehE+qKNal/kJLl4CQt1QubLQKyYQvFmkV\r\nSbOf4kgwX9Y42Zk0ORMSLLQ1ntmtnVnoal4=\r\n=O1Fk\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.0-correction_1652428774837_0.9016122814664027"},"_hasShrinkwrap":false},"1.2.1-beta-b2c0b7qjwk6":{"name":"boteasy-dom","version":"1.2.1-beta-b2c0b7qjwk6","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"readmeFilename":"README.md","readme":"# [BoteasyDOM](https://boteasy.net/) &middot; [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/theronaldostar/boteasy-dom/blob/main/LICENSE)  [![npm version](https://img.shields.io/npm/v/boteasy-dom.svg?style=flat)](https://www.npmjs.com/package/boteasy-dom)  [![npm version](https://badge.fury.io/js/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)  [![Downloads](https://img.shields.io/npm/dm/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)\n\n* This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms!\n---\n\n# How to use?\n\n```shell\nnpm i boteasy-dom\n```\n\n# Import:\n\n```shell\nimport BoteasyDOM from \"boteasy-dom\";\n/**\n * @jsx createElement\n * @jsxFrag Fragment\n * @jsxRuntime classic\n * Tells babel to use createElement for JSX.\n * See how to use globally: https://babeljs.io/docs/en/babel-plugin-transform-react-jsx#usage\n*/\nconst {  } = BoteasyDOM;\n```\n\n# .version:\n* a boteasy-dom version\n\n```shell\nversion;\n```\n\n# .Fragment:\n* Fragment for components\n\n```shell\nFragment;\n```\n\n# .dom:\n* The Document interface represents any web page loaded in the browser and serves as an entry point into the web page's content, which is the DOM tree.\n\n```shell\ndom;\n```\n\n# .link:\n* Get information or change your app's URL, easily and accurately!\n\n```shell\n/**\n * url: https://www.example.com\n *\n * to: https://www.example.com/example\n * reload: 1000 = 1 second\n * protocol: http: | https:\n * host: example.com\n * route: /example\n*/\n```\n\n```shell\nlink.to(\"help\"); //TODO: keep history!\nlink.to(\"help\", false);\n```\n\n```shell\nlink.reload(1000);\n```\n\n```shell\nlink.protocol;\n```\n\n```shell\nlink.host;\n```\n\n```shell\nlink.route;\n```\n\n# .storage:\n* Manipulates: window.localStorage\n\n```shell\nstorage.set(\"boteasy\", {first: \"boteasy\", last: \"dom\"});\n```\n\n```shell\nstorage.get(\"boteasy\");\n```\n\n```shell\nstorage.remove(\"boteasy\");\n```\n\n```shell\nstorage.clear();\n```\n\n# .css():\n* This function is for you to add or remove multiple class on one or multiple elements;\n\n```shell\ncss.add(\"input, select\", \"boteasy, dom\");\n```\n\n```shell\ncss.remove(\"input\", \"dom\");\n```\n\n# .html(target, value):\n* This function serves to add or remove an element in the DOM;\n\n```shell\nhtml(\"label\", \"Just a test!\");\n```\n\n# .prop(target, prop, bolean|string):\n* This function is used to enable/disable elements or select an input type checkbox, for example;\n\n```shell\nprop(\"input, select\", \"disabled\", true);\n```\n\n```shell\nprop(\"input\", \"disabled\", false);\n```\n\n# .tests(target, value):\n* This function serves to perform input tests;\n\n```shell\ntests(\"input#fullname\", \"your fullname\").then(status => {});\n```\n\n# wait(target, bolean|string):\n* This function serves to disable the entire site/App so that the user does not make multiple clicks or leave the page during a request;\n\n```shell\nwait(true);\n```\n\n```shell\nwait(false);\n```\n\n# .copy(value):\n* This function serves to copy a text to a clipboard;\n\n```shell\ncopy(\"Just a test!\");\n```\n\n# .request({}):\n* This function serves to perform AJAX requests;\n\n```shell\nrequest({\n\turl: \"https://www.example.com/api/\",\n\tmethod: \"GET\",\n\theaders: {},\n\tdata: {},\n\tdataType: \"json\",\n\tcors: false, //TODO: true for active\n\tsuccess: () => {},\n\terror: () => {}\n});\n```\n\n# .createElement();\n* This function serves to create elements to be rendered by Boteasy-dom;\n\n```shell\ncreateElement(Fragment, null,\n\tcreateElement(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#fff\", \"font-weight\": \"bold\"}})\n);\n```\n//TODO: `<input type=\"email\" className=\"boteasy\" style={{color: \"#fff\", \"font-weight\": \"bold\"}} />`\n\n\n# .createRoot():\n* This function serves to create a route to Boteasy-dom,\n* Send the second parameter as  true to give permission to hydrate;\n\n```shell\nconst container = dom.querySelector(\"#modal\");\nconst modal = createRoot(container, true);\n```\n\n* Render the element in the root;\n\n```shell\nconst element = createElement(\"h1\", null, \"Hello, world!\");\nmodal.render(createElement(element));\n```\n//TODO: `<h1>Hello, world!</h1>`\n\n\n* hydrate the element in the root;\n\n```shell\nconst name = \"Ronaldo S.\";\nconst element = createElement(\"h1\", null, \"Hello, \", name);\nmodal.hydrate(createElement(element));\n```\n//TODO: `<h1>Hello, Ronaldo S.</h1>`\n\n\n* Remove the element in the root;\n\n```shell\nmodal.unmount();\n```\n\n# .useState():\n* This function is just for adding some local states.\n\n```shell\nconst [state, setState] = useState(9);\nsetState(prev => (prev + 1));\n```\n\n# .useEffect():\n* ---\n\n```shell\nuseEffect(() => {\n\t//function();\n\t//TODO: Under development! On moment.\n}, [deps]);\n```\n\n# .match({}, index):\n* This function is a direct alternative to \"switch ~ case\", and is based on the match function of the php language.\n\n```shell\nconst index = null;\nmatch({\n\tfirst: \"boteasy\",\n\tlast: \"dom\",\n\tdefault: \"latest\"\n}, index);\n```\n\n# .isEqual({}|[], {}|[]):\n* As the name says, this function is for you to compare if two objects or array are equal.\n\n```shell\nconst array = [\"boteasy\", \"dom\"];\nconst _array = [\n\t\"boteasy\",\n\t\"dom\",\n\t\"version\": [\"latest\"]\n];\nisEqual(array, _array); //TODO: false\n```\n","licenseText":"MIT License\n\nCopyright (c) since 2020 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"boteasy-dom@1.2.1-beta-b2c0b7qjwk6","dist":{"shasum":"68251292974bbb6e581af69807fe931c39d738b7","integrity":"sha512-MeQ+IXeBCjFgn+bqEYLASJD20U3nREQF+OPAXtK4wyRPAzRCOr4lSDfKlxpEfkApbjVKmyM7tU3wiJBLUr1TpA==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.1-beta-b2c0b7qjwk6.tgz","fileCount":6,"unpackedSize":28794,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDJnzBeK3H5yjgaf/m5oLe22v3IgDqoG/mp3LP5sEpFnwIhAKLRmND8OYx8gHsD++pCxWycTVEizTPyA7Ww5UPkRbwb"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJigYOjACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrbrQ//c/o8KMPANMclc55KEXa1+7AWqF9GsrbrwDCUSZqSy4PIomUv\r\nYH0dVaSY1ZEs/ioGLASxhqw9wsPJUjYSPdY5n+R5eIXjPTfxQGhv1ZsXAut7\r\n1krhWihOOT19xPSnR6rS2knAAK8q0lWARrasa/9j97I7M8i+0UYjLQ+1BoLT\r\nGi9Wewgop/ZWPFLtf3QsDWDNtsqDFzIhMFG5ihXUtFYlOIngdMIxsUeW6FGm\r\nazqIKRE2YjF06mrXnuLGDF8O++r28umJfdxA4ArwpuJCV83ki55u2pHTdpVX\r\nbOYxYtf+cyKphqTpFjarimZnpko3QzP/lFrO/A1v4aanIA7bY7K5cnESK1Tq\r\nEq3FMepT6VlzkafPSpjdHlRB+ZrhjovgqjZmJOKYF0TIdzu4bp4oD8D8zbIl\r\nsoRYv1+vAq8Y6PeB5ZNoaJz2JOYnixnjn2iFwg4aVJvIRHIh01gmswH7fFys\r\nyNGqwEcYi2Odp+s0QUduOT3JByUOgg/ytcuwe6nBT16d3RVDEt7lp5Y5sVnv\r\n2bcrs6Mg8VpoXQW61eplE7L2aefY70K2eR5oZXHmLSiyR3OyafXZJdrzubYQ\r\nlniqtDmjG00estakY6T7INZl/tRyjA5YOUIiFtwnK9LYxV1hJP8CIp5LhgyX\r\nBE6/wnjSQXjdsF67UKEvRO1zcfGPasw/bmI=\r\n=7kUG\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.1-beta-b2c0b7qjwk6_1652655011479_0.37638016987789213"},"_hasShrinkwrap":false},"1.2.1":{"name":"boteasy-dom","version":"1.2.1","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"licenseText":"MIT License\n\nCopyright (c) since 2020 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.","_id":"boteasy-dom@1.2.1","dist":{"shasum":"35e66b95a168ebfdb9e30427dbf77353ad865dde","integrity":"sha512-3YZnU/34Nq0cuWy0Nm/CmBZiQ47GCru+Iaee7N3Y3OAeBazEhQ7SNaPSbqNZ1sPP96dWCCnLWyt2lM5KD+WyyQ==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.1.tgz","fileCount":6,"unpackedSize":28670,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC2jfVsaNfk7+xVymvOT7Rls6/aFyrmGw8nA3htCMzyVAIhAN/ibK7kCHNq8D7Wmah7jFcH/RjdMO3cbu4FudQgPXM5"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiglI9ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmooRw/+I9F4FI5aaGeAgpwdn8uL9U/9DT6IC5Aqs24QwOQ163W4gsrW\r\nRh8YUwzPwaegu8foj3KYYBaN1r1zbgENuhCzhO425LWo2F80RYvr2idIUGzA\r\nLEFKOJ1VoaB39YGsc2mce/7kokK0cAkEM8Rrn/121WElK7AZUBJlwk4GhgaQ\r\nuB27gHuOuAmMMdpxcBLdosFARZtWagpUUq+CPTecZEWgSte+1VrqHUt2ZTLf\r\nvp1YuyI4dMcKFVIVB5zW/vy9JS26e2hsT6GtDoZnu1C7qKiJ80p/xCg1nFB+\r\nDgNN8/KWMkYkg5CDDbdQyK2PU6r3GuHzhqbtBbMyUQbQll9eyZ/LzPlpT537\r\n8/9xWejrsweUMLqvtSFQEeMmCfy6tfsDfTSOFE60FcJfgWh+UDSHLQdm6plz\r\nGg8iG5kPi8s/llnMMC8fhsaz3lkvbex0N3mAI8ziW4IJDZRkdomrgQ8cfWGA\r\neBh+FcsjCuVAMhzcO/zmY0+W1r7yhIT2d+QyfZa6UYztna1jNnMCYgd6aoMk\r\n57Z6emWhg6cqXT90W9+5TbsF98wt9Mujed/UMJ5jNTwjQOrVilunaRuVcSTZ\r\nC39ZyTudvR4IWb1zL0zuYLA/n3SQaGhvjHrGJ87t9VDvEm3tTA3xkdHYNwmL\r\npzYHA22teqNdaYGL+6NtkyUyAoLm+zmj7eE=\r\n=B0Fx\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.1_1652707900997_0.7477794742399304"},"_hasShrinkwrap":false},"1.2.2-next-0a4h4yswu7wb":{"name":"boteasy-dom","version":"1.2.2-next-0a4h4yswu7wb","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"readmeFilename":"README.md","readme":"# [BoteasyDOM](https://boteasy.net/) &middot; [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/theronaldostar/boteasy-dom/blob/main/LICENSE)  [![npm version](https://img.shields.io/npm/v/boteasy-dom.svg?style=flat)](https://www.npmjs.com/package/boteasy-dom)  [![npm version](https://badge.fury.io/js/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)  [![Downloads](https://img.shields.io/npm/dm/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)\n\n* This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms!\n---\n\n# How to use?\n\n```shell\nnpm i boteasy-dom\n```\n\n# Import:\n\n```shell\nimport BoteasyDOM from \"boteasy-dom\";\n/**\n * @jsx createElement\n * @jsxFrag Fragment\n * @jsxRuntime classic\n * Tells babel to use createElement for JSX.\n * See how to use globally: https://babeljs.io/docs/en/babel-plugin-transform-react-jsx#usage\n*/\nconst {  } = BoteasyDOM;\n```\n\n# .version:\n* a boteasy-dom version\n\n```shell\nversion;\n```\n\n# .Fragment:\n* Fragment for components\n\n```shell\nFragment;\n```\n\n# .dom:\n* The Document interface represents any web page loaded in the browser and serves as an entry point into the web page's content, which is the DOM tree.\n\n```shell\ndom;\n```\n\n# .link:\n* Get information or change your app's URL, easily and accurately!\n\n```shell\n/**\n * url: https://www.example.com\n *\n * to: https://www.example.com/example\n * reload: 1000 = 1 second\n * protocol: http: | https:\n * host: example.com\n * route: /example\n*/\n```\n\n```shell\nlink.to(\"help\"); //TODO: keep history!\nlink.to(\"help\", false);\n```\n\n```shell\nlink.reload(1000);\n```\n\n```shell\nlink.protocol;\n```\n\n```shell\nlink.host;\n```\n\n```shell\nlink.route;\n```\n\n# .storage:\n* Manipulates: window.localStorage\n\n```shell\nstorage.set(\"boteasy\", {first: \"boteasy\", last: \"dom\"});\n```\n\n```shell\nstorage.get(\"boteasy\");\n```\n\n```shell\nstorage.remove(\"boteasy\");\n```\n\n```shell\nstorage.clear();\n```\n\n# .css():\n* This function is for you to add or remove multiple class on one or multiple elements;\n\n```shell\ncss.add(\"input, select\", \"boteasy, dom\");\n```\n\n```shell\ncss.remove(\"input\", \"dom\");\n```\n\n# .html(target, value):\n* This function serves to add or remove an element in the DOM;\n\n```shell\nhtml(\"label\", \"Just a test!\");\n```\n\n# .prop(target, prop, bolean|string):\n* This function is used to enable/disable elements or select an input type checkbox, for example;\n\n```shell\nprop(\"input, select\", \"disabled\", true);\n```\n\n```shell\nprop(\"input\", \"disabled\", false);\n```\n\n# .tests(target, value):\n* This function serves to perform input tests;\n\n```shell\ntests(\"input#fullname\", \"your fullname\").then(status => {});\n```\n\n# wait(target, bolean|string):\n* This function serves to disable the entire site/App so that the user does not make multiple clicks or leave the page during a request;\n\n```shell\nwait(true);\n```\n\n```shell\nwait(false);\n```\n\n# .copy(value):\n* This function serves to copy a text to a clipboard;\n\n```shell\ncopy(\"Just a test!\");\n```\n\n# .request({}):\n* This function serves to perform AJAX requests;\n\n```shell\nrequest({\n\turl: \"https://www.example.com/api/\",\n\tmethod: \"GET\",\n\theaders: {},\n\tdata: {},\n\tdataType: \"json\",\n\tsuccess: () => {},\n\terror: () => {}\n});\n```\n\n# .createElement();\n* This function serves to create elements to be rendered by Boteasy-dom;\n\n```shell\ncreateElement(Fragment, null,\n\tcreateElement(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#fff\", \"font-weight\": \"bold\"}})\n);\n```\n//TODO: `<input type=\"email\" className=\"boteasy\" style={{color: \"#fff\", \"font-weight\": \"bold\"}} />`\n\n\n# .createRoot():\n* This function serves to create a route to Boteasy-dom,\n* Send the second parameter as  true to give permission to hydrate;\n\n```shell\nconst container = dom.querySelector(\"#modal\");\nconst modal = createRoot(container, true);\n```\n\n* Render the element in the root;\n\n```shell\nconst element = createElement(\"h1\", null, \"Hello, world!\");\nmodal.render(createElement(element));\n```\n//TODO: `<h1>Hello, world!</h1>`\n\n\n* hydrate the element in the root;\n\n```shell\nconst name = \"Ronaldo S.\";\nconst element = createElement(\"h1\", null, \"Hello, \", name);\nmodal.hydrate(createElement(element));\n```\n//TODO: `<h1>Hello, Ronaldo S.</h1>`\n\n\n* Remove the element in the root;\n\n```shell\nmodal.unmount();\n```\n\n# .useState():\n* This function is just for adding some local states.\n\n```shell\nconst [state, setState] = useState(9);\nsetState(prev => (prev + 1));\n```\n\n# .useEffect():\n* ---\n\n```shell\nuseEffect(() => {\n\t//function();\n\t//TODO: Under development! On moment.\n}, [deps]);\n```\n\n# .match({}, index):\n* This function is a direct alternative to \"switch ~ case\", and is based on the match function of the php language.\n\n```shell\nconst index = null;\nmatch({\n\tfirst: \"boteasy\",\n\tlast: \"dom\",\n\tdefault: \"latest\"\n}, index);\n```\n\n# .isTwins({}|[], {}|[]):\n* As the name says, this function is for you to compare if two objects or array are equal.\n\n```shell\nconst array = [\"boteasy\", \"dom\"];\nconst _array = [\n\t\"boteasy\",\n\t\"dom\",\n\t\"version\": [\"latest\"]\n];\nisTwins(array, _array); //TODO: false\n```\n","licenseText":"MIT License\n\nCopyright (c) since 2020 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.","_id":"boteasy-dom@1.2.2-next-0a4h4yswu7wb","dist":{"shasum":"79e8d05d57efdd3d1240afc88ecdb73527d1784e","integrity":"sha512-FoIVLEaWDtsfAVEUYysLJ0qzm/kuX0I3kQY18AIF0Hmh9fRV0Au4NUfrmiMukvWEGKrCoySW4yKzqoPQ9HZ0/w==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.2-next-0a4h4yswu7wb.tgz","fileCount":6,"unpackedSize":28702,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGo8VKp7zYiAUPZuwg2AlSJhCwU+oNu9ZagTlb4oDjQPAiEA4eFC91vQZEteDI00M328vf5F1SAXSPGuPC9lTP1F30Q="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJir/b5ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqptw/+Paw7qqC4QIU+Hz5U88D7HA0rxcwPIIe/iSlZ+lu0vgx2nrkW\r\ne23X8nvHQ5MK0/jrLSqYcJfDDsrAyy6jHIHqxsMl5j6slrnseHXTtmaYYhGB\r\nrX3xCbDraqAQSgFUu9HTOJ6KSq8x5HzKglFjrsLSoeAoV0xZ2xImOMu3K+JN\r\ntmAXUGNuxrr1QeTgKfsmweLsX7AsT1v/nzaGpIglKjMluSPG02+fLQPXxhEb\r\n0dxm+tMQL3xIPyQJFyXtBdRgnjHXXtPpbB7tFlkzFMuN8dIY4ebKWkB586SM\r\nFGP796YMScBLruMMA9M2nAlxVf8DYuA1bQsf0r47cDrT9zMh+WD1MD+aK/BK\r\nSlqbAB992UPXUs3dewiboWu1i2mdkYU0/JAYGyGj48AAdBo3GvFAd/wcamrU\r\n+SCGjhAaRsOgPh/znEdlFM7QU3aa3hZmgLGTLtPVjs1x8lRQEjq1IX1yKlyI\r\npzVDsoOtWahId+pQJwPR7d+O27N+7Aq5StUUHY5OtiV3L7kw9aDFcvW03uLa\r\nutXYe3FWMS11g+WqTmF6uLtJjt0W4lR9Ms1TqLPoHL7CukR3Op0R9f9jzMVC\r\nZMH2rtqpLwHHvXI0ax3Ro2EUg8aJFf4YWWjT2sT5YWrXrqQ2lfeyQHZu/d7v\r\nGtxRO7ZEfiTFLh7R2MxcRfHgC8qzxruzlCc=\r\n=whhh\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.2-next-0a4h4yswu7wb_1655699193440_0.0706461250463628"},"_hasShrinkwrap":false},"1.2.2":{"name":"boteasy-dom","version":"1.2.2","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom","rgb","JSX","AJAX","storage","match"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"licenseText":"MIT License\n\nCopyright (c) since 2020 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"boteasy-dom@1.2.2","dist":{"shasum":"7be67830c561b7e0337cc8fd771e8e833b39c736","integrity":"sha512-oPcXR2viOEmiQdXW2SrJlGPmr4cjg1F6zMHhRqkyXMR4/M1DhPzPSWO5gOPub4DYx+SjZKZNWYGEjFu2aZcHdg==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.2.tgz","fileCount":6,"unpackedSize":29267,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDySiVTV+kSQnxp54LUqaPfGsFT5wNyUgjYPcbMJI6J/QIhAIUp4YCv8v7U0uB42NcTnoJj/GpvySRz6ovtJmga2Y/u"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi4CD9ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo4hA/+PyBvbpdZgLazjBtNm2xev5tLNNlb2ZEndFwMsH0UUdUQMKq7\r\n+L5ykOltjCixnHTyh+msxmLwXOhQ1bFxFouKlpOZ2mIzTFfGqzQLTGdPbd52\r\nnLFPhYIDIZ520VgHynNGlRNOWhaqGgh21tcf2ZEG67T96jpCjttOxJuTFNAx\r\nd7fzjfwkWSrxZtGXzxqIETCnAvfix6lrPacXgafnpRyi2A8gq36NiBZwkXq8\r\nX0c5QUrYqxxgj3/MBy+SB5W2nQchx7prTMDha6PgX3zo8Ba6UJQYnhS4Jylc\r\nAB0X+1zrpehzAG0imTmqQxK5e0Y/tjxe6gYuMPtX1dWwQIFaJ/Meux+bu0vZ\r\nABPtpGSoPBDuLHu0Hp5PnxgW7bhUhTEJWDA3X/HyJi0tiX0+OVrk9m7UtE6p\r\nYQu8WpQk1AiXJLE9O4dQ/MVwleF9ar/8343Up/AZnTQ7t5Hh0f+XbID4wvDd\r\nPwGWtPI+oiWB4k2E52dgnUpDWVlzHBw9K8DuClsfLlFTLyk5wmOyE8c2qUxv\r\nDKJKq93klZOxcZtmSs4xjoG1hVGlXg1avcjBm3RcgAkLb/bmN9U/UMmt7F8X\r\nIirnoiF5pPoDajTCFdGOgpzxrtVaCNP5lA2y4EiUfOP/hVMyqWoHJPyge6YX\r\nWTnyRd3zj7tLnxl+Vq+bJBcVhgnlVhJluAY=\r\n=jEg8\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.2_1658855677149_0.8886732902780168"},"_hasShrinkwrap":false},"1.2.3-beta-yxacgl0kicd":{"name":"boteasy-dom","version":"1.2.3-beta-yxacgl0kicd","description":"This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["boteasy-dom","boteasy","dom","rgb","JSX","AJAX","storage","match","vibrate"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"readmeFilename":"README.md","readme":"# [BoteasyDOM](https://boteasy.net/) &middot; [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/theronaldostar/boteasy-dom/blob/main/LICENSE)  [![npm version](https://img.shields.io/npm/v/boteasy-dom.svg?style=flat)](https://www.npmjs.com/package/boteasy-dom)  [![npm version](https://badge.fury.io/js/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)  [![Downloads](https://img.shields.io/npm/dm/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)\n\n* This document is inspired by jQuery and React and was developed by Ronaldo exclusively for the Boteasy platform, but can be used on other platforms!\n---\n\n# How to use?\n\n```shell\nnpm i boteasy-dom\n```\n\n# Import:\n\n```shell\nimport BoteasyDOM from \"boteasy-dom\";\n/**\n * @jsx createElement\n * @jsxFrag Fragment\n * @jsxRuntime classic\n * Tells babel to use createElement for JSX.\n * See how to use globally: https://babeljs.io/docs/en/babel-plugin-transform-react-jsx#usage\n*/\nconst {  } = BoteasyDOM;\n```\n\n# .version:\n* a boteasy-dom version\n\n```shell\nversion;\n```\n\n# .Fragment:\n* Fragment for components\n\n```shell\nFragment;\n```\n\n# .dom:\n* The Document interface represents any web page loaded in the browser and serves as an entry point into the web page's content, which is the DOM tree.\n\n```shell\ndom;\n```\n\n# .link:\n* Get information or change your app's URL, easily and accurately!\n\n```shell\n/**\n * url: https://www.example.com\n *\n * to: https://www.example.com/example\n * reload: 1000 = 1 second\n * protocol: http: | https:\n * host: example.com\n * route: /example\n*/\n```\n\n```shell\nlink.to(\"help\"); //TODO: keep history!\nlink.to(\"help\", false);\n```\n\n```shell\nlink.reload(1000);\n```\n\n```shell\nlink.protocol;\n```\n\n```shell\nlink.host;\n```\n\n```shell\nlink.route;\n```\n\n# .storage:\n* Manipulates: window.localStorage\n\n```shell\nstorage.set(\"boteasy\", {first: \"boteasy\", last: \"dom\"});\n```\n\n```shell\nstorage.get(\"boteasy\");\n```\n\n```shell\nstorage.remove(\"boteasy\");\n```\n\n```shell\nstorage.clear();\n```\n\n# .css(target|s, value|s):\n* This function is for you to add or remove multiple class on one or multiple elements;\n\n```shell\ncss.add(\"input, select\", \"boteasy, dom\");\n```\n\n```shell\ncss.remove(\"input\", \"dom\");\n```\n\n# .html(target, value):\n* This function serves to add or remove an element in the DOM;\n\n```shell\nhtml(\"label\", \"Just a test!\");\n```\n\n# .prop(target, prop, bolean|string):\n* This function is used to enable/disable elements or select an input type checkbox, for example;\n\n```shell\nprop(\"input, select\", \"disabled\", true);\n```\n\n```shell\nprop(\"input\", \"disabled\", false);\n```\n\n# .tests(target, value):\n* This function serves to perform input tests;\n\n```shell\ntests(\"input#fullname\", \"your fullname\").then(status => {});\n```\n\n# wait(target, bolean|string):\n* This function serves to disable the entire site/App so that the user does not make multiple clicks or leave the page during a request;\n\n```shell\nwait(true);\n```\n\n```shell\nwait(false);\n```\n\n# .copy(value):\n* This function serves to copy a text to a clipboard;\n\n```shell\ncopy(\"Just a test!\");\n```\n\n# .request({}):\n* This function serves to perform AJAX requests;\n\n```shell\nrequest({\n\turl: \"https://www.example.com/api/\",\n\tmethod: \"GET\",\n\theaders: {},\n\tdata: {},\n\tdataType: \"json\",\n\tsuccess: () => {},\n\terror: () => {}\n});\n```\n\n# .createElement(any, any, any);\n* This function serves to create elements to be rendered by Boteasy-dom;\n\n```shell\ncreateElement(Fragment, null,\n\tcreateElement(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#fff\", \"font-weight\": \"bold\"}})\n);\n```\n//TODO: `<input type=\"email\" className=\"boteasy\" style={{color: \"#fff\", \"font-weight\": \"bold\"}} />`\n\n\n# .createRoot(target/container, bolean|undefined):\n* This function serves to create a route to Boteasy-dom,\n* Send the second parameter as  true to give permission to hydrate;\n\n```shell\nconst container = dom.querySelector(\"#modal\");\nconst modal = createRoot(container, true);\n```\n\n* Render the element in the root;\n\n```shell\nconst element = createElement(\"h1\", null, \"Hello, world!\");\nmodal.render(createElement(element));\n```\n//TODO: `<h1>Hello, world!</h1>`\n\n\n* hydrate the element in the root;\n\n```shell\nconst name = \"Ronaldo S.\";\nconst element = createElement(\"h1\", null, \"Hello, \", name);\nmodal.hydrate(createElement(element));\n```\n//TODO: `<h1>Hello, Ronaldo S.</h1>`\n\n\n* Remove the element in the root;\n\n```shell\nmodal.unmount();\n```\n\n# .useState(any):\n* This function is just for adding some local states.\n\n```shell\nconst [state, setState] = useState(9);\nsetState(prev => (prev + 1));\n```\n\n# .useEffect(function|arrow function, []|undefined):\n* ---\n\n```shell\nuseEffect(() => {\n\t//function();\n\t//TODO: Under development! On moment.\n}, [deps]);\n```\n\n# .match({}, index):\n* This function is a direct alternative to \"switch ~ case\", and is based on the match function of the php language.\n\n```shell\nconst index = null;\nmatch({\n\tfirst: \"boteasy\",\n\tlast: \"dom\",\n\tdefault: \"latest\"\n}, index);\n```\n\n# .isTwins({}|[], {}|[]):\n* As the name says, this function is for you to compare if two objects or array are equal.\n\n```shell\nconst array = [\"boteasy\", \"dom\"];\nconst _array = [\n\t\"boteasy\",\n\t\"dom\",\n\t\"version\": [\"latest\"]\n];\nisTwins(array, _array); //TODO: false\n```\n# .rgba(\"#\", number|undefined):\n* This function is for you to convert a hex color to rgba!\n\n```shell\nrgba(\"#fff\", 0.4); //TODO: rgba(255,255,255,0.4)\n```\n\n# .vibrate(number|undefined):\n* ...\n\n```shell\nvibrate(300); //TODO: duration: 300ms\n```","licenseText":"MIT License\n\nCopyright (c) since 2020 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"boteasy-dom@1.2.3-beta-yxacgl0kicd","dist":{"shasum":"38d0518a131a23af78c25f1439ef1c1232c821b2","integrity":"sha512-3zi/HyYX3pIfpOX5S4VliaRGar/Yf4DsBs1eYBSvETq52y5MfmBhbf2ZpN56REdmCduUtZzcaqhNxD3DVLg71Q==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.3-beta-yxacgl0kicd.tgz","fileCount":6,"unpackedSize":29790,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD5yfy96+p2uWHf7Ph0sO8xmDKVnptUkmJIfkYx9VRD0gIhANe2mrXVSZ6R8x/E1T/f1K9BSh9Hmdqe2I9vqFMruKJx"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi6bVSACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr4LQ//abVHQlgLUn0CNWqvNiZCKng4O/HzqmTiL4SCBlFPc3adf0o6\r\nmv1QkgZC1mfyGNTTQzn5hK43e9vtyIBX6kquT5gpFeX/obBAfoUDvq1nXaYg\r\n0wUGH97ksEJ71pG3GaRL5v+UL5LeghBxVcWq/0SIczp7X3AvfOH/2Ykyqcfr\r\nA2cd2mQVX+g16019vqmcMQ58ncv5FvL0ervKc2ze06xcw3VW6EPxucX1Kxqo\r\nyzIHMRunYx9J3HApQORuFsxF55mfabSGccZQFWvfpallB9x4g+ssVFTh/CY2\r\nKL0V2IDX5MZrhZDOa8hKL1tssjFTxF3+ZgSfESA3lz/YaPNBEtmHxrJhQSFw\r\nSMtqxHHSxf/Ew7UmQPY0i9QEb8MGlNe5xr8bwZP5eFs3uY5YOP39Agq1Ubop\r\ngiYxULvzEQbrF2eeb2Ft9y4Ex2IbkmGR5d3QpeiK/N0Og0Gw/Jr0dXj/1fs4\r\nixDVuaDS3uT36/DiU7olKcvVCkxrd7rkgAZgbo/P8PKlFLWtbxDrw7rs0zNm\r\n9qiEjHC9PxHE5VnURDNo2TDFVfN3/E/XL5WpqAo8zUxIutZnrNqaQeqSVneX\r\n0Ye8jmcWNBL6RL/mzXm2ipBmYORClmxgRqVrGycE0Ketm1pw7FoG015WEpJb\r\nlDmWdKjab5/KtrCJA/iB/9/VeLDXN0Q++Qc=\r\n=agFS\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.3-beta-yxacgl0kicd_1659483474537_0.9267374574035416"},"_hasShrinkwrap":false},"1.2.3-experimental-ddy9lpe4hv":{"name":"boteasy-dom","version":"1.2.3-experimental-ddy9lpe4hv","description":"This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["react","router","boteasy-dom","boteasy","dom","rgb","JSX","jQuery","AJAX","storage","match","vibrate","vdom","components","front-end","framework","virtual dom","user interface","styled","css styled","styled agnostic","global style"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"readmeFilename":"README.md","readme":"# [BoteasyDOM](https://boteasy.net/) &middot; [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/theronaldostar/boteasy-dom/blob/main/LICENSE)  [![npm version](https://img.shields.io/npm/v/boteasy-dom.svg?style=flat)](https://www.npmjs.com/package/boteasy-dom)  [![npm version](https://badge.fury.io/js/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)  [![Downloads](https://img.shields.io/npm/dm/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)\n\n* This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.\n---\n# How to use?\n\n```shell\nnpm i boteasy-dom\n```\n\n```shell\nyarn add boteasy-dom\n```\n\n# Quick use:\n\n```jsx\nimport { dom, useState, createRoot } from \"boteasy-dom\";\n\nconst App = () => {\n\tconst [count, setCount] = useState(0);\n\treturn (\n\t\t<>\n\t\t\t<h1>{count}</h1>\n\t\t\t<button onClick={() => setCount(prev => (prev + 1))}>Increment</button>\n\t\t</>\n\t);\n};\n\nconst container = dom.querySelector(\"#root\");\nconst root = createRoot(container);\nroot.render(<App />);\n```\n\n# Import:\n\n```shell\nimport BoteasyDOM from \"boteasy-dom\";\n/**\n * @jsx createElement\n * @jsxFrag Fragment\n * @jsxRuntime classic\n*/\nconst {  } = BoteasyDOM;\n```\n\n# .version:\n* A boteasy-dom version\n\n```shell\nconst ver = version;\n```\n\n# .dom:\n* The Document interface represents any web page loaded in the browser and serves as an entry point into the web page's content, which is the DOM tree\n\n```shell\nconst root = dom.querySelector(\"#root\");\n```\n\n# .Fragment:\n* Allows a component to return multiple elements grouped a list of children without adding extra nodes to the DOM\n\n```shell\n<></>\n```\n\n# .match(object, index):\n* This function is a direct alternative to \"switch ~ case\", and is based on the match function of the php language.\n\n```shell\nconst index = null;\nmatch({\n\tfirst: \"boteasy\",\n\tlast: \"dom\",\n\tdefault: \"test\"\n}, index);\n```\n\n# .useId(number|undefined):\n* ???\n\n```shell\nconst inputId = useId(2);\n```\n\n`<input type=\"text\" id={inputId} />`\n\n# .useRef(value|VoidFunction):\n* ???\n\n```shell\nconst email = useRef(() => {\n\tlet name = \"boteasy.dom\";\n\treturn `${name}@example.com`;\n});\n```\n\n`<input type=\"email\" ref={email} />`\n\n# .useHtml(selector, newValue):\n* This function serves to add or remove an element in the DOM;\n\n```shell\nuseHtml(\"#root\", `<h1>Hello, world!</h1>`);\n```\n\n# .useWait(bolean|string):\n* This function is for you to disable all elements;\n\n```shell\nuseWait(true);\n```\n\n```shell\nuseWait(false);\n```\n\n# .useProp(selectors, attribute, any):\n* This function is used to enable/disable elements or select an input type checkbox, for example;\n\n```shell\nuseProp(\"input, select\", \"disabled\", true);\n```\n\n```shell\nuseProp(\"input\", \"disabled\", false);\n```\n\n# .useRequest({}):\n* This function serves to perform AJAX requests;\n\n```shell\nuseRequest({\n\turl: \"https://www.example.com/api/\",\n\tmethod: \"GET\",\n\theaders: {},\n\tdata: {},\n\tdataType: \"json\",\n\tsuccess: () => {},\n\terror: () => {},\n\tfinally: () => {}\n});\n```\n\n# .useVibrate(number|number[]|undefined):\n* ???\n\n```shell\nuseVibrate([500, 110, 500, 110, 450, 110, 200, 110, 170, 40, 450, 110, 200, 110, 170, 40, 500]);\n```\n\n# .useClipboard(string, VoidFunction|undefined):\n* This function serves to copy a text to a clipboard;\n\n```shell\nuseClipboard(\"Just a test!\", () => {\n\tconsole.info(\"Text copied to clipboard.\");\n});\n```\n\n# .useTwins(string|{}|[], string|{}|[]):\n* As the name says, this function is for you to compare if two objects or array are equal.\n\n```shell\nconst array = [\"boteasy\", \"dom\"];\nconst array2 = [\n\t\"boteasy\",\n\t\"dom\",\n\t\"version\": [\"latest\"]\n];\nuseTwins(array, array2);\n```\n\n# .useFloat(number|string, number):\n* ???\n\n```shell\nconst total = 100.123;\nuseFloat(total, 2);\n```\n\n# .useState(value|VoidFunction):\n* This function is just for adding some local states.\n\n```shell\nconst [state, setState] = useState(9);\nsetState(prev => (prev + 1));\n```\n\n# .useEffect(function, []|undefined):\n* ???\n\n```shell\nlet name = \"boteasy\";\nconst boteasyTest = () => console.info(`Hello, ${name}!`);\nuseEffect(() => {\n\tboteasyTest();\n\t/**\n\t * TODO: Under Construction\n\t * this function is incomplete.\n\t*/\n\treturn () => console.info(\"Bye, world!\");\n}, [name]);\n```\n\n# .useStorage() => (string, any):\n* Manipulates: window.localStorage.\n\n```shell\nconst storage = useStorage();\n```\n\n```shell\nstorage(\"theme\", \"dark\");\n```\n\n`set`\n\n```shell\nstorage(\"theme\");\n```\n\n`get`\n\n\n```shell\nstorage(\"theme\")();\n```\n\n`remove`\n\n# .useNavigate(number|undefined) => (string, boolean|undefined):\n* ???\n\n```shell\nconst navigate = useNavigate(1000);\n```\n\n`1000ms delay`\n\n```shell\nnavigate(\"/\");\n```\n\n```shell\nnavigate(\"login\", false);\n```\n\n# .useScroll(..., object|undefined):\n* ???\n\n```shell\n/**\n * TODO: Under Construction\n * this function is incomplete.\n*/\nlet { x, y } useScroll(\".container\", { behavior: \"smooth\" });\n```\n\n# .flushAsync(VoidFunction, any):\n* ???\n\n```shell\nflushAsync(name => {\n\tconsole.info(`Hello, ${name}!`);\n}, \"BoteasyDOM\");\n```\n\n# .createRoot(container, object|bolean|undefined):\n* This function serves to create a route to Boteasy-dom, send the second parameter an object containing an intex with hydrate as true.\n\n```shell\nconst container = dom.querySelector(\"#root\");\nconst root = createRoot(container, { hydrate: true });\n```\n\n* Render the element in the root;\n\n```shell\nconst element = <h1>Hello, world!</h1>;\nroot.render(element);\n```\n\n`<h1>Hello, world!</h1>`\n\n* Remove the element in the root;\n\n```shell\nroot.unmount();\n```\n\n# .hydrateRoot(container, component):\n* hydrate the element in the root;\n\n```shell\nconst name = \"Boteasy.\";\nconst container = dom.querySelector(\"#root\");\nhydrateRoot(container, <h1>Hello, {name}</h1>);\n```\n\n`<h1>Hello, Ronaldo S.</h1>`\n\n# .StrictMode():\n* ???\n\n```shell\nconst App = (\n\t<StrictMode>\n\t\t<h1>Hello, world!</h1>\n\t</StrictMode>\n);\n```\n\n# .createElement(any, null|object, any[]|undefined);\n* This function serves to create elements to be rendered by Boteasy-dom;\n\n```shell\ncreateElement(StrictMode, null,\n\tcreateElement(Fragment, null,\n\t\tcreateElement(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#000\", fontWeight: \"bold\"}\n\t\t})\n\t)\n);\n\n```\n\n`<input type=\"email\" className=\"boteasy\" style=\"color: #000;font-weight: bold\" />`\n\n# .cssClass():\n* This function is for you to add or remove multiple class on one or multiple elements;\n\n```shell\ncssClass.add(\"input, select\", \"boteasy, dom\");\n```\n\n```shell\ncssClass.remove(\"input\", \"dom\");\n```\n\n# .globalStyle(object):\n* ???\n\n```shell\nconst GlobalStyle = globalStyle({\n\tcolor: \"#000\",\n\tfontWeight: \"bold\"\n\tbackgroundColor: \"#fff8\"\n});\n```\n\n`<GlobalStyle />`\n\n# .cssStyled(object):\n* ???\n\n```shell\nconst css = cssStyled({\n\tcolor: \"#ff6347\",\n\tfontWeight: 600\n});\n```\n\n`<h1 className={css} />`\n\n# .styled(string, object):\n* ???\n\n```shell\nconst Style = cssStyled(\"boteasy\", {\n\tcolor: \"#ff6347\",\n\tfontWeight: 600\n});\n```\n\n`<Style><h1>Hello, world!</h1></Style>`\n\n# .rgba(string, number|undefined):\n* This function is for you to convert a hex color to rgba!\n\n```shell\nrgba(\"#fff\", 0.4); \n```\n\n`rgba(255,255,255,0.4)`","licenseText":"MIT License\n\nCopyright (c) since 2020 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.","_id":"boteasy-dom@1.2.3-experimental-ddy9lpe4hv","dist":{"shasum":"e9d5f94c5ef9199df404b9d458513a1b1ec1bc8a","integrity":"sha512-Jdl/XMmt17/v+mJ2tXi8igIzlLaCcqH8ZB9Wv0WVVhSt0InPZ2h0SGH6T+Mrdb3IvcWC1mNtJXA2Ovm7iec7cw==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.3-experimental-ddy9lpe4hv.tgz","fileCount":7,"unpackedSize":32373,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBU+nuGIYpGQrp49nzmSSUnbjpizILWz9tvi0YDf/vnQAiEAx7TN4TUbH5Dnm0VBgk1Z2AgqhlHyaaVBpA1y1huycbs="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjTr0rACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoO7g//Vl0Ns3Co5JvGQFEJhibEFOIXfk82qNpWiz025tWsiMlsh/gL\r\n5V65xGJ9ID5rmkPyZ24M+uwN1LIYnCblgm4yCHbPcl0RA62MvKX69ZTuopfV\r\np1E9SMd+DDmpND9mIev4AtDISF8Lzmsw1DdM3vKpF3FRfm+aOZnx+VgfK/j6\r\ns2QTv+WwnZAR5uiUu0/ylP2SOSldhkYXeQL6teGfE0pRZrUXKTAOYVBSajhx\r\nqKCIjD+NIErgbj7Sh8PiF8KDWSiBdIk7KmcI8Vd9JShoIwT3Psjf61XGWhCW\r\nDfh19k8D/sdSHrKXcHkSQ7CoHL+EebhIxFYstx1xzWCTpxUGwX14FiDzoC86\r\nqp4vhJRDsU8g0tAQo9gowCIFG70eMl4wBM5uGEApa53iJvqL2wRpCLGLw4o0\r\ne18eqsG+kfumQ/mQQPYNGIyPysmabkA8FcQkJX935SYyxguMvjYe5JdXjyq6\r\ndhLdL0BJeajJDiSZGrehhFJ8DEVG0m6RTkczkG32ZxteeuIFKKdHy2fdmYr3\r\nSgQZC9v3C30jx+6Yl9uYRKJS+0paCNyZg0/pvJcLww6lHmlLlNI+/NiF8Z2T\r\n/OaGiQ5ui6x52jBrwSeSISojvXWizLfBGLPA9BcYFJZM6TWtvT4bk9Z+covG\r\nezZBNUavBb5TZXyMkciPx8+7KiojzHPz8LQ=\r\n=gZfw\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.3-experimental-ddy9lpe4hv_1666104619372_0.7233111339667733"},"_hasShrinkwrap":false},"1.2.3-experimental-hi0ct5jcrkw":{"name":"boteasy-dom","version":"1.2.3-experimental-hi0ct5jcrkw","description":"This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.","license":"MIT","private":false,"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["react","router","boteasy-dom","boteasy","dom","rgb","JSX","jQuery","AJAX","storage","match","vibrate","vdom","components","front-end","framework","virtual dom","user interface","styled","css styled","styled agnostic","global style"],"main":"index.js","types":"index.d.ts","scripts":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"readmeFilename":"README.md","readme":"# [BoteasyDOM](https://boteasy.net/) &middot; [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/theronaldostar/boteasy-dom/blob/main/LICENSE)  [![npm version](https://img.shields.io/npm/v/boteasy-dom.svg?style=flat)](https://www.npmjs.com/package/boteasy-dom)  [![npm version](https://badge.fury.io/js/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)  [![Downloads](https://img.shields.io/npm/dm/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)\n\n* This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.\n---\n# How to use?\n\n```shell\nnpm i boteasy-dom\n```\n\n```shell\nyarn add boteasy-dom\n```\n\n# Quick use:\n\n```jsx\nimport { dom, useState, createRoot } from \"boteasy-dom\";\n\nconst App = () => {\n\tconst [count, setCount] = useState(0);\n\treturn (\n\t\t<>\n\t\t\t<h1>{count}</h1>\n\t\t\t<button onClick={() => setCount(prev => (prev + 1))}>Increment</button>\n\t\t</>\n\t);\n};\n\nconst container = dom.querySelector(\"#root\");\nconst root = createRoot(container);\nroot.render(<App />);\n```\n\n# Import:\n\n```shell\nimport BoteasyDOM from \"boteasy-dom\";\n/**\n * @jsx createElement\n * @jsxFrag Fragment\n * @jsxRuntime classic\n*/\nconst {  } = BoteasyDOM;\n```\n\n# .version:\n* A boteasy-dom version\n\n```shell\nconst ver = version;\n```\n\n# .dom:\n* The Document interface represents any web page loaded in the browser and serves as an entry point into the web page's content, which is the DOM tree\n\n```shell\nconst root = dom.querySelector(\"#root\");\n```\n\n# .Fragment:\n* Allows a component to return multiple elements grouped a list of children without adding extra nodes to the DOM\n\n```shell\n<></>\n```\n\n# .match(object, index):\n* This function is a direct alternative to \"switch ~ case\", and is based on the match function of the php language.\n\n```shell\nconst index = null;\nmatch({\n\tfirst: \"boteasy\",\n\tlast: \"dom\",\n\tdefault: \"test\"\n}, index);\n```\n\n# .useId(number|undefined):\n* ???\n\n```shell\nconst inputId = useId(2);\n```\n\n`<input type=\"text\" id={inputId} />`\n\n# .useRef(value|VoidFunction):\n* ???\n\n```shell\nconst email = useRef(() => {\n\tlet name = \"boteasy.dom\";\n\treturn `${name}@example.com`;\n});\n```\n\n`<input type=\"email\" ref={email} />`\n\n# .useHtml(selector, newValue):\n* This function serves to add or remove an element in the DOM;\n\n```shell\nuseHtml(\"#root\", `<h1>Hello, world!</h1>`);\n```\n\n# .useWait(bolean|string):\n* This function is for you to disable all elements;\n\n```shell\nuseWait(true);\n```\n\n```shell\nuseWait(false);\n```\n\n# .useProp(selectors, attribute, any):\n* This function is used to enable/disable elements or select an input type checkbox, for example;\n\n```shell\nuseProp(\"input, select\", \"disabled\", true);\n```\n\n```shell\nuseProp(\"input\", \"disabled\", false);\n```\n\n# .useRequest({}):\n* This function serves to perform AJAX requests;\n\n```shell\nuseRequest({\n\turl: \"https://www.example.com/api/\",\n\tmethod: \"GET\",\n\theaders: {},\n\tdata: {},\n\tdataType: \"json\",\n\tsuccess: () => {},\n\terror: () => {},\n\tfinally: () => {}\n});\n```\n\n# .useVibrate(number|number[]|undefined):\n* ???\n\n```shell\nuseVibrate([500, 110, 500, 110, 450, 110, 200, 110, 170, 40, 450, 110, 200, 110, 170, 40, 500]);\n```\n\n# .useClipboard(string, VoidFunction|undefined):\n* This function serves to copy a text to a clipboard;\n\n```shell\nuseClipboard(\"Just a test!\", () => {\n\tconsole.info(\"Text copied to clipboard.\");\n});\n```\n\n# .useTwins(string|{}|[], string|{}|[]):\n* As the name says, this function is for you to compare if two objects or array are equal.\n\n```shell\nconst array = [\"boteasy\", \"dom\"];\nconst array2 = [\n\t\"boteasy\",\n\t\"dom\",\n\t\"version\": [\"latest\"]\n];\nuseTwins(array, array2);\n```\n\n# .useFloat(number|string, number):\n* ???\n\n```shell\nconst total = 100.123;\nuseFloat(total, 2);\n```\n\n# .useState(value|VoidFunction):\n* This function is just for adding some local states.\n\n```shell\nconst [state, setState] = useState(9);\nsetState(prev => (prev + 1));\n```\n\n# .useEffect(function, []|undefined):\n* ???\n\n```shell\nlet name = \"boteasy\";\nconst boteasyTest = () => console.info(`Hello, ${name}!`);\nuseEffect(() => {\n\tboteasyTest();\n\t/**\n\t * TODO: Under Construction\n\t * this function is incomplete.\n\t*/\n\treturn () => console.info(\"Bye, world!\");\n}, [name]);\n```\n\n# .useStorage() => (string, any):\n* Manipulates: window.localStorage.\n\n`---`\n\n```shell\nconst storage = useStorage();\n```\n\n`set`\n\n```shell\nstorage(\"theme\", () => {\n\tconst prefers = window.matchMedia(\"(prefers-color-scheme: dark)\").matches;\n\treturn prefers ? \"dark\" : \"light\"\n});\n```\n\n`get`\n\n```shell\nstorage(\"theme\");\n```\n\n`remove`\n\n```shell\nstorage()(\"theme\");\n```\n\n# .useNavigate(number|undefined) => (string, boolean|undefined):\n* ???\n\n```shell\nconst navigate = useNavigate(1000);\n```\n\n`1000ms delay`\n\n```shell\nnavigate(\"/\");\n```\n\n```shell\nnavigate(\"login\", false);\n```\n\n# .useScroll(..., object|undefined):\n* ???\n\n```shell\n/**\n * TODO: Under Construction\n * this function is incomplete.\n*/\nlet { x, y } useScroll(\".container\", { behavior: \"smooth\" });\n```\n\n# .flushAsync(VoidFunction, any):\n* ???\n\n```shell\nflushAsync(name => {\n\tconsole.info(`Hello, ${name}!`);\n}, \"BoteasyDOM\");\n```\n\n# .createRoot(container, object|bolean|undefined):\n* This function serves to create a route to Boteasy-dom, send the second parameter an object containing an intex with hydrate as true.\n\n```shell\nconst container = dom.querySelector(\"#root\");\nconst root = createRoot(container, { hydrate: true });\n```\n\n* Render the element in the root;\n\n```shell\nconst element = <h1>Hello, world!</h1>;\nroot.render(element);\n```\n\n`<h1>Hello, world!</h1>`\n\n* Remove the element in the root;\n\n```shell\nroot.unmount();\n```\n\n# .hydrateRoot(container, component):\n* hydrate the element in the root;\n\n```shell\nconst name = \"Boteasy.\";\nconst container = dom.querySelector(\"#root\");\nhydrateRoot(container, <h1>Hello, {name}</h1>);\n```\n\n`<h1>Hello, Ronaldo S.</h1>`\n\n# .StrictMode():\n* ???\n\n```shell\nconst App = (\n\t<StrictMode>\n\t\t<h1>Hello, world!</h1>\n\t</StrictMode>\n);\n```\n\n# .createElement(any, null|object, any[]|undefined);\n* This function serves to create elements to be rendered by Boteasy-dom;\n\n```shell\ncreateElement(StrictMode, null,\n\tcreateElement(Fragment, null,\n\t\tcreateElement(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#000\", fontWeight: \"bold\"}\n\t\t})\n\t)\n);\n\n```\n\n`<input type=\"email\" className=\"boteasy\" style=\"color: #000;font-weight: bold\" />`\n\n# .cssClass():\n* This function is for you to add or remove multiple class on one or multiple elements;\n\n```shell\ncssClass.add(\"input, select\", \"boteasy, dom\");\n```\n\n```shell\ncssClass.remove(\"input\", \"dom\");\n```\n\n# .globalStyle(object):\n* ???\n\n```shell\nconst GlobalStyle = globalStyle({\n\tcolor: \"#000\",\n\tfontWeight: \"bold\"\n\tbackgroundColor: \"#fff8\"\n});\n```\n\n`<GlobalStyle />`\n\n# .cssStyled(object):\n* ???\n\n```shell\nconst css = cssStyled({\n\tcolor: \"#ff6347\",\n\tfontWeight: 600\n});\n```\n\n`<h1 className={css} />`\n\n# .styled(string, object):\n* ???\n\n```shell\nconst Style = cssStyled(\"boteasy\", {\n\tcolor: \"#ff6347\",\n\tfontWeight: 600\n});\n```\n\n`<Style><h1>Hello, world!</h1></Style>`\n\n# .rgba(string, number|undefined):\n* This function is for you to convert a hex color to rgba!\n\n```shell\nrgba(\"#fff\", 0.4); \n```\n\n`rgba(255,255,255,0.4)`","licenseText":"MIT License\n\nCopyright (c) since 2020 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.","_id":"boteasy-dom@1.2.3-experimental-hi0ct5jcrkw","dist":{"shasum":"5ab6501be8084447db26d5ffeabec3af5e2bc60e","integrity":"sha512-sm2Iz6uSerPCYg7UDr3H+6zP+1ZGVQ9UJgyE+ydHdBgFx48COXSDDbFQCBE6MCgHo+C/aFHeV4V0FeZ8op59+w==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.3-experimental-hi0ct5jcrkw.tgz","fileCount":7,"unpackedSize":32512,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDuE67qDeDlC319FYxukAYcRZ0ihwe1oCF30Dgp41/zNgIgJIHVbN66Jc9y3cpOUKOMFZaBXoVohf2D7nF+oivlKGI="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjT6lcACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpOLw/9ElYCKx+BXUdZa4AhKjZ81+NnN5qWkkwME68P5xXYHdaSPJjv\r\nt0Z5otNwKC3znpXIPm3uMBlqRIC4FpfZGAYm7xV/Ejh2ihA1vH3mFC8rGpeK\r\n68MRs4gZ6ep8fNPuEEGIfQYv7QzSpkHSF4a1IBjTjk12Xt3tUEyV3NdfdvZ5\r\nH9oReyc6jub4zpO61P3RizZ9hJgFVvuDqyW6XHVMDBqJFzIZsCjFlUWaTSDZ\r\nfr0mOFcUsjNP+LH5E1RACtGMSbvB3SryDqE+BbVGhJqE+clpkA1dQiJrML4A\r\nn1MJ5rab1XSrZoMEKpx9+DmFBoM/t7/DdZwwU8PpdSNE5oE7wdYpHfSyr2oV\r\ngrv1GMkkZssBOCcM5ta66aF9pNUkqZyf4YDJEl2ezrN4Y1XBRPKReQqIHTFF\r\n31uIA/fZ0xLdLKDy7q4DdKzQgKw4POVn6Ku4qPh3sois1/VkXuaageygcIPI\r\n5P0cMpbrWZrNO7aoFrVqqBYGz9rPYN5QMJztg3/fvXl3EPOeM94ZXtG6gSih\r\nneWIMP5G9OaykTq7M48ymVHz9Fc5Vf6lqbX1Zi+f/oujUFBXkoEtQycWA5KQ\r\niQ+WIgH4D87MdJRZM5J2apFAF52BDMGyQ0lknXvVk48IQTh/IqgCpqgd29Hx\r\nN+g9UupqGeG/rgFg8lYetVO5KWqWJPMBnVw=\r\n=jk56\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.3-experimental-hi0ct5jcrkw_1666165084030_0.3977299118968274"},"_hasShrinkwrap":false},"1.2.3-beta-vwdmtw9":{"name":"boteasy-dom","version":"1.2.3-beta-vwdmtw9","description":"This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.","license":"MIT","author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["react","router","boteasy-dom","boteasy","dom","rgb","JSX","jQuery","AJAX","storage","match","vibrate","vdom","components","front-end","framework","virtual dom","user interface","styled","css styled","styled agnostic","global style"],"main":"index.js","types":"index.d.ts","scripts":{},"engines":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"licenseText":"MIT License\n\nCopyright (c) since 2020 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.","_id":"boteasy-dom@1.2.3-beta-vwdmtw9","dist":{"shasum":"1003ad350d4d298a7dc077fd9e65f0e5ab2063ce","integrity":"sha512-Pbfj34ZUxZDXrmOsI7JwOi52KOpKRZzGI0uPk4x7jDrxw4tcfWK6/1FZIFz9B91kl6kp0/2b8vTgWzwl5qBR8Q==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.3-beta-vwdmtw9.tgz","fileCount":7,"unpackedSize":33271,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC9FRFFrGvn0SI584JTnzN3lUUg6jV96Lz9m4/VcpTDcAiEAn5J/ZpgaDV9PyU+hPInshpCwxKGbJTYOKfgsRpDsdqs="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjUHWXACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp2axAAoCj9/mjg7FeUqHz0M9fG8kGsujQvSNFc5TYY+WHmHZbKnXEb\r\nxnntvNalEkvdNmcGo8YWpEFPyXWITzMQjhM+6+FfhG1/Y77sv8LoDm9WzuvH\r\nIq5IUa/tg+xknoTiB3nLZcdOaHGq4OSmm0l5AHro+OaVJRyvc3zMDX78TJVi\r\nMSGf0xlobyLW8npxDcnXwkB2voBLJP8cCBKoanxzTxTMtEA7vg2y8Q4wZxQc\r\nimwIw2zmHQbnRDVn8LXzMcNZAn74DgsxZpyf2TQtr7xcI36XIrs5baoEtv4B\r\nFeGDTDkjSdLoNwd4pIbakSV5i4pMh7/iKNu3md+xlmCYr8eOwEcwiKyjX+fS\r\nsIbih0j/B64PQ2mKkuDBcgDTyvALb1pbPDSuU3eyC7ikKNyo9W8mQ016Db4g\r\nIyajNKW9QQ2JihP+ETDeEcO0Sgw3ra3IgYq5Twvhv0for6XqbCnycHmpBY9u\r\n/7RsESaiXiy6jDggX02gYU94+g6bTWW/h6x5g0ukTBDEiGaqbhpgQ8YIITWf\r\nWmI3ZN7IwdQkBmq1OSMTM5GCJSPu97ur2tRryhtAcCiOi/4gCGtVRZMk68gd\r\nCH4CEd8RiFP6g801LolRdqcv5j2+Xf5zGmQumzcmpFl4OuKXRuQQg7s7O72g\r\nFg/wUU4H3oWOH4cjFu/CmeamdHjAS3Ufu3I=\r\n=cZxD\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.3-beta-vwdmtw9_1666217367653_0.3372966038043874"},"_hasShrinkwrap":false},"1.2.3":{"name":"boteasy-dom","version":"1.2.3","description":"This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.","license":"MIT","author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["react","router","boteasy-dom","boteasy","dom","rgb","JSX","jQuery","AJAX","storage","match","vibrate","vdom","components","front-end","framework","virtual dom","user interface","styled","css styled","styled agnostic","global style"],"main":"index.js","types":"index.d.ts","scripts":{},"engines":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"licenseText":"MIT License\n\nCopyright (c) since 2020 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"boteasy-dom@1.2.3","dist":{"shasum":"638ba05810d634a4968b60287c0fd99d46b70eb3","integrity":"sha512-UTbsxeUMrB2qxYcTANvS02APQmZLWvYMShBzUoQUCKcHzPNZLdi6mBMiIic7yIrhcndV73iEtujrdN2hHx0D6g==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.3.tgz","fileCount":7,"unpackedSize":33252,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHE/yGJa2tvzw2hwoTC2jZZutoe9Y4JOyYRKLmziAtd5AiBWyV2NFMXsZxGEzq/PfPXAwYir6364hBAJGjHA1KPPAw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjUHZgACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrkxA/8Dj23efypcrH/cQvsUZNTEXp0bg2e0q/vrxQYi9ioopcnFR2n\r\nORW9fO/sngP73SZwzT0h2E/GvpMgHdGy+78g400KpSVb60OX9kCGt2u+ek46\r\n3V5gjuSVaB2ewD8ZVAVOapkLBx3Tr0L9YtJQTu9voF0OgtqozpGWesixExXJ\r\nLsI3+A0hWo50IeInY44s5J05XCZNTjeCgAzOMfd3vR9xm+kmqD3IzY7JZUbP\r\npvNa5qHIXwls43+dDfi4FF6L80ITr158UGMdJrDbbj87+gU3RMFKZvt2fo0w\r\ndy2RvFizB/KJ4BToCq2P8VQHI5SrrzCXQiP1L0k6rPpqOqkXo+f/2oZHJ8o7\r\nYrrxSwPrSa1rZ4q4wD8CL5JgL4L0ft34zUSwc4kKpgTm1dllAPI67HwBSHzV\r\niQCWdpz2O7yADCCJXiqKSXLWwyQlOnpdW94S9Sxp7WEbtpR3Bf0biO3VwbiY\r\nm5Jup+6DOGPYURoMVnAkcECu6aFJRidNeyH3ZkJqOz6ggu0HNTnyVspmnoEn\r\nTsyznFV0HdUL6FjxuWMtZxj7V0BevtVae1uSYK2BuXhsrHALv9ebCLZa1PJp\r\nyXx5JusGHqud/UJoLQeTRwB/G1Xr7/p7LIo/8S8PxtmYmNWQw0bU+3soe7+J\r\n5c4HWyEjQxo3O/FjgDnVSOJ9BbHRCcavxss=\r\n=5uae\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.3_1666217568486_0.9327183545465076"},"_hasShrinkwrap":false},"1.2.4-next-n7tax8":{"name":"boteasy-dom","version":"1.2.4-next-n7tax8","description":"This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.","license":"MIT","author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["react","router","boteasy-dom","boteasy","dom","rgb","JSX","jQuery","AJAX","storage","match","vibrate","vdom","components","front-end","framework","virtual dom","user interface","styled","css styled","styled agnostic","global style"],"main":"index.js","types":"index.d.ts","scripts":{},"engines":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"readmeFilename":"README.md","readme":"# [BoteasyDOM](https://boteasy.net/) &middot; [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/theronaldostar/boteasy-dom/blob/main/LICENSE)  [![npm version](https://img.shields.io/npm/v/boteasy-dom.svg?style=flat)](https://www.npmjs.com/package/boteasy-dom)  [![npm version](https://badge.fury.io/js/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)  [![Downloads](https://img.shields.io/npm/dm/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)\n\n* This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.\n---\n# How to use?\n\n```shell\nnpm i boteasy-dom\n```\n\n```shell\nyarn add boteasy-dom\n```\n\n# Quick use:\n\n```jsx\nimport { dom, useState, createRoot } from \"boteasy-dom\";\n\nconst App = () => {\n\tconst [count, setCount] = useState(0);\n\treturn (\n\t\t<>\n\t\t\t<h1>{count}</h1>\n\t\t\t<button onClick={() => setCount(prev => (prev + 1))}>Increment</button>\n\t\t</>\n\t);\n};\n\nconst container = dom.querySelector(\"#root\");\nconst root = createRoot(container);\nroot.render(<App />);\n```\n\n# Import:\n\n```shell\nimport BoteasyDOM from \"boteasy-dom\";\n/**\n * @jsx createElement\n * @jsxFrag Fragment\n * @jsxRuntime classic\n*/\nconst {  } = BoteasyDOM;\n```\n\n# .version:\n* A boteasy-dom version\n\n```shell\nconst ver = version;\n```\n\n# .dom:\n* The Document interface represents any web page loaded in the browser and serves as an entry point into the web page's content, which is the DOM tree\n\n```shell\nconst root = dom.querySelector(\"#root\");\n```\n\n# .Fragment:\n* Allows a component to return multiple elements grouped a list of children without adding extra nodes to the DOM\n\n```shell\n<></>\n```\n\n# .match(object, string|null):\n* This function is a direct alternative to \"switch ~ case\", and is based on the match function of the php language\n\n```shell\nconst index = null;\nmatch({\n\tfirst: \"boteasy\",\n\tlast: \"dom\",\n\tdefault: \"test\"\n}, index);\n```\n\n# .useId(number|undefined):\n* ???\n\n```shell\nconst inputId = useId(2);\n```\n\n`JSX: <input type=\"text\" id={inputId} />`\n`Pure: createElement(\"input\", {type: \"text\", id: inputId})`\n\n# .useRef(any|function):\n* ???\n\n```shell\nconst email = useRef(() => {\n\tlet name = \"boteasy.dom\";\n\treturn `${name}@example.com`;\n});\n```\n\n`JSX: <input type=\"email\" ref={email} />`\n`Pure: createElement(\"input\", {type: \"email\", ref: email})`\n\n`let yourEmail = email.value;`\n\n# .useHtml(selector, value):\n* This function serves to add or remove an element in the DOM\n\n```shell\nuseHtml(\"#root\", `<h1>Hello, world!</h1>`);\n```\n\n# .useAppend(selector, string, boolean|undefined):\n* ???\n\n```shell\nuseAppend(\"#root\", `<div>Text</div>`);\n```\n\n`Just inside the element, before its first child.`\n\n```shell\nuseAppend(\"#root\", `<div>Text</div>`, true);\n```\n\n`Just inside the element, after its last child.`\n\n# .useWait(bolean|string):\n* This function is for you to disable all elements;\n\n```shell\nuseWait(true);\n```\n\n```shell\nuseWait(false);\n```\n\n# .useProp(selectors, attribute, any):\n* This function is used to enable/disable elements or select an input type checkbox, for example;\n\n```shell\nuseProp(\"input, select\", \"disabled\", true);\n```\n\n```shell\nuseProp(\"input\", \"disabled\", false);\n```\n\n# .useRequest({}):\n* This function serves to perform AJAX requests;\n\n```shell\nuseRequest({\n\turl: \"https://www.example.com/api/\",\n\tmethod: \"GET\",\n\theaders: {},\n\tdata: {},\n\tdataType: \"json\",\n\tsuccess: () => {},\n\terror: () => {},\n\tfinally: () => {}\n});\n```\n\n# .useVibrate(number|number[]|undefined):\n* ???\n\n```shell\nuseVibrate(100);\n```\n\n`100ms`\n\n```shell\nuseVibrate([500, 110, 500, 110, 450, 110, 200, 110, 170, 40, 450, 110, 200, 110, 170, 40, 500]);\n```\n\n`starwars`\n\n```shell\nuseVibrate([150, 150, 150, 150, 75, 75, 150, 150, 150, 150, 450]);\n```\n\n`powerrangers`\n\n# .useClipboard(string, function|undefined):\n* This function serves to copy a text to a clipboard;\n\n```shell\nconst text = \"Just a test!\";\nuseClipboard(text, () => {\n\tconsole.info(\"Text copied to clipboard.\");\n});\n```\n\n# .useTwins(string|{}|[], string|{}|[]):\n* As the name says, this function is for you to compare if two objects or array are equal.\n\n```shell\nconst array = [\"boteasy\", \"dom\"];\nconst array2 = [\n\t\"boteasy\",\n\t\"dom\",\n\t\"version\": [\"latest\"]\n];\nuseTwins(array, array2);\n```\n\n# .useFloat(number|string, number):\n* ???\n\n```shell\nconst total = 100.123;\nuseFloat(total, 2);\n```\n\n# .useState(any|function):\n* This function is just for adding some local states.\n\n```shell\nconst [state, setState] = useState(9);\nsetState(prev => (prev + 1));\n```\n\n# .useEffect(function, []|undefined):\n* ???\n\n```shell\nlet name = \"boteasy\";\nconst boteasyTest = text => console.info(`Hello, ${text}!`);\nuseEffect(() => {\n\tboteasyTest(name);\n\t/**\n\t * TODO: Under Construction\n\t * this function is incomplete.\n\t*/\n\treturn () => console.info(\"Bye, world!\");\n}, [name]);\n```\n\n# .useStorage() => (string, any):\n* Manipulates: window.localStorage.\n\n```shell\nconst storage = useStorage();\n```\n\n`---`\n\n```shell\nstorage(\"theme\", () => {\n\tconst prefers = window.matchMedia(\"(prefers-color-scheme: dark)\").matches;\n\treturn prefers ? \"dark\" : \"light\"\n});\n```\n\n`set`\n\n```shell\nstorage(\"theme\");\n```\n\n`get`\n\n```shell\nstorage()(\"theme\");\n```\n\n`remove`\n\n# .useNavigate(number|undefined):\n* ???\n\n```shell\nconst navigate = useNavigate(1000);\n```\n\n`1000ms delay`\n\n# (string, boolean|undefined):\n\n```shell\nnavigate(\"/\");\n```\n\n```shell\nnavigate(\"login\", false);\n```\n\n```shell\nnavigate(\"https://www.example.com/\", false);\n```\n\n# .useScroll(..., object|undefined):\n* ???\n\n```shell\n/**\n * TODO: Under Construction\n * this function is incomplete.\n*/\nlet { x, y } useScroll(\"body\", { behavior: \"smooth\" });\n```\n\n# .flushAsync(function, any):\n* ???\n\n```shell\nflushAsync(event => {\n\tconsole.info(`Hello, ${event.name}!`);\n}, { name: \"Boteasy\" });\n```\n\n# .createRoot(container, object|bolean|undefined):\n* This function serves to create a route to Boteasy-dom, send the second parameter an object containing an intex with hydrate as true.\n\n```shell\nconst container = dom.querySelector(\"#root\");\nconst root = createRoot(container, {\n\thydrate: true,\n\tresponse: () => {\n\t\tconsole.info(\"rendered\");\n\t}\n});\n```\n\n* Render the element in the root;\n\n```shell\nconst element = <h1>Hello, world!</h1>;\nroot.render(element);\n```\n\n`<h1>Hello, world!</h1>`\n\n* Remove the element in the root;\n\n```shell\nroot.unmount();\n```\n\n# .hydrateRoot(container, component):\n* hydrate the element in the root;\n\n```shell\nconst name = \"Boteasy\";\nconst container = dom.querySelector(\"#root\");\nhydrateRoot(container, <h1>Hello, {name}.</h1>);\n```\n\n`<h1>Hello, Ronaldo S.</h1>`\n\n# .StrictMode():\n* ???\n\n```shell\nconst App = (\n\t<StrictMode>\n\t\t<h1>Hello, world!</h1>\n\t</StrictMode>\n);\n```\n\n# .createElement(any, null|object, any[]|undefined);\n* This function serves to create elements to be rendered by Boteasy-dom;\n\n```shell\ncreateElement(StrictMode, null,\n\tcreateElement(Fragment, null,\n\t\tcreateElement(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#000\", fontWeight: \"bold\"}\n\t\t})\n\t)\n);\n\n```\n\n`<input type=\"email\" className=\"boteasy\" style=\"color: #000;font-weight: bold\" />`\n\n# .cssClass(string|undefined):\n* This function is for you to add or remove multiple class on one or multiple elements;\n\n```shell\ncssClass(\"input, select\").toggle(\"boteasy, dom\");\n```\n\n```shell\nconst css = cssClass(\"input, select\");\n```\n\n```shell\ncss.add(\"boteasy, dom\");\n```\n\n```shell\ncss.remove(\"dom\");\n```\n\n```shell\ncss.toggle(\"dom\");\n```\n\n# .globalStyle(object):\n* ???\n\n```shell\nconst GlobalStyle = globalStyle({\n\tcolor: \"#000\",\n\tfontWeight: \"bold\"\n\tbackgroundColor: \"#fff8\"\n});\n```\n\n`<GlobalStyle />`\n\n# .cssStyled(object):\n* ???\n\n```shell\nconst css = cssStyled({\n\tcolor: \"#ff6347\",\n\tfontWeight: 600\n});\n```\n\n`<h1 className={css} />`\n\n# .styled(string, object):\n* ???\n\n```shell\nconst Style = cssStyled(\"boteasy-dom\", {\n\tcolor: \"#ff6347\",\n\tfontWeight: 600\n});\n```\n\n`<Style><h1>Hello, world!</h1></Style>`\n\n`final: <boteasy-dom class=\"jss-...\"><h1>Hello, world!</h1></boteasy-dom>`\n\n# .rgba(string, number|undefined):\n* This function is for you to convert a hex color to rgba!\n\n```shell\nrgba(\"#fff\", 0.4); \n```\n\n`rgba(255,255,255,0.4)`\n","licenseText":"MIT License\n\nCopyright (c) since 2020 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.","_id":"boteasy-dom@1.2.4-next-n7tax8","dist":{"shasum":"71da72750297ec382322432ecd7172e0046bc21a","integrity":"sha512-zugyJipB8BjFLCT8IVVMIdrwDPpPQAYfo1jjXv0wgIdG0bmlwHDoSQmTk5voU93wt1Cq7mPvaBJHJah3MiYtlg==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.4-next-n7tax8.tgz","fileCount":7,"unpackedSize":34024,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCUWCREunEAH9EI2/A5w6LBcVU/ICwk3f3RInWT+vyk8gIgNYM6bs113H/lxCxx9HtOxC/3Vi+ITQEmA9dncDqAz6s="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjVX/+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrdlg//avPF3yzwP/1SpJBwph4BrY7Yz4jTvu0urv3c9umoLJ+f+Mu0\r\nSK6AlQpPhZ4+sM7sLIgjiyCOrA1miH2zKivFfnAC0R1hXIRn9iWKUoXqIGv7\r\n5NaOlCOyzTQCbXwTQOh1jiiAPG5HVnBGLMd9s2QcGmmQpjyTwfI1LP+ioANt\r\nV2hey+p95XMSkQUHsqu3lLjbJElbQTI2UTW0eJc5KaBaHpYPlxxBTZny0psc\r\neFCw69WfIVIvitu9KC4WUAV4FPY0Gl0SqrHxCl42K7YEy0i59UBCUhlomnxU\r\nqyt85h1B6V+j987via6oChWZt9JFXZ2/yQUciCMOKZEZhy/sSOM7Wva/5Fhi\r\nFb8uNcgBOOP8QIkyGUsz3TgoFkr6TrtoUS9g6tjHfBeM1QPsi8epHYbuv10O\r\nayHDPzyPGlcPobGryr/IQ2ZDlnA27XfbmAKzuFTxzMFQycigdQA0tYxzfb/Y\r\nrEySYpDjrMs2mXEnUXu/uaUIzMrEomac50+XZSPsuZ2p6qcr5U8Ak13iYqA0\r\nHzSmsXtu0Ji8jUB/UndeiN6bQJyMWUScvj2Q0V/vYkZEQKMfEJ9Lx1FlyCzn\r\noGMx+fFX7m8/zIBrkBkAq2EGQExEig3knNCg5V1YGKQ3/Vy2ogtnErQzrI+x\r\nFN/roSLnxb99GTD9Yd9xnG58WrMXRMUBenk=\r\n=fQhS\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.4-next-n7tax8_1666547709806_0.7640910499373215"},"_hasShrinkwrap":false},"1.2.4-next-ep4euk0m5":{"name":"boteasy-dom","version":"1.2.4-next-ep4euk0m5","description":"This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.","license":"MIT","author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["react","router","boteasy-dom","boteasy","dom","rgb","JSX","jQuery","AJAX","storage","match","vibrate","vdom","components","front-end","framework","virtual dom","user interface","styled","css styled","styled agnostic","global style"],"main":"index.js","types":"index.d.ts","scripts":{},"engines":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"readmeFilename":"README.md","readme":"# [BoteasyDOM](https://boteasy.net/) &middot; [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/theronaldostar/boteasy-dom/blob/main/LICENSE)  [![npm version](https://img.shields.io/npm/v/boteasy-dom.svg?style=flat)](https://www.npmjs.com/package/boteasy-dom)  [![npm version](https://badge.fury.io/js/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)  [![Downloads](https://img.shields.io/npm/dm/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)\n\n* This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.\n---\n# How to use?\n\n```shell\nnpm i boteasy-dom\n```\n\n```shell\nyarn add boteasy-dom\n```\n\n# Quick use:\n\n```jsx\nimport { dom, useState, createRoot } from \"boteasy-dom\";\n\nconst App = () => {\n\tconst [count, setCount] = useState(0);\n\treturn (\n\t\t<>\n\t\t\t<h1>{count}</h1>\n\t\t\t<button onClick={() => setCount(prev => (prev + 1))}>Increment</button>\n\t\t</>\n\t);\n};\n\nconst container = dom.querySelector(\"#root\");\nconst root = createRoot(container);\nroot.render(<App />);\n```\n\n# Import:\n\n```shell\nimport BoteasyDOM from \"boteasy-dom\";\n/**\n * @jsx createElement\n * @jsxFrag Fragment\n * @jsxRuntime classic\n*/\nconst {  } = BoteasyDOM;\n```\n\n# .version:\n* A boteasy-dom version\n\n```shell\nconst ver = version;\n```\n\n# .dom:\n* The Document interface represents any web page loaded in the browser and serves as an entry point into the web page's content, which is the DOM tree\n\n```shell\nconst root = dom.querySelector(\"#root\");\n```\n\n# .Fragment:\n* Allows a component to return multiple elements grouped a list of children without adding extra nodes to the DOM\n\n```shell\n<>{/* ... */}</>\n```\n\n# .match(object, string|null):\n* This function is a direct alternative to \"switch ~ case\", and is based on the match function of the php language\n\n```shell\nconst index = null;\nmatch({\n\tfirst: \"boteasy\",\n\tlast: \"dom\",\n\tdefault: \"test\"\n}, index);\n```\n\n# .useId(number|undefined):\n* ???\n\n```shell\nconst inputId = useId(2);\n```\n\n`JSX: <input type=\"text\" id={inputId} />`\n\n`Pure: createElement(\"input\", {type: \"text\", id: inputId})`\n\n# .useRef(any|function):\n* ???\n\n```shell\nconst email = useRef(() => {\n\tlet name = \"boteasy.dom\";\n\treturn `${name}@example.com`;\n});\n```\n\n`JSX: <input type=\"email\" ref={email} />`\n\n`Pure: createElement(\"input\", {type: \"email\", ref: email})`\n\n`let yourEmail = email.value;`\n\n# .useHtml(selector, value):\n* This function serves to add or remove an element in the DOM\n\n```shell\nuseHtml(\"#root\", `<h1>Hello, world!</h1>`);\n```\n\n# .useAppend(selector, string, boolean|undefined):\n* ???\n\n```shell\nuseAppend(\"#root\", `<div>Text</div>`);\n```\n\n`Just inside the element, before its first child.`\n\n```shell\nuseAppend(\"#root\", `<div>Text</div>`, true);\n```\n\n`Just inside the element, after its last child.`\n\n# .useWait(bolean|string):\n* This function is for you to disable all elements;\n\n```shell\nuseWait(true);\n```\n\n```shell\nuseWait(false);\n```\n\n# .useProp(selectors, attribute, any):\n* This function is used to enable/disable elements or select an input type checkbox, for example;\n\n```shell\nuseProp(\"input, select\", \"disabled\", true);\n```\n\n```shell\nuseProp(\"input\", \"disabled\", false);\n```\n\n# .useRequest({}):\n* This function serves to perform AJAX requests;\n\n```shell\nuseRequest({\n\turl: \"https://www.example.com/api/\",\n\tmethod: \"GET\",\n\theaders: {},\n\tdata: {},\n\tdataType: \"json\",\n\tsuccess: () => {},\n\terror: () => {},\n\tfinally: () => {}\n});\n```\n\n# .useVibrate(number|number[]|undefined):\n* ???\n\n```shell\nuseVibrate(100);\n```\n\n`100ms`\n\n```shell\nuseVibrate([500, 110, 500, 110, 450, 110, 200, 110, 170, 40, 450, 110, 200, 110, 170, 40, 500]);\n```\n\n`starwars`\n\n```shell\nuseVibrate([150, 150, 150, 150, 75, 75, 150, 150, 150, 150, 450]);\n```\n\n`powerrangers`\n\n# .useClipboard(string, function|undefined):\n* This function serves to copy a text to a clipboard;\n\n```shell\nconst text = \"Just a test!\";\nuseClipboard(text, () => {\n\tconsole.info(\"Text copied to clipboard.\");\n});\n```\n\n# .useTwins(string|{}|[], string|{}|[]):\n* As the name says, this function is for you to compare if two objects or array are equal.\n\n```shell\nconst array = [\"boteasy\", \"dom\"];\nconst array2 = [\n\t\"boteasy\",\n\t\"dom\",\n\t\"version\": [\"latest\"]\n];\nuseTwins(array, array2);\n```\n\n# .useFloat(number|string, number):\n* ???\n\n```shell\nconst total = 100.123;\nuseFloat(total, 2);\n```\n\n# .useState(any|function):\n* This function is just for adding some local states.\n\n```shell\nconst [state, setState] = useState(9);\nsetState(prev => (prev + 1));\n```\n\n# .useEffect(function, []|undefined):\n* ???\n\n```shell\nlet name = \"boteasy\";\nconst boteasyTest = text => console.info(`Hello, ${text}!`);\nuseEffect(() => {\n\tboteasyTest(name);\n\t/**\n\t * TODO: Under Construction\n\t * this function is incomplete.\n\t*/\n\treturn () => console.info(\"Bye, world!\");\n}, [name]);\n```\n\n# .useStorage() => (string, any):\n* Manipulates: window.localStorage.\n\n```shell\nconst storage = useStorage();\n```\n\n`---`\n\n```shell\nstorage(\"theme\", () => {\n\tconst prefers = window.matchMedia(\"(prefers-color-scheme: dark)\").matches;\n\treturn prefers ? \"dark\" : \"light\"\n});\n```\n\n`set`\n\n```shell\nstorage(\"theme\");\n```\n\n`get`\n\n```shell\nstorage()(\"theme\");\n```\n\n`remove`\n\n# .useNavigate(number|undefined):\n* ???\n\n```shell\nconst navigate = useNavigate(1000);\n```\n\n`1000ms delay`\n\n# (string, boolean|undefined):\n\n`Send the second parameter as false, to removes the current page from the session history and navigates to the given URL.`\n\n```shell\nnavigate(\"/\");\n```\n\n```shell\nnavigate(\"login\", false);\n```\n\n```shell\nnavigate(\"https://www.example.com/\", false);\n```\n\n# .useScroll(..., object|undefined):\n* ???\n\n```shell\n/**\n * TODO: Under Construction\n * this function is incomplete.\n*/\nlet { x, y } useScroll(\"body\", { behavior: \"smooth\" });\n```\n\n# .flushAsync(function, any):\n* ???\n\n```shell\nflushAsync(event => {\n\tconsole.info(`Hello, ${event.name}!`);\n}, { name: \"Boteasy\" });\n```\n\n# .createRoot(container, object|bolean|undefined):\n* This function serves to create a route to Boteasy-dom, send the second parameter an object containing an intex with hydrate as true.\n\n```shell\nconst container = dom.querySelector(\"#root\");\nconst root = createRoot(container, {\n\thydrate: true,\n\tresponse: () => {\n\t\tconsole.info(\"rendered\");\n\t}\n});\n```\n\n* Render the element in the root;\n\n```shell\nconst element = <h1>Hello, world!</h1>;\nroot.render(element);\n```\n\n`<h1>Hello, world!</h1>`\n\n* Remove the element in the root;\n\n```shell\nroot.unmount();\n```\n\n# .hydrateRoot(container, component):\n* hydrate the element in the root;\n\n```shell\nconst name = \"Boteasy\";\nconst container = dom.querySelector(\"#root\");\nhydrateRoot(container, <h1>Hello, {name}.</h1>);\n```\n\n`<h1>Hello, Ronaldo S.</h1>`\n\n# .StrictMode():\n* ???\n\n```shell\nconst App = (\n\t<StrictMode>\n\t\t<h1>Hello, world!</h1>\n\t</StrictMode>\n);\n```\n\n# .createElement(any, null|object, any[]|undefined);\n* This function serves to create elements to be rendered by Boteasy-dom;\n\n```shell\ncreateElement(StrictMode, null,\n\tcreateElement(Fragment, null,\n\t\tcreateElement(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#000\", fontWeight: \"bold\"}\n\t\t})\n\t)\n);\n```\n\n`<input type=\"email\" class=\"boteasy\" style=\"color: #000;font-weight: bold\">`\n\n# .cssClass(string|undefined):\n* This function is for you to add or remove multiple class on one or multiple elements;\n\n```shell\ncssClass(\"input, select\").toggle(\"boteasy, dom\");\n```\n\n```shell\nconst css = cssClass(\"input, select\");\n```\n\n```shell\ncss.add(\"boteasy, dom\");\n```\n\n```shell\ncss.remove(\"dom\");\n```\n\n```shell\ncss.toggle(\"dom\");\n```\n\n# .globalStyle(object):\n* ???\n\n```shell\nconst GlobalStyle = globalStyle({\n\tcolor: \"#000\",\n\tfontWeight: \"bold\"\n\tbackgroundColor: \"#fff8\"\n});\n```\n\n`JSX: <GlobalStyle />`\n\n`Pure: GlobalStyle()`\n\n# .cssStyled(object):\n* ???\n\n```shell\nconst css = cssStyled({\n\tcolor: \"#ff6347\",\n\tfontWeight: 600\n});\n```\n\n`JSX: <h1 class={css} />`\n\n`Pure: createElement(\"h1\", {className: css});`\n\n# .styled(string, object):\n* ???\n\n```shell\nconst Style = cssStyled(\"boteasy-dom\", {\n\tcolor: \"#ff6347\",\n\tfontWeight: 600\n});\n```\n\n`JSX: <Style><h1>Hello, world!</h1></Style>`\n\n`Pure: createElement(Style, null, createElement(\"h1\", null, \"Hello, world!\"));`\n\n`final: <boteasy-dom class=\"jss-...\"><h1>Hello, world!</h1></boteasy-dom>`\n\n# .rgba(string, number|undefined):\n* This function is for you to convert a hex color to rgba!\n\n```shell\nrgba(\"#fff\", 0.4); \n```\n\n`rgba(255,255,255,0.4)`","licenseText":"MIT License\n\nCopyright (c) since 2020 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"boteasy-dom@1.2.4-next-ep4euk0m5","dist":{"shasum":"4eca2d35101b8557897b7b4a6e6abfd25eece412","integrity":"sha512-w44pop97up+4CAjU6ka32BmJ4tpmBq79WrtmikiAb3ciNTQc3uMOAocWeCYCoyG797o4J2sKjdyn0xFA04AZrg==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.4-next-ep4euk0m5.tgz","fileCount":7,"unpackedSize":34335,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBk5GerANhDFxzzChpQAcpMJrgUlHkbAWveTmdA4XUBiAiBoqEwFlFQPFAbGz3awRGYF4ZRjU3F4gIfSbigVcvXaew=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjVYhxACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqBehAAhuJaaWt7OiyiVxLaJt6yK4Ci+deZ6XLwtFSgQtT9oGVZGW/O\r\n+BQusxRFHgw2oMUyBk5R+KV5XC9/F1yPr+MSnz9oZiphKSs4GueYwMWtSHpc\r\n6erFmCSSJA0+zU61DkYK7UZ50hhCO/RZhEdPpAsRHmSXlC/viyo4EUX7z4lC\r\n160+jIzX4djK7wnGdB6o49pH1dHQanY/CsDkUcWO7ujIchbyxRDqLAOKuu0P\r\n3EabBFmx+IhOwdyl+fySvD46zVSFC18n7jFLh28TAOvZKjtB67sEfgWiaXnG\r\njeUPyHLDdOJOWPwxaOam0YdVglVU/jOFXRBEoDZTG0U+Zb1k22l8N+u0Q7Ye\r\nsIcVNh5M45TOvAspMN9a6e9DaMtZ4ruj+7+2ieAe6q9uMUdK91dzDvtrzQVO\r\nWXpGTn7CdIykjaLEDqRoywAPXvyxEL7VsMzVnfoCBRdKYYaHeH1yrIpjUe9c\r\n4AgSqZLLq+wbQGhlzQ+uZ/WCgqlDg/LgLTmGldeimwKUEqTNtlxjBhSF0EyL\r\n9TOOmVE8PZop3W4j6MZrAlP8MP/jAMaB8L4hR0rYec8j9mBuImSOk83rheNq\r\n8afP7l8SxCLpSCbvcDr2rg7ZYYIayBq9IcBJlnXEO1837RrFIgSSujNTBrqX\r\n2jpRWomOe2iD5usAXMkqWqGmSB6eH02RNEY=\r\n=M56j\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.4-next-ep4euk0m5_1666549873251_0.46173702286505414"},"_hasShrinkwrap":false},"1.2.4-next-2sb8frif":{"name":"boteasy-dom","version":"1.2.4-next-2sb8frif","description":"This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.","license":"MIT","author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["react","router","boteasy-dom","boteasy","dom","rgb","JSX","jQuery","AJAX","storage","match","vibrate","vdom","components","front-end","framework","virtual dom","user interface","styled","css styled","styled agnostic","global style"],"main":"index.js","types":"index.d.ts","scripts":{},"engines":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"readmeFilename":"README.md","readme":"# [BoteasyDOM](https://boteasy.net/) &middot; [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/theronaldostar/boteasy-dom/blob/main/LICENSE)  [![npm version](https://img.shields.io/npm/v/boteasy-dom.svg?style=flat)](https://www.npmjs.com/package/boteasy-dom)  [![npm version](https://badge.fury.io/js/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)  [![Downloads](https://img.shields.io/npm/dm/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)\n\n* This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.\n---\n# How to use?\n\n```shell\nnpm i boteasy-dom\n```\n\n```shell\nyarn add boteasy-dom\n```\n\n# Quick use:\n\n```jsx\nimport { dom, useState, createRoot } from \"boteasy-dom\";\n\nconst App = () => {\n\tconst [count, setCount] = useState(0);\n\treturn (\n\t\t<>\n\t\t\t<h1>{count}</h1>\n\t\t\t<button onClick={() => setCount(prev => (prev + 1))}>Increment</button>\n\t\t</>\n\t);\n};\n\nconst container = dom.querySelector(\"#root\");\nconst root = createRoot(container);\nroot.render(<App />);\n```\n\n# Import:\n\n```shell\nimport BoteasyDOM from \"boteasy-dom\";\n/**\n * @jsx jsxDEV\n * @jsxFrag Fragment\n * @jsxRuntime classic\n*/\nconst {  } = BoteasyDOM;\n```\n\n# .theme:\n* ???\n\n```shell\nconst scheme = theme;\n```\n\n# .version:\n* A boteasy-dom version\n\n```shell\nconst ver = version;\n```\n\n# .dom:\n* The Document interface represents any web page loaded in the browser and serves as an entry point into the web page's content, which is the DOM tree\n\n```shell\nconst root = dom.querySelector(\"#root\");\n```\n\n# .Fragment:\n* Allows a component to return multiple elements grouped a list of children without adding extra nodes to the DOM\n\n```shell\n<>{/* ... */}</>\n```\n\n# .match(object, string|null):\n* This function is a direct alternative to \"switch ~ case\", and is based on the match function of the php language\n\n```shell\nconst index = null;\nmatch({\n\tfirst: \"boteasy\",\n\tlast: \"dom\",\n\tdefault: \"test\"\n}, index);\n```\n\n# .useId(number|undefined):\n* ???\n\n```shell\nconst inputId = useId(2);\n```\n\n`<input type=\"text\" id={inputId} />`\n\n`jsxDEV(\"input\", {type: \"text\", id: inputId})`\n\n# .useRef(any|function):\n* ???\n\n```shell\nconst email = useRef(() => {\n\tlet name = \"boteasy.dom\";\n\treturn `${name}@example.com`;\n});\n```\n\n`<input type=\"email\" ref={email} />`\n\n`jsxDEV(\"input\", {type: \"email\", ref: email})`\n\n`let yourEmail = email.value;`\n\n# .useHtml(selector, value):\n* This function serves to add or remove an element in the DOM\n\n```shell\nuseHtml(\"#root\", `<h1>Hello, world!</h1>`);\n```\n\n# .useAppend(selector, string, boolean|undefined):\n* ???\n\n```shell\nuseAppend(\"#root\", `<div>Text</div>`);\n```\n\n`Just inside the element, before its first child.`\n\n```shell\nuseAppend(\"#root\", `<div>Text</div>`, true);\n```\n\n`Just inside the element, after its last child.`\n\n# .useWait(bolean|string):\n* This function is for you to disable all elements;\n\n```shell\nuseWait(true);\n```\n\n```shell\nuseWait(false);\n```\n\n# .useProp(selectors, attribute, any):\n* This function is used to enable/disable elements or select an input type checkbox, for example;\n\n```shell\nuseProp(\"input, select\", \"disabled\", true);\n```\n\n```shell\nuseProp(\"input\", \"disabled\", false);\n```\n\n# .useRequest({}):\n* This function serves to perform AJAX requests;\n\n```shell\nuseRequest({\n\turl: \"https://www.example.com/api/\",\n\tmethod: \"GET\",\n\theaders: {},\n\tdata: {},\n\tdataType: \"json\",\n\tsuccess: () => {},\n\terror: () => {},\n\tfinally: () => {}\n});\n```\n\n# .useVibrate(number|number[]|undefined):\n* ???\n\n```shell\nuseVibrate(100);\n```\n\n`100ms`\n\n```shell\nuseVibrate([500, 110, 500, 110, 450, 110, 200, 110, 170, 40, 450, 110, 200, 110, 170, 40, 500]);\n```\n\n`starwars`\n\n```shell\nuseVibrate([150, 150, 150, 150, 75, 75, 150, 150, 150, 150, 450]);\n```\n\n`powerrangers`\n\n# .useClipboard(string, function|undefined):\n* This function serves to copy a text to a clipboard;\n\n```shell\nconst text = \"Just a test!\";\nuseClipboard(text, () => {\n\tconsole.info(\"Text copied to clipboard.\");\n});\n```\n\n# .useTwins(string|{}|[], string|{}|[]):\n* As the name says, this function is for you to compare if two objects or array are equal.\n\n```shell\nconst array = [\"boteasy\", \"dom\"];\nconst array2 = [\n\t\"boteasy\",\n\t\"dom\",\n\t\"version\": [\"latest\"]\n];\nuseTwins(array, array2);\n```\n\n# .useFloat(number|string, number):\n* ???\n\n```shell\nconst total = 100.123;\nuseFloat(total, 2);\n```\n\n# .useState(any|function):\n* This function is just for adding some local states.\n\n```shell\nconst [state, setState] = useState(9);\nsetState(prev => (prev + 1));\n```\n\n# .useEffect(function, []|undefined):\n* ???\n\n```shell\nlet name = \"boteasy\";\nconst boteasyTest = text => console.info(`Hello, ${text}!`);\nuseEffect(() => {\n\tboteasyTest(name);\n\t/**\n\t * TODO: Under Construction\n\t * this function is incomplete.\n\t*/\n\treturn () => console.info(\"Bye, world!\");\n}, [name]);\n```\n\n# .useStorage() => (string, any):\n* Manipulates: window.localStorage.\n\n```shell\nconst storage = useStorage();\n```\n\n```shell\nstorage(\"theme\", () => {\n\tconst prefers = window.matchMedia(\"(prefers-color-scheme: dark)\").matches;\n\treturn prefers ? \"dark\" : \"light\"\n});\n```\n\n`set`\n\n```shell\nstorage(\"theme\");\n```\n\n`get`\n\n```shell\nstorage()(\"theme\");\n```\n\n`remove`\n\n```shell\nstorage()();\n```\n\n`clear`\n\n# .useNavigate(number|undefined):\n* ???\n\n```shell\nconst navigate = useNavigate(1000);\n```\n\n`1000ms delay`\n\n# (string, boolean|undefined):\n\n`Send the second parameter as false, to removes the current page from the session history and navigates to the given URL.`\n\n```shell\nnavigate(\"/\");\n```\n\n```shell\nnavigate(\"login\", false);\n```\n\n```shell\nnavigate(\"https://www.example.com/\", false);\n```\n\n# .useScroll(..., object|undefined):\n* ???\n\n```shell\n/**\n * TODO: Under Construction\n * this function is incomplete.\n*/\nlet { x, y } useScroll(\"body\", { behavior: \"smooth\" });\n```\n\n# .flushAsync(function, any):\n* ???\n\n```shell\nflushAsync(event => {\n\tconsole.info(`Hello, ${event.name}!`);\n}, { name: \"Boteasy\" });\n```\n\n# .createRoot(container, object|bolean|undefined):\n* This function serves to create a route to Boteasy-dom, send the second parameter an object containing an intex with hydrate as true.\n\n```shell\nconst container = dom.querySelector(\"#root\");\nconst root = createRoot(container, {\n\thydrate: true,\n\tresponse: () => {\n\t\tconsole.info(\"rendered\");\n\t}\n});\n```\n\n* Render the element in the root;\n\n```shell\nconst element = <h1>Hello, world!</h1>;\nroot.render(element);\n```\n\n`<h1>Hello, world!</h1>`\n\n* Remove the element in the root;\n\n```shell\nroot.unmount();\n```\n\n# .hydrateRoot(container, component):\n* hydrate the element in the root;\n\n```shell\nconst name = \"Boteasy\";\nconst container = dom.querySelector(\"#root\");\nhydrateRoot(container, <h1>Hello, {name}.</h1>);\n```\n\n`<h1>Hello, Ronaldo S.</h1>`\n\n# .StrictMode():\n* ???\n\n```shell\nconst App = (\n\t<StrictMode>\n\t\t<h1>Hello, world!</h1>\n\t</StrictMode>\n);\n```\n\n# .StyleProvider():\n* ???\n\n```shell\nconst provider = {color: \"#000\", fontWeight: \"bold\"};\nconst App = (\n\t<StyleProvider theme={provider}>\n\t\t<>{...}</>\n\t</StyleProvider>\n);\n```\n\n# .createElement(any, null|object, any[]|undefined):\n# .jsxDEV(any, null|object, any[]|undefined):\n* This function serves to create elements to be rendered by Boteasy-dom;\n\n```shell\ncreateElement(StrictMode, null,\n\tcreateElement(Fragment, null,\n\t\tcreateElement(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#000\", fontWeight: \"bold\"}\n\t\t})\n\t)\n);\n```\n\n```shell\njsxDEV(StrictMode, null,\n\tjsxDEV(Fragment, null,\n\t\tjsxDEV(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#000\", fontWeight: \"bold\"}\n\t\t})\n\t)\n);\n```\n\n`Both methods are the same.`\n\n`<input type=\"email\" class=\"boteasy\" style=\"color: #000;font-weight: bold\">`\n\n# .cssClass(string|undefined):\n* This function is for you to add or remove multiple class on one or multiple elements;\n\n```shell\ncssClass(\"input, select\").toggle(\"boteasy, dom\");\n```\n\n```shell\nconst css = cssClass(\"input, select\");\n```\n\n```shell\ncss.add(\"boteasy, dom\");\n```\n\n```shell\ncss.remove(\"dom\");\n```\n\n```shell\ncss.toggle(\"dom\");\n```\n\n# .globalStyle(object):\n* ???\n\n```shell\nconst GlobalStyle = globalStyle({\n\tcolor: \"#000\",\n\tfontWeight: \"bold\"\n\tbackgroundColor: \"#fff8\"\n});\n```\n\n`<GlobalStyle />`\n\n`GlobalStyle()`\n\n# .cssStyled(object):\n* ???\n\n```shell\nconst css = cssStyled({\n\tcolor: \"#ff6347\",\n\tfontWeight: 600\n});\n```\n\n`<h1 class={css} />`\n\n`jsxDEV(\"h1\", {className: css});`\n\n# .styled(string, object):\n* ???\n\n```shell\nconst Style = cssStyled(\"boteasy-dom\", {\n\tcolor: \"#ff6347\",\n\tfontWeight: 600\n});\n```\n\n`<Style><h1>Hello, world!</h1></Style>`\n\n`jsxDEV(Style, null, jsxDEV(\"h1\", null, \"Hello, world!\"));`\n\n`final: <boteasy-dom class=\"jss-...\"><h1>Hello, world!</h1></boteasy-dom>`\n\n# .rgba(string, number|undefined):\n* This function is for you to convert a hex color to rgba!\n\n```shell\nrgba(\"#fff\", 0.4); \n```\n\n`rgba(255,255,255,0.4)`","licenseText":"MIT License\n\nCopyright (c) since 2020 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.","_id":"boteasy-dom@1.2.4-next-2sb8frif","dist":{"shasum":"4953ef045410121e75b9f07310343ac4ac7c63a7","integrity":"sha512-2IJOScyvEcNta7BG+X7QeD1tt9uWlQzJMHzQSiBXDkkxEl1PPmqkfzy1LjkM2ChwXJ0SBUQ1/3F9I+8VPr20uQ==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.4-next-2sb8frif.tgz","fileCount":7,"unpackedSize":35624,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCuD7gphDvNVf/vxzN08nTqUW9F9OZzYeel+dboe5TpgQIhANY2a6w8l1racxglCSNh3cdRE6Uw2Ds99+0gRcAZnrjq"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjWATRACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo8CRAAiM0WcUwqNO/YzsENJkpeFxIthlbPAnayIZJviI7DoYxhPCQj\r\nxyC9FBpfJWSB9U/KphP2jibNvH/6Hu264R2RIXk/y5X8ZembpuS8K/ccy8xP\r\netFc93d/zPse9oIjUDugXYFCy5tYGxVzcr4kJBn/Zy36MAKIEWRx25UZDZz2\r\nzpSS6jVT3JVxHQslkyU9FdfbxPDhuAlZXIPJ+3GwBVY9t1se+dtlboyBsHtL\r\nNLEv4BpoSZ+vuE0q+bxs6ZfVF2f3tOdHGPzJhIdRw9opCYH659N5pc8JxWxe\r\nXJV0W7dziZMmz3cfgawvuG+E8wm5ly5e4kBmJLlNey5+74GCuOJ6Jn6n3ZKJ\r\nCJhukfZrDKskYzFBWNViA80sLiKrEypbuNeltSPewWIWN+yUe+p6TQjIwZig\r\nANjlNd9q4zRRv/gX2NbCbJeRQBma0GhFbwV/eGwKdR+psUocnEN9MFcaS1jz\r\n3wimCVktCNYs9Cytw0KkFVxMAf07FTjlpY9NGthsdyikXvC2+XXh4FzsP7jz\r\nPFQnnK5OOnIJzZ1XXwgTf/g48dxD8+xID658o8PTCaTtZnsqtW4gDT1ZWd++\r\ncydxFs+iqm6iqp5pxdUQ/z/EMVZqus1jrlbVdS2JyxOeyT2BlsTFbc/bzXNI\r\npm08IUJ6vLhz1LpsnWSGKshJrkrs4GuwiQ0=\r\n=G1nc\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.4-next-2sb8frif_1666712784579_0.5164966305591643"},"_hasShrinkwrap":false},"1.2.4-beta-rslde3ey":{"name":"boteasy-dom","version":"1.2.4-beta-rslde3ey","description":"This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.","license":"MIT","author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["react","router","boteasy-dom","boteasy","dom","rgb","JSX","jQuery","AJAX","storage","match","vibrate","vdom","components","front-end","framework","virtual dom","user interface","styled","css styled","styled agnostic","global style"],"main":"index.js","types":"index.d.ts","scripts":{},"engines":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"readmeFilename":"README.md","readme":"# [BoteasyDOM](https://boteasy.net/) &middot; [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/theronaldostar/boteasy-dom/blob/main/LICENSE)  [![npm version](https://img.shields.io/npm/v/boteasy-dom.svg?style=flat)](https://www.npmjs.com/package/boteasy-dom)  [![npm version](https://badge.fury.io/js/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)  [![Downloads](https://img.shields.io/npm/dm/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)\n\n* This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.\n---\n# How to use?\n\n```shell\nnpm i boteasy-dom\n```\n\n```shell\nyarn add boteasy-dom\n```\n\n# Quick use:\n\n```jsx\nimport { dom, useState, createRoot } from \"boteasy-dom\";\n\nconst App = () => {\n\tconst [count, setCount] = useState(0);\n\treturn (\n\t\t<>\n\t\t\t<h1>{count}</h1>\n\t\t\t<button onClick={() => setCount(prev => (prev + 1))}>Increment</button>\n\t\t</>\n\t);\n};\n\nconst container = dom.querySelector(\"#root\");\nconst root = createRoot(container);\nroot.render(<App />);\n```\n\n# Import:\n\n```shell\nimport BoteasyDOM from \"boteasy-dom\";\n/**\n * @jsx jsxDEV\n * @jsxFrag Fragment\n * @jsxRuntime classic\n*/\nconst {  } = BoteasyDOM;\n```\n\n# .theme:\n* ???\n\n```shell\nconst scheme = theme;\n```\n\n# .version:\n* A boteasy-dom version\n\n```shell\nconst ver = version;\n```\n\n# .dom:\n* The Document interface represents any web page loaded in the browser and serves as an entry point into the web page's content, which is the DOM tree\n\n```shell\nconst root = dom.querySelector(\"#root\");\n```\n\n# .Fragment:\n* Allows a component to return multiple elements grouped a list of children without adding extra nodes to the DOM\n\n```shell\n<>{/* ... */}</>\n```\n\n# .match(object, string|null):\n* This function is a direct alternative to \"switch ~ case\", and is based on the match function of the php language\n\n```shell\nconst index = null;\nmatch({\n\tfirst: \"boteasy\",\n\tlast: \"dom\",\n\tdefault: \"test\"\n}, index);\n```\n\n# .useId(number|undefined):\n* ???\n\n```shell\nconst inputId = useId(2);\n```\n\n`<input type=\"text\" id={inputId} />`\n\n`jsxDEV(\"input\", {type: \"text\", id: inputId})`\n\n# .useRef(any|function):\n* ???\n\n```shell\nconst email = useRef(() => {\n\tlet name = \"boteasy.dom\";\n\treturn `${name}@example.com`;\n});\n```\n\n`<input type=\"email\" ref={email} />`\n\n`jsxDEV(\"input\", {type: \"email\", ref: email})`\n\n`let yourEmail = email.value;`\n\n# .useHtml(selector, value):\n* This function serves to add or remove an element in the DOM\n\n```shell\nuseHtml(\"#root\", `<h1>Hello, world!</h1>`);\n```\n\n# .useAppend(selector, string, boolean|undefined):\n* ???\n\n```shell\nuseAppend(\"#root\", `<div>Text</div>`);\n```\n\n`Just inside the element, before its first child.`\n\n```shell\nuseAppend(\"#root\", `<div>Text</div>`, true);\n```\n\n`Just inside the element, after its last child.`\n\n# .useWait(bolean|string):\n* This function is for you to disable all elements;\n\n```shell\nuseWait(true);\n```\n\n```shell\nuseWait(false);\n```\n\n# .useProp(selectors, attribute, any):\n* This function is used to enable/disable elements or select an input type checkbox, for example;\n\n```shell\nuseProp(\"input, select\", \"disabled\", true);\n```\n\n```shell\nuseProp(\"input\", \"disabled\", false);\n```\n\n# .useRequest({}):\n* This function serves to perform AJAX requests;\n\n```shell\nuseRequest({\n\turl: \"https://www.example.com/api/\",\n\tmethod: \"GET\",\n\theaders: {},\n\tdata: {},\n\tdataType: \"json\",\n\tsuccess: () => {},\n\terror: () => {},\n\tfinally: () => {}\n});\n```\n\n# .useVibrate(number|number[]|undefined):\n* ???\n\n```shell\nuseVibrate(100);\n```\n\n`100ms`\n\n```shell\nuseVibrate([500, 110, 500, 110, 450, 110, 200, 110, 170, 40, 450, 110, 200, 110, 170, 40, 500]);\n```\n\n`starwars`\n\n```shell\nuseVibrate([150, 150, 150, 150, 75, 75, 150, 150, 150, 150, 450]);\n```\n\n`powerrangers`\n\n# .useClipboard(string, function|undefined):\n* This function serves to copy a text to a clipboard;\n\n```shell\nconst text = \"Just a test!\";\nuseClipboard(text, () => {\n\tconsole.info(\"Text copied to clipboard.\");\n});\n```\n\n# .isObj(any):\n* ???\n\n```shell\nconst is = isObj({ name: \"Boteasy\" });\n```\n\n# .useTwins(string|{}|[], string|{}|[]):\n* As the name says, this function is for you to compare if two objects or array are equal.\n\n```shell\nconst array = [\"boteasy\", \"dom\"];\nconst array2 = [\n\t\"boteasy\",\n\t\"dom\",\n\t\"version\": [\"latest\"]\n];\nuseTwins(array, array2);\n```\n\n# .useFloat(number|string, number):\n* ???\n\n```shell\nconst total = 100.123;\nuseFloat(total, 2);\n```\n\n# .useState(any|function):\n* This function is just for adding some local states.\n\n```shell\nconst [state, setState] = useState(9);\nsetState(prev => (prev + 1));\n```\n\n# .useEffect(function, []|undefined):\n* ???\n\n```shell\nlet name = \"boteasy\";\nconst boteasyTest = text => console.info(`Hello, ${text}!`);\nuseEffect(() => {\n\tboteasyTest(name);\n\t/**\n\t * TODO: Under Construction\n\t * this function is incomplete.\n\t*/\n\treturn () => console.info(\"Bye, world!\");\n}, [name]);\n```\n\n# .useStorage():\n* Manipulates: window.localStorage.\n\n```shell\nconst storage = useStorage();\n```\n\n# (string, any|function):\n\n```shell\nstorage(\"theme\", () => {\n\tconst prefers = window.matchMedia(\"(prefers-color-scheme: dark)\").matches;\n\treturn prefers ? \"dark\" : \"light\"\n});\n```\n\n`set`\n\n```shell\nstorage(\"theme\");\n```\n\n`get`\n\n```shell\nstorage()(\"theme\");\n```\n\n`remove`\n\n```shell\nstorage()();\n```\n\n`clear`\n\n# .useNavigate(number|undefined):\n* ???\n\n```shell\nconst navigate = useNavigate(1000);\n```\n\n`1000ms delay`\n\n# (string, boolean|undefined):\n\n`Send the second parameter as false, to removes the current page from the session history and navigates to the given URL.`\n\n```shell\nnavigate(\"/\");\n```\n\n```shell\nnavigate(\"login\", false);\n```\n\n```shell\nnavigate(\"https://www.example.com/\", false);\n```\n\n# .useScroll(..., object|undefined):\n* ???\n\n```shell\n/**\n * TODO: Under Construction\n * this function is incomplete.\n*/\nlet { x, y } useScroll(\"body\", { behavior: \"smooth\" });\n```\n\n# .flushAsync(function, any):\n* ???\n\n```shell\nflushAsync(event => {\n\tconsole.info(`Hello, ${event.name}!`);\n}, { name: \"Boteasy\" });\n```\n\n# .createRoot(container, object|bolean|undefined):\n* This function serves to create a route to Boteasy-dom, send the second parameter an object containing an intex with hydrate as true.\n\n```shell\nconst container = dom.querySelector(\"#root\");\nconst root = createRoot(container, {\n\thydrate: true,\n\tresponse: () => {\n\t\tconsole.info(\"rendered\");\n\t}\n});\n```\n\n* Render the element in the root;\n\n```shell\nconst element = <h1>Hello, world!</h1>;\nroot.render(element);\n```\n\n`<h1>Hello, world!</h1>`\n\n* Remove the element in the root;\n\n```shell\nroot.unmount();\n```\n\n# .hydrateRoot(container, component):\n* hydrate the element in the root;\n\n```shell\nconst name = \"Boteasy\";\nconst container = dom.querySelector(\"#root\");\nhydrateRoot(container, <h1>Hello, {name}.</h1>);\n```\n\n`<h1>Hello, Ronaldo S.</h1>`\n\n# .StrictMode():\n* ???\n\n```shell\nconst App = (\n\t<StrictMode>\n\t\t<h1>Hello, world!</h1>\n\t</StrictMode>\n);\n```\n\n# .StyleProvider({ theme: object }|undefined):\n* ???\n\n```shell\nconst provider = {color: \"#000\", fontWeight: \"bold\"};\nconst App = (\n\t<StyleProvider theme={provider}>\n\t\t<>{...}</>\n\t</StyleProvider>\n);\n```\n\n# .createElement(any, null|object, any[]|undefined):\n# .jsxDEV(any, null|object, any[]|undefined):\n* This function serves to create elements to be rendered by Boteasy-dom;\n\n```shell\ncreateElement(StrictMode, null,\n\tcreateElement(Fragment, null,\n\t\tcreateElement(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#000\", fontWeight: \"bold\"}\n\t\t})\n\t)\n);\n```\n\n```shell\njsxDEV(StrictMode, null,\n\tjsxDEV(Fragment, null,\n\t\tjsxDEV(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#000\", fontWeight: \"bold\"}\n\t\t})\n\t)\n);\n```\n\n`Both methods are the same.`\n\n`<input type=\"email\" class=\"boteasy\" style=\"color: #000;font-weight: bold\">`\n\n# .cssClass(string|undefined):\n* This function is for you to add or remove multiple class on one or multiple elements;\n\n```shell\ncssClass(\"input, select\").toggle(\"boteasy, dom\");\n```\n\n```shell\nconst css = cssClass(\"input, select\");\n```\n\n```shell\ncss.add(\"boteasy, dom\");\n```\n\n```shell\ncss.remove(\"dom\");\n```\n\n```shell\ncss.toggle(\"dom\");\n```\n\n# .globalStyle(object):\n* ???\n\n```shell\nconst GlobalStyle = globalStyle({\n\tcolor: \"#000\",\n\tfontWeight: \"bold\"\n\tbackgroundColor: \"#fff8\"\n});\n```\n\n`<GlobalStyle />`\n\n`GlobalStyle()`\n\n# .cssStyled(object):\n* ???\n\n```shell\nconst css = cssStyled({\n\tcolor: \"#ff6347\",\n\tfontWeight: 600\n});\n```\n\n`<h1 class={css} />`\n\n`jsxDEV(\"h1\", {className: css});`\n\n# .styled(string, object):\n* ???\n\n```shell\nconst Style = cssStyled(\"boteasy-dom\", {\n\tcolor: \"#ff6347\",\n\tfontWeight: 600\n});\n```\n\n`<Style><h1>Hello, world!</h1></Style>`\n\n`jsxDEV(Style, null, jsxDEV(\"h1\", null, \"Hello, world!\"));`\n\n`final: <boteasy-dom class=\"jss-...\"><h1>Hello, world!</h1></boteasy-dom>`\n\n# .rgba(string, number|undefined):\n* This function is for you to convert a hex color to rgba!\n\n```shell\nrgba(\"#fff\", 0.4); \n```\n\n`rgba(255,255,255,0.4)`","licenseText":"MIT License\n\nCopyright (c) since 2020 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"boteasy-dom@1.2.4-beta-rslde3ey","dist":{"shasum":"292e24833bde8857fc50f5788a399e705d72ee14","integrity":"sha512-L/Q1b6wXm52NYO+4lT7+XdC4tnXBw1YiZH29GlfJV63XQI2TrNzQflZu58wRltylj1ujdjaYL/6FYFYG9zdHgw==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.4-beta-rslde3ey.tgz","fileCount":7,"unpackedSize":36102,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGf0YW0L1UehkBrP4HRspGWC5UoOAUPRQpR9Liyd3syFAiAlVbXXfCF1aKH166Xmt8EdbwQwF1qoWqtxSKThmIfwCw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjWYM8ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo4zQ//Qo7+LpcwfcnV4lcyuWFmuiQS8D4ATjUeFMx5wz3VkTXNgboJ\r\nWApcM4VOPzkuCevM52FnMbOzJyDuh5Rzg4vvmdQse+YZfS4NhLw0IJMnxRqy\r\nylpYPB+y0h+oN3MuxM8ORLcGAA+JZ1ncl0KxYmYdgxPHdyxEFPvXrpR/AlfF\r\ngfV7o+bS6XC/+I9f+k0Yqkktjktp/G4tCYSGkuuw+Vz03Nxt1V+I2OXn4A4w\r\nVARG0HM2Yrwbg4y1rXCDO3KXcabBhn7ugZnvIlEPXHhBqaUj43Xm3HMgq61d\r\nJqWKtpN42Gl9RaDNFyeHZIcP3JNylVTdJ/dhuu57a6QfBbLZAlEkvoKWfgA4\r\nWsaZlwgVZBT5Gnzv6YIAcHHFBwSfk6TqkUO0R1omcDgsuu/KaY/ga6Leb916\r\nky0cerPVfPTL86YnPq/qkGOde77YrpAroxqc2GAepLSOmz0LGecMZ3o1lyMV\r\n87CdBHatC0eCqZ9Ljg2Rk6WmtXOHyTLjwhvaKD+XlbrMP5okqo2PPoXw84U/\r\nlasYKehSotbXiPhn/j4LldVOVO3/yeWHdsx2K7trqob5T7lv84z7VoZJo1ba\r\nT+h+yQHDvRn8rxHCXF7ndkm+FGysCbrJqcYYRAXDTzvnZN3L0A5G4pguLX1O\r\nIWR4tdn7LBwdgSYpLM+kzmli5jFdMfVgiYg=\r\n=fXCj\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.4-beta-rslde3ey_1666810684443_0.4410131279555749"},"_hasShrinkwrap":false},"1.2.4":{"name":"boteasy-dom","version":"1.2.4","description":"This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.","license":"MIT","author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["react","router","boteasy-dom","boteasy","dom","rgb","JSX","jQuery","AJAX","storage","match","vibrate","vdom","components","front-end","framework","virtual dom","user interface","styled","css styled","styled agnostic","global style"],"main":"index.js","types":"index.d.ts","scripts":{},"engines":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"licenseText":"MIT License\n\nCopyright (c) since 2020 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.","_id":"boteasy-dom@1.2.4","dist":{"shasum":"945014eaac7069535dd2343f2f617eccbe725042","integrity":"sha512-7qLoiMjgl2/JSKh01G3Jn9vM4VQxYrkChJ5IBDy+IrnguS6xaJ9VrxrYADorMIRxLeJQWyaV1bM7csz38CQbjg==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.4.tgz","fileCount":7,"unpackedSize":36436,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGuCTEsyEmW1h4Ec2nOMFhaYR2FEKI3HLlRyolPajLoHAiEA8OOo8lzpPwecqLQfDgptz0F5qKBlMtpCMEjO9Rr8bF8="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjWq6jACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr8pQ//c5/K19KsrQ3lr14sxr4rb5ChJr6MW51UySp91PgEEBxL9k7S\r\nPk4vr19EqqiqbdT8QZ5CfbJBEI8kqArbKGSW8BpNNYWgWX9tPFF8gNogB5yO\r\nPPc4vEVvepEys6ZDkxEmmf9i8bYntnjOqB8aa4woYPqqs+ScXkSC8UpzXOxy\r\nnmsd8NdAQ4+sXsXilAF83aBdoaiws70nMUau5Kw+XLwEA8xX6FkXb6uQITJ+\r\nHEIKcoZWmvjgrkRKNAnFxSqOzqitltmutapI24fdMT5oBmAiqxXxE1xghxxW\r\nIaijxVTwr3aLCDuJrk5NzuPdnva7JGe9O1BQqGDkI0lRFzXDoZiToBFcyx9r\r\n8yF9XsIBbCaTR3Yu4fpYuw5O0JhyFz1rMm9RbZ8NgSFbsKXqjA/XsvMvUH/i\r\n1s5aGwUUWc07bOEIOQ7p2x2/lUyUsZv2WVARwvIFeQDyV9E0KIt4qYWKraF8\r\naVo+vRJ42J2AbqFeDjJGnYqoa02W2CdJlO2FlcuJNFQmG0Y6jL5AHNDPl3bY\r\nL6mGlz9hwo6ioX/XBItRNo1JYwpk1RwDSbcXRKTylu/zofQiIuNUTmRSWQT3\r\ntpNq8fgYCBgiN1rBojNPsCOTdJ19wWex7NSlCEUzEaxDvoWnEM8EjHgypDkJ\r\nXvHQVCxXAW8UqrfTPelT7fPTqc8v5guBrBo=\r\n=Q6oL\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.4_1666887331745_0.8801803929404091"},"_hasShrinkwrap":false},"1.2.5":{"name":"boteasy-dom","version":"1.2.5","description":"This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.","license":"MIT","author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["react","router","boteasy-dom","boteasy","dom","rgb","JSX","jQuery","AJAX","storage","match","vibrate","vdom","components","front-end","framework","virtual dom","user interface","styled","css styled","styled agnostic","global style"],"main":"index.js","types":"index.d.ts","scripts":{},"engines":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"licenseText":"MIT License\n\nCopyright (c) since 2020 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.","_id":"boteasy-dom@1.2.5","dist":{"shasum":"d30f945e42072d6ddaa9434d0594b9b16690a459","integrity":"sha512-4v8x9c6+ejhfF8tRa32hg0vzj70BUZz1F4XRVbDxT7ztw1TnYbRtodPs83JleVTeSUhwaogpp6iYqYh0Q8AxWg==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.5.tgz","fileCount":7,"unpackedSize":36738,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC5oCVV5rb4h3rQ9raU/O6k598QzgebzWm0AVXznmfQSQIhAOJhk/7xMBFsb9eSejiL+z8yS5oCacrvSrcutiFjTpNK"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjf3VTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoIUhAAhdFZbe5QVqPzdJ6kKVT5zSGZaw5OXIad+IGNpQegCkYg49pF\r\ncd4CUayObgkLDrLGPj5q9ocX6xxBqK5OcJX4duBbucYWoWv68f89fvLKQs53\r\nUWvwQkcq937ZlTsfx+0lklgbUitN57GEzMmp+radvmZAS2D0qbagXmjq3eea\r\nD4ypSIvKoKeA3RJNo4d5XK9tWsWpwMjzhJEdanU0UcJz12qv7uUDR0YM4GPf\r\n9UMwPcVfXYwsElKfzCxEjGvjo6G0UdQPyAwrn3MLUXdL1H+Vuexw9AzzcW9Q\r\nsm/2oqrcQbIO6rWe4m8vifejAMrQ2YRhtzVY9ndYpyObgxpIkeajQcDiUx1Y\r\nay5IqfidrSksOi3CCryXiB6i9b9l4r+VP88BEcdV2OI4TDGsE+rsNHD/Zi4B\r\nrhqmZR9YlftNQ1DqrirTZAJ7aYdfPDbvCM1XNvLDynfD5eqKdeY6mdTJqmWf\r\nl5MYGvn5Z4IEJ+5puhdCgyMGhk2z//7YLdo6ihQaJyUv9NW5SUVDu4EkdiRw\r\nSMTLCFsgav3+FWWQ17cN3xZi6n5U+/Vb3XsTh0lUqNs+50Izh3+6SQC7/Cc7\r\nWoEsf/JTpvurCk5OQTAYLY4lr1e7T8+iOGBeVvQDlrITnjRIbyYKPxSnV7ow\r\nupml/Y6Sj06w8MaVM5xZkuMpGCbiIUQhc+s=\r\n=SrR8\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.5_1669297491731_0.3565493116476206"},"_hasShrinkwrap":false},"1.2.6-next-mrqhaxi":{"name":"boteasy-dom","version":"1.2.6-next-mrqhaxi","description":"This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.","license":"MIT","author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["react","router","boteasy-dom","boteasy","dom","rgb","JSX","jQuery","AJAX","storage","match","vibrate","vdom","components","front-end","framework","virtual dom","user interface","styled","css styled","styled agnostic","global style"],"main":"index.js","types":"index.d.ts","scripts":{},"engines":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"readmeFilename":"README.md","readme":"# [BoteasyDOM](https://boteasy.net/) &middot; [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/theronaldostar/boteasy-dom/blob/main/LICENSE)  [![npm version](https://img.shields.io/npm/v/boteasy-dom.svg?style=flat)](https://www.npmjs.com/package/boteasy-dom)  [![npm version](https://badge.fury.io/js/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)  [![Downloads](https://img.shields.io/npm/dm/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)\n\n* This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.\n---\n# How to use?\n\n```shell\nnpm i boteasy-dom\n```\n\n```shell\nyarn add boteasy-dom\n```\n\n# Quick use:\n\n```jsx\nimport { useState, createRoot } from \"boteasy-dom\";\n\nconst App = () => {\n\tconst [count, setCount] = useState(0);\n\treturn (\n\t\t<>\n\t\t\t<h1>{count}</h1>\n\t\t\t<button onClick={() => setCount(prev => (prev + 1))}>Increment</button>\n\t\t</>\n\t);\n};\n\nconst container = document.querySelector(\"#root\");\nconst root = createRoot(container);\nroot.render(<App />);\n```\n\n# Import:\n\n```shell\nimport BoteasyDOM from \"boteasy-dom\";\n/**\n * @jsx jsxDEV\n * @jsxFrag Fragment\n * @jsxRuntime classic\n*/\nconst {  } = BoteasyDOM;\n```\n\n# .theme:\n* ???\n\n```shell\nconst scheme = theme;\n```\n\n# .version:\n* A boteasy-dom version\n\n```shell\nconst ver = version;\n```\n\n# .Fragment:\n* Allows a component to return multiple elements grouped a list of children without adding extra nodes to the DOM\n\n```shell\n<>{/*@__DATA__*/}</>\n```\n\n# .match(object, string|null):\n* This function is a direct alternative to \"switch ~ case\", and is based on the match function of the php language\n\n```shell\nconst index = null;\nmatch({\n\tfirst: \"boteasy\",\n\tlast: \"dom\",\n\tdefault: \"test\"\n}, index);\n```\n\n# .useId(number|undefined, boolean|undefined):\n* ???\n\n```shell\nconst inputId = useId(2);\n```\n\n`returns: :string:`\n\n\n```shell\nconst inputId = useId(2, true);\n```\n\n`returns: string`\n\n`<input type=\"text\" id={inputId} />`\n\n`jsxDEV(\"input\", {type: \"text\", id: inputId})`\n\n# .useRef(any|function):\n* ???\n\n```shell\nconst email = useRef(() => {\n\tlet name = \"boteasy.dom\";\n\treturn `${name}@example.com`;\n});\n```\n\n`<input type=\"email\" ref={email} />`\n\n`jsxDEV(\"input\", {type: \"email\", ref: email})`\n\n`let yourEmail = email.value;`\n\n# .useHtml(selector, value):\n* This function serves to add or remove an element in the DOM\n\n```shell\nuseHtml(\"#root\", `<h1>Hello, world!</h1>`);\n```\n\n# .useAppend(selector, string, boolean|undefined):\n* ???\n\n```shell\nuseAppend(\"#root\", `<div>Text</div>`);\n```\n\n`Just inside the element, before its first child.`\n\n```shell\nuseAppend(\"#root\", `<div>Text</div>`, true);\n```\n\n`Just inside the element, after its last child.`\n\n# .useWait(bolean|string):\n* This function is for you to disable all elements;\n\n```shell\nuseWait(true);\n```\n\n```shell\nuseWait(false);\n```\n\n# .useProp(selectors, attribute, any):\n* This function is used to enable/disable elements or select an input type checkbox, for example;\n\n```shell\nuseProp(\"input, select\", \"disabled\", true);\n```\n\n```shell\nuseProp(\"input\", \"disabled\", false);\n```\n\n# .useRequest({}):\n* This function serves to perform AJAX requests;\n\n```shell\nuseRequest({\n\turl: \"https://www.example.com/api/\",\n\tmethod: \"GET\",\n\theaders: {},\n\tdata: {},\n\tdataType: \"json\",\n\tsuccess: () => {},\n\terror: () => {},\n\tfinally: () => {}\n});\n```\n\n# .useVibrate(number|number[]|undefined):\n* ???\n\n```shell\nuseVibrate(100);\n```\n\n`100ms`\n\n```shell\nuseVibrate([500, 110, 500, 110, 450, 110, 200, 110, 170, 40, 450, 110, 200, 110, 170, 40, 500]);\n```\n\n`starwars`\n\n```shell\nuseVibrate([150, 150, 150, 150, 75, 75, 150, 150, 150, 150, 450]);\n```\n\n`powerrangers`\n\n# .useClipboard(string, function|undefined):\n* This function serves to copy a text to a clipboard;\n\n```shell\nconst text = \"Just a test!\";\nuseClipboard(text, () => {\n\tconsole.info(\"Text copied to clipboard.\");\n});\n```\n\n# .isObj(any):\n* ???\n\n```shell\nconst is = isObj({ name: \"Boteasy\" });\n```\n\n# .useTwins(string|{}|[], string|{}|[]):\n* As the name says, this function is for you to compare if two objects or array are equal.\n\n```shell\nconst array = [\"boteasy\", \"dom\"];\nconst array2 = [\n\t\"boteasy\",\n\t\"dom\",\n\t\"version\": [\"latest\"]\n];\nuseTwins(array, array2);\n```\n\n# .useFloat(number|string, number):\n* ???\n\n```shell\nconst total = 100.123;\nuseFloat(total, 2);\n```\n\n# .useState(any|function):\n* This function is just for adding some local states.\n\n```shell\nconst [state, setState] = useState(9);\nsetState(prev => (prev + 1));\n```\n\n# .useEffect(function, []|undefined):\n* ???\n\n```shell\nlet name = \"boteasy\";\nconst boteasyTest = text => console.info(`Hello, ${text}!`);\nuseEffect(() => {\n\tboteasyTest(name);\n\t/**\n\t * TODO: Under Construction\n\t * this function is incomplete.\n\t*/\n\treturn () => console.info(\"Bye, world!\");\n}, [name]);\n```\n\n# .useStorage():\n* Manipulates: window.localStorage.\n\n```shell\nconst storage = useStorage();\n```\n\n# (string, any|function):\n\n```shell\nstorage(\"theme\", () => {\n\tconst prefers = window.matchMedia(\"(prefers-color-scheme: dark)\").matches;\n\treturn prefers ? \"dark\" : \"light\"\n});\n```\n\n`set`\n\n```shell\nstorage(\"theme\");\n```\n\n`get`\n\n```shell\nstorage()(\"theme\");\n```\n\n`remove`\n\n```shell\nstorage()();\n```\n\n`clear`\n\n# .useNavigate(number|undefined):\n* ???\n\n```shell\nconst navigate = useNavigate(1000);\n```\n\n`1000ms delay`\n\n# (string, boolean|undefined):\n\n`Send the second parameter as false, to removes the current page from the session history and navigates to the given URL.`\n\n```shell\nnavigate();\n```\n\n`reload`\n\n```shell\nnavigate(\"login\");\n```\n\n```shell\nnavigate(\"https://www.example.com/\", false);\n```\n\n# .useScroll(..., object|undefined):\n* ???\n\n```shell\n/**\n * TODO: Under Construction\n * this function is incomplete.\n*/\nlet { x, y } useScroll(\"body\", { behavior: \"smooth\" });\n```\n\n# .flushAsync(function, any):\n* ???\n\n```shell\nflushAsync(event => {\n\tconsole.info(`Hello, ${event.name}!`);\n}, { name: \"Boteasy\" });\n```\n\n# .createRoot(container, object|bolean|undefined):\n* This function serves to create a route to Boteasy-dom, send the second parameter an object containing an intex with hydrate as true.\n\n```shell\nconst container = document.querySelector(\"#root\");\nconst root = createRoot(container, {\n\thydrate: true,\n\tresponse: () => {\n\t\tconsole.info(\"rendered\");\n\t}\n});\n```\n\n* Render the element in the root;\n\n```shell\nconst element = <h1>Hello, world!</h1>;\nroot.render(element);\n```\n\n`<h1>Hello, world!</h1>`\n\n* Remove the element in the root;\n\n```shell\nroot.unmount();\n```\n\n# .hydrateRoot(container, component):\n* hydrate the element in the root;\n\n```shell\nconst name = \"Boteasy\";\nconst container = document.querySelector(\"#root\");\nhydrateRoot(container, <h1>Hello, {name}.</h1>);\n```\n\n`<h1>Hello, Ronaldo S.</h1>`\n\n# .StrictMode():\n* ???\n\n```shell\nconst App = (\n\t<StrictMode element={<h1>Hello, world!</h1>} />\n);\n```\n\n```shell\nconst App = (\n\t<StrictMode>\n\t\t<h1>Hello, world!</h1>\n\t</StrictMode>\n);\n```\n\n# .StyleProvider({ theme: object }|undefined):\n* ???\n\n```shell\nconst provider = {color: \"#000\", fontWeight: \"bold\"};\n```\n\n```shell\nconst App = (\n\t<StyleProvider theme={provider}>\n\t\t<>{/*@__DATA__*/}</>\n\t</StyleProvider>\n);\n```\n\n```shell\nconst App = (\n\t<StyleProvider theme={provider} element={<>{/*@__DATA__*/}</>} />\n);\n```\n\n# .createElement(any, null|object, any[]|undefined):\n# .jsxDEV(any, null|object, any[]|undefined):\n* This function serves to create elements to be rendered by Boteasy-dom;\n\n```shell\ncreateElement(StrictMode, null,\n\tcreateElement(Fragment, null,\n\t\tcreateElement(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#000\", fontWeight: \"bold\"}\n\t\t})\n\t)\n);\n```\n\n```shell\njsxDEV(StrictMode, null,\n\tjsxDEV(Fragment, null,\n\t\tjsxDEV(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#000\", fontWeight: \"bold\"}\n\t\t})\n\t)\n);\n```\n\n`Both methods are the same.`\n\n`<input type=\"email\" class=\"boteasy\" style=\"color: #000;font-weight: bold\">`\n\n# .cssClass(string|undefined):\n* This function is for you to add or remove multiple class on one or multiple elements;\n\n```shell\ncssClass(\"input, select\").toggle(\"boteasy, dom\");\n```\n\n```shell\nconst css = cssClass(\"input, select\");\n```\n\n```shell\ncss.add(\"boteasy, dom\");\n```\n\n```shell\ncss.remove(\"dom\");\n```\n\n```shell\ncss.toggle(\"dom\");\n```\n\n# .globalStyle(object):\n* ???\n\n```shell\nconst GlobalStyle = globalStyle({\n\tcolor: \"#000\",\n\tfontWeight: \"bold\"\n\tbackgroundColor: \"#fff8\"\n});\n```\n\n`<GlobalStyle />`\n\n`GlobalStyle()`\n\n# .cssStyled(object):\n* ???\n\n```shell\nconst css = cssStyled({\n\tcolor: \"#ff6347\",\n\tfontWeight: 600\n});\n```\n\n`<h1 class={css} />`\n\n`jsxDEV(\"h1\", {className: css});`\n\n# .styled(string, object):\n* ???\n\n```shell\nconst Style = cssStyled(\"boteasy-dom\", {\n\tcolor: \"#ff6347\",\n\tfontWeight: 600\n});\n```\n\n`<Style><h1>Hello, world!</h1></Style>`\n\n`jsxDEV(Style, null, jsxDEV(\"h1\", null, \"Hello, world!\"));`\n\n`final: <boteasy-dom class=\"jss-...\"><h1>Hello, world!</h1></boteasy-dom>`\n\n# .rgba(string, number|undefined):\n* This function is for you to convert a hex color to rgba!\n\n```shell\nrgba(\"#fff\", 0.4); \n```\n\n`rgba(255,255,255,0.4)`","licenseText":"MIT License\n\nCopyright (c) since 2020 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.","_id":"boteasy-dom@1.2.6-next-mrqhaxi","dist":{"shasum":"26447948ca2379b2e881d3fa2e1bd17e9b7896eb","integrity":"sha512-UYLP39wGT7W7Q6u7b1E4kA7+idiiMiHrMGTob3QEYanjI0EtaNHMexi9hUZdQUGSeE96OGZMHaPeIFyLT7WRdA==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.6-next-mrqhaxi.tgz","fileCount":7,"unpackedSize":36535,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHZ27djyrM9gKgXwtFB0dOgqqSvj/nOHTfWUU4KwJ9ipAiAXUqMLIypLti+qu9VnSA7EWqBpDIbXMKqTPrSH7MDnJQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjitlcACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrD9w/+MtbIPutXaSDjgEHrAPZX2j8NwV2hcFc+lKsY/37gf87aTYat\r\nvFaKQyrffBa20ZwIX167vqDwLFtXdUeOt0QzGvXebHAGuSXqWTcr0QIbxkZK\r\nuC/+yy1PDMVBpM0uf5lz3bzOr4Kiwh4qJtdFeskLZMH+HNsnQ2OLlioj0rsq\r\nc5ZrZm+2XbURnNBWhLCfVfqogiP9uRPYHneush3rq+aEmusq731XNCqwuuxv\r\nv5edb8XFifoWrE0t3tid4RBd6Q7wUCKqJjSnZLRkFL1sFsk5VgbzE9EJzVui\r\nT+05LkAY838q1blAAZjS5SrqgYIIren/a1Y6T7uOrnuL7/bhCaN9cdtcBNt2\r\nCn+XEKi/h8Un5v4ax3/DLKlsYZXulmbEw1kHdWpeXoTUqsjpCSZ/NCj2ayyH\r\nc3l/QkyEGrIcke8TkWHEr+KCZ2wOZ6VANqy2DoehnV2wc1ex9xem/SnSl3CV\r\nduvp7pf8Jvt+i5PLzo8D+km6G62uRh2O7ynwFzOVO8XdSGfY/j8WIeX5tc7E\r\n7bvHTwpsTtO1TnRamPKFedPxzzBxOmsYBTmZbUMjyHrMqDO8UeOpxDXRwQRl\r\nU00uCG8630cJUH/4XujOT07xkLnLWwwEj2GC4IB1u1RrsxDl3ziYbbS0BEyN\r\nSpKsC5UiG5V9iR45pw7ketHdwVAGnMH/GUg=\r\n=+9PI\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.6-next-mrqhaxi_1670043996178_0.23798545801769744"},"_hasShrinkwrap":false},"1.2.6-next-71h91oxp":{"name":"boteasy-dom","version":"1.2.6-next-71h91oxp","description":"This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.","license":"MIT","author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["react","router","boteasy-dom","boteasy","dom","rgb","JSX","jQuery","AJAX","storage","match","vibrate","vdom","components","front-end","framework","virtual dom","user interface","styled","css styled","styled agnostic","global style"],"main":"index.js","types":"index.d.ts","scripts":{},"engines":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"readmeFilename":"README.md","readme":"# [BoteasyDOM](https://boteasy.net/) &middot; [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/theronaldostar/boteasy-dom/blob/main/LICENSE)  [![npm version](https://img.shields.io/npm/v/boteasy-dom.svg?style=flat)](https://www.npmjs.com/package/boteasy-dom)  [![npm version](https://badge.fury.io/js/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)  [![Downloads](https://img.shields.io/npm/dm/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)\n\n* This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.\n---\n# How to use?\n\n```shell\nnpm i boteasy-dom\n```\n\n```shell\nyarn add boteasy-dom\n```\n\n# Quick use:\n\n```jsx\nimport { useState, createRoot } from \"boteasy-dom\";\n\nconst App = () => {\n\tconst [count, setCount] = useState(0);\n\treturn (\n\t\t<>\n\t\t\t<h1>{count}</h1>\n\t\t\t<button onClick={() => setCount(prev => (prev + 1))}>Increment</button>\n\t\t</>\n\t);\n};\n\nconst container = document.querySelector(\"#root\");\nconst root = createRoot(container);\nroot.render(<App />);\n```\n\n# Import:\n\n```shell\nimport BoteasyDOM from \"boteasy-dom\";\n/**\n * @jsx jsxDEV\n * @jsxFrag Fragment\n * @jsxRuntime classic\n*/\nconst {  } = BoteasyDOM;\n```\n\n# .theme:\n* ???\n\n```shell\nconst scheme = theme;\n```\n\n# .version:\n* A boteasy-dom version\n\n```shell\nconst ver = version;\n```\n\n# .Fragment:\n* Allows a component to return multiple elements grouped a list of children without adding extra nodes to the DOM\n\n```shell\n<>{/*@__DATA__*/}</>\n```\n\n# .match(object, string|null):\n* This function is a direct alternative to \"switch ~ case\", and is based on the match function of the php language\n\n```shell\nconst index = null;\nmatch({\n\tfirst: \"boteasy\",\n\tlast: \"dom\",\n\tdefault: \"test\"\n}, index);\n```\n\n# .useId(number|undefined, boolean|undefined):\n* ???\n\n```shell\nconst inputId = useId(2);\n```\n\n`returns: :string:`\n\n\n```shell\nconst inputId = useId(2, true);\n```\n\n`returns: string`\n\n`<input type=\"text\" id={inputId} />`\n\n`jsxDEV(\"input\", {type: \"text\", id: inputId})`\n\n# .useRef(any|function):\n* ???\n\n```shell\nconst email = useRef(() => {\n\tlet name = \"boteasy.dom\";\n\treturn `${name}@example.com`;\n});\n```\n\n`<input type=\"email\" ref={email} />`\n\n`jsxDEV(\"input\", {type: \"email\", ref: email})`\n\n`let yourEmail = email.value;`\n\n# .useHtml(selector, value):\n* This function serves to add or remove an element in the DOM\n\n```shell\nuseHtml(\"#root\", `<h1>Hello, world!</h1>`);\n```\n\n# .useAppend(selector, string, boolean|undefined):\n* ???\n\n```shell\nuseAppend(\"#root\", `<div>Text</div>`);\n```\n\n`Just inside the element, before its first child.`\n\n```shell\nuseAppend(\"#root\", `<div>Text</div>`, true);\n```\n\n`Just inside the element, after its last child.`\n\n# .useWait(bolean|string):\n* This function is for you to disable all elements;\n\n```shell\nuseWait(true);\n```\n\n```shell\nuseWait(false);\n```\n\n# .useProp(selectors, attribute, any):\n* This function is used to enable/disable elements or select an input type checkbox, for example;\n\n```shell\nuseProp(\"input, select\", \"disabled\", true);\n```\n\n```shell\nuseProp(\"input\", \"disabled\", false);\n```\n\n# .useRequest({}):\n* This function serves to perform AJAX requests;\n\n```shell\nuseRequest({\n\turl: \"https://www.example.com/api/\",\n\tmethod: \"GET\",\n\theaders: {},\n\tdata: {},\n\tdataType: \"json\",\n\tsuccess: () => {},\n\terror: () => {},\n\tfinally: () => {}\n});\n```\n\n# .useVibrate(number|number[]|undefined):\n* ???\n\n```shell\nuseVibrate(100);\n```\n\n`100ms`\n\n```shell\nuseVibrate([500, 110, 500, 110, 450, 110, 200, 110, 170, 40, 450, 110, 200, 110, 170, 40, 500]);\n```\n\n`starwars`\n\n```shell\nuseVibrate([150, 150, 150, 150, 75, 75, 150, 150, 150, 150, 450]);\n```\n\n`powerrangers`\n\n# .useClipboard(string, function|undefined):\n* This function serves to copy a text to a clipboard;\n\n```shell\nconst text = \"Just a test!\";\nuseClipboard(text, () => {\n\tconsole.info(\"Text copied to clipboard.\");\n});\n```\n\n# .isObj(any):\n* ???\n\n```shell\nconst is = isObj({ name: \"Boteasy\" });\n```\n\n# .useTwins(string|{}|[], string|{}|[]):\n* As the name says, this function is for you to compare if two objects or array are equal.\n\n```shell\nconst array = [\"boteasy\", \"dom\"];\nconst array2 = [\n\t\"boteasy\",\n\t\"dom\",\n\t\"version\": [\"latest\"]\n];\nuseTwins(array, array2);\n```\n\n# .useFloat(number|string, number):\n* ???\n\n```shell\nconst total = 100.123;\nuseFloat(total, 2);\n```\n\n# .useState(any|function):\n* This function is just for adding some local states.\n\n```shell\nconst [state, setState] = useState(9);\nsetState(prev => (prev + 1));\n```\n\n# .useEffect(function, []|undefined):\n* ???\n\n```shell\nlet name = \"boteasy\";\nconst boteasyTest = text => console.info(`Hello, ${text}!`);\nuseEffect(() => {\n\tboteasyTest(name);\n\t/**\n\t * TODO: Under Construction\n\t * this function is incomplete.\n\t*/\n\treturn () => console.info(\"Bye, world!\");\n}, [name]);\n```\n\n# .useStorage():\n* Manipulates: window.localStorage.\n\n```shell\nconst storage = useStorage();\n```\n\n# (string, any|function):\n\n```shell\nstorage(\"theme\", () => {\n\tconst prefers = window.matchMedia(\"(prefers-color-scheme: dark)\").matches;\n\treturn prefers ? \"dark\" : \"light\"\n});\n```\n\n`set`\n\n```shell\nstorage(\"theme\");\n```\n\n`get`\n\n```shell\nstorage()(\"theme\");\n```\n\n`remove`\n\n```shell\nstorage()();\n```\n\n`clear`\n\n# .useNavigate(number|undefined):\n* ???\n\n```shell\nconst navigate = useNavigate(1000);\n```\n\n`1000ms delay`\n\n# (string, boolean|undefined):\n\n`Send the second parameter as false, to removes the current page from the session history and navigates to the given URL.`\n\n```shell\nnavigate();\n```\n\n`reload`\n\n```shell\nnavigate(\"login\");\n```\n\n```shell\nnavigate(\"https://www.example.com/\", false);\n```\n\n# .useScroll(..., object|undefined):\n* ???\n\n```shell\n/**\n * TODO: Under Construction\n * this function is incomplete.\n*/\nlet { x, y } useScroll(\"body\", { behavior: \"smooth\" });\n```\n\n# .flushAsync(function, any):\n* ???\n\n```shell\nflushAsync(event => {\n\tconsole.info(`Hello, ${event.name}!`);\n}, { name: \"Boteasy\" });\n```\n\n# .createRoot(container, object|bolean|undefined):\n* This function serves to create a route to Boteasy-dom, send the second parameter an object containing an intex with hydrate as true.\n\n```shell\nconst container = document.querySelector(\"#root\");\nconst root = createRoot(container, {\n\thydrate: true,\n\tresponse: () => {\n\t\tconsole.info(\"rendered\");\n\t}\n});\n```\n\n* Render the element in the root;\n\n```shell\nconst element = <h1>Hello, world!</h1>;\nroot.render(element);\n```\n\n`<h1>Hello, world!</h1>`\n\n* Remove the element in the root;\n\n```shell\nroot.unmount();\n```\n\n# .hydrateRoot(container, component):\n* hydrate the element in the root;\n\n```shell\nconst name = \"Boteasy\";\nconst container = document.querySelector(\"#root\");\nhydrateRoot(container, <h1>Hello, {name}.</h1>);\n```\n\n`<h1>Hello, Ronaldo S.</h1>`\n\n# .StrictMode():\n* ???\n\n```shell\nconst App = (\n\t<StrictMode element={<h1>Hello, world!</h1>} />\n);\n```\n\n```shell\nconst App = (\n\t<StrictMode>\n\t\t<h1>Hello, world!</h1>\n\t</StrictMode>\n);\n```\n\n# .StyleProvider({ theme: object }|undefined):\n* ???\n\n```shell\nconst provider = {color: \"#000\", fontWeight: \"bold\"};\n```\n\n```shell\nconst App = (\n\t<StyleProvider theme={provider}>\n\t\t<>{/*@__DATA__*/}</>\n\t</StyleProvider>\n);\n```\n\n```shell\nconst App = (\n\t<StyleProvider theme={provider} element={<>{/*@__DATA__*/}</>} />\n);\n```\n\n# .createElement(any, null|object, any[]|undefined):\n# .jsxDEV(any, null|object, any[]|undefined):\n* This function serves to create elements to be rendered by Boteasy-dom;\n\n```shell\ncreateElement(StrictMode, null,\n\tcreateElement(Fragment, null,\n\t\tcreateElement(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#000\", fontWeight: \"bold\"}\n\t\t})\n\t)\n);\n```\n\n```shell\njsxDEV(StrictMode, null,\n\tjsxDEV(Fragment, null,\n\t\tjsxDEV(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#000\", fontWeight: \"bold\"}\n\t\t})\n\t)\n);\n```\n\n`Both methods are the same.`\n\n`<input type=\"email\" class=\"boteasy\" style=\"color: #000;font-weight: bold\">`\n\n# .cssClass(string|undefined):\n* This function is for you to add or remove multiple class on one or multiple elements;\n\n```shell\ncssClass(\"input, select\").toggle(\"boteasy, dom\");\n```\n\n```shell\nconst css = cssClass(\"input, select\");\n```\n\n```shell\ncss.add(\"boteasy, dom\");\n```\n\n```shell\ncss.remove(\"dom\");\n```\n\n```shell\ncss.toggle(\"dom\");\n```\n\n# .globalStyle(object):\n* ???\n\n```shell\nconst GlobalStyle = globalStyle({\n\tcolor: \"#000\",\n\tfontWeight: \"bold\"\n\tbackgroundColor: \"#fff8\"\n});\n```\n\n`<GlobalStyle />`\n\n`GlobalStyle()`\n\n# .cssStyled(object):\n* ???\n\n```shell\nconst css = cssStyled({\n\tcolor: \"#ff6347\",\n\tfontWeight: 600\n});\n```\n\n`<h1 class={css} />`\n\n`jsxDEV(\"h1\", {className: css});`\n\n# .styled(string, object):\n* ???\n\n```shell\nconst Style = cssStyled(\"boteasy-dom\", {\n\tcolor: \"#ff6347\",\n\tfontWeight: 600\n});\n```\n\n`<Style><h1>Hello, world!</h1></Style>`\n\n`jsxDEV(Style, null, jsxDEV(\"h1\", null, \"Hello, world!\"));`\n\n`final: <boteasy-dom class=\"jss-...\"><h1>Hello, world!</h1></boteasy-dom>`\n\n# .rgba(string, number|undefined):\n* This function is for you to convert a hex color to rgba!\n\n```shell\nrgba(\"#fff\", 0.4); \n```\n\n`rgba(255,255,255,0.4)`","licenseText":"MIT License\n\nCopyright (c) since 2020 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.","_id":"boteasy-dom@1.2.6-next-71h91oxp","dist":{"shasum":"5b8db03e8d92d4ca314abfa2441a23405208a22a","integrity":"sha512-b599Sk7pefkmPk35jIuVFeLcxb7DOno7yhK3EfnEV1b4JWls/tq7C9O+x1kL9op64HWRaMukJW1wqUww15HYCQ==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.6-next-71h91oxp.tgz","fileCount":7,"unpackedSize":36558,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCerLs6AeOYPKp7LmvHvC004KPBDSXmBF/O7PilZc7jEQIgEqdqAJqajlzJnvQkWDo0gaPBUNQbacfpc8Cou27zcOg="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjiuCBACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrQvRAAkzOZT4rNUJF1SM8Xfnh+WSfnMpHE65o145ORJNS5tF1jwMjp\r\nFVNKYgE9I9rkn0oa+30AdGN0oROhivO2W8ZWdL+EcQdTdnQphlX+8AFEfsEw\r\nD5+gDGqxf280E5o4IkYxOvBQwP80tmnQBELp6rr1aD2uNsmsAYKe01LZiwIW\r\n75rbTUgykFP79OvOjgcy8saImjI9da7hNutaeyZMcN3yJ4m1mXIByQKYeiXR\r\nlbNpvWIwNdoQMBUhKqNHiix6pHNcytNPzG6IhXMAQ4nrR5Np0dv3onsm1+/t\r\nvFshVbOeUai+AKg54aQyezgoV6T0PMEyVKCrfQ1P88a7RcmqHodEtb1Dmqjq\r\nkV0yT5gBN+AuF1v24rDYrRWrgevl8X4mx8CIBzzz3GEgscwp8IT4Qtu6dyvI\r\nd2foXpSQRADwFuxDHXq3h/MRo1TCXYdSwf4jAruFx2kAMxpcwMe5lsZOX/z2\r\nKa2V7pMeocYozPwzKax9oq2FEDgOlIFAUqFtR07lOdcHIbxUMp3c6j4pIFGC\r\nuiQYaE5eMm9VvO04tF48DU6qucOjD1oeHirfwzC9Yw0+K3/hFvgUaFnEXbt3\r\ngIVJ8dk1ha5EKJiZ50K3w/mIUnpE9iFFY3Gd/PjX6021vjSyufqSNXRTdB79\r\nRAJo0UMKplkDjQqEpTR2/+adPU2cEpTrifA=\r\n=Drms\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.6-next-71h91oxp_1670045825576_0.4317022911086763"},"_hasShrinkwrap":false},"1.2.6-next-71h91oxp-types":{"name":"boteasy-dom","version":"1.2.6-next-71h91oxp-types","description":"This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.","license":"MIT","author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["react","router","boteasy-dom","boteasy","dom","rgb","JSX","jQuery","AJAX","storage","match","vibrate","vdom","components","front-end","framework","virtual dom","user interface","styled","css styled","styled agnostic","global style"],"main":"index.js","types":"index.d.ts","scripts":{},"engines":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"git+https://github.com/theronaldostar/boteasy-dom.git"},"readmeFilename":"README.md","readme":"# [BoteasyDOM](https://boteasy.net/) &middot; [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/theronaldostar/boteasy-dom/blob/main/LICENSE)  [![npm version](https://img.shields.io/npm/v/boteasy-dom.svg?style=flat)](https://www.npmjs.com/package/boteasy-dom)  [![npm version](https://badge.fury.io/js/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)  [![Downloads](https://img.shields.io/npm/dm/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)\n\n* This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.\n---\n# How to use?\n\n```shell\nnpm i boteasy-dom\n```\n\n```shell\nyarn add boteasy-dom\n```\n\n# Quick use:\n\n```jsx\nimport { useState, createRoot } from \"boteasy-dom\";\n\nconst App = () => {\n\tconst [count, setCount] = useState(0);\n\treturn (\n\t\t<>\n\t\t\t<h1>{count}</h1>\n\t\t\t<button onClick={() => setCount(prev => (prev + 1))}>Increment</button>\n\t\t</>\n\t);\n};\n\nconst container = document.querySelector(\"#root\");\nconst root = createRoot(container);\nroot.render(<App />);\n```\n\n# Import:\n\n```shell\nimport BoteasyDOM from \"boteasy-dom\";\n/**\n * @jsx jsxDEV\n * @jsxFrag Fragment\n * @jsxRuntime classic\n*/\nconst {  } = BoteasyDOM;\n```\n\n# .theme:\n* ???\n\n```shell\nconst scheme = theme;\n```\n\n# .version:\n* A boteasy-dom version\n\n```shell\nconst ver = version;\n```\n\n# .Fragment:\n* Allows a component to return multiple elements grouped a list of children without adding extra nodes to the DOM\n\n```shell\n<>{/*@__DATA__*/}</>\n```\n\n# .match(object, string|null):\n* This function is a direct alternative to \"switch ~ case\", and is based on the match function of the php language\n\n```shell\nconst index = null;\nmatch({\n\tfirst: \"boteasy\",\n\tlast: \"dom\",\n\tdefault: \"test\"\n}, index);\n```\n\n# .useId(number|undefined, boolean|undefined):\n* ???\n\n```shell\nconst inputId = useId(2);\n```\n\n`returns: :string:`\n\n\n```shell\nconst inputId = useId(2, true);\n```\n\n`returns: string`\n\n`<input type=\"text\" id={inputId} />`\n\n`jsxDEV(\"input\", {type: \"text\", id: inputId})`\n\n# .useRef(any|function):\n* ???\n\n```shell\nconst email = useRef(() => {\n\tlet name = \"boteasy.dom\";\n\treturn `${name}@example.com`;\n});\n```\n\n`<input type=\"email\" ref={email} />`\n\n`jsxDEV(\"input\", {type: \"email\", ref: email})`\n\n`let yourEmail = email.value;`\n\n# .useHtml(selector, value):\n* This function serves to add or remove an element in the DOM\n\n```shell\nuseHtml(\"#root\", `<h1>Hello, world!</h1>`);\n```\n\n# .useAppend(selector, string, boolean|undefined):\n* ???\n\n```shell\nuseAppend(\"#root\", `<div>Text</div>`);\n```\n\n`Just inside the element, before its first child.`\n\n```shell\nuseAppend(\"#root\", `<div>Text</div>`, true);\n```\n\n`Just inside the element, after its last child.`\n\n# .useWait(bolean|string):\n* This function is for you to disable all elements;\n\n```shell\nuseWait(true);\n```\n\n```shell\nuseWait(false);\n```\n\n# .useProp(selectors, attribute, any):\n* This function is used to enable/disable elements or select an input type checkbox, for example;\n\n```shell\nuseProp(\"input, select\", \"disabled\", true);\n```\n\n```shell\nuseProp(\"input\", \"disabled\", false);\n```\n\n# .useRequest({}):\n* This function serves to perform AJAX requests;\n\n```shell\nuseRequest({\n\turl: \"https://www.example.com/api/\",\n\tmethod: \"GET\",\n\theaders: {},\n\tdata: {},\n\tdataType: \"json\",\n\tsuccess: () => {},\n\terror: () => {},\n\tfinally: () => {}\n});\n```\n\n# .useVibrate(number|number[]|undefined):\n* ???\n\n```shell\nuseVibrate(100);\n```\n\n`100ms`\n\n```shell\nuseVibrate([500, 110, 500, 110, 450, 110, 200, 110, 170, 40, 450, 110, 200, 110, 170, 40, 500]);\n```\n\n`starwars`\n\n```shell\nuseVibrate([150, 150, 150, 150, 75, 75, 150, 150, 150, 150, 450]);\n```\n\n`powerrangers`\n\n# .useClipboard(string, function|undefined):\n* This function serves to copy a text to a clipboard;\n\n```shell\nconst text = \"Just a test!\";\nuseClipboard(text, () => {\n\tconsole.info(\"Text copied to clipboard.\");\n});\n```\n\n# .isObj(any):\n* ???\n\n```shell\nconst is = isObj({ name: \"Boteasy\" });\n```\n\n# .useTwins(string|{}|[], string|{}|[]):\n* As the name says, this function is for you to compare if two objects or array are equal.\n\n```shell\nconst array = [\"boteasy\", \"dom\"];\nconst array2 = [\n\t\"boteasy\",\n\t\"dom\",\n\t\"version\": [\"latest\"]\n];\nuseTwins(array, array2);\n```\n\n# .useFloat(number|string, number):\n* ???\n\n```shell\nconst total = 100.123;\nuseFloat(total, 2);\n```\n\n# .useState(any|function):\n* This function is just for adding some local states.\n\n```shell\nconst [state, setState] = useState(9);\nsetState(prev => (prev + 1));\n```\n\n# .useEffect(function, []|undefined):\n* ???\n\n```shell\nlet name = \"boteasy\";\nconst boteasyTest = text => console.info(`Hello, ${text}!`);\nuseEffect(() => {\n\tboteasyTest(name);\n\t/**\n\t * TODO: Under Construction\n\t * this function is incomplete.\n\t*/\n\treturn () => console.info(\"Bye, world!\");\n}, [name]);\n```\n\n# .useStorage():\n* Manipulates: window.localStorage.\n\n```shell\nconst storage = useStorage();\n```\n\n# (string, any|function):\n\n```shell\nstorage(\"theme\", () => {\n\tconst prefers = window.matchMedia(\"(prefers-color-scheme: dark)\").matches;\n\treturn prefers ? \"dark\" : \"light\"\n});\n```\n\n`set`\n\n```shell\nstorage(\"theme\");\n```\n\n`get`\n\n```shell\nstorage()(\"theme\");\n```\n\n`remove`\n\n```shell\nstorage()();\n```\n\n`clear`\n\n# .useNavigate(number|undefined):\n* ???\n\n```shell\nconst navigate = useNavigate(1000);\n```\n\n`1000ms delay`\n\n# (string, boolean|undefined):\n\n`Send the second parameter as false, to removes the current page from the session history and navigates to the given URL.`\n\n```shell\nnavigate();\n```\n\n`reload`\n\n```shell\nnavigate(\"login\");\n```\n\n```shell\nnavigate(\"https://www.example.com/\", false);\n```\n\n# .useScroll(..., object|undefined):\n* ???\n\n```shell\n/**\n * TODO: Under Construction\n * this function is incomplete.\n*/\nlet { x, y } useScroll(\"body\", { behavior: \"smooth\" });\n```\n\n# .flushAsync(function, any):\n* ???\n\n```shell\nflushAsync(event => {\n\tconsole.info(`Hello, ${event.name}!`);\n}, { name: \"Boteasy\" });\n```\n\n# .createRoot(container, object|bolean|undefined):\n* This function serves to create a route to Boteasy-dom, send the second parameter an object containing an intex with hydrate as true.\n\n```shell\nconst container = document.querySelector(\"#root\");\nconst root = createRoot(container, {\n\thydrate: true,\n\tresponse: () => {\n\t\tconsole.info(\"rendered\");\n\t}\n});\n```\n\n* Render the element in the root;\n\n```shell\nconst element = <h1>Hello, world!</h1>;\nroot.render(element);\n```\n\n`<h1>Hello, world!</h1>`\n\n* Remove the element in the root;\n\n```shell\nroot.unmount();\n```\n\n# .hydrateRoot(container, component):\n* hydrate the element in the root;\n\n```shell\nconst name = \"Boteasy\";\nconst container = document.querySelector(\"#root\");\nhydrateRoot(container, <h1>Hello, {name}.</h1>);\n```\n\n`<h1>Hello, Ronaldo S.</h1>`\n\n# .StrictMode():\n* ???\n\n```shell\nconst App = (\n\t<StrictMode element={<h1>Hello, world!</h1>} />\n);\n```\n\n```shell\nconst App = (\n\t<StrictMode>\n\t\t<h1>Hello, world!</h1>\n\t</StrictMode>\n);\n```\n\n# .StyleProvider({ theme: object }|undefined):\n* ???\n\n```shell\nconst provider = {color: \"#000\", fontWeight: \"bold\"};\n```\n\n```shell\nconst App = (\n\t<StyleProvider theme={provider}>\n\t\t<>{/*@__DATA__*/}</>\n\t</StyleProvider>\n);\n```\n\n```shell\nconst App = (\n\t<StyleProvider theme={provider} element={<>{/*@__DATA__*/}</>} />\n);\n```\n\n# .createElement(any, null|object, any[]|undefined):\n# .jsxDEV(any, null|object, any[]|undefined):\n* This function serves to create elements to be rendered by Boteasy-dom;\n\n```shell\ncreateElement(StrictMode, null,\n\tcreateElement(Fragment, null,\n\t\tcreateElement(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#000\", fontWeight: \"bold\"}\n\t\t})\n\t)\n);\n```\n\n```shell\njsxDEV(StrictMode, null,\n\tjsxDEV(Fragment, null,\n\t\tjsxDEV(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#000\", fontWeight: \"bold\"}\n\t\t})\n\t)\n);\n```\n\n`Both methods are the same.`\n\n`<input type=\"email\" class=\"boteasy\" style=\"color: #000;font-weight: bold\">`\n\n# .cssClass(string|undefined):\n* This function is for you to add or remove multiple class on one or multiple elements;\n\n```shell\ncssClass(\"input, select\").toggle(\"boteasy, dom\");\n```\n\n```shell\nconst css = cssClass(\"input, select\");\n```\n\n```shell\ncss.add(\"boteasy, dom\");\n```\n\n```shell\ncss.remove(\"dom\");\n```\n\n```shell\ncss.toggle(\"dom\");\n```\n\n# .globalStyle(object):\n* ???\n\n```shell\nconst GlobalStyle = globalStyle({\n\tcolor: \"#000\",\n\tfontWeight: \"bold\"\n\tbackgroundColor: \"#fff8\"\n});\n```\n\n`<GlobalStyle />`\n\n`GlobalStyle()`\n\n# .cssStyled(object):\n* ???\n\n```shell\nconst css = cssStyled({\n\tcolor: \"#ff6347\",\n\tfontWeight: 600\n});\n```\n\n`<h1 class={css} />`\n\n`jsxDEV(\"h1\", {className: css});`\n\n# .styled(string, object):\n* ???\n\n```shell\nconst Style = cssStyled(\"boteasy-dom\", {\n\tcolor: \"#ff6347\",\n\tfontWeight: 600\n});\n```\n\n`<Style><h1>Hello, world!</h1></Style>`\n\n`jsxDEV(Style, null, jsxDEV(\"h1\", null, \"Hello, world!\"));`\n\n`final: <boteasy-dom class=\"jss-...\"><h1>Hello, world!</h1></boteasy-dom>`\n\n# .rgba(string, number|undefined):\n* This function is for you to convert a hex color to rgba!\n\n```shell\nrgba(\"#fff\", 0.4); \n```\n\n`rgba(255,255,255,0.4)`","licenseText":"MIT License\n\nCopyright (c) since 2020 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.","_id":"boteasy-dom@1.2.6-next-71h91oxp-types","dist":{"shasum":"8dd25540d61afeef5a6189060cd9b7d0c71956ab","integrity":"sha512-m5u5ufCgiktVMnrT1zkTV9rDt/DTA1y8Z5GT6ZLgZpjN5A4D8h93zzy2kGSjeO2b1Q4hco9gyX91v2x83LWiGg==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.6-next-71h91oxp-types.tgz","fileCount":7,"unpackedSize":36567,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFGKSjE3JOsgEW3nNBUDzkhEr+vSunZsb1qLblqVBz3uAiEAk5HjrPIC4oPsGghy0B+NlIOBYxgcTyARwL5CSKEfj2g="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjkTTuACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrejQ/+PiffwoUG4oFbWvQ2NQd2rTFxfWYzKQe4sNjUm+0JQAdfuVqq\r\njtAEEEcmNencCjfWAUHbfVpC7GVpxP6dBxy9Pmp7uurW3sQSiVBDJQqlooE2\r\nebWrf13kpvLTWoF50qPlxCYUYUBMPT6usZxalEGF32yqp4YZvBRbubea8H48\r\ntdZOGvobg03Ohs1Ck6oqdOZihJvltxBzpxFTY5zW6W/dL6jHZ0l3BzkX8i4V\r\nH/4eHjFkyshfld5siYOFNEL+lnmIhToIAMUUuPo2wDDO3gsVVLtGmHNafp2A\r\npgAKHEiOk+ZYxZ1M5b/guB8jafic4mkE4bB7LQ0VJMVUsBBRS4dV130oBmBo\r\n3gDIBw8R44XQccYhKUEZMBKZ+dEDOo7A26AO+0FawDOdvukfvQPOx4Er8cJi\r\nUAh54XuJVexM33xdm8ywvUYE3e93MFOUIE3fhWpqhcXnI7zbBjwTHkFhRPMx\r\n9pzXdrn1JDWmwMKcEXYCHcqWIxKyXiKYDiOco8rYWOcF3a50fzRWzJRVEND0\r\n82TA39OwGMtAJoY9+f/luOs9p3EX+RjEoI1HgHL1Cs4SpYIpWhtj4eAJaxGO\r\n9xhL5OG2oshNLeWK6+OrFhFx32XyLgFdJc//7vFdOZRCNGw++dhOJYHm664E\r\n0rbPZjRBjf9jRjnNl59V/w4s8qiFVNJi2r4=\r\n=KXiX\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.6-next-71h91oxp-types_1670460654450_0.6369244980744888"},"_hasShrinkwrap":false},"1.2.6":{"name":"boteasy-dom","description":"This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.","version":"1.2.6","license":"MIT","author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["react","router","boteasy-dom","boteasy","dom","rgb","JSX","jQuery","AJAX","storage","match","vibrate","vdom","components","front-end","framework","virtual dom","user interface","styled","css styled","styled agnostic","global style"],"main":"index.js","types":"index.d.ts","scripts":{},"engines":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"https://github.com/theronaldostar/boteasy-dom"},"licenseText":"MIT License\n\nCopyright (c) since 2021 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"boteasy-dom@1.2.6","dist":{"shasum":"e08a6c027ace9e5d68bf879f0a1b630c1bcba2ef","integrity":"sha512-lJrLUegzXHnb0gu5U+Pm/SC4Hrf0KDByv5upNCmyFnLhQx7ekYloLhnbEFySUnb8K+HPWBgKgR60c8f75kuynQ==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.6.tgz","fileCount":7,"unpackedSize":41882,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDn2YvHGJV3Ep5sep5IEh52iDa4EWhBJTkhDN0O+KehkAiB59yn8g9pQvRPWK+lTtZZcSod+FSsG1TVYgSEB72Fe2w=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjnZLpACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq9ng//YXH7gw2qCdCa/MybS7RTeFRJbuoMneAl5vfoajmqWkC8hnBm\r\nyNkKg0lg16nspJ+T6GIQ9QNTl3vG8N/ywkgpOyfLl2aOFh2MlAeBKfmqDw56\r\n17ny8RSnt6aDGY07ioAKaJHIey7Vk+AugbHdP31ir9BcJzQ0WQuU1yUGSboS\r\nt8vYybhZasuot6mItDYTKG/R/sV0Lfn6vyXIYPbDtUy1caJPskDB9VzenOCL\r\nPZo2nObiYZTOLg73ewxQywmEP5KxaXgfsrpxHo1iiu/qga7GUwdu0YB4hl7u\r\nE6vZ9oi0D/nwFLYzbf0ZV2VjoZKIY77GOzzvhDt9FN4iMr0ubXRPdFtQj/A7\r\ngBKISmPMRpJcZpA8Y7F6NKPqdn1mju+g4LgnPjKNZZC8zla96MmQq4TFInZL\r\nhEk92tHL5aNw2XZUl5+MAMYuGEmKD43r7Gd1UB5Gfkc8BA1DXiw7vwzXklXk\r\nb1LmNmdlWqZ16Wkr8CPKhi6zIi3+Zv4WEhBoNF+BQl8MZL7b252ROFm/cC/G\r\nsOAWvUTPw9D5h7liOYXnemaymHAHjm0E90PHdaCY732cpOALQX/c4/9le2io\r\nfwp6Y0sXPiSmuQ2I//SZc3tSmJ021DSTgUH6impEiHXqR+JMlU6LqwNfuZ+H\r\nJKjzePrxHg0PpTqOGv3gWJZoA92mIQlMClc=\r\n=4CHv\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.6_1671271145590_0.03723708676891557"},"_hasShrinkwrap":false},"1.2.6-remake":{"name":"boteasy-dom","description":"This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.","version":"1.2.6-remake","license":"MIT","author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["react","router","boteasy-dom","boteasy","dom","rgb","JSX","jQuery","AJAX","storage","match","vibrate","vdom","components","front-end","framework","virtual dom","user interface","styled","css styled","styled agnostic","global style"],"main":"index.js","types":"index.d.ts","scripts":{},"engines":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"https://github.com/theronaldostar/boteasy-dom"},"licenseText":"MIT License\n\nCopyright (c) since 2021 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"boteasy-dom@1.2.6-remake","dist":{"shasum":"6a2eb90c1b31409f8061671eb71283dec9ad0abd","integrity":"sha512-/1tjsk1Vpv476ZCngnxksiD0QILtqKlr3D7xkysMp59WwvfxOwAfYY82ixNCvKXQZshnE6ADYoVshB9tDyuKBA==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.6-remake.tgz","fileCount":7,"unpackedSize":41894,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICNsYEbVSPTXLzIl12FreNugZeZQzhgxZ4C5bb6Y7emLAiEAx4Z31LChe5ay+3UB874i2enBLxifTcQeB1nwrNs+6fE="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjnZZFACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrEoQ/+LwKPfi18QkQrE/ZhLSpqTIYdjuwK0jRi6L81ZtWqM/kEg3ik\r\nRVHNIFX17z9unI3erd3z/eola+Ycg8TynlCPGCdljyOjq3KQ/bDzR6hU5msR\r\n116uEoypS3MOP777u5fN6umNSjLR8kphL4PvhTFgEshbaCdkarFyAug+dBy4\r\n8FzFbOFZ/7r6B5jTpLDMl77TThLP2TKdsIT+SsVc8fTt+1b8ZFCqTIN3v5Nb\r\nijamVatwFYJwF+Y9eLqHJ8FDXZKjgjKxva1iP7eHz0Db3BNbGnrNyaGATBcm\r\n9BG1FX4ZcrqdkdHHprLpwoJFqHAawtehAaxt0X1Y5Yv7rmX+McgXNMsTYCwO\r\nNKrbI2xG8P/fCFSxj+QUgTKurAp87ELo93CsNVfOHidNX1U6hssCFyWrUC88\r\nrl0/0m+z3j07LdVFzTjCIdM7vK6wBDphyIfbCbab2k4tIqhffEBBqo9LR14b\r\ncFgterfcqW4ET2kRN8Ds2xYI5hR+gwJRIlZu+7MocjMZxIxEtKOYkt3HQ6qv\r\n/T97X+dizqEKv2R0zM5hSgoRG14tAxnWqcQ5lOj43psX7VXEVOc8VJ+I6v/Z\r\n0RQ80JfAFd40dAdFoCPObMN1xH7G1u4tTNeBFq7P1vBU3iqInvQ5GdYHI2YN\r\nbhFGjwgFeV+wCaAaG8wS0STcoZfqQlmZzSk=\r\n=1rSE\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.6-remake_1671272005711_0.5622452098586304"},"_hasShrinkwrap":false},"1.2.7":{"name":"boteasy-dom","description":"This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.","version":"1.2.7","license":"MIT","author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["react","router","boteasy-dom","boteasy","dom","rgb","JSX","jQuery","AJAX","storage","match","vibrate","vdom","components","front-end","framework","virtual dom","user interface","styled","css styled","styled agnostic","global style"],"main":"index.js","types":"index.d.ts","scripts":{},"engines":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"https://github.com/theronaldostar/boteasy-dom"},"licenseText":"MIT License\n\nCopyright (c) since 2021 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"boteasy-dom@1.2.7","dist":{"shasum":"9543c442497620217b6c3a552487ed2094fb96a2","integrity":"sha512-xxGd9UAzuNYCvuyd8XNRl9mTB1qWD4/1vs++HJxH8O3VL6cvJha2raQnrpyr/9FbMNia+/Wo3yunvfoP31cAUA==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.7.tgz","fileCount":7,"unpackedSize":41950,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGfaBM3iT+XWa8yVRdgwVL6iVegO9j3MUFiR9LoeRUWkAiBqjADc62l+3ZtXI7Vo79Y2JPpbi7WwazHjAXi86dnhbw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjnawaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqTjw//Y5kDz9jC0vqiSCax37UUguz6gC1Maj54zpPyaE4ZmgxcX8dt\r\nUVS7xZfjILX6l6ai98GVPy7Tam12tTrWDqZ2FRr9WWm9W4c3ZVvk9/+ekOwm\r\n0Obs2EFBOgfkcarSL+Nzfm0l9xtxm68sv5V0JI747mE3y+VQKmwPXvuoDwkO\r\nOT9y2PrCCPhfRhmKsGxG/hgre6PN2Db47i8u4s7zFtRGUamz+bPKk6KaupxD\r\ntTPNxRscR380jNil4QvWVCrKKSnsbYCSc0t5jmu36jyn/bJtX1Mbco8r6f84\r\nmy8oRVrAOVTIk/c5rck42vfMLeBa8PWILQ4e0gJx4XaVYHnEAfXHKOMUKzdr\r\nbl2QHe+x2zaEDf/+5X/grr7FGpSWD87nwcXSbXVix5yZzBX/IRgSYZmF0P3K\r\ncu3WB1GjmrNDPt9iKgl7UdGwCDlGgNbuWxWnoGzQhaI9eKOmqr7hs7YiwTs4\r\nTN8xco/RWPq/ASV+0B4BPTf8XTpWMV+rip0Ew2bucitrZWE2KCKV6L/Ibli/\r\niQNNVtaKFl7BhvXAegUGoa2zRBnNxKfEfjvrqFVrpEqgLjL79preCCfwd4oW\r\n/OROzgFS+UqmgUcj43GLwSJu9MtZrWob/aYuIhUv/x1NRdrEFZwtZDEbvlsV\r\nzrbpNW8uYW25pdvs9+6r+/Id6RW5cvMJUVg=\r\n=E6i1\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.7_1671277593849_0.47465166757461974"},"_hasShrinkwrap":false},"1.2.8-next-remeke-1.2.7":{"name":"boteasy-dom","description":"This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.","version":"1.2.8-next-remeke-1.2.7","license":"MIT","author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["react","router","boteasy-dom","boteasy","dom","rgb","JSX","jQuery","AJAX","storage","match","vibrate","vdom","components","front-end","framework","virtual dom","user interface","styled","css styled","styled agnostic","global style"],"main":"index.js","types":"index.d.ts","scripts":{},"engines":{},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"https://github.com/theronaldostar/boteasy-dom"},"readmeFilename":"README.md","readme":"# [BoteasyDOM](https://boteasy.net/) &middot; [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/theronaldostar/boteasy-dom/blob/main/LICENSE)  [![npm version](https://img.shields.io/npm/v/boteasy-dom.svg?style=flat)](https://www.npmjs.com/package/boteasy-dom)  [![npm version](https://badge.fury.io/js/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)  [![Downloads](https://img.shields.io/npm/dm/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)\n\n* This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.\n---\n# How to use?\n\n```shell\nnpm i boteasy-dom\n```\n\n```shell\nyarn add boteasy-dom\n```\n\n# Quick use:\n\n```jsx\nimport { useState, createRoot } from \"boteasy-dom\";\n\nconst App = () => {\n\tconst [count, setCount] = useState(0);\n\treturn (\n\t\t<>\n\t\t\t<h1>{count}</h1>\n\t\t\t<button onClick={() => setCount(prev => (prev + 1))}>Increment</button>\n\t\t</>\n\t);\n};\n\nconst container = document.querySelector(\"#root\");\nconst root = createRoot(container);\nroot.render(<App />);\n```\n\n# Import:\n\n```shell\nimport BoteasyDOM from \"boteasy-dom\";\n/**\n * @jsx jsxDEV\n * @jsxFrag Fragment\n * @jsxRuntime classic\n*/\nconst {  } = BoteasyDOM;\n```\n\n# .theme:\n* ???\n\n```shell\nconst scheme = theme;\n```\n\n# .version:\n* A boteasy-dom version\n\n```shell\nconst ver = version;\n```\n\n# .Fragment:\n* Allows a component to return multiple elements grouped a list of children without adding extra nodes to the DOM\n\n```shell\n<>{/*@__DATA__*/}</>\n```\n\n# .match(object, string|null):\n* This function is a direct alternative to \"switch ~ case\", and is based on the match function of the php language\n\n```shell\nconst index = null;\nmatch({\n\tfirst: \"boteasy\",\n\tlast: \"dom\",\n\tdefault: \"test\"\n}, index);\n```\n\n# .useId(number|undefined, boolean|undefined):\n* ???\n\n```shell\nconst inputId = useId(2);\n```\n\n`returns: :string:`\n\n\n```shell\nconst inputId = useId(2, true);\n```\n\n`returns: string`\n\n`<input type=\"text\" id={inputId} />`\n\n`jsxDEV(\"input\", {type: \"text\", id: inputId})`\n\n# .useRef(any|function):\n* ???\n\n```shell\nconst email = useRef(() => {\n\tlet name = \"boteasy.dom\";\n\treturn `${name}@example.com`;\n});\n```\n\n`<input type=\"email\" ref={email} />`\n\n`jsxDEV(\"input\", {type: \"email\", ref: email})`\n\n`let yourEmail = email.value;`\n\n# .useHtml(selector, value):\n* This function serves to add or remove an element in the DOM\n\n```shell\nuseHtml(\"#root\", `<h1>Hello, world!</h1>`);\n```\n\n# .useAppend(selector, string, boolean|undefined):\n* ???\n\n```shell\nuseAppend(\"#root\", `<div>Text</div>`);\n```\n\n`Just inside the element, before its first child.`\n\n```shell\nuseAppend(\"#root\", `<div>Text</div>`, true);\n```\n\n`Just inside the element, after its last child.`\n\n# .useWait(bolean|string):\n* This function is for you to disable all elements;\n\n```shell\nuseWait(true);\n```\n\n```shell\nuseWait(false);\n```\n\n# .useProp(selectors, attribute, any):\n* This function is used to enable/disable elements or select an input type checkbox, for example;\n\n```shell\nuseProp(\"input, select\", \"disabled\", true);\n```\n\n```shell\nuseProp(\"input\", \"disabled\", false);\n```\n\n# .useRequest({}):\n* This function serves to perform AJAX requests;\n\n```shell\nuseRequest({\n\turl: \"https://www.example.com/api/\",\n\tmethod: \"GET\",\n\theaders: {},\n\tdata: {},\n\tdataType: \"json\",\n\tsuccess: () => {},\n\terror: () => {},\n\tfinally: () => {}\n});\n```\n\n# .useVibrate(number|number[]|undefined):\n* ???\n\n```shell\nuseVibrate(100);\n```\n\n`100ms`\n\n```shell\nuseVibrate([500, 110, 500, 110, 450, 110, 200, 110, 170, 40, 450, 110, 200, 110, 170, 40, 500]);\n```\n\n`starwars`\n\n```shell\nuseVibrate([150, 150, 150, 150, 75, 75, 150, 150, 150, 150, 450]);\n```\n\n`powerrangers`\n\n# .useClipboard(string, function|undefined):\n* This function serves to copy a text to a clipboard;\n\n```shell\nconst text = \"Just a test!\";\nuseClipboard(text, () => {\n\tconsole.info(\"Text copied to clipboard.\");\n});\n```\n\n# .isObj(any):\n* ???\n\n```shell\nconst is = isObj({ name: \"Boteasy\" });\n```\n\n# .useTwins(string|{}|[], string|{}|[]):\n* As the name says, this function is for you to compare if two objects or array are equal.\n\n```shell\nconst array = [\"boteasy\", \"dom\"];\nconst array2 = [\n\t\"boteasy\",\n\t\"dom\",\n\t\"version\": [\"latest\"]\n];\nuseTwins(array, array2);\n```\n\n# .useFloat(number|string, number):\n* ???\n\n```shell\nconst total = 100.123;\nuseFloat(total, 2);\n```\n\n# .useState(any|function):\n* This function is just for adding some local states.\n\n```shell\nconst [state, setState] = useState(9);\nsetState(prev => (prev + 1));\n```\n\n# .useEffect(function, []|undefined):\n* ???\n\n```shell\nlet name = \"boteasy\";\nconst boteasyTest = text => console.info(`Hello, ${text}!`);\nuseEffect(() => {\n\tboteasyTest(name);\n\t/**\n\t * TODO: Under Construction\n\t * this function is incomplete.\n\t*/\n\treturn () => console.info(\"Bye, world!\");\n}, [name]);\n```\n\n# .useStorage():\n* Manipulates: window.localStorage.\n\n```shell\nconst storage = useStorage();\n```\n\n# (string, any|function):\n\n```shell\nstorage(\"theme\", () => {\n\tconst prefers = window.matchMedia(\"(prefers-color-scheme: dark)\").matches;\n\treturn prefers ? \"dark\" : \"light\"\n});\n```\n\n`set`\n\n```shell\nstorage(\"theme\");\n```\n\n`get`\n\n```shell\nstorage()(\"theme\");\n```\n\n`remove`\n\n```shell\nstorage()();\n```\n\n`clear`\n\n# .useNavigate(number|undefined):\n* ???\n\n```shell\nconst navigate = useNavigate(1000);\n```\n\n`1000ms delay`\n\n# (string, boolean|undefined):\n\n`Send the second parameter as false, to removes the current page from the session history and navigates to the given URL.`\n\n```shell\nnavigate();\n```\n\n`reload`\n\n```shell\nnavigate(\"login\");\n```\n\n```shell\nnavigate(\"https://www.example.com/\", false);\n```\n\n# .useScroll(string, object|undefined):\n* ???\n\n```shell\nconst { width, height, x, y } useScroll(\"#root\", { behavior: \"smooth\", offset = { top: 200, left: 0 } });\n```\n\n`methods`\n\n```shell\nheight; //number\n```\n\n```shell\ny.value; //number\n```\n\n```shell\ny.setScroll(100);\n```\n\n```shell\ny.start();\n```\n\n```shell\ny.end();\n```\n\n# .flushAsync(function, any):\n* ???\n\n```shell\nflushAsync(event => {\n\tconsole.info(`Hello, ${event.name}!`);\n}, { name: \"Boteasy\" });\n```\n\n# .createRoot(container, object|bolean|undefined):\n* This function serves to create a route to Boteasy-dom, send the second parameter an object containing an intex with hydrate as true.\n\n```shell\nconst container = document.querySelector(\"#root\");\nconst root = createRoot(container, {\n\thydrate: true,\n\tresponse: () => {\n\t\tconsole.info(\"rendered\");\n\t}\n});\n```\n\n* Render the element in the root;\n\n```shell\nconst element = <h1>Hello, world!</h1>;\nroot.render(element);\n```\n\n`<h1>Hello, world!</h1>`\n\n* Remove the element in the root;\n\n```shell\nroot.unmount();\n```\n\n# .hydrateRoot(container, component):\n* hydrate the element in the root;\n\n```shell\nconst name = \"Boteasy\";\nconst container = document.querySelector(\"#root\");\nhydrateRoot(container, <h1>Hello, {name}.</h1>);\n```\n\n`<h1>Hello, Ronaldo S.</h1>`\n\n# .StrictMode():\n* ???\n\n```shell\nconst App = (\n\t<StrictMode element={<h1>Hello, world!</h1>} />\n);\n```\n\n```shell\nconst App = (\n\t<StrictMode>\n\t\t<h1>Hello, world!</h1>\n\t</StrictMode>\n);\n```\n\n# .StyleProvider({ theme: object }|undefined):\n* ???\n\n```shell\nconst provider = {color: \"#000\", fontWeight: \"bold\"};\n```\n\n```shell\nconst App = (\n\t<StyleProvider theme={provider}>\n\t\t<>{/*@__DATA__*/}</>\n\t</StyleProvider>\n);\n```\n\n```shell\nconst App = (\n\t<StyleProvider theme={provider} element={<>{/*@__DATA__*/}</>} />\n);\n```\n\n# .createElement(any, null|object, any[]|undefined):\n# .jsxDEV(any, null|object, any[]|undefined):\n* This function serves to create elements to be rendered by Boteasy-dom;\n\n```shell\ncreateElement(StrictMode, null,\n\tcreateElement(Fragment, null,\n\t\tcreateElement(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#000\", fontWeight: \"bold\"}\n\t\t})\n\t)\n);\n```\n\n```shell\njsxDEV(StrictMode, null,\n\tjsxDEV(Fragment, null,\n\t\tjsxDEV(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#000\", fontWeight: \"bold\"}\n\t\t})\n\t)\n);\n```\n\n`Both methods are the same.`\n\n`<input type=\"email\" class=\"boteasy\" style=\"color: #000;font-weight: bold\">`\n\n# .cssClass(string|undefined):\n* This function is for you to add or remove multiple class on one or multiple elements;\n\n```shell\ncssClass(\"input, select\").toggle(\"boteasy, dom\");\n```\n\n```shell\nconst css = cssClass(\"input, select\");\n```\n\n```shell\ncss.add(\"boteasy, dom\");\n```\n\n```shell\ncss.remove(\"dom\");\n```\n\n```shell\ncss.toggle(\"dom\");\n```\n\n# .globalStyle(object):\n* ???\n\n```shell\nconst GlobalStyle = globalStyle({\n\tcolor: \"#000\",\n\tfontWeight: \"bold\"\n\tbackgroundColor: \"#fff8\"\n});\n```\n\n`<GlobalStyle />`\n\n`GlobalStyle()`\n\n# .cssStyled(object):\n* ???\n\n```shell\nconst css = cssStyled({\n\tcolor: \"#ff6347\",\n\tfontWeight: 600\n});\n```\n\n`<h1 class={css} />`\n\n`jsxDEV(\"h1\", {className: css});`\n\n# .styled(string, object):\n* ???\n\n```shell\nconst Style = cssStyled(\"boteasy-dom\", {\n\tcolor: \"#ff6347\",\n\tfontWeight: 600\n});\n```\n\n```\n<Style>\n\t<h1>Hello, world!</h1>\n</Style>\n```\n\n`jsxDEV(Style, null, jsxDEV(\"h1\", null, \"Hello, world!\"));`\n\n`final:`\n\n```\n<boteasy-dom class=\"jss-...\">\n\t<h1>Hello, world!</h1>\n</boteasy-dom>\n```\n\n# .rgba(string, number|undefined):\n* This function is for you to convert a hex color to rgba!\n\n```shell\nrgba(\"#fff\", 0.4); \n```\n\n`rgba(255,255,255, 0.4)`\n\n```shell\nrgba(\"black\", .2); \n```\n\n`rgba(0,0,0, 0.2)`\n","licenseText":"MIT License\n\nCopyright (c) since 2021 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"boteasy-dom@1.2.8-next-remeke-1.2.7","dist":{"shasum":"3b64b252d71b84c2df4aed326fea5404173268b4","integrity":"sha512-j4favWOJDsbb80iX13tmQGbAIuJTMAk1vH9tJJi0uK3QhWq342iIAFaY8H22zUTsh0pZVoBh8qx7QZiQYt5flQ==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.8-next-remeke-1.2.7.tgz","fileCount":7,"unpackedSize":42328,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC6Vdj12tQ41a784R3LxhA3sP7t8p75ISOT7/XKrt0J6QIhAMeX8xUIfihdcSj6EO+DCGcCd5wN79UoSFgUmVW/m4O8"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjnlHJACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqZhQ//VfuL0BY9FRXLGBSzQ/mSJdIpb8wI3kTznZ3iHirdQqSDLMV1\r\n+GL/5dWLNRYoNzSWNd7LpAgFGJCAxieIWYB5fqfCIjE4LalwXJAdsjAUML/a\r\n8aufzdy6kZKNI1uZ0LKw/zhajmWX9QqMDIxqTEFHA/i18p5sfCQPWFDSgIbk\r\nm4NcKSa+zzdib9l+7YsVynwlOAcpeJ2ZKDAFLymU9tWl/vJu2DUNFltBn4V9\r\nu74bDs+Rv2w75iGt5V9GLDc3ycRQsHftieApolavprLIcG8hbyi22dir6aR3\r\nkRHkQPrbwWnuRFoNHgq+PWbpodsCoRreIKjkAYjZgtPblT3/YIJHDNVuClie\r\nczt6QyJYMO9aYCQZ58rK9IvkjyJumwPAArwssPIjTv8EmfAo7MJ6CeJU4cav\r\n+7Gi3FwVm/0d/Xymw7qluLDdiC9pOHagUw/VtB9BULN+q/IK7/sEOeojYd2F\r\nDRC5vV5TWrncuQXRcXFCp1m7u8ea/xM/TzZTowLVjCQ9rz2rKpiSBbFgECSn\r\n97GIfuI4lmTvQI7lR8np6mbdOB4vvyRQymAfQCDoovnT77MSw34xhxC10b9p\r\nGc4MoDQcyRrm/9cNxY5uo2vYpORLdns/kCl0QPm6s3XZOqd7KHmMGNoLkCAR\r\npfRrTvB0v3ZntCSPRCkSVAxknLGGDg4iQOI=\r\n=BcXP\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.8-next-remeke-1.2.7_1671320009442_0.08724425356554999"},"_hasShrinkwrap":false},"1.2.8-next-piujzlxrn":{"name":"boteasy-dom","description":"This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.","version":"1.2.8-next-piujzlxrn","license":"MIT","main":"index.js","types":"index.d.ts","scripts":{},"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"contributors":[],"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["AJAX","boteasy-dom","boteasy","clsx","components","css styled","dom","framework","front-end","global style","jQuery","JSX","match","react","router","rgb","storage","styled agnostic","styled","user interface","vdom","vibrate","virtual dom"],"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"https://github.com/theronaldostar/boteasy-dom"},"dependencies":{},"devDependencies":{"prettier":"3.0.0"},"licenseText":"MIT License\n\nCopyright (c) since 2021 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"boteasy-dom@1.2.8-next-piujzlxrn","dist":{"shasum":"bb9390ed8da22c748e5fade42358690fb76bb823","integrity":"sha512-lz3N+98YcHXP1zfnGGVkw1aVTWd6zT8i2G2+/o1pz2YLoQeWHFOhEMWjtfv0WON3Tz2tEtgQEhiP5cDj/olAQA==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.8-next-piujzlxrn.tgz","fileCount":8,"unpackedSize":42352,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAqvbIEbRRHf3Oli/6/KYHCvL+CqUCjo8uQxmZSIp5oFAiEArANmige1BORiAskm3ZeTXQBWCM0j8h7w625D8tGZGOg="}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.8-next-piujzlxrn_1688835361276_0.3031587491690717"},"_hasShrinkwrap":false},"1.2.8":{"name":"boteasy-dom","description":"This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.","version":"1.2.8","license":"MIT","main":"index.js","types":"index.d.ts","scripts":{},"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"contributors":[],"homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["AJAX","boteasy-dom","boteasy","clsx","components","css styled","dom","framework","front-end","global style","jQuery","JSX","match","react","router","rgb","storage","styled agnostic","styled","user interface","vdom","vibrate","virtual dom"],"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"repository":{"type":"git","url":"https://github.com/theronaldostar/boteasy-dom"},"dependencies":{},"devDependencies":{"prettier":"3.0.0"},"licenseText":"MIT License\n\nCopyright (c) since 2021 Boteasy, all rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n","_id":"boteasy-dom@1.2.8","dist":{"shasum":"9cdde391fd9ddd7bdd98ba1b2e9860f24b5673a1","integrity":"sha512-deNjYNkAEm6NeHvT4TpY+8XwAs9Gi6FfSXjM9uVaNVhWvW8qf5V3q6t1YrKHQqv/Eo/EHU/R/DByRvmDhWOOFA==","tarball":"https://registry.npmjs.org/boteasy-dom/-/boteasy-dom-1.2.8.tgz","fileCount":9,"unpackedSize":42478,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDJlWPm5J1WX2Kw0Ajqn3RqoqE14m4A1K/17xUlupHZWgIgff8AyTEcS4fD1i6kAD79LvbhjmZcoCb5hlrNShxO5BM="}]},"_npmUser":{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"},"directories":{},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/boteasy-dom_1.2.8_1688836857317_0.17708265680810986"},"_hasShrinkwrap":false}},"time":{"created":"2021-09-12T21:29:17.441Z","1.0.0":"2021-09-12T21:29:17.555Z","modified":"2023-07-08T17:20:57.679Z","1.0.1":"2021-09-14T01:17:50.246Z","1.0.2":"2021-09-14T05:31:14.696Z","1.0.3":"2021-10-13T17:23:49.615Z","1.0.4":"2021-10-14T20:44:23.593Z","1.0.5":"2021-10-16T19:40:08.624Z","1.0.6-beta":"2021-10-16T22:56:05.383Z","1.0.6":"2021-10-17T21:59:57.624Z","1.0.7-experimental-0-20211031":"2021-10-31T06:04:58.479Z","0.0.0-experimental-l3dtb2q4upq":"2021-11-06T10:16:39.946Z","1.0.7-beta-jzulusz9uj":"2021-11-07T11:26:20.592Z","1.0.7":"2021-11-12T10:25:54.974Z","1.0.8-experimental-ei65g49nmi":"2021-11-12T15:28:51.348Z","1.0.7-correction":"2021-11-12T16:14:40.840Z","1.0.7-correction-1":"2021-11-23T15:19:05.996Z","1.0.8":"2022-02-08T19:18:25.508Z","1.0.9":"2022-02-14T10:26:54.377Z","1.1.0":"2022-02-23T21:41:39.381Z","1.1.1":"2022-02-26T18:15:39.791Z","1.1.2":"2022-03-01T00:56:22.468Z","1.1.2-correction":"2022-03-01T01:07:00.568Z","1.1.3":"2022-03-01T01:34:26.021Z","1.1.4":"2022-03-01T13:42:51.515Z","1.1.5-experimental-l6m74urx6ue":"2022-03-14T09:34:18.682Z","1.1.5":"2022-03-26T07:32:56.997Z","1.1.5-next-jukj1xpvqk-20220331":"2022-04-01T03:00:22.081Z","1.1.6":"2022-04-02T12:25:46.128Z","1.1.6-0923fojegcvn-20220402":"2022-04-02T15:13:41.368Z","1.1.7":"2022-04-02T15:15:49.379Z","1.1.7-next-cxp7kbe6pi5":"2022-04-08T19:31:42.590Z","1.1.7-next-cxp7kbe6pi5-correction":"2022-04-08T19:53:00.581Z","1.1.8-beta-q9mr2v6j10i":"2022-04-08T20:41:49.937Z","1.1.8":"2022-04-15T23:12:54.724Z","1.1.8-next-py5tcgpjrms":"2022-04-15T23:34:54.895Z","1.1.8-next-2xat0i0hgrx":"2022-05-01T10:26:07.359Z","1.1.9":"2022-05-04T03:29:32.918Z","1.2.0-beta-0ixh03hjrnro":"2022-05-10T11:01:46.928Z","1.2.0-next-4u0xm1k9tg5":"2022-05-10T12:09:28.377Z","1.2.0":"2022-05-13T07:14:24.862Z","1.2.0-latest-mgutzcx1k0p":"2022-05-13T07:43:03.777Z","1.2.0-correction":"2022-05-13T07:59:35.033Z","1.2.1-beta-b2c0b7qjwk6":"2022-05-15T22:50:11.859Z","1.2.1":"2022-05-16T13:31:41.159Z","1.2.2-next-0a4h4yswu7wb":"2022-06-20T04:26:33.641Z","1.2.2":"2022-07-26T17:14:37.451Z","1.2.3-beta-yxacgl0kicd":"2022-08-02T23:37:54.773Z","1.2.3-experimental-ddy9lpe4hv":"2022-10-18T14:50:19.599Z","1.2.3-experimental-hi0ct5jcrkw":"2022-10-19T07:38:04.179Z","1.2.3-beta-vwdmtw9":"2022-10-19T22:09:27.846Z","1.2.3":"2022-10-19T22:12:48.718Z","1.2.4-next-n7tax8":"2022-10-23T17:55:09.977Z","1.2.4-next-ep4euk0m5":"2022-10-23T18:31:13.416Z","1.2.4-next-2sb8frif":"2022-10-25T15:46:24.802Z","1.2.4-beta-rslde3ey":"2022-10-26T18:58:04.588Z","1.2.4":"2022-10-27T16:15:31.916Z","1.2.5":"2022-11-24T13:44:51.890Z","1.2.6-next-mrqhaxi":"2022-12-03T05:06:36.393Z","1.2.6-next-71h91oxp":"2022-12-03T05:37:05.752Z","1.2.6-next-71h91oxp-types":"2022-12-08T00:50:54.621Z","1.2.6":"2022-12-17T09:59:05.810Z","1.2.6-remake":"2022-12-17T10:13:25.886Z","1.2.7":"2022-12-17T11:46:34.055Z","1.2.8-next-remeke-1.2.7":"2022-12-17T23:33:29.648Z","1.2.8-next-piujzlxrn":"2023-07-08T16:56:01.548Z","1.2.8":"2023-07-08T17:20:57.507Z"},"maintainers":[{"name":"theronaldostar","email":"Ronaldo.rs44@gmail.com"}],"description":"This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.","homepage":"https://github.com/theronaldostar/boteasy-dom","keywords":["AJAX","boteasy-dom","boteasy","clsx","components","css styled","dom","framework","front-end","global style","jQuery","JSX","match","react","router","rgb","storage","styled agnostic","styled","user interface","vdom","vibrate","virtual dom"],"repository":{"type":"git","url":"https://github.com/theronaldostar/boteasy-dom"},"author":{"name":"Ronaldo S.","email":"ronaldo.rs44@gmail.com"},"bugs":{"url":"https://github.com/theronaldostar/boteasy-dom/issues"},"license":"MIT","readme":"# [BoteasyDOM](https://boteasy.net/) &middot; [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/theronaldostar/boteasy-dom/blob/main/LICENSE) [![npm version](https://img.shields.io/npm/v/boteasy-dom.svg?style=flat)](https://www.npmjs.com/package/boteasy-dom) [![npm version](https://badge.fury.io/js/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom) [![Downloads](https://img.shields.io/npm/dm/boteasy-dom.svg)](https://www.npmjs.com/package/boteasy-dom)\n\n-   This document is inspired by React, React-router, jQuery and styled-components, the aim is to have a merge of everything good in one documentation.\n\n---\n\n# How to use?\n\n```shell\nnpm i boteasy-dom\n```\n\n```shell\nyarn add boteasy-dom\n```\n\n# Quick use:\n\n```jsx\nimport { useState, createRoot } from \"boteasy-dom\";\n\nconst App = () => {\n\tconst [count, setCount] = useState(0);\n\treturn (\n\t\t<>\n\t\t\t<h1>{count}</h1>\n\t\t\t<button onClick={() => setCount(prev => prev + 1)}>Increment</button>\n\t\t</>\n\t);\n};\n\nconst container = document.querySelector(\"#root\");\nconst root = createRoot(container);\nroot.render(<App />);\n```\n\n# Import:\n\n```shell\nimport BoteasyDOM from \"boteasy-dom\";\n/**\n * @jsx jsxDEV\n * @jsxFrag Fragment\n * @jsxRuntime classic\n*/\nconst {  } = BoteasyDOM;\n```\n\n# .theme:\n\n-   ???\n\n```shell\nconst scheme = theme;\n```\n\n# .version:\n\n-   A boteasy-dom version\n\n```shell\nconst ver = version;\n```\n\n# .Fragment:\n\n-   Allows a component to return multiple elements grouped a list of children without adding extra nodes to the DOM\n\n```shell\n<>{/*@__DATA__*/}</>\n```\n\n# .match(object, string|null):\n\n-   This function is a direct alternative to \"switch ~ case\", and is based on the match function of the php language\n\n```shell\nconst index = null;\nmatch({\n\tfirst: \"boteasy\",\n\tlast: \"dom\",\n\tdefault: \"test\"\n}, index);\n```\n\n# .useId(number|undefined, boolean|undefined):\n\n-   ???\n\n```shell\nconst inputId = useId(2);\n```\n\n`returns: :string:`\n\n```shell\nconst inputId = useId(2, true);\n```\n\n`returns: string`\n\n`<input type=\"text\" id={inputId} />`\n\n`jsxDEV(\"input\", {type: \"text\", id: inputId})`\n\n# .useRef(any|function):\n\n-   ???\n\n```shell\nconst email = useRef(() => {\n\tlet name = \"boteasy.dom\";\n\treturn `${name}@example.com`;\n});\n```\n\n`<input type=\"email\" ref={email} />`\n\n`jsxDEV(\"input\", {type: \"email\", ref: email})`\n\n`let yourEmail = email.value;`\n\n# .useHtml(selector, value):\n\n-   This function serves to add or remove an element in the DOM\n\n```shell\nuseHtml(\"#root\", `<h1>Hello, world!</h1>`);\n```\n\n# .useAppend(selector, string, boolean|undefined):\n\n-   ???\n\n```shell\nuseAppend(\"#root\", `<div>Text</div>`);\n```\n\n`Just inside the element, before its first child.`\n\n```shell\nuseAppend(\"#root\", `<div>Text</div>`, true);\n```\n\n`Just inside the element, after its last child.`\n\n# .useWait(bolean|string):\n\n-   This function is for you to disable all elements;\n\n```shell\nuseWait(true);\n```\n\n```shell\nuseWait(false);\n```\n\n# .useProp(selectors, attribute, any):\n\n-   This function is used to enable/disable elements or select an input type checkbox, for example;\n\n```shell\nuseProp(\"input, select\", \"disabled\", true);\n```\n\n```shell\nuseProp(\"input\", \"disabled\", false);\n```\n\n# .useRequest({}):\n\n-   This function serves to perform AJAX requests;\n\n```shell\nuseRequest({\n\turl: \"https://www.example.com/api/\",\n\tmethod: \"GET\",\n\theaders: {},\n\tdata: {},\n\tdataType: \"json\",\n\tsuccess: () => {},\n\terror: () => {},\n\tfinally: () => {}\n});\n```\n\n# .useVibrate(number|number[]|undefined):\n\n-   ???\n\n```shell\nuseVibrate(100);\n```\n\n`100ms`\n\n```shell\nuseVibrate([500, 110, 500, 110, 450, 110, 200, 110, 170, 40, 450, 110, 200, 110, 170, 40, 500]);\n```\n\n`starwars`\n\n```shell\nuseVibrate([150, 150, 150, 150, 75, 75, 150, 150, 150, 150, 450]);\n```\n\n`powerrangers`\n\n# .useClipboard(string, function|undefined):\n\n-   This function serves to copy a text to a clipboard;\n\n```shell\nconst text = \"Just a test!\";\nuseClipboard(text, () => {\n\tconsole.info(\"Text copied to clipboard.\");\n});\n```\n\n# .isObj(any):\n\n-   ???\n\n```shell\nconst is = isObj({ name: \"Boteasy\" });\n```\n\n# .useTwins(string|{}|[], string|{}|[]):\n\n-   As the name says, this function is for you to compare if two objects or array are equal.\n\n```shell\nconst array = [\"boteasy\", \"dom\"];\nconst array2 = [\n\t\"boteasy\",\n\t\"dom\",\n\t\"version\": [\"latest\"]\n];\nuseTwins(array, array2);\n```\n\n# .useFloat(number|string, number):\n\n-   ???\n\n```shell\nconst total = 100.123;\nuseFloat(total, 2);\n```\n\n# .useState(any|function):\n\n-   This function is just for adding some local states.\n\n```shell\nconst [state, setState] = useState(9);\nsetState(prev => (prev + 1));\n```\n\n# .useEffect(function, []|undefined):\n\n-   ???\n\n```shell\nlet name = \"boteasy\";\nconst boteasyTest = text => console.info(`Hello, ${text}!`);\nuseEffect(() => {\n\tboteasyTest(name);\n\t/**\n\t * TODO: Under Construction\n\t * this function is incomplete.\n\t*/\n\treturn () => console.info(\"Bye, world!\");\n}, [name]);\n```\n\n# .useStorage():\n\n-   Manipulates: window.localStorage.\n\n```shell\nconst storage = useStorage();\n```\n\n# (string, any|function):\n\n```shell\nstorage(\"theme\", () => {\n\tconst prefers = window.matchMedia(\"(prefers-color-scheme: dark)\").matches;\n\treturn prefers ? \"dark\" : \"light\"\n});\n```\n\n`set`\n\n```shell\nstorage(\"theme\");\n```\n\n`get`\n\n```shell\nstorage()(\"theme\");\n```\n\n`remove`\n\n```shell\nstorage()();\n```\n\n`clear`\n\n# .useNavigate(number|undefined):\n\n-   ???\n\n```shell\nconst navigate = useNavigate(1000);\n```\n\n`1000ms delay`\n\n# (string, boolean|undefined):\n\n`Send the second parameter as false, to removes the current page from the session history and navigates to the given URL.`\n\n```shell\nnavigate();\n```\n\n`reload`\n\n```shell\nnavigate(\"login\");\n```\n\n```shell\nnavigate(\"https://www.example.com/\", false);\n```\n\n# .useScroll(string, object|undefined):\n\n-   ???\n\n```shell\nconst { width, height, x, y } = useScroll(\"#root\", { behavior: \"smooth\", offset = { top: 200, left: 0 } });\n```\n\n`methods`\n\n```shell\nheight; //number\n```\n\n```shell\ny.value; //number\n```\n\n```shell\ny.setScroll(100);\n```\n\n```shell\ny.start();\n```\n\n```shell\ny.end();\n```\n\n# .flushAsync(function, any):\n\n-   ???\n\n```shell\nflushAsync(event => {\n\tconsole.info(`Hello, ${event.name}!`);\n}, { name: \"Boteasy\" });\n```\n\n# .createRoot(container, object|bolean|undefined):\n\n-   This function serves to create a route to Boteasy-dom, send the second parameter an object containing an intex with hydrate as true.\n\n```shell\nconst container = document.querySelector(\"#root\");\nconst root = createRoot(container, {\n\thydrate: true,\n\tresponse: () => {\n\t\tconsole.info(\"rendered\");\n\t}\n});\n```\n\n-   Render the element in the root;\n\n```shell\nconst element = <h1>Hello, world!</h1>;\nroot.render(element);\n```\n\n`<h1>Hello, world!</h1>`\n\n-   Remove the element in the root;\n\n```shell\nroot.unmount();\n```\n\n# .hydrateRoot(container, component):\n\n-   hydrate the element in the root;\n\n```shell\nconst name = \"Boteasy\";\nconst container = document.querySelector(\"#root\");\nhydrateRoot(container, <h1>Hello, {name}.</h1>);\n```\n\n`<h1>Hello, Ronaldo S.</h1>`\n\n# .StrictMode():\n\n-   ???\n\n```shell\nconst App = (\n\t<StrictMode element={<h1>Hello, world!</h1>} />\n);\n```\n\n```shell\nconst App = (\n\t<StrictMode>\n\t\t<h1>Hello, world!</h1>\n\t</StrictMode>\n);\n```\n\n# .StyleProvider({ theme: object }|undefined):\n\n-   ???\n\n```shell\nconst provider = {color: \"#000\", fontWeight: \"bold\"};\n```\n\n```shell\nconst App = (\n\t<StyleProvider theme={provider}>\n\t\t<>{/*@__DATA__*/}</>\n\t</StyleProvider>\n);\n```\n\n```shell\nconst App = (\n\t<StyleProvider theme={provider} element={<>{/*@__DATA__*/}</>} />\n);\n```\n\n# .createElement(any, null|object, any[]|undefined):\n\n# .jsxDEV(any, null|object, any[]|undefined):\n\n-   This function serves to create elements to be rendered by Boteasy-dom;\n\n```shell\ncreateElement(StrictMode, null,\n\tcreateElement(Fragment, null,\n\t\tcreateElement(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#000\", fontWeight: \"bold\"}\n\t\t})\n\t)\n);\n```\n\n```shell\njsxDEV(StrictMode, null,\n\tjsxDEV(Fragment, null,\n\t\tjsxDEV(\"input\", {type: \"email\", className: \"boteasy\", style: {color: \"#000\", fontWeight: \"bold\"}\n\t\t})\n\t)\n);\n```\n\n`Both methods are the same.`\n\n`<input type=\"email\" class=\"boteasy\" style=\"color: #000;font-weight: bold\">`\n\n# .cssClass(string|undefined):\n\n-   This function is for you to add or remove multiple class on one or multiple elements;\n\n```shell\ncssClass(\"input, select\").toggle(\"boteasy, dom\");\n```\n\n```shell\nconst css = cssClass(\"input, select\");\n```\n\n```shell\ncss.add(\"boteasy, dom\");\n```\n\n```shell\ncss.remove(\"dom\");\n```\n\n```shell\ncss.toggle(\"dom\");\n```\n\n# .useMarginClass(string | string[]):\n\n-   ???\n\n```shell\nconst baseClass = useMarginClass(\"boteasy\");\n```\n\n`\"boteasy\"`\n\n```shell\nconst baseClass = useMarginClass(\"boteasy\", \"dom\");\n```\n\n` \"boteasy dom\"`\n\n```shell\n<div className={baseClass}>...</div>\n```\n\n`\"<div class=\"boteasy dom\">...</div>\"`\n\n# .globalStyle(object):\n\n-   ???\n\n```shell\nconst GlobalStyle = globalStyle({\n\tcolor: \"#000\",\n\tfontWeight: \"bold\"\n\tbackgroundColor: \"#fff8\"\n});\n```\n\n`<GlobalStyle />`\n\n`GlobalStyle()`\n\n# .cssStyled(object):\n\n-   ???\n\n```shell\nconst css = cssStyled({\n\tcolor: \"#ff6347\",\n\tfontWeight: 600\n});\n```\n\n`<h1 class={css} />`\n\n`jsxDEV(\"h1\", {className: css});`\n\n# .styled(string, object):\n\n-   ???\n\n```shell\nconst Style = cssStyled(\"boteasy-dom\", {\n\tcolor: \"#ff6347\",\n\tfontWeight: 600\n});\n```\n\n```\n<Style>\n\t<h1>Hello, world!</h1>\n</Style>\n```\n\n`jsxDEV(Style, null, jsxDEV(\"h1\", null, \"Hello, world!\"));`\n\n`final:`\n\n```\n<boteasy-dom class=\"jss-...\">\n\t<h1>Hello, world!</h1>\n</boteasy-dom>\n```\n\n# .rgba(string, number|undefined):\n\n-   This function is for you to convert a hex color to rgba!\n\n```shell\nrgba(\"#fff\", 0.4);\n```\n\n`rgba(255,255,255, 0.4)`\n\n```shell\nrgba(\"black\", .2);\n```\n\n`rgba(0,0,0, 0.2)`\n","readmeFilename":"README.md","contributors":[]}