{"_id":"meshkraft-vto","_rev":"198-7315806904979f7a5242f3e31ae780aa","name":"meshkraft-vto","dist-tags":{"latest":"2.2.18","beta":"2.2.13-beta.2"},"versions":{"1.0.0":{"name":"meshkraft-vto","version":"1.0.0","description":"Meshkraft VTO Core SDK","source":"dev/index.html","browserslist":"> 1%, not dead","targets":{"wrapper":{"source":"dev/demo.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/wrapper"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"demo.js":"index.min.js"}},"dependencies":{"@tensorflow/tfjs":"3.12.0","aws-sdk":"^2.1080.0","crypto-js":"^4.1.1","fetch-progress":"^1.3.0","humanize-duration":"^3.27.0","jslib-html5-camera-photo":"^3.1.8","mathjs":"^10.0.0","numeric":"1.2.6","pako":"^2.0.4","three":"0.132.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.3.2","babel-eslint":"^10.1.0","babel-plugin-module-resolver":"^4.1.0","eslint":"^8.4.0","parcel":"2.3.2","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","build":"parcel build --detailed-report --log-level verbose --no-source-maps","build:demo":"rm -rf ./dist/** && parcel build ./dev/demo.html --detailed-report --log-level verbose --no-source-maps","copy_assets":"mkdir -p ./dist && cp -R ./dev-media ./model_data ./dist","copy_assets_windows":"if exist .\\dist rmdir /q /s .\\dist && mkdir .\\dist && mkdir .\\dist\\dev-media && mkdir .\\dist\\model_data && xcopy /s .\\dev-media .\\dist\\dev-media\\ && xcopy /s .\\model_data .\\dist\\model_data\\","clear_parcel_cache":"ls -d  .parcel-cache/* | grep -v -e primary.crt -e private.pem | xargs rm","clear_parcel_cache_windows":"powershell Remove-Item  -recurse ./.parcel-cache/* -exclude primary.crt, private.pem","dev":"npm run copy_assets && npm run clear_parcel_cache && parcel serve --https","dev:demo":"npm run copy_assets && npm run clear_parcel_cache && parcel ./src/index.js ./dev/demo.html --https","dev_windows":"npm run copy_assets_windows && npm run clear_parcel_cache_windows && parcel serve --https"},"repository":{"type":"git","url":"git+https://github.com/ARTLabs-Engineering/vto-research.git"},"author":{"name":"ART Labs Engineering","url":"engineering@artlabs.ai"},"license":"ISC","bugs":{"url":"https://github.com/ARTLabs-Engineering/vto-research/issues"},"homepage":"https://github.com/ARTLabs-Engineering/vto-research#readme","gitHead":"2f953fa06709019a4f4f809ab026584927293a17","_id":"meshkraft-vto@1.0.0","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-gQazakxTnI6ONzPgo3WfdeaKfqX3A29E2xBFNSldhsE4PPeTsMDniuHCeZNNZEuNAVjYhsxsyymHlppelslOUQ==","shasum":"5641bdee16885ea4724503693fc3c9431834cc60","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.0.0.tgz","fileCount":3,"unpackedSize":22358,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiIe+3ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrTvA/+I8afQvddeGKIzC4wqj5kW1dV3SXmFcqe9snWH5rCuoUHrG/K\r\npfpXxboZDmlhE1nZgcEJJXhIpvcL9EA4SIf/OXz0R+P3qvQ36eWqOYiJAkQj\r\nF+F/5p5JyGBHwZXcYLeoGfquWD42U2G6ikocB9KgK8wbscq+nDQ/o30KYyBF\r\n+STlCCvg+lj3q0VEPNICI5GCpx81CsqHFP+VK0pXcXVkAKrn0uOs6xFDSJKb\r\nDqqhIhpzCsKVi/tXQvku93zvh1XMTMOW/TnCny35+V/b3ZXjnAjRGIqEj4Jy\r\nvqC0Zcc0AI827vYajWhL8HZ8z3jqaRpgoDnOrMN5pQW1A4WSpUov5+f/rcUw\r\nAE6qealnrLGvQC6O5pj13/panuddocQTA/Ozkn1T/2ZV0T8t9pf0Y3tB/xTb\r\ne+LuLD/8LZEfLTFl2y0AsYLiXo0f1SvCg5ZR6MyT6NVeZDs2GLn9DC/CplZe\r\nsrFdvFYe2+NlDinwkvYNKR3WUpenOplwpKLn0XnnpF1LnuEvoVXfxi+boQSv\r\ninUXlgZLK6QqFtj5Ykc5aIJtNK/n0TBDrqZVrjPBOUae8Jqzs98OPKNZWPeR\r\nQseRrZrCLTbcJ83PHTijMIpRC8tSwNU4rPHOoe8rqAOolc2eFwpvUivWXkeo\r\nlsxiGJr4vCOP/miU7DTwszC59ksaGQTgsG4=\r\n=Der2\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCs/rTtxlXaX0eWDT86sd/jZxAn/sXjtyJ+HPygfdAW7AIgP7n6Zh4WoYMB8KMZ2v/V6o/UJ5hZX8D9QsYa07ZSsU8="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.0.0_1646391223515_0.44810932988420205"},"_hasShrinkwrap":false},"1.0.1":{"name":"meshkraft-vto","version":"1.0.1","description":"Meshkraft VTO Core SDK","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"source":"demo.js","browserslist":"> 1%, not dead","targets":{"wrapper":{"source":"demo.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"../dist/wrapper"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"demo.js":"index.min.js"}},"dependencies":{"jslib-html5-camera-photo":"^3.1.8"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.3.2","babel-eslint":"^10.1.0","babel-plugin-module-resolver":"^4.1.0","eslint":"^8.4.0","parcel":"2.3.2","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","build":"parcel build --detailed-report --log-level verbose --no-source-maps","build:demo":"rm -rf ./dist/** && parcel build ./dev/demo.html --detailed-report --log-level verbose --no-source-maps","copy_assets":"mkdir -p ./dist && cp -R ./dev-media ./model_data ./dist","copy_assets_windows":"if exist .\\dist rmdir /q /s .\\dist && mkdir .\\dist && mkdir .\\dist\\dev-media && mkdir .\\dist\\model_data && xcopy /s .\\dev-media .\\dist\\dev-media\\ && xcopy /s .\\model_data .\\dist\\model_data\\","clear_parcel_cache":"ls -d  .parcel-cache/* | grep -v -e primary.crt -e private.pem | xargs rm","clear_parcel_cache_windows":"powershell Remove-Item  -recurse ./.parcel-cache/* -exclude primary.crt, private.pem","dev":"npm run copy_assets && npm run clear_parcel_cache && parcel serve --https","dev:demo":"npm run copy_assets && npm run clear_parcel_cache && parcel ./src/index.js ./dev/demo.html --https","dev_windows":"npm run copy_assets_windows && npm run clear_parcel_cache_windows && parcel serve --https"},"gitHead":"2f953fa06709019a4f4f809ab026584927293a17","_id":"meshkraft-vto@1.0.1","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-/wLtLrYNns3XnnrPNvfvURPRxi3Hqu3p1iq3OVHKr9EyTpPUTNsyvrqLCW81XHS3lcLP8C9jU4UQDX/7tNK5XQ==","shasum":"1774d285f3bb3d0830b3ef760254cb5f09216187","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.0.1.tgz","fileCount":2,"unpackedSize":2128,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiIfKtACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoH9Q//Vh+WM5HFqsvqGHl+sEeoCnutSSjOGNdBTN/PEvDpdO86a2fY\r\nuadDBY9UFWcTRV6u80xxg+T8Rnmy6SvM2mNBKpqsjH3Eyv8f9UfV6rDW1mB3\r\n3S08xETBfghvjXu5F7rVXkhTrpXOrYDrSf9m219EqYui6ntkxlIIN7zCrr/K\r\n023FmR5U3uYsd/bx8edH7JkO89ErOFEJNF31oVosECrSyiSsMzzLvm3AvOpH\r\n/kaOUtLlbV9hf2NNgZBkY5US2zazpIhhU/0QO5PMCuDc6mxCerWlPSCxjYi5\r\nsW9vKjtU7HuTFrd/afh5xFF60LlPV3Bcoa/t5viOw8dWcT+1p811ra4WH+Os\r\nDxTSxwc9e5JWP6vBM1zVqbRoxPaGJZmEAvCudXraEC2eSj6OVUjISg2B4SgV\r\nw3eUna/gF7Bhchfw7tthCggohvjbz3+I2cUgChLjsULGvNyVTM2W6968w/i/\r\nWwuZbyt9ybUIASgXXHRF8QPygYYBd34cRuN0xl4XUAdVfwnUCkRDDjbixP+7\r\nDyjgmtt/1D1I3V2957PD0AhhLn8u4YT+QnJ5PADPyMqHVhLx6Kgj1juOe6gT\r\n76M+80PUa36S3o0G46c/7tRa3ynyMBno6Nu6EVvw8Wee/iGM5LWfsIWbw3Sv\r\nJh5D7B6QtK4AfbQSiTNWOCy4vevvJl+NsMM=\r\n=dZG8\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFbhaEvKCL12opvMuLLs5//JVpxQ/fHGfT8XuFMxCwLLAiAsF0vevUYdycVE5t8qVreeibxmdb4sEMfYVWfhYv+c7Q=="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.0.1_1646391981732_0.16240866618843453"},"_hasShrinkwrap":false},"1.0.2":{"name":"meshkraft-vto","version":"1.0.2","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"source":"demo.js","browserslist":"> 1%, not dead","targets":{"wrapper":{"source":"demo.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"demo.js":"index.min.js"}},"dependencies":{"jslib-html5-camera-photo":"^3.1.8"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.3.2","babel-eslint":"^10.1.0","babel-plugin-module-resolver":"^4.1.0","eslint":"^8.4.0","parcel":"2.3.2","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","build":"parcel build --detailed-report --log-level verbose --no-source-maps","build:demo":"rm -rf ./dist/** && parcel build ./dev/demo.html --detailed-report --log-level verbose --no-source-maps","dev:demo":"npm run copy_assets && npm run clear_parcel_cache && parcel ./src/index.js ./dev/demo.html --https"},"gitHead":"ac1b68baf6c186d89d22ff600ef96f78bc6aa372","_id":"meshkraft-vto@1.0.2","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-k4xuShPG+Eg0kPYThJBVNDbtYL5fUhp/IT29J/1K0DzPMXquf05FAtn0rGSr+0fsfA8+KlfAj2slA92D4L5eiw==","shasum":"4188fc995d6b3379cf7b65075952f7f4b341ec3c","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.0.2.tgz","fileCount":3,"unpackedSize":19998,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiIfqFACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrGrQ/+IdPxG8xLPKNzZJNJ1XzsJSUj35I4PZH+31ErGMaUAIua9ox2\r\nCWhneSfm9DnHog/8wdemZbansEVJfIAgg/H3gUT64AGlb3UUjTeGCJOsamd6\r\nnHglclSL0Px7m/RRSveDp6i1yKqv1QAx22Wnn4XLK2KYyEh2z9LNPZful2ID\r\nETxOeb6fBvNvyMpldlG70/GJUem2eHJhx/1W3aBGpDuRvDYDGFoo2cE6Qfxh\r\ngpfbqbR46qc9M9r3KZ7fIVydltRf18xKxswmPSDDppWoL5I0QVRcWtRh5Bw1\r\njXvcd25WcthrQUp1ykmbgiKaQD0UdqFiWewXMxnBeNaJLM1OT8FGZsjgbeqs\r\n7kaAQYcO0B2N/oKjqd28bxtE/TyBZufE4QrunpmrLgevwz+qYRgrHkLrKWNe\r\nqtQILon9fHrs7QJWd426q7h9K/oVZAYsZlPlXnNee4yKPWGmcVvJSWoHSmj0\r\nnNp7SakMJnu8z1OBjkBZb09GgDdsCApAwEUY1gWoThHxHqJ72nRIk1HAVugf\r\nOEhq014BxweSC4UzCeVGZ2ixa9wEDgU+PYWwrC55IXyIgWcCNNLqYHOtuBTH\r\nOuLdlFNpS7yJT5ygaOrmz0W4ieH+g503u71fqMSQ63Q3mgLBk2Bl//eZjie4\r\nhpm7fYehVBugFX+q2XyD9bsSfhW7iH6DiN8=\r\n=tVes\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDcQj1M7cEqlz2NsUDifm4kKEoD0sOctvlZd0+QHTRaxQIhALW3EPa9IQzWj1qZBHcvXcIFnc08hUFRNPd5Q0e/eAnw"}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.0.2_1646393989746_0.7661040313442695"},"_hasShrinkwrap":false},"1.0.3":{"name":"meshkraft-vto","version":"1.0.3","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"source":"demo.js","browserslist":"> 1%, not dead","targets":{"wrapper":{"source":"demo.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"demo.js":"index.min.js"}},"dependencies":{"jslib-html5-camera-photo":"^3.1.8"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.3.2","babel-eslint":"^10.1.0","babel-plugin-module-resolver":"^4.1.0","eslint":"^8.4.0","parcel":"2.3.2","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","build":"parcel build --detailed-report --log-level verbose --no-source-maps","build:demo":"rm -rf ./dist/** && parcel build ./dev/demo.html --detailed-report --log-level verbose --no-source-maps","dev:demo":"npm run copy_assets && npm run clear_parcel_cache && parcel ./src/index.js ./dev/demo.html --https"},"gitHead":"ac1b68baf6c186d89d22ff600ef96f78bc6aa372","_id":"meshkraft-vto@1.0.3","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-a327SjcPdUz2luoelCfXFFOlxY2r2cEiExroRsDR8Qm2A2DxMuyVqKL2geimL3yp6vNnvbnVZ40wVQx6PLzTIQ==","shasum":"735ffcd8b90fb349b74e1e74ff4a78ca7eac70c7","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.0.3.tgz","fileCount":3,"unpackedSize":19997,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiIfq/ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoVgw//ayDMwN4TTXoaxIUWHLXytvP7l1BIiBPJIf42u87ge7eOLZgm\r\n8DH58GEp7vTctLTOWTRD4zLYef+rhK/3AfD2IBJa/aRUPekt7eDio8DpmLSG\r\nXHauJL6H54uZbRyU/BStiq/Ho9mSuBACnu0VLPXTZDUF7Lt50n84jjpW9D6j\r\nwzrpM3yxtBz8n7XnOwL75NI9HT0UCDNlanLHV0D3V1U9hcmJ02yhlNKb68wM\r\n0S6FcWnPxQ00fn9OZlfZSdXD7A1tc1B4lBaZfP97yBqx0ObmsVz48TQVL0Ur\r\neFPFy3UXaQXMF62uuLnJ6WAZDijdh2s9WzCComP8ZGLdAMJ/qj40eU0/SJqa\r\ny87hA5mK9135oRqPEBMzvwcc6VzBlvAqt56aAhgZsZMw0VYtie04KyAlTpi9\r\nOyKnmqxN7luRihZvVB3LRxfxXI+kNPy+el/UoLix3d7NvRQ/ewZQwJiAUY3g\r\nCKAEEpBloJ0yQDDt4a2dKcbdQVLWpxMuAov6icFq7wwOhYAQPYipKnibmst8\r\nPsXlspRmeSTePoAk7BKisq3xmrq4PnJly9XDsTeGvlknWylE0vsZcw4HSARr\r\nb7ehLJbbE7g1/zkh6HvzHXUaac9Q/kVUxPdYNnCArrs/YG6mf0/yDJfgYnZa\r\nmZlEk8FFUIHjB0Em2sEqFASpH6CoLRaxgc0=\r\n=djcR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEQ5OFYagfHS3hVGBxkv9XJnhYKV5a1KvIQlDVszoDEBAiAHSsW/dDNtZVW87hAKs8hmlP7J9fnDEe+Qo+6+Fhc50g=="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.0.3_1646394047559_0.7230752526819688"},"_hasShrinkwrap":false},"1.0.4":{"name":"meshkraft-vto","version":"1.0.4","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"source":"demo.js","browserslist":"> 1%, not dead","targets":{"wrapper":{"source":"demo.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"demo.js":"index.min.js"}},"dependencies":{"jslib-html5-camera-photo":"^3.1.8"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.3.2","babel-eslint":"^10.1.0","babel-plugin-module-resolver":"^4.1.0","eslint":"^8.4.0","parcel":"2.3.2","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","build":"parcel build --detailed-report --log-level verbose --no-source-maps","build:demo":"rm -rf ./dist/** && parcel build ./dev/demo.html --detailed-report --log-level verbose --no-source-maps","dev:demo":"npm run copy_assets && npm run clear_parcel_cache && parcel ./src/index.js ./dev/demo.html --https"},"gitHead":"ac1b68baf6c186d89d22ff600ef96f78bc6aa372","_id":"meshkraft-vto@1.0.4","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-2MGm5rBenDFBVsw55a8fwu80g8Vy1529hoMmtmu7UfsG8AWFzBQ0yFVMMhwe+B4LuUtX21cV28O4GplnAUVPsQ==","shasum":"97977e1e3c6a81c4b1562fac4ec12074530b12e5","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.0.4.tgz","fileCount":3,"unpackedSize":19998,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiIf99ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrTXhAAmw9sLS9jpWsaIplBv8QZBi7cyBwcWOXiAiA1V+j4Op1eR7nt\r\nooNwVy1rAhNQiLQqvac8azIZ3eS95sj0Zg06yu3w2M2LUnUyGtCUwr/cUCU0\r\nonEjkFcuEcuJGWnOfpzlEMP7bTYVoIIL4K7i0lAzh14bfRKnD1CE6QiN+A9K\r\nod7fsODRStoQSz/nsNeVeor2lo6ycHjnZKtCByixKPVdP1jJXNs+p1Ool+79\r\n5kG53cOamEG1LMYvRoe+2iAFdffHVm8wN0WADamwXxdaGRZggme9mxO7zTm8\r\ntmO07KMsR/TlK7Ld9np+GpvBjFMXzntvbtPIrUXPOM41xoZY/84VBnNSDJQo\r\nQjwldGfKmehBTr7NnFqXw9ydonSKBVqipvk+ZP21HuIfcqre9+1jB+6KhsqC\r\nOlLFgdqIgejtkPqsPYXb41VTuJC9KqGM6V9ck4TITCo8xRYLWDSfhD23T3qv\r\nqAwou2r2ju2iskKI27YBTGJ1Mndu65XARYpXnszBPS9UskCXKuXCBey7h3fM\r\n8+sDY7IoRjOu464ooUitrZ6PaKf7sYfYTTDBMf7v9hfzaGWn1KzWfHOFQQPQ\r\nxxzpK/1yn9rgct4hXvb4JSnOvfX7zOxx4KlMIp0OuSdaTazDBFdRsGLCIuqD\r\nOjjRAqMolTF1N1x+aD92cPuqK9AikHZJ/rQ=\r\n=RLWi\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDbDpbC9pmR0tugcsQmH4cdUcIJake8OJwOYQR/lg7i1gIgHFsxJDvSIEQeNI6vjoWZ1TqluFWBNylW5Jv0dpDr7w4="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.0.4_1646395261431_0.3274315322304493"},"_hasShrinkwrap":false},"1.0.5":{"name":"meshkraft-vto","version":"1.0.5","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"source":"demo.js","browserslist":"> 1%, not dead","targets":{"wrapper":{"source":"demo.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"demo.js":"index.min.js"}},"dependencies":{"jslib-html5-camera-photo":"^3.1.8"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.3.2","babel-eslint":"^10.1.0","babel-plugin-module-resolver":"^4.1.0","eslint":"^8.4.0","parcel":"2.3.2","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","build":"parcel build --detailed-report --log-level verbose --no-source-maps","build:demo":"rm -rf ./dist/** && parcel build ./dev/demo.html --detailed-report --log-level verbose --no-source-maps","dev:demo":"npm run copy_assets && npm run clear_parcel_cache && parcel ./src/index.js ./dev/demo.html --https"},"gitHead":"8ffdd9f05ee5f1f65dc10ffb79f45013930870ae","_id":"meshkraft-vto@1.0.5","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-l+OjvVTDDFHodTD0ATnUPjHICjPXarRvesQldfmrfZXT/SFxQo+K32qCzxRvyqFsM6iXV2g9owFqDw2t34QYFA==","shasum":"4f58c52fa7fa793bd29480b5bb9a6d745e85d554","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.0.5.tgz","fileCount":3,"unpackedSize":20172,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiIhifACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoBAA//fIyZlhxCGAt8OYrbU+yOSRDWhFw5u9C7ZJ9OtO3TM1gfp4oR\r\nOy8OCpBaVW72xkV7j2vpmwIcXptVwqp+Q5kkGsCH2VLHoBDd1QSiNnQbbbVc\r\ndWKh561po2/SnNPNwpGrY+/bap+HdXRBqxIe5YuYWUyMAT6LiV1KRZUpp3nZ\r\nOGesCFL1RxwD2SRQglx0UsxAZupHA/VpvznCbJrdh95GSIAQnMalAT6WLEMv\r\nQhg/fiIG3/LIi7KdXkJuh512yIPe5b8AccTN41ELWvvtlbv8bXfbe2Rie4YU\r\nTakERjugoBEu3iViKtL04FTntz69zgcqUGFzHd85MC0id9H5USFWuynhkhCJ\r\ntCC2Av37cCb3LRwaGEaoyguUPN6+bV1eCcDmUbB8Xm2KZ5ADQiQF0Nr6he+P\r\npUFKx6FVspx0t82/nYYKl9/U88l9LY4GJP/fEnDCS0kYkxxsBW20tsI4z+sb\r\ndZSzEJi3Xu2BCR0UM69jvzkPuh0CIyd862eBpDPGU2Iz5vQiLVFlDLwuHjZe\r\nkgXmeHIft7vmVH2kK9DTCSk3SiM7l7MmlYxedzE5D805jC7ULnAoKVqEejMn\r\nkntcxbik6xc37/epEY9btn08qZCOgvoyy/E67CeP7QZUSkOrur1QLggBcUCl\r\nmXfU+CPNun+37yTAwRJuyPqAqXVNliwimfM=\r\n=dB/D\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC1QolVh/uzhgdLa7nCEAlEma6FPbacCChTXbHCo9D9wwIhANUyKOnzZMS+ndBv1NUrR1wyCZdu7HBTElYt7ERF7ihu"}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.0.5_1646401695230_0.7939975351011823"},"_hasShrinkwrap":false},"1.0.6":{"name":"meshkraft-vto","version":"1.0.6","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"src/index.js","browserslist":"> 1%, not dead","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"jslib-html5-camera-photo":"^3.1.8"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.3.2","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.3.2","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.0.6","dist":{"shasum":"3e55cf780377bf6277b344d90207676e7c81b99b","integrity":"sha512-8TxYuWJL/UKwIWSwDux91jqVbnSSwEIuyieDj3HVpc3ZAIIPo+I1iE39r8YCeMkDxcQBOqhRW/xzCSVOQpMH1w==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.0.6.tgz","fileCount":5,"unpackedSize":25021,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiJdqEACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp7hw/6Ao97iy31GlRmJU8JRLmivZcOmVEdmbqb7pf+XtnMt/s8izys\r\nDW69gOwV6w2zRH8IW6fDJ8m1qs7Kyd6TeNDlU+jIK/x+mjioZBl/qZuH6zkW\r\n/cMyoepUNS4b2/acWJlaPq5A9KVwc8YbuUpJLtY/IeEQfwz/5afHIpgu/IsG\r\nIoyh8cH8p6uldNbopr4DBWnyZAMcZaIO/jhpyA4/Rh7cBFmYvx1UgcNFzsye\r\n+xp8vJBbegXSb8Y+2k46SbxDd/mbOWZhl516CD5liBPY95NFP0QC4TsaBt0L\r\n8fSm3oTCSGbM80kcxwaailaN569LZLpETc3GUDc0GYPoeXPxrOyEVL3KyH7y\r\n45fKPTuoDJps05tyuHRw52JHNVipBsRgN9rAocqvO1/1/zLE8fozGdAtTtqw\r\nuoTmPIl2p8wsqVKunLRP13wcBJlU2SXQGZO68kAIVKVGwnzuQN6LPtnTuDEy\r\n0kW7KYvMIoI/pDAqfoJ7fshWv4VIP+EVESGNKcnkf7Iu+XzU2nvnJwFBOTpN\r\niyF89rpYF0Th8WyhbZRbv6vwEtPvnVHwzWVYUCp7cKuxTPl+d8wvtI46gPrH\r\n1cc3aABtFYBlb6XZKneOIu6Wd9LlQJngD8ylU6Ev9jwu6zpkIyBTHSIv+keo\r\nUWhP8K8MAT+j7JA0LDXH2lY9+miMdJLw0pM=\r\n=OU/K\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDAqrwWX8FzV/xYclwGn6lFliVonaS44gPBypSqcYk4UAIhAJuwdWM+a20OV8iJ6bLZwH/8K0N1uXEve7YGQfsBaf8Z"}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.0.6_1646647940408_0.1721991852485194"},"_hasShrinkwrap":false},"1.0.7":{"name":"meshkraft-vto","version":"1.0.7","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"src/index.js","browserslist":"> 1%, not dead","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"jslib-html5-camera-photo":"^3.1.8"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.3.2","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.3.2","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.0.7","dist":{"shasum":"49d24e5162bdd2804c432104aabbbf599e49b542","integrity":"sha512-vP1CtotiI/faieLCJ0RrVSdppMpa8s6nkQczkjmFv6jfWhMQdvf6jD+NNgkMs9dnV+s8QHNVoV2ChWRB3VtfPA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.0.7.tgz","fileCount":5,"unpackedSize":25012,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiJd67ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrhgA/+JjK1fUI/bcyG+fr6zjmNRN60wE660p0cotWIyKyxTb/Va14s\r\nGQDRthqoS/e6b/UE/vix/sB4ncoxo+JZQjvTgnF8PpfE+45f6fIg4auB7MmX\r\n2Txw6assnvOXRBhAngN1VkGmU1qA99B6eczycKSlc3aE/odnXoSt/3wIdDQQ\r\nkhfy2oEQksxcsZCtQJumiaogIRc5aKPFALXUMJHD29cAMWcycXJuEI9huR6h\r\nyiiogHCPKeL69SHIFc1FrIVqxXswdDaHppLOtUxDZ7/OstBzQGnOuZg5B7An\r\nv56q4yDa6tZVlTlIo4imrqaX8omd9t25NjOPH1n9pb2QyZjB8aH4CzY1jOnq\r\n7NB/ZnSw5amRouWLR51slhNeaN/Vs2k43ilHrsFgVWKNeQyoPZy0t+xuHsfw\r\n+M09np70G7cMkISa14qyyV/5owoEinSDgd4+DDyl+YGOMjXY+XNHB+uCPkAL\r\nDDJdliTm6RirYWPAew8XVugFmZ90b0FlWZWzw/tR+K/1+NTbMsrMANMxSQhi\r\nIN1X8YnRH+pzv/pnPLOMiK8niMcSPfmUe8+P7gx3KEiuRk42J/4ucKmStrGz\r\nYRj1gMI/Mq/nyGjklRME8xKWtCR6YHQPMsRWqzPoBJ0nGBMHC+/6ArhBjaUe\r\nhOYrVYZ77HjUGw1yDZ7BujZVM3QkAHB9RFs=\r\n=nlZx\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIENlUg78St0IQ2x0gwrysOngoBaumDOxVrHayGyM4aSXAiEAmd/DCMakmDSuKYtVCPW4BzMDYHoUewyb8VeSQNEDW7M="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.0.7_1646649019832_0.9567169473106996"},"_hasShrinkwrap":false},"1.0.8":{"name":"meshkraft-vto","version":"1.0.8","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"src/index.js","browserslist":"> 1%, not dead","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.3.2","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.3.2","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.0.8","dist":{"shasum":"0b439c03b6a99871d1820a6d903ce22947b54319","integrity":"sha512-O+7FicTGNj9iqg94BZb2Eo4Gke/xYQO56SAhxE2XxD7/N+sjzwCRRymCCtfwoBVjkT+hhABUa+2oZjC6lB1Sng==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.0.8.tgz","fileCount":5,"unpackedSize":45417,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiJ1c1ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqKqQ//UdRtJDde4P33kIK8A+4fESxAwgPAZyK7rqkLQ+FJll+58IHl\r\nsPh6Em4ggcWULLGTyXaDNe9oRJtzJNWOi40ysbwNokwkghbkxd672pwWC5Gt\r\nd56FTGZHGYGJTVHldx1sZJ9ExGjD+qVywu5D6HPS5McZ/wYjfgiK39c7T5j/\r\nqU7nacNlN2k6OKPE56W2eFi/f2Ww4x4GERPevLzA1+HWl8rdrRydwJsNaoxT\r\nuTYRuG142nhomCGOZF44GCU+vaJrCWLMIwR8FWy1drq5fPn7lApAy5nQv+Cn\r\nQh/MyC373y1KEY1lQSh2p1p3HuiwS6jxxtK9Plkh2+sqKjWvwWzcrGt9Y8fQ\r\nixYAlxkg96D34e5K2lj/R50DPhORFgknP8Z15UbdOcaYQjB9hoMh4j/qPOHf\r\nBBKN/2TYqnwlZpyFX2q3QlSkyOdIjC7B+JwGiFyQdMjF19WnTgeVii0qFMYU\r\nTgEl8wZPcF6B8jmnP7ldxjlSy2BoWDBB8vqxbvisTZGPTrRrP4EIErm3ieB+\r\nr7xRWLRx4p4rYIdg6suLWWLpwzu8iWCJ2xYIEfXzLedfSjpGKCBhWSC/76X6\r\nwl9fyV9cGb7F1gepqzhJ/HCK9BTv5zjwfsVQenUETB6mHY1PiKhovpJ6nAuJ\r\nfQOXaF+kBjVVEr2DQimQyBZgg1CpjOC/P1Q=\r\n=fdfr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD3Bs+PhG+2FtVSDP4SpryFxRi6MrIaKb7O+1T6sr/6LQIhAPY01N8Vf14LxOvI0Ndr/rAfYFs/KucMyuvREAO5Y3rz"}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.0.8_1646745397327_0.3693010597033879"},"_hasShrinkwrap":false},"1.0.9":{"name":"meshkraft-vto","version":"1.0.9","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"src/index.js","browserslist":"> 1%, not dead","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.3.2","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.3.2","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.0.9","dist":{"shasum":"e6bf6cd0c5e102ebd3ddc609bd352269bcd1b457","integrity":"sha512-/CcnwKOBbJfJTVBMyX5XRKylETx46zsdJpPfBmlksiDUfz2pFxqHcOmYidBgZKJOMjMVcay8/+bdMetGhDbn+g==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.0.9.tgz","fileCount":5,"unpackedSize":45596,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiKGJ0ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqUTw/+PjyUhsMh1Z08bEFJPHpfPl9L/I7i2vXIw3fGdIrMP+gjkrfm\r\nC8YIUuddJLp2HqAWhJbN6mJu9U+LHEs5ZsWgBRVbS6HhMTe9ERgcPxFyRcgz\r\nE0lvhre027WtziRFXYdbatKEfKYsWW218GtgjTfg6yIi5XrHxks+GaWM1HLo\r\nqFL5MLdqaRm7c3L5yZCp/ZDuAn7UBQvnDQKoaZQBUEaCowlmrqi/6wgYqv0o\r\nxfyRXj+YdgNpUoI/BUFuuBdwtwdUFInrrtQXJO9Zaih//pCK+NBYA7N/1CZp\r\nw4LgbNtTacFkBfl7w0/7UNY+M4y/qmogIusa3wcalTvHF8z3NE5t4kJOW/5y\r\nx/yGwQ6oAuOQIGoUt11mkaLyjNuWCi5asyJvHzfkQ7bmheqCPBoArJXa5VQm\r\nT+ZviXDTXKBS2qxx9k0cFr0Vm7jOrFrSO6GpFXRcc06VT/+l7tdMv8D3LZ9h\r\nwEn9EqQ0YUW9mLOaqL4AhcdBhqMJI1RyujzQftu6fbIaeR3OKSbPaBVZVlBD\r\n79LjL4CLsfKGV0WB4CFOriklUeGEpDNAb/dtBUNqUgwtIv43JPY4SFhN8QCd\r\ni+A14Xn7t8uwRFU5PiXFeRT/nWaKnf4wdgaTkFrJEdq8IVtKecd+dIe5DtmK\r\nbZbpA6ZbGEmOB3NYJrAJKYTYmvKTopbemBE=\r\n=ZNSb\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCQ3pvpPjoiHwVZDkmrTwOQoQsCuzZ0YyLSalVCWszw2AIgfNVKmFjlWFPtbGw+M5J0lh1PbZQwwiySxjcYNwiNXyM="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.0.9_1646813812639_0.6801884180644799"},"_hasShrinkwrap":false},"1.0.10":{"name":"meshkraft-vto","version":"1.0.10","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"src/index.js","browserslist":"> 1%, not dead","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.3.2","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.3.2","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.0.10","dist":{"shasum":"dfec633782962a6d4de00e6cd6c5f9d4c970ca50","integrity":"sha512-G/lcwF/GiA0fOo8ThbkgzmObGIZkaNIkuUiph1oQRh6axEUu06OmXybUJxiRzbOk4O8ccUPRVHsQLnMQ6TzT4g==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.0.10.tgz","fileCount":5,"unpackedSize":45597,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiKGlyACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrfsg//ZHHYBFyA06tKGYYfZKCw+Gov6K1E04NwYq5RUavYkQDfQIXy\r\nCTL3viu6HygKxaRKlm8GZb0oFs0jl5YVlVJ9BF4mVWODKFo0gwzR2X4r+LHb\r\nzLfcDLLoOAiTSmZpo38yCgcUHTjVc4mI4mMt25lQ1sjv2YKBdBErbti5EiQ1\r\njSuR0YOdWjwHVuiWSfLv5J5rST5hSr6ydlVG1DvLZ+t2EfZxWUF3b3Hpupk9\r\nZO1ye6jEIejUocC4LXPVUDk6wU133NxXKjV0l7qHbvyZpIg0fxDxr92GkNBt\r\ncVmm0eSxPN6MxFEQOHhBHH7I3qp3pi0l/PuCGcU2EeKTwN+qhKURK4r5duYt\r\nszpx8isB3uCGcKJQxf0n7tG6/w+xRj2YcCZsGRELxV/HXEAefaQWuDdtMdG7\r\nBV8/mP6Zxg9hme2C4Dg5x6lgRWmNsSrLBi2YCrvSmfM7zIJ3YAnTdjsO6Is4\r\nQnI75VqhoTYIy0axDD728OcHezKls9p4XqltyhD1GozfWwBEI7te8i4SJ10E\r\n9aj0Q7t1O7d1BoI2+ZSmm4qJmbOFCtWfRK0gYoQtYycBGuRi1mEG+7f0aIbR\r\nw6afL32ZOGQkoLdKVqiW4iOK0WT7B5D4abUDR/gMqCfKh8iIzFIypCAPkBDl\r\nm/OwVEslH0bdWLZk20vIL/wYK2FKX1LzJRU=\r\n=PFmC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC3AQNuZmfCG5y5c7hphfdW0ODrodKtzrUwjqsscr+bBgIhANjYgOnN9nEgO4lQpQwn7MYhU2CyL/1+orFjcVvlMOAe"}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.0.10_1646815602155_0.42497632056670653"},"_hasShrinkwrap":false},"1.0.11":{"name":"meshkraft-vto","version":"1.0.11","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"src/index.js","browserslist":"> 1%, not dead","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.3.2","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.3.2","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.0.11","dist":{"shasum":"858efbbc6f55ee06337bb35f7944a620737f2f51","integrity":"sha512-QJUPAJRRw6QIXys3D7nhqb+SUypXadwMbyP+TltuKqbJWlYORu/UwrKJaE9I0jzLyl40lhuUhfO4q1I4/IZzZA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.0.11.tgz","fileCount":5,"unpackedSize":46086,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiKwlaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqrRg/9GINnyVtXykFoXXN4oqTsRPmrUnBRSFai9XeP4aSm7rkGdROq\r\ntDb1O/unnEoVVByqfoqbhprJxV53WLE4zkI67E1sOFf3w/Ec4fAx+HmHF70L\r\nTxStaJlFR8tcw/kqORMLreZ2BRlwL+YrDN/4xCKPOp1/hSL1NPw2sPdJKZJt\r\nMo+Ys4nfwUUNxq9SfJtt3K+jC9ZekD31fpVjCZKZUuURMEug8f2495+lgsMN\r\n9INfGrcd1Lz63zEd5dmk/XPGp9W7XvOZaGdP/p3eHd0TbkpYpnSLRnGcDjOM\r\nVmy0NObE9OKUIl9M1b2cKwIPoEe4E7a2OGzJTgNA8GG8Pl5C21nk/znIytnw\r\n5oAQtyNMX60fVrW5VGIzLRyghcHW4MUbVwEmAHj2jSIma4ycvkdsk+PwHvsy\r\nKS54KmTk+E51dyl0+s6bohs0cXR273ocyq+WEAZXRrfk5CT+ottFNueJi/49\r\nDf9qaKG+v5//ZCg6cxIW+K1QFptie0ptKcX3kcALrcUgtZkw3Xv8HLo583I4\r\nW62vmOtGXNl3f6mVs7Agddh6OzuuAb+16It+vfJFhJ6/5laURpxlX4hXnBYX\r\ngiGtynxuj1WsTDOlPYdmK14rwtDCMUrpOUPcLPF1xlX4M1jw85RgNC6yUWCq\r\nWwZ9TB8kHCOsdiW1W88x53qaIJH6pynjHJA=\r\n=lEeK\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCIO4l/bvlzJaZGJZO6xOXQe+JJwqAZMrCJOUiuUK+A8wIhAIs9LVW11IQ929dhnketl9rH2eWnw8ssxyA9qVVlm+vb"}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.0.11_1646987610422_0.4814252620112449"},"_hasShrinkwrap":false},"1.0.12":{"name":"meshkraft-vto","version":"1.0.12","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"src/index.js","browserslist":"> 1%, not dead","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.3.2","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.3.2","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.0.12","dist":{"shasum":"9105035c90982fcf6695ec60cf6ac6572bbfcbc8","integrity":"sha512-z7yRwio2faKxUaMXa50Wbb0zIrE/DJrwEZKRZ7Hd+Bjs69AX5uWe3TZ917ZVE6ylFW4rDjCd+MGCZXTAMxRzMg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.0.12.tgz","fileCount":5,"unpackedSize":46087,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiKw3CACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmohjQ/+M76NK/yTrJOUD3cSE74vzvZIPRIcD/YQ0CAIBtXDGYxQF3RR\r\ndkhZWlUg9HeyNVJBTo62xS8SATFUiZjabwsDJLexaIv/U/CDg+mjYZdxzgqQ\r\nbaFREWDHzsamyJUScjc+oR5f90PiCg0QWJXssi7vGXSgJa9zZ2QjesYuXw0d\r\nXkJPAxmr/AjNM4bnkJ4bSsDt0/Ib8Uj4yeyqidhlYnJp8cu/g7AECTJjUjEF\r\nV1suW1DfIfVJddAzAkvzut8NvctmBxfvxki8YRCOI0XqyVtdDO6MaWpattYm\r\nQ+1UC43VBao+NS+T8AH54mE51784bN/ObZBMJUdyt7KQMZTr6Rjbpea4+H98\r\nY8YNu4/TXldftNlzDy/2hkWJUI04wJgX3Qyxf61Uliehmi3Y6BeeDXLd/pwq\r\nj4bxrIZhTxw49PDvj25kdRQZIyrrU4WcMhmpokYTp8dVWFR1lyb5kSqNSHHL\r\nwqydQG31mIPvksFFnrE9IfsTTVrYW5fKFt2jgcJzwXgl81Kz0BoatnTnkLjN\r\n/Ef622hN3DVN/wZh2pfffSike7GF0gZhQ1E3PBWmVRqwyMgfHbhEs9wfPv8m\r\n/eV2irTjJlI+F7M2V2qWlkLBHWgBmtOVA0TW+dGkGh2GsyAhZ+wTy+nZnT8l\r\niJ5nBy4GzOm8ARR0plszp76Son8/9GQK7h4=\r\n=xwjt\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDFhkw5KRMDpgjQPVPqpIHRMk1SUPQ6JU3aJzx54ceA/AiAF+zemPkDHbIVrzUVrS5hNnzOuqWTJvTYYVklsKkOXgg=="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.0.12_1646988737863_0.8447407508985869"},"_hasShrinkwrap":false},"1.0.13":{"name":"meshkraft-vto","version":"1.0.13","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"src/index.js","browserslist":"> 1%, not dead","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.3.2","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.3.2","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.0.13","dist":{"shasum":"74a945525a0c001e6349fcf18f574cc7a588b9a5","integrity":"sha512-sLZgA1p2H/X1EektfCW+B1qksnnt5ZsQsq4oKdCkIoGDCdTdwE1/dWwIBlGRPxDdb9TKgc8LA3a0924y5xO3UA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.0.13.tgz","fileCount":5,"unpackedSize":46242,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiMb9aACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmooyw/+K5dzqAM5JnWC+2gbK2CB9/ihYH7CUTZhTv+wSg0Q0NMOFpN0\r\nSjq0wHntf7xhyQdtiA/zNs8MzdhrKlVPeLf8rNhABgjuBV+iubGkd2c2FsaP\r\n23RN5AHEpjrJID3aU7yH+RnJgtIoOdzxQqMNw7aDqkYTvAS774VA+94UkJgF\r\nW2dzl4v1GZildoQ7coBf04OdFjhdGx47SiswEgQnEsm2Vr5LlTcRt6V4YqEf\r\na3vjKLChvLhLWsV/OLfNRC/ibXMuXpch/lnJwZpGMsA8DUq+CXtb3uGgNJY/\r\nkKmr442rYQTTIEgbrC4vepQX2RKAZW/env2rOxXTBRmE0ktPC8qYFZ+qThBl\r\nCyKzJ/FXPPVUoXLMPB2CWEzyTXHWcyhDMsXv1SFeuEUiPvDQaRPODYo1zgZf\r\ncxGSucmmwq4POYg+Oe2l9IW6x4Kmn+8OpI0L395EiMt0u4HmSNBS5vzPNrg3\r\nkfJ//iDOWDeGmY70NIQGkrxFt6qnGBt0aE4gA8j3G1r0EDl2IP2f59eodD4H\r\ndZ8dRI2PCDLJxkaDTOyvT3++fKLlxerOK4UwCF4skvEkf+J3HDeWzDfjs+rb\r\nsbFVnXoh4qOZDJNBrULwAcZEpPKkL38Ek44T9u+CNT+ur9JQYgD664KwBB/J\r\nt9K1v95ICoP4N8LyLSTU7+DIk2s0obIERnE=\r\n=TPCl\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHwaLJ4sUr/NvEzRZ56d3G1xmySw478BcGtyVT6ArMrzAiAuc9ShamhKqZmPotwNHgk/uaKCZ5qdyeWlF3ZHCq3P5Q=="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.0.13_1647427418367_0.5793035236886899"},"_hasShrinkwrap":false},"1.1.0-beta.0":{"name":"meshkraft-vto","version":"1.1.0-beta.0","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"src/index.js","browserslist":"> 1%, not dead","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.3.2","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.3.2","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readme":"## ART Labs Meshkraft Web Virtual Try-on SDK\n\n### Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n### Basic Usage\n\nAfter you include the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉\n\n### Config\n\nYou can pass a stringified config object to SDK via `data-meshkraft-config` attribute. For now, it only supports AR Banner.\nPossible values are;<br/>\n`showBanner` - Boolean. Should show banner or not. Default is `false`<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`<br/>\n`textColor` - String. Text color for the button. Default is `#FFF`<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"textColor\": \"#fff\"}'\n>\n  Enter VTO\n</button>\n```\n\n### Events\n\nThere are some events that can be listened to. You can register event listener by gettin element and invoking `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n### Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"textColor\": \"#fff\"}'\n  ></button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n### Bundle Size\n\nYou'll be consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","readmeFilename":"README.md","gitHead":"51bec23688d4ad7e278f1764770f4eb70adc3113","_id":"meshkraft-vto@1.1.0-beta.0","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-T6NI2RFO4OZPBQJAQmElbo60/E0ggHbymhzAVrjBUHXQ2tcS1/CPir1y/bz21MZp7ppKk6yyfoVKyvu2Y/d4kg==","shasum":"5b56ba52b27d7395224efa146c2fd6a43a89f8bd","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.1.0-beta.0.tgz","fileCount":3,"unpackedSize":46253,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiOzdnACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoUZA//aWfg8CHaOOukUZnZbUvotGtRCuwC6RwstyGQtg5v4j98dH4L\r\n9A3FFNdx7wYYQt6RskhH1Rzh3XQamfOvfhXje8o9dYbwaQciNGp2mwWnuFDA\r\nX1XDOwwD/9UdUsHHedKhjIjrpgJxLZWorvCqv+KuKpxu2TVREwnSpIvnbs5i\r\nSbOosWpzj19wRo+sJ39PqJ59iPrPpxpMMSVhPuB5gaSVPsp9/PLi+m2kbsr3\r\nYOZoWiQb380zBPdoNSno8aWnGuA2cAV5+KDYXGVEJu1R6oz1aVmyi96MyKlt\r\nqRvukg49LT5DeDwdrgEjknbGmG9zs9nRjFqV0E8TODxWArPamz4nMm/WHwqe\r\nkcmCE1Ggd76Ziiav9aJKOCfjxH1RiSfYPGtTmXKbO8UmBNymCUd0vYkJgyIU\r\nppFajtvoVK9w1PNKBNeWfUBYfdaTEduEkftICKyYEUOfagFjKACyQSobXAuv\r\nf+13nO4crbrdy9Bq6+aGcMDjgMZQ8ejQlbiEDF/ZzEeVTBZI9ddSt9TpFQ9R\r\nO88iD1sQSBpw8d0t+86r6YhLge+r/Xee90JVrZlHiEISzCfKFWAAJlTW8F6U\r\n5K0ICXanKQDmm+q99YsJPR9uHAaKM0n2XJfLgiCCqbT4PsQQDVbvA4gFkZ5V\r\nW6myA56MAiD7/ksJLEaqohV9WNJVd7eNf40=\r\n=frfR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD9qpeMTTemmc1hjAPUDK65KJbFh6LuhNjJt779fpgZAAIhAJnk0iPweaXUmnN/Rjw/mDeN/6V80htc/XYEvSuCkPEP"}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.1.0-beta.0_1648047974885_0.5962564340937921"},"_hasShrinkwrap":false},"1.1.0-beta.3":{"name":"meshkraft-vto","version":"1.1.0-beta.3","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"src/index.js","browserslist":"> 1%, not dead","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.3.2","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.3.2","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readme":"## ART Labs Meshkraft Web Virtual Try-on SDK\n\n### Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n### Basic Usage\n\nAfter you include the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉\n\n### Config\n\nYou can pass a stringified config object to SDK via `data-meshkraft-config` attribute. For now, it only supports AR Banner.\nPossible values are;<br/>\n`showBanner` - Boolean. Should show banner or not. Default is `false`<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`<br/>\n`textColor` - String. Text color for the button. Default is `#FFF`<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"textColor\": \"#fff\"}'\n>\n  Enter VTO\n</button>\n```\n\n### Events\n\nThere are some events that can be listened to. You can register event listener by gettin element and invoking `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n### Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"textColor\": \"#fff\"}'\n  ></button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n### Bundle Size\n\nYou'll be consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","readmeFilename":"README.md","gitHead":"51bec23688d4ad7e278f1764770f4eb70adc3113","_id":"meshkraft-vto@1.1.0-beta.3","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-wwSBaHq1rXV0CWpWXXEb9ddK4DT16jerinEeDqRqHRWLEy/4Fllmb3p8MvGFF2eq4y1MOul5Gb1rr3DSavA64g==","shasum":"0e4f9829f4c90ede7112dfa05b05b53d64ba638d","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.1.0-beta.3.tgz","fileCount":3,"unpackedSize":46253,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiOzqbACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo3IA//Wq6L2+MVQcyk4bwbCvdlH+wAsl7TofRu2K3+shgy2Zi4EZFb\r\nNL6NzuJ2ikxWIWfKS9w5djEXYXiazZZruTNM0jc84Kbzdq93tMj05A44eqdI\r\nU+CjgQKt/Js4Ql3BXLROABq1UQFIAVHERpCZIn9uZhP10/+nfpJxAhDkewiN\r\nwf83lLF/etmB+IvMJOrJY8ELabaadqR3XDnNQ7YfLHeVlZytLyiInVvh73z2\r\n0yd7rr/WS1xIVk/RmtumeDb88hmUVGg5jM2CphFxFl983vYmFFjcfGlbPf0g\r\n7zrfQoGFuWLT2RGxzMHjI5iJ4vmedv5pUgwh4+Lpq/BM0FgdDd++WT/X+y+u\r\nb+wCkknP4x4JDFAcCX/xNU2yR3N2W0+uuvbcntS9r8DmnMNmdlCoWkXi33N+\r\nVCnVNqs5H9n8PHL/NGQA+MlFfTHIhN+7aUolFWneJmz76HBBBkdJPMjisaZT\r\nVnjdmDOBjbXvvaCZG+u7NGLVilNd0mlgqlmiweeJoEPaDpAc7CcB6XvUev+S\r\n1a8PpShRS+dMugoinTePuhvojWCnGrPcIkXx09aswiRQfaR5Vb/q1YNQSeA0\r\nM60zreXWOlBCH0lcYHJHW5N/RWy9paSMXLzAui3fIuJWngCaPATY6AST17E7\r\n1NWS4E7FrIPfspeuuZ5289iaTyF6Gwdb7sQ=\r\n=u3IG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDQXOgBT5BPRjNihK8hfLtsO2l0+Wmu6LeC7Y6lHbPE0QIgY+uSKdMKoCgmQu5Hw4qQXYB8duc74eaLroHG7xvqy2I="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.1.0-beta.3_1648048795446_0.6782940137449045"},"_hasShrinkwrap":false},"1.1.0-beta.4":{"name":"meshkraft-vto","version":"1.1.0-beta.4","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"src/index.js","browserslist":"> 1%, not dead","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.3.2","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.3.2","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readme":"## ART Labs Meshkraft Web Virtual Try-on SDK\n\n### Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n### Basic Usage\n\nAfter you include the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉\n\n### Config\n\nYou can pass a stringified config object to SDK via `data-meshkraft-config` attribute. For now, it only supports AR Banner.\nPossible values are;<br/>\n`showBanner` - Boolean. Should show banner or not. Default is `false`<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`<br/>\n`textColor` - String. Text color for the button. Default is `#FFF`<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"textColor\": \"#fff\"}'\n>\n  Enter VTO\n</button>\n```\n\n### Events\n\nThere are some events that can be listened to. You can register event listener by gettin element and invoking `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n### Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"textColor\": \"#fff\"}'\n  ></button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n### Bundle Size\n\nYou'll be consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","readmeFilename":"README.md","gitHead":"51bec23688d4ad7e278f1764770f4eb70adc3113","_id":"meshkraft-vto@1.1.0-beta.4","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-lmkRdAhN8OVI6FJGgqvDuJsMdBZecYrP6gWPGv2E5WcHpovpkdmFISTptam6dmBAW92F01Whta61FFBl2BatjQ==","shasum":"53c3275b1cfe4dace49bbf2eadc3e83ac8e1de14","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.1.0-beta.4.tgz","fileCount":3,"unpackedSize":46255,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiOzwqACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq8rQ/+O6hm1GyHSMoXpkc9J+g7vWg1dV4QmnNbzQQIvAjCc0v6NjpC\r\n5cbTBcNF6YWGSh4L3Xsc9lcxIojQ06yHv/3q4SF52p9Gs5Ee9X8BP8EyTaw0\r\n58+SnpF3jXarLYBWkEOD3rHdvQog7AOdOdM//miM6p7L5k2MOzgwokhQLNG9\r\nKu5DwEoCNHXkJD7hqvNlFo32eoCwAPOi9D5AMeQPo3ubc+wlnuc94EiUOS57\r\nKWZ4jZ29qYUiv8Stm7pzJqSxn3/+q8f88OBEh+ua+rNEq0QfDf5QYuT9GsrA\r\njyptWGhDp2Dc5KZEooKaWk+DuYu5FFYzD5Rwr3ibivTiPpeP/O/303K5F2mg\r\n+oyHV5bIwTBsyiXawuUEBU0+PhvBWFLXeNvGHkICha3hi9565OZwiPbB5mJT\r\nqsPudpVl+VH84GbqGSEHvzMZnsLMrU/h1eC4eMHRABrCXol0eH4F52MIld0G\r\nAr1BGxBAAQEKhktBoaJaD3eRD+IZkA5lBENPhGeB/16YN1LjKEDH2yW0JK35\r\nqRDh2oIpYakbf6lmv6HMUudxMPhEoJyD0LLzVQP1uxd+91+AKB65Mrc9WZbi\r\nKLLJVja5NAmoj40vdwaPkNb6qDMvKznDNDbGaPk2+HVrZwZ9foYYAR0yqdyX\r\ndl72mrlNTxa47uZciLWsNlllQzh1Gz41xRk=\r\n=lI94\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDPvXilblzMDTxH7nRLpNBk9a+gRV+Je0p3suCWIz4QugIgWJKEd/p7oKbZz6R1qrzEgcBTWlZrbLv5SEHDFQvkpj4="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.1.0-beta.4_1648049194766_0.7429694269829648"},"_hasShrinkwrap":false},"1.1.0-beta.5":{"name":"meshkraft-vto","version":"1.1.0-beta.5","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"src/index.js","browserslist":"> 1%, not dead","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.3.2","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.3.2","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readme":"## ART Labs Meshkraft Web Virtual Try-on SDK\n\n### Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n### Basic Usage\n\nAfter you include the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉\n\n### Config\n\nYou can pass a stringified config object to SDK via `data-meshkraft-config` attribute. For now, it only supports AR Banner.\nPossible values are;<br/>\n`showBanner` - Boolean. Should show banner or not. Default is `false`<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`<br/>\n`textColor` - String. Text color for the button. Default is `#FFF`<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"textColor\": \"#fff\"}'\n>\n  Enter VTO\n</button>\n```\n\n### Events\n\nThere are some events that can be listened to. You can register event listener by gettin element and invoking `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n### Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"textColor\": \"#fff\"}'\n  ></button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n### Bundle Size\n\nYou'll be consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","readmeFilename":"README.md","gitHead":"51bec23688d4ad7e278f1764770f4eb70adc3113","_id":"meshkraft-vto@1.1.0-beta.5","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-JN28Co88Z9RXldRiIBpNbVnoelQYf6XhM+sRQrfEJGBPSd+Ac0a8j6UhDkHgdK+HxJmSuAyfYvM/e6HZXT+eAg==","shasum":"0f526a580660cd5aa6689b813791caafddfe47a3","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.1.0-beta.5.tgz","fileCount":3,"unpackedSize":46255,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPESiACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq3VA/6Ahzv0JzuX/shCWx8/fLY5Dh6YKjBQqM40K9+MHnDeXLJlZMV\r\nI7WjDdu9dg+UQLHgZC0PpwFv9+hswCxnSGw7mG4jec8PbX01hM6H6SIkugJ6\r\nKwudQSven5lX6eah97wTGDIFocUTPUjm+cec6OEZhGrXNRu1uyw4qmQ8TjfR\r\nlxdBpp3pCCjblXuROcghSWytRdnXDJ9ePkJdVkW/WMfAPR4HBzFmF0IsDwKO\r\n3c6QXFJ1BQGu0nSL/SgjkU3hepRWWb1FQgOv4Qv/4SSGzVsDuHCKt6QsHPuO\r\nGozA1l224KJaSKchcoxIKnxnYnVqiVKXAn0dMDpKgtivhXpgow+cZGO7+Stw\r\nEIXj6yRlo0szAGPh1WwPg8rPsr8BGgDtk0hkBcZBebS3Q72abjnO0jsA02iA\r\n8snIQmYj2yKYXK4y1Hf+dZCo4sMKQFjCOs3+rZPWf0/Atmg/utJaZ5gq4DOR\r\n412mpSS1VSa70/IqgwxyGczRoqc4H6GiMCKHaWe6svNcezscyBibiOU07dkn\r\nFk90S/qMxsja2nNHW4BzZVHOsbfBWwhnzUnkOWjktNEsiOQrkSpz0zBh8FnS\r\nGj8AngApsTupTA1HkT+XqC2RbFldCsPu0HdAThh8B+V97tKDW3pwhqG2SSFg\r\nQ+ngC5eu4+wtYVAzsKvsYdQ3Tmb12os2UiA=\r\n=4Aqi\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFdBPIEEIh9YUMe+ofCKonzNjcPHf0BeEODwfjKynvi5AiB33TOFg9I/5grl1PSRc1mo8DsRNU4B9k6qa8/Xx8jBEA=="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.1.0-beta.5_1648116898209_0.31269294453255925"},"_hasShrinkwrap":false},"1.1.0-beta.6":{"name":"meshkraft-vto","version":"1.1.0-beta.6","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"src/index.js","browserslist":"> 1%, not dead","main":"dist/index.min.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.3.2","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.3.2","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readme":"## ART Labs Meshkraft Web Virtual Try-on SDK\n\n### Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n### Basic Usage\n\nAfter you include the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉\n\n### Config\n\nYou can pass a stringified config object to SDK via `data-meshkraft-config` attribute. For now, it only supports AR Banner.\nPossible values are;<br/>\n`showBanner` - Boolean. Should show banner or not. Default is `false`<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\"}'\n>\n  Enter VTO\n</button>\n```\n\n### Events\n\nThere are some events that can be listened to. You can register event listener by gettin element and invoking `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n### Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\"}'\n  >\n    >\n  </button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n### Bundle Size\n\nYou'll be consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","readmeFilename":"README.md","gitHead":"2894870eed35108d0e6f8225e5b04afb5a34005b","_id":"meshkraft-vto@1.1.0-beta.6","_nodeVersion":"16.13.2","_npmVersion":"8.1.2","dist":{"integrity":"sha512-8uepDDfXJSXFRaHIzNfphbsAF/utL9drjM6nxBFyocmDhZm4XizpqkmZDmtFlv5W3Ucz885UVoMzevrDn4qBzw==","shasum":"ef75bec78d7ef938fa9db84297f1d87fe2f9cd92","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.1.0-beta.6.tgz","fileCount":3,"unpackedSize":47653,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiPX+HACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmre2A/9FsTJErdOBHKn0LmlTG3IbjJ17aXLIArUyvMNR/kJOJYTOIqC\r\njGmILnkQ6u6o3WAtlQ6PM/BO/jnxoORscO3Vk5l1AGn4Hj4LAU75RvqC4nZC\r\nmo7lgn47WflAKLO0io8X/4wFtEYIirYkE9z3LkjpfrpZ5afZbguYe+lhgfPw\r\nw9YUtrbKDHN8fTrDqNmiprCBlB3ZVj1QzlIQJbB40N5/BFTi9iHuRdpAEf5U\r\nG8c8Fw3dd59gC1NRuPS4AfAx5WHL7KPplEatIFvSj7LMODeuZHcOHhB6H3Ty\r\nY6AQEpoP796XH/Ae0P5o4HQfZK55qn38yBSOUlME0+o2KDRpR8LY8fdq9Mh2\r\n3p3CCguMylM1My6a0sRy2GNBFtOCAv17442gVQO+fbYv3Tcn58OniT/8NZlw\r\n+4vbcAxET98013lSvjrOTdHTjjQHqEMw27kHSDu2ACQADZhTvjJ7HzhCm2a7\r\nkrRuiwGbcYmQ70yeJRyre0BItgKJI75UB9EE96b4y12Fp93GDxskFprnEyr4\r\nt5yjqWA+bsmCs7+nAWvZWa9sej4mBF7WT8B90cjLZLDyBv+woFHH/ty8scsb\r\nqLXNVHscFsW22KiXoTs6D6ScxlcmeYzW5ipsKhHKCMqfhSesfTn7G0XqiXuV\r\nzvI6VMpgM72UTqyCjHseO7NV21WnjuL07BU=\r\n=FaVq\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC0UVUruaDRt+TiayCyzPfKI4Jd1+kbW3M195Hu0RS0jAiEAxHpnaSGaOs77aQppbRDIWNPP3stN6QmfNLRuh1hssCA="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.1.0-beta.6_1648197511596_0.1250689011889261"},"_hasShrinkwrap":false},"1.1.0":{"name":"meshkraft-vto","version":"1.1.0","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"src/index.js","browserslist":"> 1%, not dead","main":"dist/index.min.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.3.2","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.3.2","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.1.0","dist":{"shasum":"0bdcf9d27deed09b45c67491f5ce89b86afe9691","integrity":"sha512-HMt+NJZQB9h6atiegXSdQ1qiA8Cz4fia5kjXXvvvVlueRjEzrmBK7YN7KYr+nX9OKVJ0XiGqRi74xyQE7BqrOw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.1.0.tgz","fileCount":5,"unpackedSize":47646,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQZpKACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrl7Q//fnkyVySNMR4spcp8Ps1LGjd50T7aMxcVzxa84Bq1qBr2f8QR\r\nb7kPZSXeRMRuLYu8TaUqWcAysDMUpODFc6GSC5Vs2Ji1qYT4ZFIacHDPos2e\r\nDZYbRo1qBxEhoeiLINGin785TpPvX7PgJhH2g2fVjxRuSw86wAuEBb4bKAyi\r\n19BdUpCI5B25RJ8Rg5VEDZBSo73sOVkQRDkYOEmA+JjsPyau63t0tHav+09J\r\nJYtj/veAkxMUsA4c0uK6f5dgAKz4riTsIcFlTgWrMuFPWPCCawQXMJxminZO\r\nTnYlXLSsbDNevk5t2f92cul+/iCLGOiObpz1NazkP9XRIxEsxLI18XIIqtOr\r\nmtEsYufHdBoIbgGtodxNm66dJAEX9f3dk3+I+vt6GEFFIca3Tm0RywoY4OQA\r\nH81pS9Dg7lUHAnidQlKWGdQmIC0XMm7sFJbpprn90cviXhv2TWsXbbtJ76H3\r\n8brnG8wwZd+cg3Q3LWcXi/D6lgiWbExe3QUN6zjb0rfMhGsdNH5X+cG2b7ab\r\nbj2/D1T9vLCRye/tMCexNRhzlD2wcIFC9KNiWjBQASl9a59zBSw+b4bAMSs9\r\nd0uG7RRTKspWAVZ1aVaqKCuwWVzm/MoMkFZHmwHDBs+zGCeA5b/nGcruavHD\r\ni5aUYQxHmScxHIoOD65kjVQ4//H3wIhH9lg=\r\n=zY4d\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHYJgajAxRgYWgRfItGXr3X+dMuRy8xFh02LvHkJa0xUAiEAp8VHGswtoMz/+L9X0czzd9OdCtIQywjRnNlsAvUbRRg="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.1.0_1648466506052_0.4515186333679775"},"_hasShrinkwrap":false},"1.1.1":{"name":"meshkraft-vto","version":"1.1.1","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"src/index.js","browserslist":"> 1%, not dead","main":"dist/index.min.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.3.2","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.3.2","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.1.1","dist":{"shasum":"a4230ba06cd6a07e404621784693e386bc104a92","integrity":"sha512-hfak+Nw9SMOy9So0KQjrf9HGJdMEnvFKCvF6Pl7ynPDDNRAODYYYjMp3Fk/38wziBzST+0OQfqmBV2tj/f4Vow==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.1.1.tgz","fileCount":5,"unpackedSize":47646,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQtrHACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrT+A//QU251UBLmM7r554CmBJSIfGUlL9/+T9eOcxIMm6ecckHI66s\r\nH3W3uqGUzvKyJBS5MttQAKxVmegg979n6Y9u/jMwZiUG2V2iBVp3sjgZ2Jup\r\nivYgjYtWIZU179Ezg8DYAgk5wX81NcDZgdXibYphLDV9jSyTRACvOhq0iMdA\r\nLE3LN3gdsKIQk+51Vz9hDC3emvW8WyXNcvOgErKgoBVgpxm7ijeVv2kBTUTo\r\nrSgVtCeyChMmGxlFLzElgwSUcXwe8/mOlc7K6/Mo9p2XsY2Nt2b7LV9rFcLE\r\nhmWeANIV60V2YZeEiCPLzqXKlMIyCz38zTo0va18VNSSwZ48WOfV3ldtMkhy\r\nWxO5+i5vbVrUYzJKE7Ow0Fn7N2Cdc91OSsJkoPAYKEAzNWMqNccFYA0r/JZe\r\n1SweUVjiBcQKYOIO2BXFuJfr7BC+BIpVrvZuYMJfas92ROhQVnOgKPkbtObW\r\ntv6WN9ysGcBIg/5BAS9w6AZ2bNhdHGG6xt2jNQdqOJO5yHkeiHlPnJDVwJC3\r\nligqJa1Q65YDU6hoy1cTDPaqwPyl25yxQnYhBIctyWZlNSK49L1HVEFDjDK8\r\nnvVxMMTbBqe553bsFi9nRW6uF+lJNhpyaazrx823/NW0ZxapQnArD5oIgzps\r\nUW8+hOlSuIyEQWMsEbnqdHSRnCGsXIv7hCw=\r\n=zGng\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCyUFEvTj1X+J5ZQwy3Ns6xtefCO/IG/n4CNSkvtWuUfgIgFRgHdEL6/yWUfMW4bn25XGYIDvSBFPV9rQ/asmx2r88="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.1.1_1648548551723_0.338592762280131"},"_hasShrinkwrap":false},"1.1.2":{"name":"meshkraft-vto","version":"1.1.2","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"src/index.js","browserslist":"> 1%, not dead","main":"dist/index.min.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.3.2","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.3.2","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.1.2","dist":{"shasum":"fe53be0248f61086389b9c5ef6d6977b7f06a946","integrity":"sha512-w3QWoeT8532oYLzwBylwbSWtR0xptHuShEpFdNw9xw4Mjzl6UhijY26ZilXtXTpSzZLrW7BQ9BVTKjzqGzF1BQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.1.2.tgz","fileCount":5,"unpackedSize":47644,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiQuKkACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp5sA//XUtTfSF0W1mqXkM+n6PxPLlmSixqlO5IvgN8iiFFvnhoil3y\r\nKcBFke9yOuX+uldqW4oi1IM+NLfuPtzStqphsX/8HjTUX8PV20qUm2KoQ3kI\r\nC+mxUbThJBr13oKoBPk+ZBSk9APwelEHH6Wr7dN7Yf01pE3it+QIYj8Gx4jL\r\ntcRNP+KDpFjUC6FKenLTYXQDSWEXHx8/GVst12xE87+Dx+znpjvLgh6FCf3s\r\nhHbFGjS1/rOPEnnPulHaF2beC4U6QiiJ5s3KIv2ijLe+qoXi/N6KAeDPjunF\r\nJidHfxPqimNvxzftNu+Rwq6PQBqZl+z1FW+sMfEdUYklOG6O6PANVr82rwkl\r\nF+VOh4wIb/cc0T9UtUqJp9/QQtpu+3KQG0B4mZJ7O69qmYsK8bxWLLyW8zkZ\r\nIBKr0ZdKDkpCfH3ZWNQqONNLg20vPqBpzhNdmNjb8kIVIR6Z1xsIy/b3IgRZ\r\n5Ytna7hzivPu96IHPZxKn3Od3em1PVtKbKGBeapFjtFCJcubTC0fBkRY5RrM\r\nl7ruIM9WhRFgawrlMlWetjuam1k2wI6loKm/1d35i6m5dUajO4q51FxLKlGr\r\nnkMmvskHfFzTM90zgJv7SUGUCYWih9I7hnQUngoau2a5vqrQwM7OyXJS99zi\r\nZbj78wA9BkZx9elsSMV4h1N0yyaC+J8E1a4=\r\n=5KvY\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGN1N89f6ajUhZMykl2aRVmkJ4s+fHpUz1KITF/CL+vSAiA8hVx9sWvJhhwgbbOhcKsZu1CHTtdh4YfMZZ+LZYt3+A=="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.1.2_1648550564151_0.11656413568393398"},"_hasShrinkwrap":false},"1.1.3":{"name":"meshkraft-vto","version":"1.1.3","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"src/index.js","browserslist":"> 1%, not dead","main":"dist/index.min.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.3.2","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.3.2","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.1.3","dist":{"shasum":"0974a4c3b74b43188960b7b02fedc55179467bd0","integrity":"sha512-T8CfofMB1ADfQ5SRBBOmaIEeg7p5q6ET3fcPvsb8fjXLNPBE4WB8UQuCSE/oH3qEsg93YU9FUc4pq+KF23CKLg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.1.3.tgz","fileCount":5,"unpackedSize":47644,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHDKJkhlXZGe3qMicx/jtqRoxMTvW9mATdFitsFRmmC9AiEA3uJgawTkuzs6sovlfa/s3hfhqblj9QTlis7MqON0HWQ="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiTAY0ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpDHA//butlu532oQGGlT/Hnq1JVT9qC9PKbo9ptSD2uUCnimxS2JHZ\r\nnzaLGq2ZhRyhU5gAD0PA/2MwuUsWQBgGeEDcRTCT8kSj9pxT4SdPbjKEz4Oz\r\ntJXqbHqM7EE8AWjkaJxyK4kNKOlWIjCbDN3Y7/JKD71wyQrZoA0G/l+DSW0q\r\nngjP6eLzVZg9sPjjs4gQQtrcmmNPgjd/6orukLAqvwohVp9x6A4wmoFaWVY4\r\nSmbnpRV4nwyvq9UxuOEB1t5mXvFfkFzIRtA2XRUu/HGtSurbAgRSj8jYQJwz\r\nnwyJJmtO6lN6i3Uhoi9DqkODslTIb3S/4gsLykTZc282jrkPWqzsYgvPK1yr\r\nYvQ5udeNHHJyDGUSh1W6+I7KGq+joMWj9KuhNQbwASsOif27b04dewh+iK0s\r\nPy9f4nNhYtt43bZPYOPDag1FIiioBNsTabj6U1dnQ/3426mTfvnEXyIRZ96c\r\nof+SX/DIMwQE/cVqOVi1DT8EKqIvz/OuD9tO/v4gJI76/g7D5UAye0poJwcJ\r\nWMgVL/s2zVKHuqtRWr2moFDntIUgpL3cCG4B7uJavbBXvi+/bxfQZjr7MyPP\r\nOFkgU6ur6Ytm2Y+65GjTODWBH8r2uAYt5lViX+LqgG8gzrGCkmb1ZRL5+kcQ\r\nm0X4CTlBvjopaBQo8y3+eUBmqEMb8HXoPEY=\r\n=XH7o\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.1.3_1649149492711_0.23668418108247802"},"_hasShrinkwrap":false},"1.1.4-beta.0":{"name":"meshkraft-vto","version":"1.1.4-beta.0","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/module.js","main":"dist/index.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.4.1","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.4.1","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readme":"## ART Labs Meshkraft Web Virtual Try-on SDK\n\n### Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n### Basic Usage\n\nAfter you include the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉\n\n### Config\n\nYou can pass a stringified config object to SDK via `data-meshkraft-config` attribute. For now, it only supports AR Banner.\nPossible values are;<br/>\n`showBanner` - Boolean. Should show banner or not. Default is `false`<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\"}'\n>\n  Enter VTO\n</button>\n```\n\n### Events\n\nThere are some events that can be listened to. You can register event listener by gettin element and invoking `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n### Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\"}'\n  >\n    >\n  </button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n### Bundle Size\n\nYou'll be consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","readmeFilename":"README.md","gitHead":"924c1ee11a2b1def6836145631b344665d96d615","_id":"meshkraft-vto@1.1.4-beta.0","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-psgxHT4ScyPmNWTVRFVEvs9R23sJPa0gAztmTmadqjgXEulDHUcw/r8Y/d8HJ1IS0hTR0aTjf/yizrZWdqV4Ow==","shasum":"48bde7561e705d50dd76d61e1fe4d340a4f64108","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.1.4-beta.0.tgz","fileCount":3,"unpackedSize":44676,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD1+h5a/3TUJ8cH96lWHVNG677tnd5Zzen99a6aUO1PcgIhAJGjnKU4wu7wFD7rq7VnV3u63smiwHIAjvCs5G/6PTBF"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUAmmACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr2tA/+NZPyV9t5FsiIVlmOTFh/Fge5gJeRcc6eK4WAIIyzkNZx5mWW\r\naR5vE0iGKC9C5b8EVfLpT+QQdtVhnRKczm2ORqFDbmm3lsMtoZg6k8LdL4/x\r\ng1vK0HXyn2QcFFrg8aS91KR99KWI5ILIW7cBAY4XBMgrRTMcnBaK0vUQ1ZGO\r\nYe4VDdA8K5JUbv/i4vpdpF6a3Jh0HrLVgpspW/JlwJlkohyQavZnBwcVZZtZ\r\nHl7/gSdQovdKe9Y1T4Aw9SwbyJX2gREjR5kQeBixf9cyfnp6Uomn74uWBzNX\r\nJeVJrRQxq1Nwu4XE5BN9rEpLOOusF+4EnFuo64eqeoaFcSwWIJWP4H5dmR92\r\ne9ONi5P4W4jcwt31Wd3tqI/zpIsR0Z3JNoncvv95Vb2vzhoDKXJzRLkvUGC3\r\njg9PerkMIUExPC1GwPbmjO/b1YIbv3zAYx1dikCyuDTTb5c3CE7g8j2fgI08\r\nboeRX9y1mG6mB+PSS3gkh10oXvG2YxnmFk98wPZTeQtFF/I0F/HPo8pDfPJA\r\n+TsPEUp6rhUfSLdFor5wylYrDJHfSuHB3f/nyGiLiJKP04kMH1uxXmdFM+gb\r\nmv63t2jmvvjn6Ok2qQtOkQw0eBdJmlq4Q1xOrbhis9NOqv3SXZ6j4Ib8nPLw\r\nwSz1qCQpuRROXGzeQzaFuynTeVZwznhwc9U=\r\n=lNBQ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.1.4-beta.0_1649412518533_0.08103331462979413"},"_hasShrinkwrap":false},"1.1.4-beta.1":{"name":"meshkraft-vto","version":"1.1.4-beta.1","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.4.1","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.4.1","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readme":"## ART Labs Meshkraft Web Virtual Try-on SDK\n\n### Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n### Basic Usage\n\nAfter you include the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉\n\n### Config\n\nYou can pass a stringified config object to SDK via `data-meshkraft-config` attribute. For now, it only supports AR Banner.\nPossible values are;<br/>\n`showBanner` - Boolean. Should show banner or not. Default is `false`<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\"}'\n>\n  Enter VTO\n</button>\n```\n\n### Events\n\nThere are some events that can be listened to. You can register event listener by gettin element and invoking `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n### Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\"}'\n  >\n    >\n  </button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n### Bundle Size\n\nYou'll be consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","readmeFilename":"README.md","gitHead":"924c1ee11a2b1def6836145631b344665d96d615","_id":"meshkraft-vto@1.1.4-beta.1","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-0FCkGpe7qRD3TjNNsXVGE7QF+2/1FpLM4CE+bJhXsqV7v6vbDXN8BbMAOfwnyf6M/i2nfHfHWE4hprZFnidYsA==","shasum":"750911f7c691013938607761c04bbe7da29c06ee","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.1.4-beta.1.tgz","fileCount":4,"unpackedSize":83163,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDdlxTYT3rfnY8UVEddvfpo4LomXIB+N1a8n8BoJIBh+gIhAOwAsSeFKwg6kEKL0uQW9lMruRIW5ShEJqEk0NLHfhRs"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUApjACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrhJQ//ejnL4KmqyUdjyZ+c/9kkU03S2d5XJ41PnSm3bwC/PPzT1d/q\r\nl+7Rf97B+wyGDZ3xy5pYl82idSaYqiB8UGqDIlDF4QAxPKAjFJwF31R9n9g4\r\njdYWpsCFCodt0L33IwBhpcvhzPZmWvm2wN0kmzPoyCu5UDs0RcVGhpO3T0g6\r\nC7GPCjiFOQWGRb76qe5Pcq69KKn9EkH/SovOX8EnVNc4wLy43CaocNLH+h1B\r\n2gTie0pldkMz+ap4SiCsklx/VwZY9iOAx3sttALFQmBWPbavsmcowdi1NjoX\r\nuJ2AmxYR1j/a29D9L4uiFLvNQISCzPqYAvopMbPObjXi2UydkD99/Za+OtRk\r\n2mkIvVjF/l3o2gQB61iVHNgIahx9OE/cqQDl8u5C8aLA6gAjGPa6eYJoBPUt\r\nc+rMo9fjoI21qZO8Zhj1GoCRIzl9ItMCCSWNuc/eDntiGIC68a8FWBiihBb/\r\nYivPpyE++BaPJw4AVwERCkwoA3V2OhGLdt1Gj0bKaQwkTZffbrrRlpvPWdYM\r\nQPj+Rn65GiqpMt5n/aYrSAoshfuMRKMQ7cicaWjcBFllFMnpZtTYIOtEvfp4\r\nV5n+SgGAhAStl/2tNXbH6yab48moGQD7oF5NCxKB7WwQdY2q3wsuR3dg3yYl\r\nw6V790jAko8+qIgzpHnmQzW5CNfi5+v1DeU=\r\n=MIhn\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.1.4-beta.1_1649412707639_0.8971470834844588"},"_hasShrinkwrap":false},"1.1.4-beta.2":{"name":"meshkraft-vto","version":"1.1.4-beta.2","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"default":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.4.1","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.4.1","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readme":"## ART Labs Meshkraft Web Virtual Try-on SDK\n\n### Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n### Basic Usage\n\nAfter you include the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉\n\n### Config\n\nYou can pass a stringified config object to SDK via `data-meshkraft-config` attribute. For now, it only supports AR Banner.\nPossible values are;<br/>\n`showBanner` - Boolean. Should show banner or not. Default is `false`<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\"}'\n>\n  Enter VTO\n</button>\n```\n\n### Events\n\nThere are some events that can be listened to. You can register event listener by gettin element and invoking `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n### Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\"}'\n  >\n    >\n  </button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n### Bundle Size\n\nYou'll be consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","readmeFilename":"README.md","gitHead":"924c1ee11a2b1def6836145631b344665d96d615","_id":"meshkraft-vto@1.1.4-beta.2","_nodeVersion":"14.19.1","_npmVersion":"6.14.16","dist":{"integrity":"sha512-YB8/Max4xiO7FdbzobqIbHu2R0ZoWHqAE6r7KC9n0JFFoq9BOG9MQsZsYrNzCdM9eakZbJQ/Q2X4NwPmZ/amrA==","shasum":"652257db79625e931ea4e98dd0e2ace7e9bf0f82","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.1.4-beta.2.tgz","fileCount":4,"unpackedSize":89478,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCy5RicMpGd7M2iUsnbVetx9+b6lnYvkciVPRXgjacbrgIgSscSs/vQ0m6zOFvIL2u6cQocUNiT4q8kahgIlMEBWTk="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiUA9yACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo/jQ//Q4eqCo5JJPFJ0xo3cOv4Uw9ebe6cFxAEWpaKrK2Zg0wxOxgx\r\nSRPThCdf+ayzaF1suznE83V66uB05hBigvJidEl1gpbCMUHMC4C4NBG1ywgS\r\n9Y2iiExJ2zEDGlMUUUm8TCHVczA0g3nY+s4gttRAdvdyWvT8eF35D8CuAbYf\r\nzxyt4+4vyXsOOF1saVYax28Ue5NzOHE+cdDHWN1EYPPfJPUiOFuDRFIe7VZE\r\nP5qG5v4XrJOEpEPxTfM2fBTLvHryQobJRqNOlQpdXi4dtt5E+KaLgZmZnGNk\r\nxPZU2VaMkimUn+ckokVl0D8hgu475ikLHTZkqSCCXFpAujmn6QCTmpzSY/Ok\r\ny4s7KzIkFdIdX9fiASkjeW3zC+ttIYAvWeDURbNQIme2ZVUVU7CJ5bLA4Kdm\r\nUBwfeXzPLbNp7rW9xGKUmmbVMUpwUYp0kzhPvaa7/PWsI0XXfXD2cIBf4Zl2\r\ns2YA4Ff5ki+5FUJeDrEF/PrKvtTkxh+7/6mS/XfrtLg+Po9UgtsLbawlcrrT\r\nw8zPbg2OrFX4mUtJ8EraLc0ivMQFxIVZVZvm2XPAQXoj6NNvDoZOr9bW3yTo\r\nws2mvcaeOczecoYNOIbLr7d4F5lYl3rJyx2+VP3XPoBE25635Ysivp2Hi/12\r\njEbcXtMqxspqKieLodzpqGCDddm+IQgToE0=\r\n=1rwW\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.1.4-beta.2_1649414002239_0.8357278954609715"},"_hasShrinkwrap":false},"1.1.4":{"name":"meshkraft-vto","version":"1.1.4","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","device-uuid":"^1.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.4.1","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.4.1","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.1.4","dist":{"shasum":"1805401ff97332837e1e372cef6d408d52dcdaa8","integrity":"sha512-Xw45HZ538KadZPvGIg3TtChwI/1gxjIatP8Mxr+Q0DRAbb7FF5ClPgpIM155ocjW2xfQ3dm3z1CQFJp5gQvAcQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.1.4.tgz","fileCount":5,"unpackedSize":72869,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDadwGc7Gu/rdk3/mq70OKPbAaFaqj65sp6U8yeEJlW0gIgMsccBbX7OV8BZBpPcd00apkF1qh6XeOj3ep/VqRYtUI="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiVBpWACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpSlA/+NIHJnt/TrDv1CTFiDTO4Cr8dVe22RHUmEG6AaKd2o94n53cd\r\nh8pzQLld7NTso0ohcuLeCfRcSmVjVLWRHNJpLSn75R7hXZyug5kc251T/qBG\r\nfAVm+/xDVRvP5AZicezA/1wiK5J+fjDb8eQ4e8QA/7ErVOmoNI7bEDmz/QgR\r\nadULFvb5+xEXxG+jmkIRJ0HHdoHXqDtkU66z/Fhfsg7zom7vZ0f4lZ9baCxO\r\nIDNnUOyO5Ac1RwrFe61CZqBBRulmsf26Yh1EEuyZ+zMNmB3zhGgZnA5CCPKE\r\nxUu7424bX1QP44qR/cOOigM6UwItzIwbKrrspyu/3JGSXQtjwg3u9fbnW7no\r\na1Ix9/J8X0uXEWa5Ooh0UjHM1cr8C7cZ9ayeSbNCKXrg1YfFBqac4gal0+3s\r\nrhAJTs7S713ZfrI4K/QMLh8I2VgfxPN4+oJlFI/g6Dz3E9/T/3qBYBB69p3O\r\nyyGKlhSbcoqZLa3X3/mFUIYmh6PqZ9WB4LGCPuIrFiBOCxeOug43zrXOxXf+\r\nLTcMmV00NQIKPwuqjTyLVSkyHhzz4KZTe026etcYyPWB6S8Mhb+98gBo0HU/\r\nm13xGy+efjLiLpVLs5vIhwbhupy+Z6b9PtbwRgBRggyP1i14FzYx9aF03kCQ\r\nE0iwmMxXUejakEEKkCWbPRDifT/ymmLDri8=\r\n=Ej1/\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.1.4_1649678933908_0.902652458479319"},"_hasShrinkwrap":false},"1.1.5-beta":{"name":"meshkraft-vto","version":"1.1.5-beta","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","device-uuid":"^1.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.4.1","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.4.1","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.1.5-beta","dist":{"shasum":"5e3b06da66c6be3d6ec01ea439223933e822b174","integrity":"sha512-jN1Un3Z6t5YcGHg3woki+RVEY3Wgued2f/sLLrbmJMxDFPq4CiBwfCeZx5NY9kaLrSTTeIikfpFRkyf8/CEUqw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.1.5-beta.tgz","fileCount":5,"unpackedSize":72884,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDDm1U4xSJTlx3OcOg+YFO3h0MbTPPLON1PObLEDsiajQIgE66rzKxXuUw4MnwzqzzEtNXCuHAOyFibPLrfgD0uFG8="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiaoTSACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo8Hg/+JLSU8ESMItlJO5NNMdWFDW6FGMe/Dwq+Ab0yGWtDf9AXe4ez\r\nS/f5zhhbGsBrRUeQmZv7tJYVD0wexfVi289WAfn1Ssw7Z5Sx+S3x8/ES60Tg\r\nKgJi7v0FbReDlshLS3u26u2lxvtOuQZeZEhQUI2WZGhntSYZEUH96lZJU+ir\r\nmnsODeK4o1ooZRYOsG/DIGpOw4FK6ufjWDl3nz9C3dM+KdILUhp9659tC4jX\r\nyfQQ0DjdBMirEVeMrKWJctK5gHvjRjk2u/MI7oGQtBr61mMvWvEVrl/jGCM0\r\nyXuK6C7cNQeFEtAynxKrf/O3YYG9evTMuinvcxVKUX6KOPgfTmQC0Hkk3NNC\r\ncb+SElO26SXgAmPHIorM6C/LrkHNM2cR/JG5uFnPDxIevx+6bhJvTf8hQms7\r\n/0kWYry0aVK+FBqS5a3GfZCvXVTrffRdXxrdDO6dmTdb+MXsRf2Sju+ne4NK\r\nEUWuGtlyjxdrDFvFLHRljk90E6LhX3ShP/EZYRrNXwcIruvYHREwZnuXUJrV\r\nfysQHhEW7jKom/WZ3IyBbM/XaNTztQO6gLheszJviApOcFW58Y6SEwhrf6lL\r\nW+ro3mHeaJkCaOWwPIwNm1Xhypa/nynf0Ovrc//tS8KPgsTkiI6WgzmiDdzG\r\nZqGGo0UDQMO3hJzFGVbRxjhzbJEb7l43aQY=\r\n=QTsO\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.1.5-beta_1651147986236_0.10602072499353832"},"_hasShrinkwrap":false},"1.1.6":{"name":"meshkraft-vto","version":"1.1.6","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","device-uuid":"^1.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.4.1","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.4.1","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.1.6","dist":{"shasum":"ed317fbeabc03881f1ccde4373aadf9dc00b0233","integrity":"sha512-MspnapBh/hKG6StB85TU+WL6tsakvxb9JJO96xWm2ID7DCbXR37anTIuokQwEUjdv4x4akBwINo/B7Ck78UHSQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.1.6.tgz","fileCount":5,"unpackedSize":72868,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDvoHb6iA1kXPgWOfWN5RXBkPrr04SPXsfQmFVBJx2jIAIgA5w2U6m3jd0NNGCaZ2wi5hc8H6n6TssXee9M+ZWLp+M="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiapS7ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqPKA/+I5mrwCZNKajIz72i2l7g2SqlO3rCEP2HUG/SI7WvOregkGjt\r\nlV4zyrDjVou3tFYdeFrN010d7cl292AvuK1HmBq6D6d9u2MaZbtqmdRAaFbN\r\nhaYwOX8ugzwmq4XWQZVqzalteuSNJwHf0Gfx1YDKvZEBMiBKzHDbJzJuh372\r\nzvSkwOAkA1M7QnNECWezi3fIlpCK5dHLsSwH+5J9wotgVkJxID3aoCu03kaI\r\nhASbLmePHR7aZCD2C+jJLi+ruTPto4W0SA9IpiAkxiNTf7EMWXg8MVxmbkLJ\r\ntEMT9y5mbFya6AaImV0XEONPktkJz9BcaCMYoOwpIR/4SCrC40R7LTjkP+Fv\r\n+rbhL1Y/65lSYKq71beYJ1Ho5XGr05+CTsgXqLH90RsTnO7jCv3KreqnwOlD\r\n2S/JPZFy+9SMIlfyQiGeDotN2EQ5k1TNeECNVwQrzrr2gbH5c5+/i97eqItW\r\nuRzNoJb9Y0MG/iiCmvIaIAyEe38k6DWLSkx4hKWjbLKjNnpXTnSP90H/+Yvd\r\n0J0rJjuNBnl5nssU+oNOT3mjvZlxviATLDXeGe9Amwo5RaOdUP2VGw2RPwPV\r\nkj/sj4mWfh0FMYbyd27ENiN8pY9eqA77sHOere8MzZ0IMx+BdM8iQN83vk4+\r\n/bwwExepZfRFa2GU5DHrMMP3kAdxEgAoOzI=\r\n=m0lv\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.1.6_1651152059750_0.868706695408445"},"_hasShrinkwrap":false},"1.2.0":{"name":"meshkraft-vto","version":"1.2.0","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","device-uuid":"^1.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.4.1","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.4.1","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.2.0","dist":{"shasum":"c729005bb66f9321819172139492413e32590a16","integrity":"sha512-rLiOrlNU6KdlCdjya3KTzY8L3vR75NZtVFokKEnCwz+0BznHiRIdHdwfgtmofzGFSkHiX4qn1Eqd+FYgehVLIg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.2.0.tgz","fileCount":5,"unpackedSize":72869,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFNzZgKPAnzQrG1JdMO5ep5jPZp46Hs1+bTbt93hlBCTAiA+7FA0tYjXqNlnHZOqKo9F9h2kWW3A+/QEQvvvaBlyLQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJieijyACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpA2Q/8Dga2N2hCvswE15tOa4C+IQvQwrJNoW7SF1++8oALUKnFw2wk\r\njacamatk2yMcTFVf5ZadC5t+BijGXdsvrdu2yNvz4Yz64k+3aC1sr/KKJvHp\r\njTo29fKHyx4DoBlwtgX4Q5I/nqn8+TQKU5pCHa8dJFE4muFHYsq2Tmt8AovE\r\nCAUNFFNqjY7GGyjUE2I9dex6D963MubrkcUBu4xu2/dUZzCDp5s4FoHzpYIN\r\nIWn4crBksj8ze3V3rbRVDJoFPsDVh3eOZf2huGgmA5Wjaq016Y/W9M/7AyNv\r\n/H4qXYh4scOXM2fOlyEo4c5YsyxsKdrprO9ifuPisl5q1rwv3iiWcxwpBWqV\r\nZIHJ77YVLxE/h/nLE/UbPAQjkC4VdgYHJL4KY1lC4z9Gf97X0ng8T9FHf07U\r\nadWigJ8dxPqoDhx508/CRCO/2xtJMrb0uchU9ZvK8bMlwu9NmFo5yc3F/TxJ\r\nEE5h45H/7r20OBp4l4aFKxOykGLzwkuuTfjbMVDRmzlFK/q8EX7qZPOrWPMo\r\nVvd1sBHURYkrbsC+QrPeKRbqv/NAGb76u303kpNrQAlGeH7HBxuOjtVUaBwq\r\nZ5hTc38c99I6lqivQm8J4P+sXUxC9nd8s3MiEgBEVpmlVUwRlvYFiUtmFXQe\r\nuRZLryYA4RpovhXvMKJ3sUb+m9cfYKxcOxg=\r\n=zkvs\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.2.0_1652173041779_0.6826369919234387"},"_hasShrinkwrap":false},"1.2.0-data":{"name":"meshkraft-vto","version":"1.2.0-data","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","engines":{"node":">= 12"},"targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"@zip.js/zip.js":"^2.4.12","axios":"^0.27.2","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.5.0","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.5.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n`enableShutterButton` - Boolean. Should show shutter button to take photos. Default is `false`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the button element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.2.0-data","dist":{"shasum":"a4421c25460d5c6c49e403bec5b6d31fbe05c015","integrity":"sha512-Faeu7fkyjSzWWPogW7F1d1/dBetn1ZD1nchZlHuxk/wYSa5ZLkbc8VPfYjue+jhtBfnTXnbRvIXF+po8ExD4LQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.2.0-data.tgz","fileCount":5,"unpackedSize":36280,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEyuQfdl1lIOju5qt8HCDwu9HXE+jJ7DPOHLE+PXOjGAAiAHlKB6pGnL+NJsvLwc/1S1hNmy3M210xIEunbMkc2b0A=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJijLlxACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoMDA//c+e8fTd3ikuoB/QCFcXcywrioSkW2BUe3X8xOCM/TVMgEkd7\r\nPNT6j3YOD/N94rp47mcVRzNSeGwyrP0nS7gjLUpfeaQ/O+/RrGw/QW0ANdo5\r\nqDTaEiC2gqWFze3bq1M8lfKU4xMyVwTNmi4TDnhIrm11WYddadF5hXPhzWa3\r\naD+4XCaBrBweuNzLQThrhRBzoT1b4BS03uuNOL/qwh5GVrvxW+kbuyiDgZqp\r\nW2C8pdw/kL87UA5a56ullCu9D0mMkNBSKzqrOS4AtTNsWl3wrcViQ6Nz89nd\r\nQXVSk6vWfc1+NAP90FxEZ/47LociZZZ+ZEI+rNymjy8Fcv6gCc231jtGXyXg\r\njR7mhmYv1DZdTDSX59dAPDUCieRwkKZ0NIILvsEAuirm49U+/IuHh+y6nE+l\r\nGpGUwzCNJezSBS4H/mr8PbxzQQ+DqINL1oOtYDtnKzKz7ri6GO4Ji/5HlGzU\r\niovO0wblCVd4eOGKEtktJbBof05oOwHw9gPepI1A6iSE4Hkfc2evZ59Yfrf0\r\nmZ414TK+N2fe4M9RgSCLbn/EZmzmQ8lvP7tlZrSyz2MGXNKZBg2IQ4za5MYA\r\nr5hL6J2gJ9pZlqSAXSq5Z4iYNt06qZA+PJzV4bWehNlnZNVm+eyViUftfCNY\r\nRbp9mjD0tZzQh+L4XunudfBLOivbVqJjoOc=\r\n=KhUH\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.2.0-data_1653389681307_0.4939129005388081"},"_hasShrinkwrap":false},"1.2.0-data1":{"name":"meshkraft-vto","version":"1.2.0-data1","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"@zip.js/zip.js":"^2.4.12","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"^2.5.0","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"^2.5.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n`enableShutterButton` - Boolean. Should show shutter button to take photos. Default is `false`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the button element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.2.0-data1","dist":{"shasum":"6a1506e2df8db48e55ba928f782ff082a707e1be","integrity":"sha512-bcYXZcqhWofpWwbPN3bh5PLbhq/BlHO8jH5dIKY27QdFChRAyXta9/L8KtYBIXdK+BhHmAH5RG6vKqNeV1SB7g==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.2.0-data1.tgz","fileCount":5,"unpackedSize":212772,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICBoYFEw3sjkJ+yEWbJaIgXnRMRcq35cbh2sMqLuSxiIAiB9q5l1qiwBMTmNPT/ZLSEPPbLk7Rmk0t74cDZvBb7JyQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJijL7BACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqqlA//RZbyTEtp8OXi72bMMj29PB1UqqCqT63vuIkp/CFR+p5nSBdQ\r\nPGSwlZqNDpTiLScs8txsRhEb/lw8rrs14NQHNVQ+Jmc9dwlvxTjiMTKdTjks\r\n6KErvHaBAlosRyyI01Sg5mWcBRvg4xo6emeatJvsZkxPAWC320vCy4IMBHEg\r\nJWLEv48bypl4SmL1uq53MLsHv4ZaehzpY4gkKTklVOYmZY8L0yhYIPDmcGbS\r\ne/F99wh6dKPI8NmZHTkKraXcKXgFVs6VTowSw+e0UP/YFR99saS1nvv6dWkT\r\nPecaUtbuBO8k4jePFX43m25yGHSUTJxSuhpWgIaIMQtQNepbnctymZkmXpk6\r\nsv4fNXRC39UFKG9TmNaMXgCCvKyxmvqG0UQkeHIXoWmFZ1IHAVxahSfBJmS+\r\ndfevBs016U/l45cvgGbxUJNL88e9+B5MNgYxKUCwGl3EIxGFmVVq4WmucHaY\r\nO+ZPokbd+5yJcDjphlG5TI9cvGtv4VgXdASixDxq6s+G36LoBVmsFjhEsnXA\r\noADtDZ6EKYevkgQw4lzGhxXXHd6Ut0KS1K8+3r05sAx1j6PjYx3pBi5eRMbx\r\nHQE5iZsb3dZ8AdjwmOiNX7XBv+C8Y875alFCZ8YMftUiuWhDr9IhDmmf3kk5\r\n479VaC+auU9vsu46I2LGEwFz653IemLLoHU=\r\n=8jZ2\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.2.0-data1_1653391041578_0.342800504885695"},"_hasShrinkwrap":false},"1.2.0-data2":{"name":"meshkraft-vto","version":"1.2.0-data2","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","device-uuid":"^1.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"^2.5.0","babel-eslint":"^10.1.0","buffer":"^6.0.3","eslint":"^8.4.0","parcel":"^2.5.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1","process":"^0.11.10"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n`enableShutterButton` - Boolean. Should show shutter button to take photos. Default is `false`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the button element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.2.0-data2","dist":{"shasum":"4080ccdd287b98c10b2494c12d4d56ed9d482296","integrity":"sha512-GakiFdJ3iO4f72CR8wfQbIQ1QmPKpdC9CXb1LcwtoTUiCfP6aNNsNvygBqs6RGuEdchCludAinl30LVvnf93kA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.2.0-data2.tgz","fileCount":5,"unpackedSize":176024,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCID6etsVdYFqz72AUm1PIoivU+k7PdIyOWWo7dMry3/j2AiEAj4OerIO2ll/x4hxrkGuNoq5ga7EpHSDqkFq0gjTOkCg="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJik/AcACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpeFQ/+MbVHZFN4n8suNv0nUCQcP7vA/ZJoYKRf1LA1hZcH9++kkGit\r\nVF69+5dXHv368KJdESRAb/AeDE7K5/wHOKSbMyZXQIItj8DiXX6VvGbwlWIv\r\nk0rYea1q6cTAQps+SQHZVhXZq2UPx42HXE2PL9W4x42JSMAvrIhAKeXRa2qz\r\n2W6w4IJBDplQHKH+9OhG44gI/S66gy5Sie10BXBwO4wcDcDL/P4naUM7Ip5w\r\nuzLz3CpE15399YrOmbt3SNzJaW4E2m4C8egV+NtgcNC8HsZaslgNZAmXTsMw\r\nLBpWUq+uZtqhmrpHcrLEEUWe+SI1GQKAaV0zk+pq9ikUpUpAIvsgc+HVwBg4\r\n1I5y95sgcceO8AdYD4F/QyNHceGdv2rot9BKbDxCZIMHAl39x3FvjFmKUxgX\r\nEcVT0oV3UgZw92M874TO4c4fuTu2J1+0HFFCL/gJsWUHJlECxA/Qi8w8Plc5\r\nYRYIwpqtxtSqLzcfktuDMAVUFSC1pQ0LQlxU+UMaSL22D8+nKTMU+0sSyNfc\r\ny0yMyzUB/jpIkTQ4JTYKCann+hVFs9+n5zilvUPvDbL6cavLy5jA7I/u53zw\r\nRCpNZs8MDsxrPhIsKrc+Z1OoDJXgYavsRvtcRt/RrxzAKHr8zmmDgrfeMPoY\r\nxm/mUEQ45DB7VmreEAydnQDVOBpDueCIHis=\r\n=K33w\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.2.0-data2_1653862428037_0.9230620209583711"},"_hasShrinkwrap":false},"1.2.0-data3":{"name":"meshkraft-vto","version":"1.2.0-data3","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","device-uuid":"^1.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"^2.5.0","babel-eslint":"^10.1.0","buffer":"^6.0.3","eslint":"^8.4.0","parcel":"^2.5.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1","process":"^0.11.10"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n`enableShutterButton` - Boolean. Should show shutter button to take photos. Default is `false`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the button element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.2.0-data3","dist":{"shasum":"21e7bff2dc734d053b2a1301050ea55a52cab62d","integrity":"sha512-T6Q5i4pLFx1vsrp3cNs7dxfkGQFBWtnLmtl0KOhUn/v4cml/Wkb2CJviegrepxXTBWUpxDLi68m3q8p0ulXGMA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.2.0-data3.tgz","fileCount":5,"unpackedSize":175778,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIC41Ei4ioXU79yUQcLj5oKFxx0DCeKV7VnuivBvlGipyAiA8dH80fzEIobH6LS+o4o/ohnRRE77UA7zZYStQ0Caw9g=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJilUASACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrlWg//ZhO7KdNRGNQRDkIAe+gDuBcTOBmodYN5i2vHng93DD3qM2Db\r\nyOmxaAhbkWGSqOQcw4eUCGJnIITYpXgtoDnStbbUm3/fo8Q/PulrVZms2RVo\r\n5rV7nWO7ppornaPnJ4sFhdbgzkcOVyf2iGjHTcsjGxPj+h8iWYjQ1qfqDQ/0\r\nVpoNA4dz+/vpPoWyrcZBk6T6Amw14x4dgqQIXGh6936522jspyRknV5eAExU\r\nbY57M5iDord/5wNU7G7af9QRFqjNd0O/RAl4/02cAqZew+7JK8q3g1HImdAo\r\nN9l8Bu8rc+xkQZAb81nvTRCbkb01cOKe8YuLaBXzpK+h66uvSsQiWKIbs+Sz\r\n0pXP+BBPgwO2/zddU+jAEYN1YBmhidQfGgXQc2+0/X+C9WP+AQzjsl5Sb2oo\r\n1AsK0nnEVWuUtxOf6gLHaTCdd8MDZMjgltGTEvueSrWG/ZfDumctDD7jNCey\r\nDtkfvlQNLSahGWSg+gGekxEtoLQTOroJ6J2WVq5Zak23HLWjU/9YLvdpojra\r\nprM4CBHk1f2hxUqBSjNt/EG07QzT/XZBhE/LABgPDHAyrHxwZWMHPmmCsAvG\r\nBBTlQ5bjFA5fpaOl+MYEkC9OuhYKgXxpm+vuuhDN7bYjFIKSLszVzuKgcWUV\r\nfCHN85RaeniHzDsO0L9J8OrjiRdecqOHdc0=\r\n=VLhw\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.2.0-data3_1653948434545_0.8188056576925444"},"_hasShrinkwrap":false},"1.2.0-data4":{"name":"meshkraft-vto","version":"1.2.0-data4","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","device-uuid":"^1.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"^2.5.0","babel-eslint":"^10.1.0","buffer":"^6.0.3","eslint":"^8.4.0","parcel":"^2.5.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1","process":"^0.11.10"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n`enableShutterButton` - Boolean. Should show shutter button to take photos. Default is `false`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the button element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.2.0-data4","dist":{"shasum":"7aa6a6625c94dd46a9816543666e79d322419144","integrity":"sha512-o1atwOnVSU9TUk6BYzXQR8ap+4bjHNEVXONrHasIyDhz444K54mtxsWY0IWN4Is6naat4HjK851M4/+fb4L8/A==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.2.0-data4.tgz","fileCount":5,"unpackedSize":176264,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDz3fUIPTJ/jxMj6W5fh4vGDUL7ZWWZ7RZ4wJtvKKWiGQIgJi0BuSpzm26zV+7aAMtTmaoyvydmQPvU3lVFw/pkMxk="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJilgdIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoE+BAAo5/q8++u3VLPOh4SrB6CzX2swe3po4X9I3bResOmCh2BZ8dN\r\nOr7om81sUurAwHGEQK6OOynuuJyTZiPLXVOtQkI7RYI2esllZE+yR9MqFA72\r\nANO0lxCuVy35xeVTjhBgCKhUFiIWTbnhE7IQaeKuwGcF4g9oHGPS3tD7Z79D\r\neNxNc8zmMTVy+MDSdJnAz9lPOwGJ5VZ7aVYBQuQ+o+MwSMMfrmbfdkrJXldc\r\ncTuTvAd5KUU0Tb3z3MqYMZdU64vrSZfLP1f6qgp3WdwB9vOyhbrnBH6w3Com\r\ngQUFWNBZ8gT8Sk+ULsSvLKoapjuZju7kb3ZiBDNsEfzx5GbSCaACdhDPVu+M\r\n/gG/V1agfaqvblXnbz6FFPU5FXIM62NO827e2FosPvHWX00OLAxvxW97wOv0\r\na4PnA8PjbtdcIA0YDadgt+Hl6We4DuGssYVBhQUVXhjC8W+tltSkuAPTwX8l\r\nWOpaYm/CteiKIr0eWX8gIKKvKNtqZFZaa0tqZB2a/L2/B95wNVd62DWH0zRz\r\nGC6lBty53tDnKzQvgNdEU0yyLMiI9lKNexl4PFSZzh+JUc/Mvf8MD51Ps2xL\r\nuFxEfS59vNh0U7YbwL5JYP+Hnw8VYqb2e64UX2Z0AipvVbB8GvE0+LLbjCaK\r\nNC1HjHNadaz+9KigdhT356s3sDNiHz81nBg=\r\n=dtxz\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.2.0-data4_1653999432297_0.7068465997318407"},"_hasShrinkwrap":false},"1.2.0-data5":{"name":"meshkraft-vto","version":"1.2.0-data5","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","device-uuid":"^1.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"^2.5.0","babel-eslint":"^10.1.0","buffer":"^6.0.3","eslint":"^8.4.0","parcel":"^2.5.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1","process":"^0.11.10"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n`enableShutterButton` - Boolean. Should show shutter button to take photos. Default is `false`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the button element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.2.0-data5","dist":{"shasum":"3387c4085752e0f9bf5a484fd21bcec9c85c0773","integrity":"sha512-BecZgxlv1dvhjLk2BBRFR+LXZQb/jndS50vso6Ri2wt7R+I5A8CY5YFm72uNeaaPYpHMBMr8YKBG4UY2SWVJ6w==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.2.0-data5.tgz","fileCount":5,"unpackedSize":175777,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFcg6Fw+UTPYY+GNh5XV6LWBJ2+R/EJxR3tck8Io8ENKAiEA3rkS+C/9xfrkcigq0xV7ZqFQOFEFQg9egSOPnFNc75Y="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJilidRACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp6ig//U8aGdcax5nq/qq8c39RlQfMKCHFmkNlf4yqW8TVDW5YelZP5\r\nST/d1zSkOzVRr8kMHcsXcwxtIxzgOiqbTldbiPfaP5pGUNh4PZ4tz5x/OOiD\r\n3/Rm4hYODtrnJ6vllfmMOi3PKrzBWdt0XIiH6bxw8uZSXtFAeQyb8Bm0xm7s\r\ncWXtpiPTrx5IrNU3jMlSVP5ZGamid1JYAyapn7bcKw9liK2gNWH6HuKkCnzL\r\nqiIjwCqhzKlibVroJr5ENbAST9XBXmwRNbi98h8nv8HyBefA0yBA6KsQyBKV\r\nOKmTZojSOEIlsQbChIfyOKuA/cuIqAYoGnL6JfAJm7CrOlFROlu9t/r3H91M\r\nnWlfbqrAiRSh4EtQPFUhQrf1R7RncrPIJQHjbi3kxMdqDYy6LkYZDPRdTsEv\r\npFJc+7J4GCh+GgHa6TYZrv0vP+bdtf1fVYWkAPGmhCFXl+T4LIlPHg4vwwOh\r\nCwmev6uMqsU3AWaXmIFDSsOC/CD3MdO28w8rAdYwV7RKcth8a4k5wz2HDJJ/\r\n0xv18jO4ET9R+RIi8/1ObgcES/1ZCRUAVNAmePdpO92j4tL2gOsAPeYLv1FJ\r\n4Syq/b0vi2CJyCKchbBH4MyLzcInK4NQXB6RzVPcjcoh8YyVJPwwsIaWppqk\r\nB96QO5GgRtcvEQCPqQbZ9or7tIhnoEg5i5k=\r\n=udoe\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.2.0-data5_1654007633692_0.9035256468577006"},"_hasShrinkwrap":false},"1.2.0-data6":{"name":"meshkraft-vto","version":"1.2.0-data6","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","device-uuid":"^1.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"^2.5.0","babel-eslint":"^10.1.0","buffer":"^6.0.3","eslint":"^8.4.0","parcel":"^2.5.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1","process":"^0.11.10"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n`enableShutterButton` - Boolean. Should show shutter button to take photos. Default is `false`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the button element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.2.0-data6","dist":{"shasum":"63c29cc7c686e65a37503a59a62ea7f33da8e4f9","integrity":"sha512-W3CKqfF3OEWnuaNCpcYvjnqUSO1VxyXEFEXVflMkTmgt+b+RDIgK9bMPhIIPPv81SQ0TCWDp9Hv4EGzbHcwpmA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.2.0-data6.tgz","fileCount":5,"unpackedSize":175810,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCjvVsgy82H+dLE8zgk3Zd85+PJXf9H/bKX+PzlUVI0CQIhAOmPt+UC/eIRODnujaterT/SqdvFvxdhpD/UdhyN3vCO"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJil2baACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoMWQ/+NLL6cIp4BEOwaVNt8HV0S8qB7aNsF8CoVrmLLNz3T97O833m\r\n4b7+R0KqjaiBNSPjKK9pXN1kArppkd97vvEbyTKG5QOMThk31b/+jSPnSz1m\r\nK/fCdur3tSrEH7Hr4Oyq2Kd48mixR/kgMbm+bQRAIb1/Kiswmu4/iMGkOgQW\r\n4QrEmbeN+c/6tzaqIjQwCqWRhPFoZaR79u3cuitcwPz4sfTAeMEXYUYOXuRq\r\n7KiJl0mFwSSMRMb4nlRGAR7N/xakb1YpoDvpc8VSlDm+sPmkgECUK3B2pyQ1\r\nsLGBE/Zw4aquSI0B1R3yjsUtTYF+ANVQx62P13Dc/+73axJO8TgATrSbwFzK\r\n5AZghkFTnCp1yzQZJ+5NA+j/ogZW5zt0DYqeUKdnbbroeJ/kG1iWXa67cwld\r\nbdbAhmVrQ88W1pqlC0boBg3vyPSHZsV2p0ciuy3p93OLCMrw6wY+4oT+lzyQ\r\nTApU/bpa48iLkBjconHXFjstgJQUCGGADKKSWRTD6c2l3pvg7/QQjzBDKmYh\r\njPDy2NUYsbTGKLFAHxSEIqlCcwc0GQsVy63pd3cL1I4+ny8xsJRZB9hsS11a\r\nTXBCOod91iGou43VC1I9REhecik+4ZqRpSJsXXHRkpOLRnLVATo4QUiDlxLV\r\nUxegiUUMGOGjt+OYTXHV5dW2DxBFMNluwGs=\r\n=/FL/\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.2.0-data6_1654089434384_0.31517107128208943"},"_hasShrinkwrap":false},"1.2.0-data7":{"name":"meshkraft-vto","version":"1.2.0-data7","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","device-uuid":"^1.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"^2.5.0","babel-eslint":"^10.1.0","buffer":"^6.0.3","eslint":"^8.4.0","parcel":"^2.5.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1","process":"^0.11.10"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n`enableShutterButton` - Boolean. Should show shutter button to take photos. Default is `false`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the button element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.2.0-data7","dist":{"shasum":"5ad6ba5a52812f4f59cfcea847000d2f23efe2fb","integrity":"sha512-rgLjyOQEtG9zoTRJhaC9R/AA1SmgmcGiTb+jxCvP3u+IqbywRjiJejJR7YeRiHTitA6h6xl4LD0pSdEUfBUOYQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.2.0-data7.tgz","fileCount":5,"unpackedSize":175197,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICZAV8DcQJTPt/hcaqj5F3z6gV09gR6rtsIQo80v8SFjAiA/LFtrN/YJLH4Dz76N4zxxb6VJNQmc5z9krRbIY7nETQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJinzuiACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmofoRAAgrwFL6qHs+Hv1zCZlcrgxLY7TZ4Fz/NoyucJBZb0DMIeYMXB\r\nSu4xnuKSDA5bIK/GDzqj0ChxzKWkJXNGsCGh25+o/CwGpv+R6SxSGSGK2m/U\r\nvKXh2RFQRggdQjU6lrPf6LvWQQvGTkLyNrEdTE+GuOzuPKPiO3B+unIhWA1I\r\nkEHbH7eWlumH8B9ugZ99R2fyCeaNbeZstVUrfhWVAqNAb6Ge6+IQd5eErQOK\r\ngGhOhh1mLzXjX3zRbdTV/BhKcM0fwl8mHwXXexO3f21+5Kgc3YPOEN3qN6vK\r\n2HExNVkBzKe2NXWfsBy8C7mDZ06XtwVTqpAJU/Sw17WQ3xk+dntP4pfofGwo\r\n9gYduhCzXOsHXm+6cBs71xK0ijqlbjqhk5QfNIN0aUYJzt8vxi92IH32nbqv\r\nRVwRO2Uat8P2ZQ1C9vw5NQ7ONWLi+vCuEdJ9h6dGd+0goyWmx6/FgNEsB4mi\r\ngVftAFsZgvIXHeVpGhxQxf7LqX3+klg/YfKOXvmiQEve/JoRvHjblQlgi25E\r\nkX2IzViUQGl1+PT+FrUYTIWJEnL5xikYt4wf0UIbg83r43eWzu7Qw6jxjrC7\r\nEtalWGfh0mhLaANVVQUCK4kACK4KFGhc0+VSM0vudFQwv8Au2DrZOn+ctlE+\r\nrjjeZhGwx4QuGbMrZbxeTLT43Nm1mqty6pU=\r\n=giYQ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.2.0-data7_1654602658597_0.6045716690897283"},"_hasShrinkwrap":false},"1.2.1":{"name":"meshkraft-vto","version":"1.2.1","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","device-uuid":"^1.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.4.1","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.4.1","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n`enableShutterButton` - Boolean. Should show shutter button to take photos. Default is `false`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the button element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.2.1","dist":{"shasum":"474837546c728fef91cada63798e9254995bf74b","integrity":"sha512-m+YeKa1toDt6VoLlYe4GhOXZft9mbJ+tivd+Yw1LwoL4SOFclFPUn5fY2BVIol/cO8Ge7ecXikzmj8QWYkNs6g==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.2.1.tgz","fileCount":5,"unpackedSize":72988,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIECRS1jad53XZyFCc2tnk5K+SCBbHIQ9Gcres0K4rxZ4AiAahrts+TUum0pAXyWIRzRjStrFDk3TIK5h4IzkvfHBUA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJin5lJACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqRlQ//XYqrX1nRl1SWbRU84EpxuzX1PXchPQXca7Cl9DymVryf7spu\r\nAavAW+g1sKTS+Lb303QLEL+aN/5s7wfzN5W85itxKXy/nkSN9dC8XJab72+2\r\njEIHB4hesvzaTKr84sEUHXAVF5aO6pQRY23MsEzyRw8KTqTEWRri+dGtiSWn\r\nuUfqSnYpaW4VfkGYjSxIukt9jWd74HThCVnB6i77Dnq9YaAPaISYkcgGWDzp\r\ng8ILsy2TVcvfdHBMoxR1kHKgUpDXPONLViUwj3uoVLa/a0uL/XU/OFEIDFU6\r\nNT/u46tgxLlu6ke0yox05DnVJ1Q8x4EzlopsAKmkJauQgkDxjF+YQ8CFEXkX\r\nywW0Pia1P1WsNs965zzhgBh4Ly889nss+PlQBIZxHi8+f02O3JEW1kc+jgM1\r\nPCoR+Qj2lfOoJkxAnLJ1qDg3lz7S0PTL6r2o3n+AISWFia9b83dUS5EM1+PV\r\nd199OWfOy6+106xtHu5lg7NwV8nGBYTxw4YTqVy/k4NKEWQRUdIa/ZMk97Eu\r\nQsFS6PZCyiBUYeyNzAyuzuXJx7cUNo36I/AUz3zXO4uQo4oYPALWE4YXGM6E\r\nXJ1uP2COnPTiC047kYbYa/CJ8wLTHm0EJYGgwtn856HGtR0gj7khKg67MmQr\r\nN1CGvMZz8H0jIfNvla3DXocrvn5azQPoiI0=\r\n=Mw7h\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.2.1_1654626633779_0.7141287907200673"},"_hasShrinkwrap":false},"1.2.2":{"name":"meshkraft-vto","version":"1.2.2","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","device-uuid":"^1.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.6.0","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.6.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.2.2","dist":{"shasum":"aa69ff421471ba7a017ee2fb31639e5a118d221f","integrity":"sha512-NsmreQVB3xwBy3rubhZ0Wv27lc+r9R4dnBnaYE4fegBoK8kCkBcj/h3ImOfXcdnscnzjXCTMRYxcDAFl4esNgg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.2.2.tgz","fileCount":5,"unpackedSize":73551,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA3H7kx/LsfVip335W621b0ax2eSp2AsD1sHxflpI8ZpAiA/vuGCtL+BfjAKMGEY1qCp0fOyYwnRBwHQSHK+sMjk5g=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJioIJYACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpn0Q/+LhH89obM+rRTMPNp8FNoGersadgI4z74BgpgAEqsVX4eOEjL\r\nYLGggyjMvuufWlEudWEZeWlNUQk5zYMj9X+Q+wulSnmovoKtCD8B6h/gkd7W\r\nVbEi13wv8z1W6DJmeFxlsD2O5KizXAYQThZN07Jk0UvFIBoTec5ucbE+PtP4\r\nbEYnjEz5VWQH0YuEBG/mVgQUhXUuEzcuBAt0i8JfZchluBg7cqcYhwjm/fWt\r\neAbN929jIsPL4lvG89q+vrXvE/4DFUOc9HT2E+3esd0CeuOQm9IEvrdkDk+0\r\n/ZzjQ36Ou8qjD87MgN1ltW1FKgq46WJ7oEALcxI80tKez7P53PL/ZiraXDJU\r\nUle8jYNxlosJOAzYRo6nPPGxGeFCdcNU4yRKhcksGCQIGZm4IH0GaBUkszUw\r\n/P2QWpmgmYwsgDgraURQ0daSiCA9a6kXh7qC7mMwDQO0Dax6UbFD1NOcmIWO\r\n+QEmlkKGBiw7wTjpnXu9bA36vVKsXCKo5OU52K90WC5qt/0rz+TYnJOtXWqo\r\nagqJPg+5SjrprYR2ieJWo7EC//BOtpIx3eAyKROl30Z646KmAzkk992AZUmx\r\n4NnQyMYFR9O7epn1JJlJ0xNDR47ni1xZ/VBj6w5RJsDV8OCURiEwXQIwKVkH\r\nU7gG1Eiyu9ZJTnXXrGuoeQIV6BesLXOgOlo=\r\n=80yL\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.2.2_1654686296549_0.8068960328517427"},"_hasShrinkwrap":false},"1.2.2-data":{"name":"meshkraft-vto","version":"1.2.2-data","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","device-uuid":"^1.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.6.0","babel-eslint":"^10.1.0","buffer":"^6.0.3","eslint":"^8.4.0","parcel":"2.6.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1","process":"^0.11.10"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n`enableShutterButton` - Boolean. Should show shutter button to take photos. Default is `false`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the button element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.2.2-data","dist":{"shasum":"5f1e5c746917f96884fff47dbae42aefa69b99f9","integrity":"sha512-R7NqRJkAUrkeP1nJiVTSo2o8pY/wviXaXv0ZDsTJqdl4RoORFJobgf1hnrP8+NQqer1K2ErzlWHuNgTwUtkF4A==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.2.2-data.tgz","fileCount":5,"unpackedSize":175742,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCClB0GXzCh8dnW/pAuT3VWPyDddmNS/utAQBgzDbMC2QIgD7THrWcZuBTNDgB9bNIBufdY8gfKTdXDIZvMdFTdcs0="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiolebACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqVeg/+Kb/9hv3gwWe4zkWgYX1aFce56wO5XsYWYd/LGqME1FBkA6uV\r\n8XbUK37fdOirH2ekbJzu7TRfPOlrCYUP1H40bGSvkTxq7ZPetK+FDOi9tmau\r\nfoU1CC7eaqIKpsVZqBp3cc8Nd5cwnu9e88SZCcXRNXXwmuTSLlsqOy/yUfRP\r\nfSLCskOyRuAvbo/5D97N5fOeU+L7RPKUUVw7WesPToQq0+NKmS4/LWOc9rdx\r\naK5VNVHTRpGQYBIKwmjR+/C0X+j5efxPav1gQ/y2D+4hbZYAvUf9G+oYlSAD\r\nIxJJsboFH7rq6xpH2s9IBeVxM/6ZsXFWLaFWhtzLbdqERTq6s6wrddhM8zbq\r\nyP3O6d8D9lAEwBfLhUS8T6GMZZuIa6ypgAhIsHDmHdeX2WHnOyMvugERtb7f\r\nl/1zoapUVd7qqDDPhXl9umCsO2WM3J/lQH6v9z5UKFOFErWMUoNq64HVqPA7\r\nOWraTE82AzjNQgiC9/xRDT9HP+kC7QVE9sbKIifY4Rjcgz0K3NYp+JGoYBOM\r\nxf7UCQKprqTBe+WrKflbBy7o+ZjMnsvVgAftNV9RGgCZz+t7dKNv1teozx7F\r\nMJJ0SLKAEpU2gS3vwRG/EW5PWU81Uj3yOCNMNUZq2gYgJ4bOkZ7ErzZjH/yh\r\nNHkTZMvZDIU+j6Wv6yi9EYP5PSjJLmhnI84=\r\n=sR9E\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.2.2-data_1654806427317_0.5095478577390524"},"_hasShrinkwrap":false},"1.2.2-data2":{"name":"meshkraft-vto","version":"1.2.2-data2","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","device-uuid":"^1.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.6.0","babel-eslint":"^10.1.0","buffer":"^6.0.3","eslint":"^8.4.0","parcel":"2.6.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1","process":"^0.11.10"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n`enableShutterButton` - Boolean. Should show shutter button to take photos. Default is `false`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the button element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.2.2-data2","dist":{"shasum":"0b518727bf23852600c8a3d712995721d071972c","integrity":"sha512-Qvm7M2Sq8de5KEJyYFPr5+ODrVt5FypLu5qXar3pWwVxo0id9RTo3HaYfI1pz2wathpquRfcHGecMt0B3yKUoQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.2.2-data2.tgz","fileCount":5,"unpackedSize":175743,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHC7MOSpl9ODd0kDZ6U0l67zvsRBT6WT1k2nqm057BZNAiBMOVmoxvsy85QOxRaIfNut8C+aQ8pN2DaWtlUbpRMO7A=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiolskACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp9vhAAkGZrm911tfO9kW0nfn51YKPbamtJmS1Veqp4IHNZidnCBO+q\r\nkZMWVvHcXCQkcAzIV12VAzExS7FgwN6KdRqkhFxVwcUlDg50qnkVkzc/IHu2\r\n/GHVHVp5TyEfWINhoo+QYZQ27pdhFG/bZkmtVBzivtOL9lNirwxuE8kl1BgD\r\nu4RCkWjULK8LdgHNRiMeFlR9WeOU8GdX9aoVswilVZJFxfTJUAhSyDKV9gBO\r\nP18k8MNlWn3QZNK30+SpE7W3eZR3pgXLUukSsyEFnJ4WqtHzBrdbMKnsB431\r\nzPamHAP9mLlIlNyLrOKLSB9MP8M0uynCboeLMH+ydJbwG2/+ACXt7K+tjYbr\r\njOLvtWild0mHFcNuvHtDlb+yqgf8gXFeUK7OB5wBeYNevCuN1+Ua8pyTc9j1\r\ndrtfkVCfaictFl7jU+0F9nbfuEbfbk9VvUKaL0WM/9e7qiLHaIKv1bTB2CuV\r\nqPwDK10TTZ0eQy1cDz7vXZ+6VO2wZ9XPzSdaQfg6WL/uTtN5QTbnEmdIlS0y\r\n73+8XIhWh7s7J3rLvkmUM7CLNrxccsBZb4yLIE7gkTfnUAEMFBp8YZGk2Zgc\r\nfy9qLnafjHU7IQERHZZhnaYHVYaBW1zPTk/eh7w2pIjBVLpg/Pra6dJ0yyB/\r\nZwij2B8Uh9w3rTLrkLAPnmp2NXWpQTc8ZFU=\r\n=fPXl\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.2.2-data2_1654807332440_0.1937923990237609"},"_hasShrinkwrap":false},"1.2.3":{"name":"meshkraft-vto","version":"1.2.3","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","device-uuid":"^1.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.6.0","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.6.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.2.3","dist":{"shasum":"e85b095d7710e4f7b8c0b8b53b2baca965d7aa4f","integrity":"sha512-oH4eAwDF1Hq561JpVPp98N1ZRJM8NdUDvtcafwxGMGbAlGs2rEUG4yr3OfHdMuGKNttqy/eU8acUf04gfoYbVQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.2.3.tgz","fileCount":5,"unpackedSize":74045,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCELisSsKl2TrcmusI7dgc0iKx0W493WrHEd3Dr3DNXMwIgZ3JfQ5oUViXra1krI0egTJQhvMIEEvIHgFhvwt6Fe2E="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJioz/TACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpqtg//ct4WwgziKW57yZwzgkVUmB2Vjvlrn1WA58+0Hd/ggUieYIcs\r\nN6BZMngiUnYPxdAOMDI4oPGV79qvA6Oq4r01KQLw4P7Pr/pi+mtUo7ikHWgP\r\nm3z5p4iw+bl0jM8a6F5n1cXVQk+iUbf2ntxzHJn9pzhZyo3y+FGxbGTLn13o\r\nRqJzXLcEjdE3t/qBZ605sjeRghSYhYmRd0M52T4vTzsAAu3OkVnH7iCQnmCS\r\n1IuKxzhYRAiZ9nIOrPlrVlIfwinN5w37vtUf+eiNlrY16MrDZsV0HHt08DM2\r\noTLS+kZ30SJdhURtvWKhj3/Pfup7Qb2NuE3hcylMnMc4xjNllmao3FRMJmeL\r\n1LK1257SlyVQJi7iyCXTLeCI+773ru2R1XvMLfihs1V75hm3DMffGyB2+M8y\r\nlop8Xh7Wd+3QVC7xA9HsHbv21gyxb6T5pkAdldSNYGTWmyL84bfDE3camSON\r\nSaUzM/wg8groh65LvlfDGSYHV7ZamCSPEkYHYN0fdEZlK0+vTIVW9kv/Z2ze\r\nyxYLrlvKNA+Smwvj0OwjmZhCG8x0O3HJgRW8e4GS3OODvTvrqyoWAt/OYHMI\r\nfZkRwomlScuKhLiG0KwhMDF7UR2KAPcFFpDN/v6k8KQqdFVO1GkYKZDScMzJ\r\nRtyAyNZJVC1qEDZBnGQt16ytBNZJk3MskOM=\r\n=LS2y\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.2.3_1654865875620_0.01915933375652279"},"_hasShrinkwrap":false},"1.2.2-data3":{"name":"meshkraft-vto","version":"1.2.2-data3","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","device-uuid":"^1.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.6.0","babel-eslint":"^10.1.0","buffer":"^6.0.3","eslint":"^8.4.0","parcel":"2.6.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1","process":"^0.11.10"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n`enableShutterButton` - Boolean. Should show shutter button to take photos. Default is `false`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the button element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.2.2-data3","dist":{"shasum":"dda8a7c40e89a8fb5e31876b5d13b0873bde2dc0","integrity":"sha512-TmDI3k6RkafJ8MRk4h/mc5aPc0J4rg+jZ/blYUnDN5Qi5QkeviMiUTCp12Xv0/MTGkCVub4lm1ruF1HIsv39lQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.2.2-data3.tgz","fileCount":5,"unpackedSize":176511,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIClNJTzsh7oMMOsQlK/9FO/1AJopU/RnFnQyu4OzTGOMAiEA5J9F4Wr1Et3xHa/8hwTTXsNrinA8/RBLoQ4V1tN1oxY="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJissicACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrf/w//WwjKMC9Cd47BbZSBvj9FZZOrJLPepfj8EHLTh1OzrBMy2LL8\r\nVdAO8Bd0ig0sR5yInGOCQ3FqTJo8NetkSsjmDSFm3Flm46BX07qE4b8aw4xD\r\nF7x0nKumc9QjjZHUwg6x3uB+OgpGnbOzw4pGFCU07nlQD8X03bMBOmErpNSj\r\n5wMpVWTUNkMyfJSg/rOPCtxeyo8y2gaxSXjt71/Rp0PfXhFV0ICnrIvoUfCN\r\ngYQ2vdB44PMLCgT/NOEAMflbPPUHdcJ3a60Phkr7cCI38JhdS7BTDIgBWpp9\r\n2UEcWUFLxnDqBk7E8pDs5B0txwrKO1p0WvyddSZU4xOQYrLOWO2zYlBhXIu6\r\n7XXx36DiWeWxXjw45QLGi0wT3Yhc0/zuKk+078qSyBT9P9035RrwWPXspNXD\r\nTQ+HpUzOw333Xu2PdjIvjdt2D5nEje1UHK6U2fSB8I92by8ahRcjTOMTKr6V\r\np54BHPrSLH58D5l6JScjj+r3PPUwy5sv8CGg7LOjr2j1CM1aSSjLjJhbaEec\r\nBOMMJXvMJ2LKBXmWSmckZnLAFUMJdj+MbJQducs7OCLTHQ5XJAZbAaaayns6\r\nDFH+bkh+n74ZWcVIpYIM6iNxaMbbMr+nnAsKg/WMbBZieLrEXP1jI2psttJx\r\nUZfzVr7Lh8JaTuIw3KzfteclY73n7XWpL1U=\r\n=iHZ/\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.2.2-data3_1655883932557_0.8013313663930581"},"_hasShrinkwrap":false},"1.2.4":{"name":"meshkraft-vto","version":"1.2.4","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","device-uuid":"^1.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.6.0","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.6.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.2.4","dist":{"shasum":"3d31725b7452b112609c4923ef723fa536b4345f","integrity":"sha512-2xBZ3T7LpY6AKLt7zBCjg0mMsShC6hX96+lgZfVN7vqrnh5lYqQZvD01PkbOUfzbkKYwqJ4bTgA1C5fyz1/Fow==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.2.4.tgz","fileCount":5,"unpackedSize":76146,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDBgGSEOc01yN76K5MhHxe8q7+JNE1SxNMP2Lch3kEidwIhAN3ADgcEkJRv0NOk8nq+RGyfdaSbHPqP7psQrdtzXKaF"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi8idHACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqBfA//X0Ede8roFYG3VyRlAF6pbZggga2W7gSkK/H6NOirCPtOths2\r\nsnzJQqQG76QOqcrRN/JLYwwcOrlCenzWXhkhBEyFrSRtuZhSsPrXIK2kTRsJ\r\ns/MIzLs8Qb92olYDZFe5zy4uKZuXqbr3Jvc7D3Pv+DNC+fuq08pFSH3bf+S9\r\nfCwJ6ndCguxLguxMDy2ZSgIiuGk3Ugrc7yXQF/PAcH7RvN9Sy6MsARKgldzf\r\nvsQJXVMtFk59tezMDcgrK8KiKYafSKOEykwpgB3ueOiTQFhVXTIJ4xxB972l\r\n/sDhwT6yrnFr3KA9/VxrbVVWwd/vIfGKyis7Raw7S+8xbvcmsZpMdyjBeDXV\r\nsIKj3TOVsX12GqlhvfCD27DJ0ghKwatxGsptBK0hfuCqjpQHPfo0uaBIzxjS\r\n9tZZhYYGV2leDfOjHNNz17PLF3O9uXMKBLHwKqIflFpiAgEq2ojyPxtIk2QP\r\nW8+g4kXNUs1TYwdSVP5Nq4LzfPFw5yMo8R8BSc2SQ4AMJljZKUS1zijWu9wq\r\nRNzaME74UZKVj7w6olievJV1Il0drFe45+bIlcfsDFEQqVIbfEH9AQu5evdD\r\nUs28VbAdAbj4GnI63SJPBApHXLLLQR2tJqyBEvHTMai6DdIP7TntKfuLigGl\r\nV0xNqVURP1LzosYO1mxaAEATfc2wqMpccWU=\r\n=cctc\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.2.4_1660036935269_0.09229663653669329"},"_hasShrinkwrap":false},"1.2.5":{"name":"meshkraft-vto","version":"1.2.5","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","device-uuid":"^1.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.6.0","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.6.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.2.5","dist":{"shasum":"1c6129ae11f35954aefe0d6e2d30cd3267dd73a2","integrity":"sha512-MsBtaeK5L6Hykbj0n7cx6MfR9wU5s9FNUpbjSPHK5SpcYeskd9UipaIUaRXK/taBhX4HZcKsLp/0QolepTshoQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.2.5.tgz","fileCount":5,"unpackedSize":72095,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBh+v+aTqVpRt4IczqXrshyVNAlZoQljWOuH/6vGQ3C9AiB4XqC1kh7NURaiFgqDdSZzqChloiKdr72YZkUfnnAygw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi83KlACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpuqg//QLgl/zezZtieZg4lLrIBYFbz4Shez0vAvXI6JQ2Dqgt7sAYN\r\nnqrlVPCoVbqHnoTEB0iVK3d0BbbVGSvwpQBmJGsQ5gZqLwvkB90aYGfxsF4n\r\noc/xoD9J4nk3aShNX6U+GclkC6z9u92XxNos1bWEupAMYhVnzgjfm9CiNKgC\r\neUHXU10xzex1HXAVjKbGSHLgjbymU58XgKoDwj8kQ0XC07t5DTbROVSG2Lni\r\nc277JMq6QRQFDsaMVJB6+bRPRGPI5sVBylYUakAVDHBastaKajUv7ITWBO8g\r\nLgkL2TO11TSc9XLWVFwHKlvDv5WPniSRDOYBy/81HX3ARF2qXzPMIzkAzOE6\r\n3CV56miTnabe8KtE4GLPWc1VGWDAYdPyaBL8UtvIkIyspUnK1lts8UVmBM0O\r\n+R7vyfYrlDFJZmE3NcRoFdDipeiCBZy6YwTZ0KzdW0jknGcznrt8miwRCAx8\r\nCO4xhp9d5iZPO9YYCBEltka/GuePVML7mIs9oeCHjFHqVZNQwN8k8V2p3Mno\r\n+5NscoWSLkjpNeteuf4vVppvwtx+a072rNIl8XVodQFl9WX41Vg4t+PfgyWa\r\nBV5uoPJk62yDaDDw8tr2e1hYcGyb2yVBqdIvYSJlNez/l7EUrrH+RQIh3khY\r\nvTjeTfzXS7WdyebV3mQUxN5m7zA4jZ5UCQM=\r\n=B5hG\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.2.5_1660121764914_0.4430424936751991"},"_hasShrinkwrap":false},"1.2.6":{"name":"meshkraft-vto","version":"1.2.6","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","device-uuid":"^1.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.6.0","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.6.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.2.6","dist":{"shasum":"4ea062a8b2c8598c15f9d4cb8715c11f54971339","integrity":"sha512-poSYp+HCn2KBSeZBWYObRMKy37mvVjIYjLTkpR8KxH889UOTnY/+yIlXC3cIMvEpYSeASSMyej8rdwZYetyjEg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.2.6.tgz","fileCount":5,"unpackedSize":72095,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICM7A0+pMpsWxI3drDOh6t/Rmc0QopwucEDW1TfhtEllAiEA9Da3cnQR+IYcERV6fM1PC36zGWkQIGHhbE2UE2OkGf8="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi/2mYACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrTFg/+NcCfCIW1Cwi6hKUJ3DXYXoSgqMu52J2WlWL6lDSc25RpD8FK\r\nFe/b2jVGTvXsMPivP29/r89jhJbkI45jxUkLiEdis20Y1pyBjkNMmXxvo6gQ\r\nQ8FwuPzPRaVE4qaNPcsATcEn1dGmqogsQbw/m4711BHMF/b7vHevOgl6AP5G\r\ne/TGC2j71MBS0bQ18OdpyvdpCTwveBsspKCXGeto59p3agOUfLuvuBJPRWHT\r\nI6u8GHbGdqUegbWsPridRrrBXueL0L2brC24WmeTgBi+sF5IOTjc1cEcQOf+\r\nSetz2VLsI+sDQY6rdfbbYg15Vm4wZ1EZuaxmZNN8MKlzRdU8SGWMvo9XVEF5\r\nYxuTMJr0PudUpRU+3o0qtddx0Yh9ru/5BPTuQf0AddwrDAENU3GnqB8KPWpS\r\nldl/BjXqjW/yuRvu86nnmb+K6tQrZQ0CkTfxq/ik+uUpmp+Q+iiW2qVcvOgA\r\nJ0EBFHU5co8xi3romhlse2ORY64TDHSUjjlsCRkFj7WVyRP/72yaUpGU204t\r\niGNbgB2iE1B6IJE3lUTDs5Omh+dYncu1aMKhLA1IK7bRGZ4smzZ+9kySkQzU\r\nTm0ecikf7pBOow5o4rDohL5CARYcV331e4X1QbEKiqxMMZvdwYR91fP/w5Yp\r\nOQXtK9pYXzyywVYX9Xe3ha4axxYv6vEPGjc=\r\n=OJ8g\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.2.6_1660905879835_0.26045995261056665"},"_hasShrinkwrap":false},"1.2.7":{"name":"meshkraft-vto","version":"1.2.7","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","device-uuid":"^1.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.6.0","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.6.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.2.7","dist":{"shasum":"a2a86413955d4d57c5aa6c59198af74b082f6a7a","integrity":"sha512-Kw9euAo+kmT5A30NrkrEJjT1Km1Zj6YT2m8e9Mw/faVT+DdP0ujhSfaxxTqYbXPhSNVt2On5E7AXM/Oha0OEsg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.2.7.tgz","fileCount":5,"unpackedSize":72147,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFRPNTjJXBfmLFTJlm8T/x0WHnBR+Nhm6A70Iq3MYjN/AiEAtPFg936jIf1W7TaQAcU1/8QIcmLrTAnzGj0WpMUYnxY="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjBgCqACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrAPRAAmRf3PIKRZf6tl7u6rZS/tNVqtNaSWDakqOu5yQKTEKxAz5TR\r\nUnfw4WX7rNlxC+quVarySuL6Cf6zFR29ih/bWJYgLsm23TFn4p1quJP1m0bW\r\n7PUkg1J6MDIHS8EId01wZ123cXBxQdlHdJOjaXtZWLVDnjcg8/S019b1ujP0\r\naxlJon3qjo1Eqguj04025WF/xUTPNfDaVrYMq+IGbpavYInC4+arhCsxIiaB\r\nSNsf9sLqhpFpPR25bbtcuZtX4x7sJNJZ7zz4vXPVqiUhmphixL91mGQ7BwaD\r\ngKNVqtr9dRma2Oy2O+X2B/If/0el28najAQZ6brZE2AF86lFSqedkNU0ExMC\r\nIJq0eM3je6xw+CRT/O5n2l4b3UQmYCciVKhVCIBrkb+w4olY4MmfB1gIsbkj\r\nPvQQfx/vHeCCgRCRXMvRtwAaC95s6AndVCUxQeDDor8w4qUptNdUM0sb2PRU\r\nxpP4egGSHDDBgSD6K8yzKnUDzTHm1m1whUD11h2KcLrKLT0dEZY6mfP+F15q\r\nBfKiNFQW/TqsD6QhbYKP4xpdgPllnJOpw6G7OJDwcMGovVcdh4Z0/QF4uXSF\r\n7ejYrrINczpjn33E1eFoiBD/TH9eYmEY/7M0p7sQMjA2AAxR/5HjwN96xYL5\r\n6MP1phvGyAbdj02l5WbS0Padwynrm8SYmNA=\r\n=M8Ck\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.2.7_1661337769884_0.002976850707159917"},"_hasShrinkwrap":false},"1.2.8":{"name":"meshkraft-vto","version":"1.2.8","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","device-uuid":"^1.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.6.0","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.6.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.2.8","dist":{"shasum":"be10f4e0c5a95cbbcce18366743a695fb43fd2d7","integrity":"sha512-lmMooM5p0ww7ACru/pZqEdTDHJt5tHN8nFzrl5t3GOlqQOpKtSQzMV3ICpD6hvx9zbvzVcBOxnQ8S1EIO5BXPA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.2.8.tgz","fileCount":5,"unpackedSize":72194,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBrhDXfj9xqQNqZyRrwjpuFK6k3nP+jE3/xYoUtnNRhpAiAK+3KJp8x+CRqU1Zf/L9HJ1FVbrpkYrrWiVJO2AbKnVw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjBjOxACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo2kw/+I9IjmEG9+KBZprf5najM/kPHsP5dqMW/wGHoacS7iGifmqL0\r\nY2Lz9k6IARj8JdglR9Wfo+w8Ou5TK7dQ4YQvnENHxPUsOhGp/TOfUsXzJ0ZR\r\nuJCwoR/XNmHEy3uwXHEiPWuEhYDWjw1f6XhAajY+AaG5EhnmnHz/PAvqN2I6\r\noZIE38AEIqOn5je9BGQmxvoLIbT/SRsOmcqcGY9DdnQYf3nBY5AHbRE1lavP\r\nA8CcjVyHZG5YTKOvA1nzIzS1B790LZzTSStk9Qrm8+dES8gKqcnB7QvzN9S2\r\ns4Y+vEEpwJp2lXnKHvep+xsBGj5k+8zL/vTCusvJ3Q0GyLxKBzIh5R5jQP6g\r\nSzZvhiRkcyEVLTkL5o43Tx9jp0qPqMHU6OOF9Px3ZOlz4nmwMVG5ZRhRUkqZ\r\nxl15WJ5GniiPCV702wc1xUXk+x9dYWh+VUd3fQqTyGM+ZYu9Gul5276U54Ca\r\nQMo6rtIuVX+Y+NYSeecVvtbIT7cgOA3XBhGyRXk3sRflCyWV58UVDlLjDtLc\r\nP6R+/V+BZ3m4yDSmkwo/F9NkxIcqaiws0nUkIH7/quIxVRbbDrSEoB1DTWYJ\r\n08S1SCC5ozvXWVqnFs1QARCTIKmxH6K4pe01G8FhEpFzhc7qn2+oFgaCoEpy\r\nqbA1BGUpjijiLbtLwtKNPCqSyVTigyeYpa0=\r\n=3Ivc\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.2.8_1661350833653_0.27547523922474304"},"_hasShrinkwrap":false},"1.2.9":{"name":"meshkraft-vto","version":"1.2.9","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"dependencies":{"basiclightbox":"^5.0.4","device-uuid":"^1.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.6.0","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.6.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.2.9","dist":{"shasum":"2733adde4709a6a5e1f712f752db16670089521d","integrity":"sha512-1k/e6gg4NzqhHNcHbEfgGb3AXpFVAbEpX0mz4LgwnnpMIAg7DUGVwb0OUi7icyBWgM7n6c17/ZOkD1XiO9odPg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.2.9.tgz","fileCount":5,"unpackedSize":72218,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHxjPmJ9lBcfQsoPhvXX7+t9Fgl60aBCgyCNr1MNO6ncAiBVcwqG03bn4fySB/GVCuCKexTkXdwfX2u2YZYbMVfZXw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjBjj3ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpThQ/+LoNx+7/qpiqi/r9qMiAgS954nVwk2cKBUnQnfdX8CNrI/9pG\r\nVSr+sdfmCnzkmnxNcHlQthV8yJP0730qERYNsFXFM9E8+RE/oSE16XcbNEAm\r\nR4P2EdMWCEoKWHFiPLUq911n6vR+d3VEMhfSjro4OxDnW9frt1pB6tBvzdKh\r\nj/sYXP+qUpl2HXCOLXDWK0VJlL4XTL5CEIKnP4NbNL+uh7d3F7fjolyirOne\r\nVFUuNogz4vOVMAkRnwH+veS+wgjOhPZXJUbjZYITVeEnctll/d6gkqKxTQU6\r\nlz9Orf9bVf2clTna7m6V8p0ScERROPNNQZG7/QgBeNr+K/9O8ZTCkXY3LqRK\r\nof9YAEwP3yle+tGSpFe2mzUHOmBglvBVnoGRk3vk4fsBDYbvu6Cy8y1imx37\r\nGMRu3Ye4HZCFT5CaZJlOMCQOc8PoCnwZaAW3uUsSEieqcPzVR3xe8f//GJky\r\nvoIMHr5CqquwTSQzq0TPVfzUXg4ZNfer7Wb1DXoIsxhi+lmIb3Diymaz+5c3\r\nC8ry8ZaM+90IBUTF+w2oXxC9UEeVRiwoPUm4OJhAfJaq+8HOQhHpnG0wkmXK\r\ncUphAegJJQkigZjME1UnQwcucLWXYYRWffy0EXhK8kiTDMBABytxYH2qB+/U\r\nIgFUzDnaMuiN4A4Ru+jJVAq9S0EBgvaK2z0=\r\n=NbWi\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.2.9_1661352183322_0.48534768007386964"},"_hasShrinkwrap":false},"1.2.10":{"name":"meshkraft-vto","version":"1.2.10","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"alias":{"process":{"global":"{}"}},"dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","jslib-html5-camera-photo":"^3.1.8","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/transformer-inline-string":"2.6.0","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.6.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.2.10","dist":{"shasum":"7bdc9e306191593dfe34cd8a955eac76acdc8e0d","integrity":"sha512-MuXS8pSvnstJgp013YjVPfUpPtNLVuLT6TlLWLqcrWM/iqpgTEZgBYIOkf+VjSSCmNyhhdyzuWBfMgDQPVJFdg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.2.10.tgz","fileCount":5,"unpackedSize":178664,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIApRpP7rKawzW700Hjuk4pPoOI4G5SDAT8r3BHfBfIbuAiBhk9SSYr4zlABiNT6acdGl2+t+dNLFw6T7uunTsoPuTQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjB5m2ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqxlw/+KuPc1CDt5pLbOZbEDVsHLXMs1VK+JlrRantTcg4WcTG4e7er\r\nyjSdSUBKT6VVOQzC2gQ8V4oFiLrzl4iGDPIDAl2SaO3ZIvv+ePY203rnu5VY\r\nN6S4BRxSXTNsuHXHvU6paEGursPgABCG6S020hs50R1hyyTwdtHhygiBjLoW\r\nq17m3kBFGePuy2NOEiivopRw3t6rg9LDMuHYj/8fWFu4suU/uUKUtoJEz3cy\r\n92kgOqKL+S1Nb+UjIes4fbZqNVatKixZ/p9AdDnFbZw2nKS47TkcKf5jBKgj\r\n4sY+JT2fSkgBMXktXC6rnRojYZ9SIJl/XmPVBuuLX1NeIT0SRwUmpDo/52Qc\r\nPZ+rULBnMJIWp9Mf/Ap4MWFOPnuVxHTa0ErmwU/k0g5vM++VjABjM2WKlknN\r\n951G/9NjnZFLssgfnCLXYWIbohkiC32xvzEjrMvjvKcf8kntEH7L6KkXF4sG\r\nNMXDk8pu1yjIOHeomw/cK+kA2vpqSGEkHl2cOeobIPufXGnPj/HhHeSTv0Ve\r\naZ7PooFwDn3zQfhI6YBNpo/kwZlCDzCdCbRZxqfotY7Dz5H6TZX4R6zvcS3H\r\nV1SYFCcOjxMVEF70jqZAUB6+cA7CUq36kMHgboH0sWZAjQbh7jvn8JB/5crl\r\n49jflgWcG7Be9X8vQL6ZBOwPGth0W7sa9QA=\r\n=TlHq\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.2.10_1661442486387_0.11839484709102166"},"_hasShrinkwrap":false},"1.3.0-beta":{"name":"meshkraft-vto","version":"1.3.0-beta","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"alias":{"process":{"global":"{}"}},"dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/optimizer-data-url":"2.6.0","@parcel/transformer-inline-string":"2.6.0","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.6.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n`enableShutterButton` - Boolean. Should show shutter button to take photos. Default is `false`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the button element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.3.0-beta","dist":{"shasum":"1f7b592d1f341789ac7553d41f31e3b19d7e44d1","integrity":"sha512-e8VecGuUdm4XkBw0Pyfw1BgeriSndt+1OwQPdtUtdHa56aEoFPFeF+yk7AJR3rGPHv+0w9Me+p/zgNC+TItV6g==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.3.0-beta.tgz","fileCount":5,"unpackedSize":303291,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIC4u++myBtf/WluGD0h380Yuj8q8pdvrcvPpv03NF3TOAiBLoO9a0gBfSRlO54OUpGTEOJmonVmipI5L6RUf+f28dg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjCK3yACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoPYBAAhioEayluchr3d9y9n1uEbfUWI1F7wS/GfUG+mEbiHO5tUwN2\r\nTTA3TqwU4r4SqMnost4g+tvgxxF9uuSn7oD2ElhtSc5doze4u6vbUwif93mG\r\n3lF4/bYVAWtvvN/Grnz2tpThsDZtDtJ/3uBQ+NxBMXALC2WEFWcGgpsf+y3m\r\nFJ8urC9HhEWeOkUaW27W29G+FRBQMwU2XytNKSPVw1Ia6KdaR0+vBeti6yz/\r\n5fGlbHaQ6kv6LWWITwdgCMy3M82tZsg0LGONgKPQI3qERkbpckogbuiqZlo0\r\n02CPUc+yuivx8wjB6ity1y0qzsbvxKgJYxae1lBpV+fBHaitNMBmLEKaDLxp\r\netC9UQLXUrdS9VGwUYxyhLqXkkrz89WqIh/u8WeZXZJ4AbO3P3GK/tnrSYje\r\nmydT8JpVns7KD8QzI2IMXgmn3Mu2loxDepDiT8VC4qGFMuusgk0Pl1xwmmHg\r\n2KdOoA6UXq8f0c+/d9fJ3EUCzZCrfsxPaKD2u9yL2qDxZe7YcHi10ad1qQyI\r\n+cVWPuTjqAKbUSMwuUTDELZLn2WPxE8xyZsqi7dfZXzB4O4fbJTy7G/i4I8R\r\nKUAuXZQD0oj2wrhHCcijxQgYKXcePf1hHvMNUazQ7ut0aAN8T+7wTtT0oBLA\r\nmBgqY4rKv7Cljz1aGCoOpQaABta3Nm0d+WU=\r\n=+6uE\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.3.0-beta_1661513202101_0.6680956549140067"},"_hasShrinkwrap":false},"1.3.0":{"name":"meshkraft-vto","version":"1.3.0","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"alias":{"process":{"global":"{}"}},"dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/optimizer-data-url":"2.6.0","@parcel/transformer-inline-string":"2.6.0","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.6.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.3.0","dist":{"shasum":"76b83fd12df19991fcbb098c598ea8a20966ffe7","integrity":"sha512-vSbw+PdLaTeErqT3FyqLngNEN3claoWrgpCvHudMLDWGunqQcN4pRJcNK7kFLH0uLRyCvpGyjDJM29cW0puWlg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.3.0.tgz","fileCount":5,"unpackedSize":303500,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDGuwxVbBFV9NvVKfkfqSinWAJwu4Z/T1C0nDXTSr53mwIhALehNx7VrOzJXW2x+1LOUFDjRkkftgP4bZynVFoocu4+"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjDGXpACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqZKg//djSxgmh4ZFQoCikfgX+HFgJIDFsU0H5iqqNSrrfLSZCCF3zO\r\nn9rZmMy3zHxeAS3h8HrhtuXDSVXJYGrwOP7hAjQRwAhRI9+7FUCfO0i8rOWi\r\nQFFafxBDtioEhUViqtrhL74rw190/5kruQlMLKqgIOgt9XqBwX9t+XCzg2JV\r\nUe+dSqOES9Em19IFm9ukI0psXfqdA/X1RTk3GBRORhJ3tyObBKxqGpPT7k/a\r\nHA8RueksR83W9YaNzsJZ/VxV0/sKEQCYwCXG4wy4QWTvvqJ2qoLi6i9rEg5y\r\n3oZKvtchJY+B7BoQcKHqaxefMZFkQ3QCdIQyT1rO4PxE3AxLSPcw9fKmV+tl\r\nms3VZXQMANVv9N2w90InDt4IvKOstXrfegUXOPorG7yr4LRuFAXDwqFw+wUg\r\nTEY1Q8wHnjLYSfzH14SLZrFjljfxb7WBlNY88qsqzVZC922/6kPoMyHnkdXA\r\nCkW19EWbcKx0Nm+z/B0MUO4XX1wBb54czEPFDXsEoVGXQAWsDzezVI9f/Znf\r\nWrx42sQUnKzSxM5A7gjbpR9OrpV2nlv6qb422lZcj3LU4ubhVz2eM7jbPZzP\r\n969J5goIMsRHQCYcx/L3LhBE8Sm7NSN+PSL8v/+7xsn+OImp8xbkn+BqnWZq\r\nTtuaLqLEgQ/j8A3fUUnpVEuKxWhsG3SCbeU=\r\n=r9wR\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.3.0_1661756904800_0.7755707788497364"},"_hasShrinkwrap":false},"1.3.1-beta":{"name":"meshkraft-vto","version":"1.3.1-beta","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"alias":{"process":{"global":"{}"}},"dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/optimizer-data-url":"2.6.0","@parcel/transformer-inline-string":"2.6.0","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.6.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n`enableShutterButton` - Boolean. Should show shutter button to take photos. Default is `false`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the button element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.3.1-beta","dist":{"shasum":"b6dc1a5359fae657b53c0a1ddd3be1395c0a295a","integrity":"sha512-htx7yxpksPFg10yFctdTpiuI1r6XEIhl5d7o55MYNsgP6LUedq6t/0o9MIlGSwAhjtpZ7c7egkq8Zo6Kp0QM2g==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.3.1-beta.tgz","fileCount":5,"unpackedSize":303544,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDULDuJyOleChkLVy87KfDfEY1DAamQ9rrVqucTOHweyAIhALQ2WgO7hp5pyv4yM1nG+DZiQ48JvvdNIRQnc/NzHKqb"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjDH8SACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq47A/9Gqa8EoYIlG2Q6/Csx2uLE55m7O5SNZgrv+v9wn/J+d3mELsn\r\n5b7Yd0whNQ6W885bzVkbKf080w2yavYss6afzRUB4ncbts8b8ncw550jizIe\r\nRMco9Xlg0+r2jw7V1ghl5+h9ukbJT4c+6Q7Epx9yjjIjOI+aRx5QZo06jpOG\r\nb66jWmvdI0Lwr/r5vVO9sbdElr7i7UjgVzBL2CO499nXgmQy+jjnwGuxA4ed\r\n97Y71wj6uN6iVWMC/u6hVUxUeB8cPERwSRSNZzMVDJsnLCpVVygK00QFgcuO\r\nNWb91H2S3eZuMOHIDXcrlinP0ntaY/HJWx5K75xjZuu0F19fLEjyfaKazwFq\r\nP1tjgcUA+6B1XuJ7Updzb6NqlIAETcUhieUHNelKPFu5PKruKUk4+HxDy5OM\r\n1Hy7MK936od7wq/B8af7o9igmNfwTzMlg16Cg27wr8WpA5fdSughCLzUZAvo\r\nMBpbdgFYZmYt/2MzN0x0Z2f9mkKJWzgaThNmhlPIz2VoDRp4y972d1lPnNOT\r\nUbnOYGxf/Jz6zdKt+lDCGSyR1L5XNcpxqxsckwCF8wLtYhggPNYLTxkjgl1E\r\nM9cXdwJH56Ns+nIw61Jk6aGNW5v4Mm6ir3Nu/VL7bUxNAUaSmAEyJsqEVDbL\r\nETCivUWJA9VQJVoVNguu5xe0FAFo5SKEY1g=\r\n=KiB8\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.3.1-beta_1661763346030_0.5660349069658503"},"_hasShrinkwrap":false},"1.3.1-beta2":{"name":"meshkraft-vto","version":"1.3.1-beta2","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"alias":{"process":{"global":"{}"}},"dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/optimizer-data-url":"2.6.0","@parcel/transformer-inline-string":"2.6.0","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.6.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n`enableShutterButton` - Boolean. Should show shutter button to take photos. Default is `false`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the button element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.3.1-beta2","dist":{"shasum":"f07e418c924c4b196703e0a09065e537c1541dcb","integrity":"sha512-CenHK9Y9ZZrDK3lXQaPAUwkjWNiXYSi4flDaiOl+4ewoRuGziininDYxRYIb6IX6ZD0g4pXeS6xsK7tIyIHNvw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.3.1-beta2.tgz","fileCount":5,"unpackedSize":303586,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEMG4UsUIajLBg9BHWdrkoifnHcv5bQp2IUnLsUgM8MeAiEAma5oOBjeXKb6lxj+ulJMW6DBKJdeuGyaSP+mE1qClM0="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjD1whACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrVdw//TmzW/q6CquKH60+pQfG10yZFxHE1NFpY413gZu268Fr8RzE1\r\naLAWZS2NSL6j63Wh+DIYOnfQ2Gx+jp7QDZwctHQfliZsMOkzuyFD7NtJRPww\r\nKaOLk8boi25UGqOl+WF19ecW/a0AlsoN6t1p8J+BIhPgPrjrLNNQ+tpPd6le\r\nW740Ro6aWrzXDeBwKHB3dENKxMSn9gGSkf5PWioPxdGtOcE8PFxe9NG6q9W5\r\nI6g57he1pgF+YY5oEM8DKxPgMNnqf0CdX19/nWxNaRuICqwU1x9z+BLre67j\r\njRBYtZ08q6DC+otcLOcsiZlBB1cTZZArh4c6qNg4zVUWtyDzqigQM6sMcdRd\r\nYe12k2p0EKEgZSODneEFVE6XOHXne4eP0v4USgc+PL2fqKWgareQpvkLLXup\r\nPzR77tg6gfzzQVSUcyIN/SKv8e1pV20MFBidjQwfAhWP1Pxnwx30GkPRjVEA\r\nJ3ZAtGr5tMVKx1F/Ki4M1r72RGf+B9YmBMuiSmVBl2eWWjHMh7Bu/U2TV/j3\r\niU7xx/vmf1Hbhjg/aP9v5uPG8GztRzBQRbxnIY67gvRWL9KFwEHjRgniZv6R\r\nKQMa0/nj1p7E9Lum9uHGFY8yVe9CXcE3FOGTd76pvaWbfSeerNn7c+rgfdsX\r\nOta+zv7hSwpt2OLyfItIfL2bwxBVzrSvb+c=\r\n=G9DE\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.3.1-beta2_1661951009449_0.42351262446304805"},"_hasShrinkwrap":false},"1.3.1":{"name":"meshkraft-vto","version":"1.3.1","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"alias":{"process":{"global":"{}"}},"dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/optimizer-data-url":"2.6.0","@parcel/transformer-inline-string":"2.6.0","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.6.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.3.1","dist":{"shasum":"0e335684cade0752d47e31065e38700dbb0f4648","integrity":"sha512-byLrc72FgbxZAfqITFOQT4zsCQgnjRWyaLjcbJ7eyHC8di59iGc+dUW+NMiyBr5pl3IcbPeh+WcQVZlPmWrf6w==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.3.1.tgz","fileCount":5,"unpackedSize":303580,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCJLcT/5+dRnuSpoI7FlYPcdeFGEThGjPTPkX60dcWHMgIgT7uxgXP1PfHQxNWwIHt0pQWy5afKgp9oMm933+ZjtAU="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjD13bACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqZ3hAAonvijawmijJuHnZKnpX10mJ+fhko3rSquW2dCKUlZiif3HZu\r\nqB/Y7df4UMSmbDb7T6nCDaTOLGVjmbhmPJ8cJO5lDAKg4bJC7yE2M+zFWzqI\r\nM3HcW4TFeiDkfLdvXE6wrcccUiHUZVnV7eSIXntww6UR2BgZM0hm+TQJ1VzJ\r\nmsrJrNOcze5SNb8EjE1tNxeArDMXKvH0lvo8bzdv6Hw31deghEwQUNdqoK+c\r\n4tZtd1xjocOLHgopGT5yD4j/NvvEqSjrJx6q2xnpFZFP/ycArzqJia+AzTuz\r\nvB+qkNha5Cfw11nTQN1NXL9T2oo1mpJCHl7cBCr39R2DxKhYHKIjkqPzKeva\r\neWqPFz9elsNpGhkrhPvzMdOpvxBknNmXj3fB5kqDEDwdVkn/9dTu/a8EQNWZ\r\nY5h4Lqj/UKf67HytbjhQwPoo34jiSYh3xzIcff+PFJUrdbpFn3gl8PyFXli8\r\nvCJyaZ6mEJw2H/sq5fZXRLzEnDp64NjaBQTzly1pF6aTIE6Uym5V5AK5jASa\r\nI76TjTdf4PQMqHAhJRK750ZzgB+6zSPuWYWMUpaDP5WVhMtTcg2iWVuIG3qJ\r\nNIELQkB3/3+N92eWsZyTXzYiHY+gLTK00IGAw7CVPeUlNoxEsWbvy3r0nELM\r\nnkYmjC2XvETHYER2kcbAT34W80KsaPVDJQY=\r\n=nrJo\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.3.1_1661951451232_0.3925318367940007"},"_hasShrinkwrap":false},"1.3.2-beta-tablet":{"name":"meshkraft-vto","version":"1.3.2-beta-tablet","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"alias":{"process":{"global":"{}"}},"dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/optimizer-data-url":"2.6.0","@parcel/transformer-inline-string":"2.6.0","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.6.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n`enableShutterButton` - Boolean. Should show shutter button to take photos. Default is `false`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the button element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.3.2-beta-tablet","dist":{"shasum":"76071a4db446c570c9ce1c5dd915a52afc5e6d61","integrity":"sha512-rG4HHm/5HfUEoXc81YajtjufvjM3yLDdmWQXsBXLhc87VS0FH8A5X7IeKxaxi5EXSOYxDnNj/sXpqsL6T7jnhQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.3.2-beta-tablet.tgz","fileCount":5,"unpackedSize":303905,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBFszYpKISZb+qDRkPp+21b0KWhq6+2Tl9x/YEWMrs0TAiEAycOiBUPuRm8v0YIUFis5TlGBrFdK9ArhOakqAAgDiWU="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjFcDaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmolqA//atZ9TUQjePBK2+GZUzqY2qqpF+L/4EcTwloLdAFgHcvs58x/\r\nGxgiNIGFvg87s9PTJRRQtcYp9sOnbrni4zG+9RwGnxsmwsWoNZXicOs+CvZo\r\nW4OD7qnwYp5kjY1Py0zrjNbpQ8dYYJgbTRzLjd+Ti9p0Tj7uRcY3UorcgP7W\r\nj0kMoMp7jRLBt6bBWhFeIZxbJ5NVbFJJbKfulw1UnwkSbmvCrD2yA2SAItoQ\r\nF1FN6a9Jq6/3lZJr22B8vHMkPgipvXwy7DgmTL30UQMItWriOD+L8PkLe/pw\r\n2M1kZVUp+TLr3t4cPazBNz+WUPoi37K/fsG2yv4c36tBfpyhvVx0D27EMypZ\r\nmvyfz+7mGCyOxJLOFG0+eXQ9wwz2OLDTJuZTgf9Jdhv3ipZgEEKYzIvbvY0P\r\nGzvtTQ2Pnevy3+m4aZGqme9N35sgH+7kxn/QJjIJResuKKL+xpT4SPdTggx+\r\nSWZS4v9CZX9Z1jP2qpxIsWUM+msEyiGyk8Jz90PX4dFX4dB9OBeouXXHtFsa\r\ncIw5u+D9LFN3uvxPNrMZ000yZYKU9OUCQeS2NHLVaV4BvaEVp4JxYvr/Eeol\r\nzC6tvfScqSRzRt1askaN7/YwTaQCgoCfSbqrdzOGZ785KvFGKtcHCiMyn0LZ\r\nlLzxG3TlRTFF71HL8RplDHQDEnQg6ndO37M=\r\n=kW8T\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.3.2-beta-tablet_1662370010406_0.29195106575376784"},"_hasShrinkwrap":false},"1.3.2":{"name":"meshkraft-vto","version":"1.3.2","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"alias":{"process":{"global":"{}"}},"dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/optimizer-data-url":"2.6.0","@parcel/transformer-inline-string":"2.6.0","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.6.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.3.2","dist":{"shasum":"d5b238a68fd3390411b61ff3c1ebd1a6c81ad93f","integrity":"sha512-5UeatvyHnUAbq1LBRcebwHa45MMtZWnYejiDIV4deyKh21r4wRfpqNJTDwlDltMW+ueUpVBeJaoHPjvACnFTjw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.3.2.tgz","fileCount":5,"unpackedSize":303893,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCz7hJzUy9m445SpDSw4+uG+lhz1AfWOGqVUMbPu2CBBgIganikImymRV2mFao4fn0CnmMP91iGJhaVCuEUEL1OzR8="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjFcd5ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrY5w/+MrGxOR1RiXpW7ksHT3IiU/0OdVQfc+0VGUBw9wFXD+0x6ipY\r\nSakfPdyZZ4tb6G33jFOjDS4eHFs1MsBXCZb/PUuVi/ivnnfVZjkZ5Jy2T5JU\r\n0FyWvvy06tLmHnYa4PgeZFhGezPRK4XEWde6LPqt73WEf4JN5dJbqEbcxVg+\r\n3lG/vvaBR4+VLQnmMwkleQ5a2mZnYyV/rBkC0b5tPVxAx2unw7n5vl8ephOA\r\nvtNCCO36VlhQW1jidj5QPhASn8aytMzaLdbHpEdS7bg/rfzTgLTz/c/K8YS0\r\noqqBoCVSEavg63O+0llaj6ZKHXhh5VoGwzWN6w287bi7GnrAEz64xLR/uPPp\r\nIvqXN/Nad65UTP1BFF3cfbaxGPW5Du5a6GkiSbOs5J4zHhNbl+6ZvJxJUA4b\r\nD/0uFOLef93mAvUmpwfVAcpvaV0vHjF98TlumMM/YxYHUb+VHCFnzC0QAGol\r\nu17SpFYW0+tBqeGCPBhTTTkFZGzRWmJvn4rGhqj0Ix4LXx8PG5fN8Dzu3DbL\r\nSJtHoej623TAI/QYAYu3YfxGlurpRmUf7k2PoZ44ODcKnftPddF7BEDmSS0V\r\nbarOdDKjeTrHFrYXfZDRm1xX+7MLl55px/Z3Y91hanc5izYhZ1Hk31Ntm8O3\r\nskJeQago57/DhUJASXnhrbbyP3sbqQOYxhY=\r\n=3hLc\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.3.2_1662371705310_0.954377946695288"},"_hasShrinkwrap":false},"1.3.3-beta-slider":{"name":"meshkraft-vto","version":"1.3.3-beta-slider","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"alias":{"process":{"global":"{}"}},"dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/optimizer-data-url":"2.6.0","@parcel/transformer-inline-string":"2.6.0","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.6.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n`enableShutterButton` - Boolean. Should show shutter button to take photos. Default is `false`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the button element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.3.3-beta-slider","dist":{"shasum":"bdc1aa455a06b81f36649edf5cd4ffe319afc83f","integrity":"sha512-+pAcS0Uj2BiQEziiav9PjzWDEMrf4l88ELPF4m20LV3QzfgLXeHasZCCZSRwB7GjNyQ4Qx2G7Y3ekdFkagIsNw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.3.3-beta-slider.tgz","fileCount":5,"unpackedSize":376885,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGyJp5vnmn5vKJqVPHEbhqDa14NucVXvDfCCEE2uLw9AAiEAxScj/2U4XxwsiCR13gzh/Too5U7WYl5mmYUDt0gOf98="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjF1XrACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqtsg/+M80L15MxbfpHFufO45AEHJHHi8AuvwuViuQkUL4HnLlXsFLz\r\nDgQKzdG++aQsGkUselXU46XWX7uJUSUnTcpmBRsDhcorIRzX3RcTr1eBCZGj\r\n5FR/CUdjlVCORD0XKCrtSSem+qk+TngW9O8N7dV1qcciFjMh6q612tDWreyw\r\nysL9SgIE2AJzPXRSlgH2jtvuV5T8eJdss31Cb1m5smZBTjtZMBBp2kVyQrI8\r\n6vodreQcy3dDsQXDdOZpWTpJcVdq2M9xJWM+ogsklE5GE2kHeK3VrN2tRCrP\r\ndn0pYp6uQWUOsqb7farpLXczUdDdX111iTwBYcHIU5KKeZ+n9OgBj+lmtuKQ\r\nZffejTGn2NqsQ+7iTFkZWnNj2SH+npuiYN21VN+WqaN1jN9ez1BxoKUmhjXW\r\n212mUCytaV7o2JAOR/rx9fxxd5+i3R9NVPPYRMOgklr9ksmUSXShDpIlMSz+\r\nz01+LY8Bju99gxojmbfDE5Gu1vtnBUAbo5U5E9sT5xRUwJ7ABFe13Py+dq/a\r\nr9T8tZTOvlejApxkskkjwW6jHur1+GMc+tzgIloUl8RQVlO2xfLb82p+XfQ+\r\nR8mGk1Amey6rlbgP4gjUDqSmV0iSKtFmKVZLrMaL7UP79WiL6CcotH1sTKcz\r\nXaqb8QfT1TU1ELfJk0ZTa4dQYfpmJGg9m+I=\r\n=M0Up\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.3.3-beta-slider_1662473707630_0.1076492413144714"},"_hasShrinkwrap":false},"1.3.3-beta-slider2":{"name":"meshkraft-vto","version":"1.3.3-beta-slider2","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"alias":{"process":{"global":"{}"}},"dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/optimizer-data-url":"2.6.0","@parcel/transformer-inline-string":"2.6.0","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.6.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the button element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.3.3-beta-slider2","dist":{"shasum":"958c8b01a1c0049d5b77fc40d14e68970464c91e","integrity":"sha512-Uwj0rLASsiPMNL2ckCfxRjVR53pd+MExG5rM7wAchM/5Emo0//N+1oT3mnLRKdX8Z682fikQ/PK6EOIQF8Gt2w==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.3.3-beta-slider2.tgz","fileCount":5,"unpackedSize":315086,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCSqAW5Vd0rvkqw0eb4w8mPZri0JNbFiTkQQlbiQfHhIwIhALcZ6VXzHKpE+fC2z7NMnlLiHbKyNWzyV3ENVz5hxjzw"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjKaCaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrC1BAAmlskPKvEkWmzWCnhxA5TkZVCPjCdGY0Gn+kpHI8Sa65ZOWnX\r\nF9IhSRk4QYPGTgNpxIZvmwRKG9y9r3H7H99/HFiDrVGGsCCk8zx0L14fgpfJ\r\nrnRrL8TedY+q6phBy7dppuqlF4w3FtHzVgGs1KxjOAFiCVgX9Mo20od/968i\r\nvhP3cDRxwqfzhPiMoMXc4nfMbgVmnWgifu0eW5aj6QqnAl/RPiloILTLynml\r\nzepXRb16Uq9A19pOK6pOsuWV/fTXcDyP+IKe8JUSrI179ZIsGSAiXxmRpD1h\r\n6kjH/ktDsLCRs0GG6zvMZ6K2/Dbamdbz+4TvyFp+4dGGtje4I6DN1oJg+s5n\r\nyVk+aw0HO3VHb3trRcYT7LRpwniF5LckYTBJQM7w9NfN1qmBFvQYUwv7kFVZ\r\nAQVZCXP+RV3YwHjBz9njwn6xl9CX8lLSqZH9rTYiz4xPJEqo1wAF9ilf7Upx\r\n224QEHdIDoP+8Mwzr8j6COzQ/0JEsxJQgyh6N5uRmPlWnSI3nKkFoJV2twe4\r\nDPDWMQVkZ1WCv6aLbVSTzfxw8l+soYwp82hse73xNQ9MH4/NTxcEhUBQqOrh\r\nBSlfxdctw7kki5ZQrM0BiNcejTUYALzx8DvhHnbGUz1q/ZlrrSqG1+LtWtg4\r\nCmW0h3okUJbE4IrA8QbqCGZQyjoX9dhzbcg=\r\n=ss5w\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.3.3-beta-slider2_1663672474309_0.920358597086542"},"_hasShrinkwrap":false},"1.4.0":{"name":"meshkraft-vto","version":"1.4.0","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"alias":{"process":{"global":"{}"}},"dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/optimizer-data-url":"2.6.0","@parcel/transformer-inline-string":"2.6.0","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.6.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.4.0","dist":{"shasum":"db8995e491948105d833de13b6f34d9876fff550","integrity":"sha512-rXRgrG8JvDp5Ymb40QrS9as7alGfletHEmywc5DKQEoxVtDc671C2yrETBK1DaCKu79GRLOywhEPNb8jsqskTA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.4.0.tgz","fileCount":5,"unpackedSize":315194,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDEgYgzkRgP/NJflJifiKc4Wpu9MaQCoXlKBylxzz7wegIhAIRy5kaWtfUgiqbjfsHMY4y+PXWiq1QPKtKXVrK/C4AW"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjKahGACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpyIxAAnmurR+PvyfkVxAHcJR+4sRukKdZblpusX0X02FPMPTYVxToa\r\n6qF0GpA2k0CpVw1u0DUy5QIP6phuINqM65EANa2xIvhZcAb4F/SHQVPPdHco\r\nO6vzBbnIwlzAsXke1dqzbwjX7NXLF2zpF3A/25bNiZ4wKpRgmnGXR5VYv/pH\r\nW5iVGY8rPXWkt0MMq7bN/iNYw1e0K8MViM+cTZbGAamqsK8+2vzYZ2mwR+p5\r\nc4L+90BCCMU+K0GUCp7PBpAJXo+F+10mPSVHjH8f4xLPWIIvGhI0gmXs4+fz\r\nwAHbCtaBwFWJNlccbimJjFs5dRugUVHX3ZoaQqH+L5762zBB7n3B3W8l8jUf\r\nec3K3Awtqa58s4emZQFZYSQQCKHCZZLLQaibEjvFqW+Br2EMSnBsEqE3q9b1\r\nBT9RsNJpKd4qAU9/3fEXcvcvcbonwGrULwQiXUIGKg6jJymGfub+tz2qYela\r\n6K+W/JWoUHzbc18eihpwUg2KiUGz672Z933DCZ1TpQk+j9ysBi3c03qpr3lK\r\n90tAhvbPlbR9S9cuiwGJ4jEYwOw2KARnJJBuK49B0baQPkly/jyEi7NwnBPp\r\nNV7W8DEMNo1TTQODYwIhhITTFwUhCgsu+sSEAR2RZHPgdvWJpVXTcKFlyInv\r\nIzb969Qe/E6q+SgS52XhfZr6ZMxZqiZdV7U=\r\n=j/fA\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.4.0_1663674438753_0.6793740530447934"},"_hasShrinkwrap":false},"1.4.1-beta-core-exception":{"name":"meshkraft-vto","version":"1.4.1-beta-core-exception","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"alias":{"process":{"global":"{}"}},"dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/optimizer-data-url":"2.6.0","@parcel/transformer-inline-string":"2.6.0","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.6.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the button element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.4.1-beta-core-exception","dist":{"shasum":"3b744a8dd31280a62165a556a77ef5536be11260","integrity":"sha512-xRSsLv6MpP97+baWMlPYw5CRvkjTSBbkDz/EdkgfN6Nc3QX0tuIjl41VOvcpTCNFZcha0dT8Mckpy90OHpf2Zg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.4.1-beta-core-exception.tgz","fileCount":5,"unpackedSize":315644,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDc+OfXueFOTelxA6c/0jd4Z7YjvzyWHbGmdY+dwgZM2wIgPA5wHjUTJsDHeYT840md0uUQRVlx83GPJ2A5YVzzOUI="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjMWC7ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqA5Q/6AgivhIlX0KT0sALWvZ7+N6n1OXLebCJg5zcPFfM2q6xsIQkM\r\noL632B6xyz+RIJ5zpXW5BOzWXHrKR5UbHrkjfTl0qqJqdPnith+fuP6aGait\r\nN8KVSBA1PU4LOE6fCFam2A//+TPLKF6Hw4Qv4kqggB8z+kaxlOq2RVsdEiI1\r\nSa3b+UVG3bn63oKmsqAlHh/H3EYjf6yN3e+jUmMx2OFexiFUt5RvwmwyCkQ0\r\nJVNRaFoj996P0JpdrP0GT5AjWNV6d+ljcKqV08vbiCreKiIX8U1usska17F8\r\nJdGXAJH9L0xtKVB7+dZPMiWQ0ar+vXjEeT1y0Zl6Xf/rbHsrm6dTEwgkwp4M\r\nmLEoP/rC5CW5LV5k+LNgF88aF4PuDXfzslxGIjCrS0kduW2L9bh5bWT95VNV\r\n+WTBRCaVqAullPdqwW9QoTgQZKDH89Jrv+rqL8+k+FRwuYEnbzubJywfGsWj\r\nzkyPJJ4jjh7p/gecseilyAQ+rp7oevQTgL+XH3skFksZaSbHg9c1M1Tkk2QC\r\nQhAYGsWtSRdrMK4g4IkBXFobPLK8ItRtwVhXrpWlzo/Dt/UpwSTkObxZ4yQn\r\nkVGFfcgViAr2p+VPlGFLhflUJ0Q/i0BRu3dxMXNqtZJL79Rx0L/s7cUGrDDA\r\nEetB2i6Qe2EoTW3Y2nIzcImQotwWAMiw64Q=\r\n=Gcai\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.4.1-beta-core-exception_1664180411321_0.011126056244249227"},"_hasShrinkwrap":false},"1.4.1":{"name":"meshkraft-vto","version":"1.4.1","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","source":"src/index.js","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"distDir":"dist/"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"alias":{"process":{"global":"{}"}},"dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/optimizer-data-url":"2.6.0","@parcel/transformer-inline-string":"2.6.0","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.6.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","build":"parcel build --detailed-report"},"_id":"meshkraft-vto@1.4.1","dist":{"shasum":"04727267f3ee912dc756278fbff0e204d998326f","integrity":"sha512-z/ZtavBFOl5KgZ30dax0TxOO3Mg1Fgx7J79uz3FSNYcZmI4GAAlJArPiXy+m0Gs4wRpE5ErM7pfRCJQFOIlklg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.4.1.tgz","fileCount":5,"unpackedSize":315624,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFhTo4qC/clA/soOYUD6IezpGh3RzlQvIjJUHaTAffZDAiEAsA+YNLqmzah14uUfgYa4ouxlcvyAMiPkOVWwAxa0DxM="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjMWJqACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq5GhAAlByet9Z2CPvVNAljGOhwnnyhXoIdzlJ8SIF2NqyGs6IKkeZK\r\neyUP+jvVctQBKVx+cayyHRx2GtsH4fSxlooxTHIwr4/Q75ZVYZ6itFw4obGU\r\nVTEupaOAjtBj7TnnWUeeHV/iG069iX6/7szacyisbeHqOdMABOUuFxqGjQ0a\r\ni3qu12XfZxOEEIVK0JKGiVPclUBYKLtwR4bB6yybO1r1W6Z+V0sfeGo4WHnO\r\n6zmA/Qvmol2v9W7+0PBw97TgkT/kPXslo2RGA/9g052PD3+h6vqgPAFARiwI\r\n8uCzhnrC0MC/W/4esH6Wfahs6gEj6Thmd2ivKkF9jOvvYcIRjPN9YBEkjYIj\r\nTDwuxyUXLnQZh2aUWaT0YoKZAmPaD/AKBJbRR/llBdQOpIb6xmT4WpnPhp1Z\r\n5kuMOUyFZJtk5nMUXdetHDOx7X14y5Wvae7UOMt2GSJKqKjzva+yD8J3ublg\r\nICYSbLfD7BNiN054l+t+Hr5WlQskcCf9f286xM2FN2dr0fBJbSh0VemLyEzt\r\nMKRKlT3s0zThQJi54ghiHEdVg8EVh1GCsTH1Mh3cwIOgGEwYDj6U1fDCcBlo\r\nfdOJkDRdyifyIdRf3JwInwiMeai3dnUDpMtDjEicnIfvOFH6GiMOXJLOYt6Q\r\nftdZzinVfPKZn191K5ULbzfnXEXyq9XxVdU=\r\n=xmAF\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.4.1_1664180841968_0.8984462159040627"},"_hasShrinkwrap":false},"1.4.2-beta-manual-trigger":{"name":"meshkraft-vto","version":"1.4.2-beta-manual-trigger","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"context":"browser","outputFormat":"commonjs","scopeHoist":true,"includeNodeModules":true,"distDir":"./dist"},"dev":{"source":"dev/index.html","isLibrary":false,"optimize":false,"sourceMap":true,"distDir":"./dist/dev"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"alias":{"process":{"global":"{}"}},"dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/optimizer-data-url":"2.6.0","@parcel/transformer-inline-string":"2.6.0","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.6.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","dev-manual":"parcel serve --target dev --https","build":"parcel build --target sdk --detailed-report"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the button element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.4.2-beta-manual-trigger","dist":{"shasum":"0fc3e08d78b3fa4885413ed1650e47810063be78","integrity":"sha512-GXLodwJZNIGzvRrdnMoqK38oFFaXFZ+hmW7fEr/xY0uX3u9r25+sFJ0adztvZvDj4uO2DwkCOOlOR3Oi8QFxhw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.4.2-beta-manual-trigger.tgz","fileCount":5,"unpackedSize":316155,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCPx3JeVwq1NC7vX0pt286ZTmzl0INjWgM27CqvZnGD8gIhAI+6gpQdH2HRUbbE3DVo6EGzx8S7Xu2SiGUGZm5xNjbi"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjPXZGACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpIzg/9FnF/n0iQaXrEzGgopnQ8lV8DweaCQhM21S6Jydq456uh+Jr6\r\n4iHM+q2Ro8fsYRCwJZISYhZzLVh1CqyxdcE844YhyzwN17kQ40NVVuP9nHxB\r\nizWDOgZ9VyTIhQlgC/lDAbZqTA9ezvDtOUchyR+CD58HZqTSlQ5Pb+JAChEJ\r\nIsprzVlzhZ/jbk+xv8biUx4u/Obe+xzdHIGZolUb6z8/SoR8XseVrr1jBgHf\r\njr5Y85eSOg5BSlJ7Jfff1iIN2y/OIV1/+ZgY5SfXTYceQleyeerlyTTfRq1f\r\n63Lsg3jJFKG2tOea8nvLxDC/4xicvLz7Z8U8T9RB1sXqfl6dTmQ8pRiRVQSS\r\niuGM86Y5eKd+A914yCHLBuF2X6L7N1Jkwm+odgzLw8cpJF3E6RlRSzclIO37\r\n58egXx95FfEH0lN1lAW8Lg8Dg/dWuIEQ23iO01PNRfRRm0ALL92gbYPV/Lu3\r\ne3xNt7TW4bP5tSWQK2QW5KOPEgTsbfj2vPy0z+Rrj06TD70Qf9SY8Dd/Fa2i\r\nJyGYo+qg0gdIxi57zDPeFS26/lBBsLgSsbXzcksT4a/95ByyVwj252ooDjEp\r\nc7H3DC72Q4ZONNJu82OD/T38QhL84k8GZI1UUwStVEtvt5Fn+w05g1sQ80bS\r\nhXViygbMqI3SBRoFEduCBPeL0FqwmqQhfY8=\r\n=6dLO\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.4.2-beta-manual-trigger_1664972358757_0.26126105937120325"},"_hasShrinkwrap":false},"1.4.2-beta-manual-trigger-2":{"name":"meshkraft-vto","version":"1.4.2-beta-manual-trigger-2","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","targets":{"sdk":{"source":"src/index.js","optimize":true,"sourceMap":false,"isLibrary":true,"context":"browser","outputFormat":"commonjs","scopeHoist":true,"includeNodeModules":true,"distDir":"./dist"},"dev":{"source":"dev/index.html","isLibrary":false,"optimize":false,"sourceMap":true,"distDir":"./dist/dev"}},"parcel-namer-rewrite":{"chain":"@parcel/namer-default","rules":{"index.js":"index.min.js"}},"alias":{"process":{"global":"{}"}},"dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/preset-env":"^7.16.4","@parcel/optimizer-data-url":"2.6.0","@parcel/transformer-inline-string":"2.6.0","babel-eslint":"^10.1.0","eslint":"^8.4.0","parcel":"2.6.0","parcel-namer-rewrite":"^2.0.0-rc.2","prettier":"^2.5.1"},"scripts":{"watch":"parcel watch","dev":"parcel src/dev.html --https","dev-manual":"parcel serve --target dev --https","build":"parcel build --target sdk --detailed-report"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the button element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nconst arButton = document.getElementById('your-element-id-for-button');\narButton.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  const arButton = document.getElementById('meshkraft-vto-button');\n\n  arButton.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  arButton.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  19.17 KB                    │\n│   Gzipped Size:  2.71 KB                    │\n│   Brotli size: 157 bytes                    │  🤭\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.4.2-beta-manual-trigger-2","dist":{"shasum":"18dc099ad6b855ce81be01da417e67199e3f70a4","integrity":"sha512-GlagBvSLVrRVh29MvxkghDm5WXdZNnCqp12fTiVNt0RcG3Gys8ulVZlnJkYcnDgbl8U9/kcpgbWJZVDdPKTZyA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.4.2-beta-manual-trigger-2.tgz","fileCount":5,"unpackedSize":316161,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDkmUuemafgpQHNTxUb/EVNeYOc827eo4EnmTAUbMRf/gIhAJqhY607Ti/xUiiS9PaJUvZ6cFuDVSDHj/3p8xpBbt2F"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjPXhPACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmodFw//ZYhXBHgFT2YbKwhSrvnjyme/5CJgbs7obNYh4syh1kXWU2ED\r\n4ylBpTxo6GbEAC9mMoEBk6yJD2fZHxuOr+pXqju2raCqtLHo7HU2OkU4UiEo\r\n01mMk19F/3EIWKw2zNoGAGlC3y8XT0HcVyM3G+NBgjUz7Y5d1EfQ0JmGkuRe\r\nxBtnZdRoFgTAyee4s6mAQNiBc7HaPRgTQj7IdYmLTCrF8KA/+6uWPSac7OiK\r\n9P1wF26HwQEYdODOoO+rFjMXyc36hHhoG3AsBy8eicnuLC7utABq/dOb6NwZ\r\nnxJ+jEdyFTwUgIhXRXMa3bOiIzjHBEatnu2J9aFHIoNeTBY/DyvthdA4gLfJ\r\nhMc3hC9UmnaQX8Uv3RecRLX9Ejo0Ux7pP9u6eOhY2uklWY4emiIt2sd2UIfx\r\no1L9+BwctLKe9XKNiTgaQng1urN4lvSbI8/2bUYwH9GIksU7w24cqt1nswuv\r\nZjzfMe5jVMoHxWNh2AxalhQBJowr9hqHedP+wXiF6Wn7SdWlQ/sQBgmuodgn\r\n2L6OCr8AuFu64X0xz2IbP61ye9g1XcA1mlCqIj/WwdzsR8BZb9jW3Rca7CxD\r\nGxUs2BbqlvHuxrQtEPaoqYAEUioM2seUZzpxzcj47b2BwhPjm7kuZqoRTdbL\r\n6DRbwRDPeGyhYkpaL0sMUV74w8z6UNUA7BY=\r\n=e2WO\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.4.2-beta-manual-trigger-2_1664972879122_0.02627522410033234"},"_hasShrinkwrap":false},"1.4.2-beta-manual-trigger-4":{"name":"meshkraft-vto","version":"1.4.2-beta-manual-trigger-4","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Getting Started\n- Install dependencies: `yarn`\n- Build and watch: `yarn watch`\n- Start development server: `yarn serve` (Start \"build and watch\" before \"dev-server\")\n- [https://localhost:8000/index.html](https://localhost:8000/index.html)\n- [https://localhost:8000/index_button.html](https://localhost:8000/index_button.html)\n\n## Build\n- Install dependencies: `yarn`\n- Build: `yarn build`\n- The output goes to `./dist/index.min.js`\n\n\n## Misc\n- If you want to import a local copy of vto-core, build vto-core in its own repository and copy the core.min.js into ./dev folder. Then change `CORE_SDK_LOC` variable at the `injectCore` function to `/core.min.js`.","_id":"meshkraft-vto@1.4.2-beta-manual-trigger-4","dist":{"shasum":"5324ef452708c91eb4c22435c8929c6370238a7a","integrity":"sha512-AIW4soKnpYrJ8dYISkhJU3ttgKfW1fuS98njlPZlbn2f3b2pBdcLeGfEKBjWTUTSyWq3qtTFt6QrHB5O25YGiA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.4.2-beta-manual-trigger-4.tgz","fileCount":6,"unpackedSize":259809,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB7H9YOKijAim2gNffkr5VUFfYN7zAahNpIhdmYEJQgUAiAO9cjALnz4oopb4ESwqOHoqXzOrIRYKv/4eKlecquPOQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjQDOhACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpDOg//S8judl2qZ7ylQSbPo8clmZQL8fCSQN4TwpHJV/ojdnNq5Zmt\r\n5GvAOBoLGkkJOH5yur7iKiTpoexn8UMtjhV2gRt+284ACKd2U1kvFItvYEqA\r\nDR020JL72O2d27BX4kFevv0SpxuyqQYM0925DGguxyzkR2l6/ObpyOSlMkDQ\r\nrtPCavaYnOUzxi0vsjpImcLFTowTeoDYkQziE0TaASOo6qZz12drPwMBbxjb\r\nKkETtN15QhNJZMWyPI0qZTs39ZBv3YhBRO5lZFi9hXG4/yMzmNmaEgLld2ef\r\nhwHTVUXj6PplhZLaUKge7hjQ6ctLZsKqo7I9haNSVwXvIAD421JmAaZKOfAC\r\nWjioFCTpJq6BSf718ZREDYMKcrzbyReU+tnJgeb4YohwrQPsA/MNszTpdsHc\r\nlR8xqVViZyzaFPhfC+Adqa6/CmpWNxUpxqJ3gWGBJkd2GQZE4zWe+I0n5i00\r\nLmA01I5f7yRLztcmpWArdRlaav8rnVyrNvqQ3QAVPTaF1xX4pg5TBppmCaZ0\r\nlLi9/EunIWO2bXvtJCpMIb52M+46yAIwXPt8iV/FjV64NfstLVc1tZp8TJNL\r\nUX4nyI2bCZeDkJ58JG+EN91HN1tFFIL6iNZzilws4TS2coInQFVfSpXChCKA\r\n4W73fVZPs3Zv6w5x5qEipN+7XEWh/q6uUHU=\r\n=+ErI\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.4.2-beta-manual-trigger-4_1665151905559_0.4454591728727013"},"_hasShrinkwrap":false},"1.4.2-beta-manual-trigger-5":{"name":"meshkraft-vto","version":"1.4.2-beta-manual-trigger-5","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  245.76 KB                   │\n│   Gzipped Size:  75.22 KB                   │\n│   Brotli size: 65.45 KB                     │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.4.2-beta-manual-trigger-5","dist":{"shasum":"d50e3be4e9264e29dec27131835a581792a48bc9","integrity":"sha512-hn4YXickgan973vJAzQ+M6wiVZxEvsnXgdQfOrsD1jxaA/zyV/The7gkAwts5VBpjcaEXfr7XXGZaY1X2OB5fg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.4.2-beta-manual-trigger-5.tgz","fileCount":6,"unpackedSize":259799,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDs/UFtjCsuJhWtNB/QYNwY4Qja3OdjtLAr6yO1isnfpAIgB48DdihFfi46FHs8cSKDkgR9aEXkFVFmTEXDI4+uSVA="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjQDThACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmotrQ/+Nskkp8c9fg3A0+kLHTVoZVMDCWtPVzf0mGTh560MFQod8wjn\r\nXs5T10vym9kBvGoSYd0ai4jhymNL3W3szqdePxJTNAIUqRnJr5dFPV3RMrwa\r\nBiL8Ifw4r3GescyFYJwv4O6ZPJwIpXCq5A+MXOXE/egOHjDdqVWmcjE9Vwqs\r\nxXKebmgWSu8kSmQflsVj3cr58JpuHx/gqUiaWxSc7/SW4KyJeml9YEoQnJj+\r\nXpe4BqN+5QPBiEgSuyK62ee6mEvMOu+M6jwI5k5AtG/sMyUnKTNNYRlBn3oe\r\nAQLoEgnXn12hMIwYX2VTxns8E0LOXPsO51vhKpLWgXbH+SlcRQh0TiMt15Xy\r\nyXkhMTNInKLGj22GanX2QF/LmO7pDItH86FDSu0gLhN1dmZNp0T5Ycqgv0Bu\r\nWh/q4RL+rx68wwW/uwwmP6cuWhQT8u3puwBhi6pG2MPNSJYxXnVqFVvFzKgg\r\nh7wNGV1WcYHr2IOCxxQvY6c+lOlQF2REW3eB5IEfyoxedunrprHig8V4zThF\r\nbpzLCNPPvJ5CnUcvX96DmZ4kfNwjEjSeHzLqnBZKrxlqrePS5c5j5FYK+x+I\r\nqrSo70Pm3+mBhCbULFTrp5/F7/OAtwKuioI1QuJQRyf1wwaD4ngzmazr/xtu\r\nevd2POUQw36iyiNqC+dakWZBYFuzIGtu9rs=\r\n=l3e5\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.4.2-beta-manual-trigger-5_1665152225437_0.7989332887537168"},"_hasShrinkwrap":false},"1.4.2-beta-manual-trigger-6":{"name":"meshkraft-vto","version":"1.4.2-beta-manual-trigger-6","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  245.76 KB                   │\n│   Gzipped Size:  75.22 KB                   │\n│   Brotli size: 65.45 KB                     │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.4.2-beta-manual-trigger-6","dist":{"shasum":"65e85056c739483ee5a1cf62e5e71a74584aa486","integrity":"sha512-7nOlhfpKNCo6A+vZ+ZyyCJJ5tlN1gvGMzbHOR9kBJb70tc7r0Vv3qesDVVhEP8Sjsy9GY2eKMIEqz4/oBzRpLg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.4.2-beta-manual-trigger-6.tgz","fileCount":6,"unpackedSize":260314,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCuhgZcU8h38fSSvP+dASGOPirgPtmDwup2E4UnTTr3nQIhALVCD8O+41/bgWeR6P2Tu1se9kKBmjs7MpmWQu0qGUMl"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjQ+bgACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmruKxAAiCCEt1rN7vdVYNFm0ox/fw7A8okErZWbIFcXNzRuVtHEtJnw\r\nQVjcY+jyTciD6fWm2eE951DO1p5EgLMWiQ7VBFDEQjCLem9I7jL4Z8C9I0m7\r\nwltfvRPDXjvIgqg9u4yvqdXqhSDxVZ2EZaa4RmWgLtn5/98bG5WjxqZjWC5+\r\nx+v6yN+/WLnBy6x/OdS5Ind/vVsp8GAM2yCyPPDZwTz9H9w8qcrjiqVwwGWB\r\nBwuPEkwu6h8ph2QYz4n/SmeB2aqc59MXM2lfP5r+4x94fSxVRzE/cAXA4L+s\r\n2p8bVBFVcCaTJyj9PuxzIdNvodvXb+eu3IeJsYMdSVKzagEmTH+XK4yiWAMt\r\nngQqPquithbgK8lCSYutbPudosSM0j7sf0Fs8+qexSAXmsJ7BkshZFWbXWBl\r\nVw6zfjxJrhnc1jHBC1vwvD41vt4QgGUtA9Uvg7a3sNUkzdViH7q0HmyAc7Z9\r\n0MB6I2aplfdvytTXa0JPGQ+tMjoKL53SYW4Wkzs91h/zUDpJKJRd4vgmpVKi\r\nAD3EcyXy/yV1SiSwZdy+iFmJIe/jOKCBkmeAjqxQKk6LqrMa0mbDoobaYIQV\r\nkngv8Ttr5ITsCLWDla5q13RueK8VakmcDF7/QdMHVtNOz1tkto5g0lXEfCT+\r\nKde5Sb6bN5uNgyQK6PGOCMg8SjwoU0hcuxI=\r\n=/XXe\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.4.2-beta-manual-trigger-6_1665394400226_0.019097941702857835"},"_hasShrinkwrap":false},"1.5.0":{"name":"meshkraft-vto","version":"1.5.0","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.5.0","dist":{"shasum":"cea7db0b6041a37f74f6b4e5f9e18dcbdb5fb067","integrity":"sha512-sW+N2Q1I67ZRujh5Jji3NyIz4AVs/O9k9rvweLb8jM0lXyZT9GnOpE52+DEDChRujS0twz4AHq9d7/UrLRlfew==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.0.tgz","fileCount":6,"unpackedSize":260292,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDfOCubEvWnT5ST5lQEUJ7SfRZLx+51w6sVytLo/evo3AiEAhzKtqwIJ4SNErW6rqNuDgj9or95AXzohhyPYhphrOCw="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjQ/kKACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmouuA/+PDfvtkPxyeZFnTg1PpVBV/ZEy7xXF72htFGcfMLKnRMBicbX\r\nj1xprJzkESEzeXWq8HiSD0RnIJO0IbVBtGI95Q7msy6kMwkl6DdSchN84Dwb\r\n/CkCR7+PZbqCs7oCLUf6vwSJpC41CO3vZDQU12Hr5XU4VX1qeDONgloREMV4\r\nepiCTgboKPVUe90HwXmW0t/RJx+sCY8/0shxeImnn0qIffBUFPxwFZ/x97JG\r\nTgEdffZtt9gPEFjaoXoT0ELS73dmozTHWSOwbZLinLV5TI2WxMxr1dSKnmlj\r\noU4QPkBMt+tMTmWwk7dY7Uqj1Gi2PHH7x910bv4puES4arIFhhv7iYP6bFua\r\nErkA+K1pwhen982zpF4say0x7V8FwwvU7kR6/GG4VBcLaLxK9gxT4goEuctJ\r\n+gyWU6JNTjh7+IJq46RYdHKhhR5H4+ZMcXwwWPPyTB6bnPK/z/MonAmWfjQh\r\nswuD5NMY+VDnxNLNzgLRHM+8GcnNDXqWa9MM1N49Ha2fnCHQVHCsS9kv8bgM\r\nYSy4V8M3wytU25oV56zbA7n8dLr3V930cru2Ui4RgQch4f2YVfO776jWRoPQ\r\npRzg1Ug/oGrFKnWtGIODF0mLuGNjnMTSFY75sBEfBSAp2C/0x2HxsUC0Nr3/\r\n6M5g6bGcRB9oJo5Hd/XT6vRN2vaPl8J5jes=\r\n=pGuj\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.0_1665399050595_0.8756545612640421"},"_hasShrinkwrap":false},"1.5.0-beta-test-log":{"name":"meshkraft-vto","version":"1.5.0-beta-test-log","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  245.76 KB                   │\n│   Gzipped Size:  75.22 KB                   │\n│   Brotli size: 65.45 KB                     │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.5.0-beta-test-log","dist":{"shasum":"30b75164e7efcb575f5e47a1ae67566aa9c65f5e","integrity":"sha512-yXpvgkKCvSlObwY/toIWdDL6v2T1SvbmeAFozBNeVSV1EgmxprMy+UjUh+IotKsjyOxxZMxSSkDJQtML0rqXPw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.0-beta-test-log.tgz","fileCount":6,"unpackedSize":260347,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFyJhf8lTplkY35sHm4tQ3PwFbYwQv5LfV5OKR/+zXYhAiEAzLf6EbIucTHM6buz4/5yF2s5aTIPef/MQoCAjCPwvWU="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjR7e/ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmof0RAAlVVEgH+N8N9g6oLZnERtjbX3NpKteCglMrnAD2OTCNotZIDp\r\nuI1pGmaVrbfns6hKtTFSdgJWHqP9IWX5zbGmja45oNaa0fKjyufDVoQYCtwB\r\nd8Y8cQVIOtuOWypVAXQTQ53TUJaOEWPij7/QoLwBdU2V+oB2s2yMlk2gkoaX\r\nV+85B6kdyZZKG1wwKJ6FJt/DW+Y1aw0OBYHZMWLS3NTAbPDRFuiMlrj25Udj\r\nZ3PTa3FLpe+8+UOEsoLcors7A4+s/c6AxzKf7i0LRjCaZUGJ+Z9MCLaww5Qx\r\nEsvOiTVgE9r9/GRsNMmEN8L8PE3pxhfM1y5A3++WfCBaFO3IilqbdlIIh5Ak\r\n7WaTvYCh3TrjL4DOZ7GJMm5AqtjKFuRJ4XS7oiM5LgJwyL5r/x2zn4pZmslp\r\nW7ZFwEvW4JuJc3kFzzlgAAL+LLttjPqtGCIxDbQqyS9Yj+xREna+28+YGPEq\r\nCxSdpoGOaBo8KshzjxKyH56V1yVZHbmEgfsz57c8hz6cN6PcTC/GufOLw+83\r\nkJM0hhJX0P18epMy5N3LfS7UYFsLIBJdcmD1lZv1FBBlCfZC9MSwCrOlV4C5\r\nYKw7kqe7gyhae3FWaDJi7xpu1IzgAL/oRO2kMhZJwxDnKE8rDiXP9PW3rj3I\r\nI5VI8tBca7UGK5PPuFGmOKGnLeHrDP4R69E=\r\n=YJHW\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.0-beta-test-log_1665644479304_0.06632266943512666"},"_hasShrinkwrap":false},"1.5.0-beta-test-log2":{"name":"meshkraft-vto","version":"1.5.0-beta-test-log2","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  245.76 KB                   │\n│   Gzipped Size:  75.22 KB                   │\n│   Brotli size: 65.45 KB                     │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.5.0-beta-test-log2","dist":{"shasum":"3a0dc31675e6f7183e9c9884c82b0a47bf98dcf3","integrity":"sha512-cEhTxPBIFyCjtRsHepB/kn1cpHpDQy/qu6up0f/AeYEF4szA5OfzQ2axJNYaT2xWINiWQzCZS3KyK7mHgR5HLg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.0-beta-test-log2.tgz","fileCount":6,"unpackedSize":260321,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICo8LhZIqEmslXVKCnZ61Q4ZyT/1Pa5zBLfGw8JGCV9sAiEAguz9GNsTHmCq/zJoe/AE0t7kR7TwJLs67cEYKNdiCoc="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjR7hmACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqdgg/8DrAnwt+5x4mX4zp2SUgzm5MbUiaG2INgQCmNIJImhGrTWsrT\r\npBOfAqbJanpSOY1SISOBSp4DQKK7y/IwyFrVXC6xFz6W7tChrQwzZ7VWOMtF\r\ntJ8Rj/VXKPtr9VSrfPd6oVIT6qCb+FTc6g36DmY9/cBlLYXLbeU2o81P7WY0\r\n2m5XbooiJX3uNl6dUuKWZawZ4nZtuPS3tJklj2B0v6YxJhVcoIx0mJxbAAnt\r\n4Mp83xPIsgGTDM2Ym8bis9vRbfpRV9Vl4YZD1MK4nbmvBJwhTIUVxGhlZNtv\r\nLs1BpZ5JlKvzarHFDtg13X868af4X4ig1UAjLEm5fhCauyevAcc//NxgsM//\r\nMWBV6Bef0VtAdbrQFitnwneBgu7XFuZkZxwvt1fq81IU5jgrgpKPx3WIrY9a\r\nVKLQMSc0KQBDDMvgl5NT5V+G7bA2PAHCykSTd20mT0GR1k/NQM3QTOM2T16y\r\njqYZkC9adw6tjsQor/4UdVarUPmJYhYk5y3FUGe8Z33oBHU8MdjwW+Z6MGBO\r\n9idvz+ulJT2K3WknTRf5OlygHfUKe9mySadzZ3cLthCtW9oL6t0qFye3k3LJ\r\nOzZPWMoqOVKlXV6F5G/HoE6Tg0Ql3T3pP+Xd4+seRh/Z/Vgx6hTuc6nsjEcE\r\nMLPJiyNmOPd6rrOxQqMdz9JUvc74mXWKWd8=\r\n=HebQ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.0-beta-test-log2_1665644645936_0.9372527480481434"},"_hasShrinkwrap":false},"1.5.1":{"name":"meshkraft-vto","version":"1.5.1","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  245.76 KB                   │\n│   Gzipped Size:  75.22 KB                   │\n│   Brotli size: 65.45 KB                     │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.5.1","dist":{"shasum":"66945a6a6464b27dff3b853f1959a21688e46757","integrity":"sha512-rekVe7vWHHxXUlh4bcOWMGJlBNVqDk0Fouqiydo7YRt3enJ/B0MSCZnmh9hXlZKRcJ+aiXtl2zAdMvhI1FhzJA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.1.tgz","fileCount":6,"unpackedSize":260549,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCgqDxdbGtRbFRVR++p6JRbZwDPJdyXKdWy2tgpe8xcAQIhAMDy86gZz5SEyAiZZZwqqLDgcZH1J5uCjo8L6+xJ75Po"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjUATcACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqlgw//Yt9c4kkIYDBqyEvV8ueZC2emO9R8JfJBUYSa8tK4Xclt+31q\r\nS91rL8xBs/ssO5s6JuUKp1ZjZj9qcXNr4ag/hqxry043rByCjaESr/0pzo3f\r\nnJt7shgsalLGfkQtaKlcmS6aQWhDFjZkte5szDqbN/feOz0MpN+m5tPmk6Rj\r\noYE2lZq23EBcLqbPMSQEGXclV+z8vhvO1f3V5An/hdKNxfKeYfnBd8yKu3NZ\r\n7CM8+whDf6BmgtRvGm314agwL974n4fJhZN0jyzIi5OJR1ekPi09N2Cl5LqE\r\ntRxONk5Edu8htGmq3XPTPDDTjW/MsEGJZCfukk7yKORTruGwzcIU9TiesoWd\r\nuecrdS7Qkq11Y7JbMHS9dSrrmvu22oM5nX84mSBM2DExuCuu2Ws1A0BtqIhq\r\nq+gwcnxAwer+g2Af5veGrM2fmMqgCudN2bcB6J+jgd+pjhK0EfH5WGBHuKdU\r\n9d7VZs6p6MU7Vvz2c2um6Rb1ntIL7OG+CuV11Ch/CiHMud7OqWW+7K0haCL5\r\nBq7aAcKqe/3RWFkEUrE+7k6JSDyIkAR/NqDwjrXE1fF9NIdXIDMAw/jwDuJG\r\nXE8BopiUBZEW6SSPNyoawCLDl6T44/+y5kdZe7FPZv5qOf59fZ05np75CrzU\r\n2XOpQB/pBRulYOMYaqUSGNNNSuLTwyoCJeM=\r\n=x9wc\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.1_1666188508229_0.9513923051460929"},"_hasShrinkwrap":false},"1.5.1-beta-2":{"name":"meshkraft-vto","version":"1.5.1-beta-2","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  245.76 KB                   │\n│   Gzipped Size:  75.22 KB                   │\n│   Brotli size: 65.45 KB                     │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.5.1-beta-2","dist":{"shasum":"63e64516fc10ca3915523a9dfd0b56afbe245403","integrity":"sha512-5EI/f0oo0LS1jUTecm/szO517o+iHMXjRdnWg7ZuFa/XbhHQIv5bGuBXg9TcXC76SAa0/J5vD2UFAh5zfW46oA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.1-beta-2.tgz","fileCount":6,"unpackedSize":260605,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCKw7qvxZ/owQ/yPQi1kBPyIVADPj1JLUkz+xsiDDpJHAIgNu1CDvvxA2mwzIj3h/WMZX1HEJHVngcXbpc+krBAm4A="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjUArnACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoI9Q//e1xAmp03q2j7Yu7hLMMNgKxO0iwbh8BQ2NoIpMK/TomU2XIx\r\nJPO0hUjPF+p1OeVQ1YS7GNasUwBimjr3xbJ2JZzgYXOuDLI7pyZt7P5tg88F\r\nIjICFbz61e06PtvP4Hjtjvp9XXloImJx4eZ//3+hNgG/ueq4zMt6R6uglORv\r\nrOUplBELbPEci/Eoi/JhjaOHnnsrXqTkRfAXS5LvwCyYbkop235O7l3pVXOE\r\nA6BCQYNJ6fukqcSIpzsID20/6B8nerOr7oxP7Yq45ncBia2nL/Hfi14NitTv\r\nVNxLFFVhmRNOmacmbXitjyrvKon9n2Q26Fg13wdmFb0zNRBlqGQL0UzYekoH\r\n8JHJttQE6mD5SwRf/9TdfrNlTG1B1cyv3VCcPkEbLo2IHgIznmMyFl0YixnF\r\nIvFzXrm//XmXRfATj0tg1rBwd3bP6uORMYT36xFPEfIdizExwgmrEtV/v1ok\r\nCqTJG/Acy5iVGvOUqh4qlRwV+xearhA4HvvZPk+cf6n/zTKU4c2xCxeWHDAo\r\nJ/mbHwQo9x5p0tJO6gRV0EFvWyXRWMdmVlKUznR4WPnw+3URFLAsDkjXTxlv\r\n+dZjkQD7sfJTnEjRUd6q4c3YPAfSdoNGczvXP6ffHyf2QFim65wmoEfMeDEC\r\nRWJabaRpin7yV/6hm8nL44QncEoJD+qvaHc=\r\n=6kfR\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.1-beta-2_1666190055401_0.6792074571197653"},"_hasShrinkwrap":false},"1.5.2":{"name":"meshkraft-vto","version":"1.5.2","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.5.2","dist":{"shasum":"4346ec630f81607361f3312509088bc2a5920700","integrity":"sha512-cPRl2zpZuIqvRr0+yoyEziAddVyPVqE5ugrIopPUdLvHqS0g95FOgsqtwfz7vJgleQYITH0Pn6CI9xAH6Hg34A==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.2.tgz","fileCount":6,"unpackedSize":260778,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICo+N3chLae0lSTGACPn84YnGeGIJ1hilbOW2Kdx604zAiB7pTyzMY4JwMf0ctpHalivkF0jXsLCtoQRkg8e4kLRkg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjVrE3ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpPjhAAlDR2Veh79FBRGB2fWwAPQ/5H011O9/1jVUzgHNY9/Z4qdog/\r\nmmLjySjuMHe9XjbgEHLnKktg+vyRbR9yaS0fRDGat3oheZV0/rY/O1oncq/d\r\nQR0/rrrMDeFswsW1h7L2o/OBRcLmCWP1hArVNcKdHUpWw+80HOTDoR/xkFHi\r\nrju/ELeaCq4p+nXkJVqtQRNKzEYLo4JZsWFDFWX08tx024fg9PTOMWyEUEN6\r\nLhFd+4v4lHwUGz6rp+4kZ5bii2edcki+KaE+rDb/DPfoPZGzlN6MJ4aNGaBz\r\noiJ/jbQyRSHJqbF+glrTRWGkFjU/bT7h6fPcf7ZlLmAIzS61XRRSCL8fBRTz\r\neGrTUH7fadUdBePU5kfC2mQ359IWkz3MP12kl5JyYKEpYJtzKObtXrwV02M6\r\nA4OyNfDo/LsyWTERmn2eNF+S7xEN+wuzWqHUzgdb3YVvQ23fqfCmzAbp3q+V\r\nRKRhPhaFE9FsA98O/2TKWh/DaVt1AvH98DG9FzpEok96zGeRX+9E+jtqxYIr\r\nXbB2+JDl255++iLzkxLu20V6CDvk66BAft5WBIuPjkZHv7CkNiKIVP4lGpkh\r\n0xb1BkUW69dDZSk9aiWrWfnKoK8XZ2MJSvskGlCR6A3QWjzxbz8oQEDU+SU6\r\nEUjg2KCiRtbSqcgzXqF7A8of/iKjRd3ULNg=\r\n=m7eE\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.2_1666625847684_0.9061552864433602"},"_hasShrinkwrap":false},"1.5.3-beta":{"name":"meshkraft-vto","version":"1.5.3-beta","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  245.76 KB                   │\n│   Gzipped Size:  75.22 KB                   │\n│   Brotli size: 65.45 KB                     │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.5.3-beta","dist":{"shasum":"5178867e6ddbc71a5aa8578b6ba1c2360c69ed9d","integrity":"sha512-lNZTLD4QgvG6HPyiDVGlQ7f+Lt7uiNUcDWyM+mnGG1jHVOQ2fV70TaRl9zy/O7ZvXCO/6kjjvWv+tTnanQVAIg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.3-beta.tgz","fileCount":6,"unpackedSize":260968,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCiY0E5WaiqC6MFRZ4ozDVnvmhqhcqEaNemW/mVg1KylAIhAPkjf4y+wyCV2rPl5Eue+bldXeSeVQqfya6Ao/CtWr6/"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjV8QeACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqG4g//as2UgfaH9+FgEiDwhUyKVy+Fs02uKUOqwO7eKf+xhKnJCZ3k\r\nw2bBSD49dRKRf4QwJlaUszAKDgMOFTilf+QZjtqKgCV9TKklcwS7bsOaG0DD\r\nm31XyzLzVum8sOVC15q5TdVbBupGez1T05tLsz36e590qD/VRnKKB5b4R8Pg\r\naJVU3m941EnB2M33DbGNwvDaHmCOtrSpZzHjf5tlKaBUi0ssFymMrBbjsPw/\r\nQYPUujDQvI0bOgDQGmF3TN8VSoZmIF4OMMIQ0iMiUTqCdLTiPT5GjyODaaSp\r\nxrshw2q+skaiFqLTOBVchgHooNWjLoaZFn84pMYYBv59mkKLgA083LMVqYuf\r\nQ5K1wVSjElbnEkhWmXd+GUj5j3Ja1IMaU1HbbXm40x0A4CySCs37VAmHtIpb\r\nT0kssLfMjhIXoVMLmDgfx2xKaWx36zJci/8x/hQy0HcbdryQw1MTCEDGKpoc\r\nqjgDhK+r30ohhUmFEHvHj88RRbDNI0LLRd8sKzXBwO5spCo2VXkAQFMzqjvx\r\nHjo5qiN2Z1l8gYnwyr7HTYVvmeJzphj7NkMRatKqXvDXgYRKriamlr1SFIKL\r\nV42TtzBiaW/W6O8K7tg2V0ltIe/mAxPKw27PubbKztO9bpV/Jr80uaE/P3rt\r\nHbyNn33HBQ9sCHRIWAVnBepA4alWs+A1xUQ=\r\n=VGyP\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.3-beta_1666696222384_0.9464375099691307"},"_hasShrinkwrap":false},"1.5.3":{"name":"meshkraft-vto","version":"1.5.3","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.5.3","dist":{"shasum":"ea46f2171ea1d14a8c006ecf22d04760e4b4df95","integrity":"sha512-CiD0j2HGAQy3Dogb/TF9o5iaOGZWy+yMsfyPMLasUaJVby7J/sVgNn0ZPoTjCSY6cMPQhnvUQfP+OLEoY4mWKQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.3.tgz","fileCount":6,"unpackedSize":260963,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAr7PnLVpBZemdVf7eytpuCXQ4d4P7BTPq12UXMP6sdHAiEA9LzRaLEpGgXElo/INQ5QtYv+JSROtaHmaSFjEFd7j9o="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjV8WJACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqD7g/+PPAI6vNPrB+TpTAGIUoqJHP+hS9Bh+mSZmmjMRehogdXnWls\r\nGCEcPH1oiZtNRj0IYs5AjejckQZ4BDI9aM02QDR8jUlKlT4nmZ3AhiJgDy05\r\n/2uLSsqWokR0JAH7Ts6AdwC98TNabDrSI4lYlcx9iuOznQ43Zz8Td/B/8ZC6\r\nkhLzfBS5ETZ+utbWElu4C8TU79Tv7puQ4ATfm4NVkk9kedYqmn2dytV72nbg\r\njVmzgJfpqFl2ld5i3ghodnTx9WwKHmgKQxrsMUkBZgTJOjYvGJt0jastD73P\r\nnhHK4u3qljf6HVdpunuoE4aW2gIdJcAUD6EIZlqPLRzTPZdDjbXzNwYyZ4xy\r\noP1EJ/sADolb6AzMn0DEkksn3u4VrCAbiLjzGDvZJ/HTTClUDZD3fIgDIHuj\r\nae1EUuO/z51qfAjUUYMoSAxG6PbjV4SKTTWVYbcD7XK21tBRRuveqtjUcooB\r\n28/eCJI6Zf2msqcM9j/AxamvaCs5eRezeYA3wJIAXlQFtkrHjpJXHtlufGK3\r\nBGgmrUmof0Nj8h2NsCTFd08gWvQDKdImfughNITZ+g1TtwjaPGNM6utVHRON\r\nyC8vutwQKg6YC0dVQ67qRQ9mtMSxnR/7yrKB1PQ22eLjckouHb7rTvrmVdWV\r\nt8sbqa9L69gcP4a31G67sY9+lNn6R4lVeyI=\r\n=RaQu\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.3_1666696585796_0.7208239948898663"},"_hasShrinkwrap":false},"1.5.4":{"name":"meshkraft-vto","version":"1.5.4","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.5.4","dist":{"shasum":"6795b6a09072de4b8d6dc28f9c7e16f4e76ed424","integrity":"sha512-TWJTnloHmRR0j6s2ewalg5xuzrdDTit+l3OWvY0/OAgaRgnYEjJVGcXrY3xZ+oKGUuF9E3D1zaUekyipgjX69Q==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.4.tgz","fileCount":6,"unpackedSize":261041,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDGq1Bz036vjW/GScsdJu6y3r3XSD//kjCqo26laEU4RgIhANwM27618lbpX5EUwYv24aKW0RJu6ZVzKuSCQ2U2JsG/"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjWR0/ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmoh/w/+IZVfvW9FtIreYOEBjPOrVVXlOlWSfrvu+xBA1LZ1AEeGh1k1\r\n4fQ/uqDCMiFhl836VEfMNKod79r3/DJh62EKNVR3lQCT81cGkYRvImdRFsXp\r\nKzUAjKKFKBs9B77QBrNNi9cVTCAayOKGA6mCjLeO6HH1uk33ioBskMcCWm1W\r\nkxS0CrDbnEwjGyYSsQ6H0SrxuClZ5IEHcg3EjPh30BlsVphlZiWLtN9zkZIA\r\nVP0Q4bEZW22W0tuGWaENNg7cjUwDdrBaa0Y5Ef6cier8Bz2x4RTWcJ+WpIaJ\r\nQD11XK+yGFQWavNubIhQJfSRmZgv7JsgYNhbhabaLuENJvsDX5DeQNqezcNA\r\nrGORU4l777ioBLoagRyc9PIvhaRn1QLTnkFQkbvW4IYu+QrHo2fZwNkaqmwp\r\nR1noOT9KpbY2+8QM55Z88beb5cDptrBIV8abk8pbT/7FtMgfxVJHg1nnXAfH\r\nc1zCHvR2hyWuh0Xl1XfDYs/it389CoCPrKW3+dnxTrPPyToxT4SwkAH5y41T\r\nE8of960YD1fBao3V4ZJsY4qX1UJ2aJ7ZqeZ82UklG+ErV/sYVq739YwTqI/M\r\nGLUAfyd/KdXXGkyyLKJHmLOn8wvehuCWJrV8o6jvfKqL0DxB8nxw+ZOOzsEe\r\ndLQajLEbvEDkAp/GmSDy/UVmX5Xjte4GLXc=\r\n=28W4\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.4_1666784575071_0.221398334637134"},"_hasShrinkwrap":false},"1.5.5-beta":{"name":"meshkraft-vto","version":"1.5.5-beta","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  245.76 KB                   │\n│   Gzipped Size:  75.22 KB                   │\n│   Brotli size: 65.45 KB                     │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.5.5-beta","dist":{"shasum":"9d9b7ca1a747a224c6c88d6a9b5b8d4afd0f48da","integrity":"sha512-FML5ypTPr1QorAKt7T2nBN1Dxgp+KLfwR4ZccD7vZD+Dl6OnEm49xCeOAwF1WNux0jjE+E8e8hIMMX4xC9Rzfg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.5-beta.tgz","fileCount":6,"unpackedSize":261759,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIB8qbQ64ngRD9PTv/Q36ujyMGTShZQowtvRPSXdwcKkQAiAl/Ce2hABCDkT3CDeUOvFhDAAaZ1SuJ3HRycxlUzw7cw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjWnJ2ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqYfRAAlFgDtYI9kBhYkQS98V3AMjE45xAzXZKsk/cLPqFQYzCICFU2\r\nfik3biYRIvHSPO7kvyfz3WBJ/0m7LNu7KsJi1SvaGVdHbHELi6uWZj6XQZYX\r\nXWRU2N9KpMeWkvlPWJtKBJ1i6fLMz9q/dLDD7QNZNGvNu/cMYhVX2QJwO3N7\r\nzgCuHSnniYH9sMMdpHWCTYj4KXpL784LlgyZLeBjH5GarPIIKbdGXBgJdCpW\r\n3qgqs8E4PWJnnGWtyxWkVq5FRazUuhEtw7u5209Dm+9kWDGRxf23L1R9dZ+b\r\n9Dy1KilYlXOcOLdpEvZ8gRB3w9FMS5Zjex1AS4YJIaeMXMAxvpalUXbOBRFn\r\nLwkPidaI8WB5+VPbYyShdg7n/S3j8D4Jx3AwoKzB2ia/aO3h6/NwYW1ix0sK\r\nHpgWShhHYcdy9bDrje9UcKT9qUAoLowPWzYYb9128wpvsU3ZACvfPwghE19x\r\nmTv5txz1mjDZrANsNtks1zhsX24Wovjb/0WjMPOQboYFKTDWmlp1vC2P4Mtw\r\n0woew2gHuQQTqxIbMc0eW6GOT4ZXHJxkqfwKUnuMgfcgRbTXliCUMmh6RSDg\r\n09nXAOu2v34JjvsuyDMJNuj/zkPcFmo0mzkL1SB+1ctP9u4EyLvcjWb5mFFz\r\nr2b/7WQekfptk5SzDx87KZeAMlsgRnGdb6U=\r\n=Fpzl\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.5-beta_1666871926637_0.6243305909794403"},"_hasShrinkwrap":false},"1.5.5-beta2":{"name":"meshkraft-vto","version":"1.5.5-beta2","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  245.76 KB                   │\n│   Gzipped Size:  75.22 KB                   │\n│   Brotli size: 65.45 KB                     │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.5.5-beta2","dist":{"shasum":"dc0cc34816582a27e46eea9ddd5b7d9a3c6043cc","integrity":"sha512-4RBN4dFRvGIUEx60WdLzbLlMyux4GmeOlnTV9csxmP4z3FwKZ4scMq3LqKor6oqxQkkbP+93UM/hJkFYbaMIPA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.5-beta2.tgz","fileCount":6,"unpackedSize":261699,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDUFMlk8TIuVNQq2/ygjsp3yLIioEUin2U0NUeiMDjcKAIhAL+2Lt9AnPqWgeRy8/SnK8PQD7JwyUfe1iA6w1H4w8Rh"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjWpTmACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoX2Q//a2FbS+9jvSN28MfrCBFbQ4bwXwbxr0AyhJMyQEOjS2gYyUWF\r\nltlbUWMAx3ajps44/eiKf1WGeTKvuT0wPR7azqqZKu8fg8Im/EY5rXJD6/Ws\r\nNKX5f7G3lFgxYOx2aeGTFBwfvZvoYqFJGeh547zBklOHXppk+kFyevvpX3Cy\r\nQC8WlpwCtfGgLoPMXnJ4Yu/Gqh4jFPvor796zB7C/YsjVE+t2eQI6eaMOy+q\r\n868qXQpe0JxoSpbAfPbF8a4M+RHF/0MtDlWSY5GL1MPXw6zI/pJ7pJuWELRK\r\n7P0r+vGy96CcoYB6yieaaIaDz1e+z1RJ5TcwPUw9zYZerSNboL5sN4lK8UwH\r\nDCjdYgctirqvcUxu1hZUbyrvYxkBaBV3KXjCwJ+Bsl8hU/uWk+KNiuwzXSRN\r\nWv2qEyNB3rIdpqB91ZoZ2oKQi/wCZmh2+CJvKof+BpMAlwX4O7UlPxcnnLqX\r\n93GL9winvExfyhGslA/1ZalhNdSRDC9dHvy9FljwiEt1mJGspq5GueD+1I63\r\n891yANnIUICNZIwkIOQfIyyStyFJWZ3TNY9BpW1ttGs5J9yZMHH1z4hOgkb0\r\nfchBg3VnyHik6fOWRRAmuQglmrlsjXe6R1Ko+kc142Xv6jRXLICUSn5L+E/t\r\nB2L3zHJhF0jOM9Kvw9C3jWIybXiT1hW63Q8=\r\n=vQYA\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.5-beta2_1666880742388_0.4103792534345996"},"_hasShrinkwrap":false},"1.5.5":{"name":"meshkraft-vto","version":"1.5.5","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.5.5","dist":{"shasum":"1598e1f97012e6cd6010358b2e119c8027020ac0","integrity":"sha512-7vlazEGEU6m1PWZHypzk4lZN4Wy6QzQA0TzTGurfutZGitUQkd0braaTf4WY/Mj7OkacmmkBX9zoCelO/Ksf8w==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.5.tgz","fileCount":6,"unpackedSize":261718,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDydYGsRlTmVgtt3gZFE2Tu5CXnYLCcodtIbBKhduV+9AiEAt1IhidC/L9X2SVR+vz7D/QkKJiYd1aR2FX4JCzd9/y8="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjWpqrACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr3GQ/8Cb4ZEIk3C2HzqUj9xhoHMX9VoMpsygb97nul5DvbIALUJq+b\r\n8gCrCOvvDzhWST5wK+DVlBN+Hv/Q8ULZu1UQAPOZ4q7QZaJJ/CAcUkWDwPYf\r\nWptz/H1gwhv8/K+BwCibe5Q9bFICLOigalbY+yj/VpMf5fQ9g3CA9M+Nqqpr\r\nvgbULhuQgpxu8ZTudu1otYy1VF02jcMzscQ3hiz9wKAYGhfEvJZQ7YZCWSmO\r\nAK65gpYDgtcfPNxKdVcsa4lY4P/tcccUmwLriLAa4n5Q0D9tAv0RVc6Lh8zj\r\nL12y3aPh6hoa+BYVl9eMYxfLnxu/zD7hElbpu+UbSQy6zF/fsZWLpIRW+fot\r\niCad1eS7tUfBRTrdU8pqgOvRTHJ2EO7HvrvxbFs+PYY6FhAc9XZdFIA0ZOhX\r\nGzn2jOu1t8P+iGLSnBS/kfYFVfxfA6qIddojNANIiS3AB5jrB+Pnwtpas4kT\r\nRL0flPbNavgEg4uHM7MZw0Ef3sIShQ87F+5qKNvLhsnEFI0IGSaajXfI8lkh\r\npwenyh/mVmX7oxr776fqJlpdFigB2+miDlv13dCXuMbKlU5GodqoLTMDgghs\r\n7OCc1TLxWVqGD0da5Q/5gg+Ctbtuf0eCLm/oLM2k1ogHS5fmBKDpa8P4HDq4\r\n2SJOJ0wiPNdYIXBxY7r5O8agZYb7VoDwias=\r\n=pv5M\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.5_1666882219786_0.5602276575875693"},"_hasShrinkwrap":false},"1.5.6-beta":{"name":"meshkraft-vto","version":"1.5.6-beta","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  245.76 KB                   │\n│   Gzipped Size:  75.22 KB                   │\n│   Brotli size: 65.45 KB                     │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.5.6-beta","dist":{"shasum":"d2af9b56c3cc1d35774571fe6d7ef3f0c9f32f3b","integrity":"sha512-GIpe5E4xZh/6prZQbUGifEXm3HcmP6vvP0PqYktEjpfAqVBWC4UrH3lg9zmVCH7eizxVlw8ZhOvPv1QwaYC3fg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.6-beta.tgz","fileCount":6,"unpackedSize":261847,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHdX62JY1fbH1mofAwDeOxCfvDOo/HY4xhg/kqGTQqCuAiEAwlGZ85m47wRR4bJ+EIXfyz7nBssl0v9r0BuK1Cl/oG8="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjYoGCACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmooSQ/+MijdT/RfAQ/mSbEo2Nlgjcua8pv3EOUl6lCdPuWESaCYKnqR\r\nVpKmisIboRLGogjlAJjNULMTjFVM0iKQigMm+xI4xzhcV6dYuvX/BkCe5aCA\r\npDhL/2TO/LYksyJcgjPR3fTWC8JlUIK40JkX60WoncnNRjact5WlyDjjAQlp\r\n5Osc7V+i57tG//RJpn0P1LaGOvK/zFmFofh+ZqTpDYaZ6qMUuXswKFHnH3yv\r\nzRPUkyEH359aAVy5OwlXoam1uLMrkm3or35MHHEXc9tuq7r6z13ttYXQb3cv\r\ndpKXRQecUvZqOKSU9a+q+rT6uj+onFIZQ69T8HxS6lnWBQmAKY/ukBQl9UzY\r\ngK65KS0HlxszlWuOlzCKQvxracyWnt1Ntb2n5U046j0mkzUtTicVAbU0zQsf\r\n6r8vm/amdn3Qcl0HHA8uhVx0P3qERzSHqo/pymk/I0zfZDyo9OGni9TgzUQH\r\nwPBlq0mefScmu+pfm6DoAZekzMZeXNyT9HPor7mvXxyBDkFqtSh8o8EDEKkI\r\nVaMXx76vhU2dojgsQGFU4/rIVetPDJZ4CTbzLou10l/G5K8bSd2Pkpbzy398\r\neOARJKDOcQjvuwbqv2jzn/jWsDudAOcWPw2rTdPRYrlVq+BRYLyoLgAuoi5q\r\nmVwUQoxmR+amwpxUSKb5QEn8kmDX78/lUbA=\r\n=ZJGW\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.6-beta_1667400065958_0.09880996186400615"},"_hasShrinkwrap":false},"1.5.7":{"name":"meshkraft-vto","version":"1.5.7","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.5.7","dist":{"shasum":"84d1fcfd9d761700fa4a45f301e84fcf32e78f4b","integrity":"sha512-YEfQSHkIH65Jsz8UxYKCLUUCu9UI6290maoJTT4c5fJ8PSW0G2gHb96bZOK28eB4woeiUwyAtSquy64A+Qov2Q==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.7.tgz","fileCount":6,"unpackedSize":261842,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC45gXrU4A6p4a48nLTlEzVlFOMC4m4FqV0AEmBPd/aCAiEAuqymaiXab9sIBNpZdiknUFZR7uFcRjBqvEqVEHn8tp0="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjYoKxACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrdOhAAnJSAvgpyznhPTBGTikjj+xBCR3giOND9j6OH8p2TPxXiAYur\r\n0XYz7ba+7iZqpUpBMWNiGnv4vsbZ6382LOL39AdFQs0rywu7qClVlpDFcX2u\r\nc1InQYIZCYqx5BZudsaz9VxMki2RtB/WUwH0AvH8d8ciuZ7GrrUfC+Ek7GZJ\r\nkHH9ur1VIZnlSmvpMIkTvYi6sN44alCI93uTatg592sY3osIHE1uWzYP4xfa\r\nVV0q8ZTF2ntmR3K6qfau1gv3SHWhDEPqMR1ZnUlbNkjWaX6GXMh5j4BFZrn9\r\nzehbNbEm+QUvSzVO3Vs3jwcTgGF/TacCQaWzAdxtCNQZvp+wUVLh7J+7C+8y\r\nF26SMXtPxE5jOMzsblNnrHFzpV/gtzJDrjcbWeZIcNbNJlr9xsQdXGpwsfI4\r\ns507nkXNyUCQNlrP/4d3/Cbz+wEaEE/owiMsKPsTHjob6SFRkPNMH/kngTqc\r\nsVmPWp+s2i3NH38bwAFevrfbc2d1pxf2XNt887Iu2Akv+hSRagcWH8Vk6Bjh\r\nkQ+72CkqmgiTosj25tMv7HLnsrnVv6n6yO08ymt12FZBbdNBFewkcvrnMBxz\r\n/7CqEBWVIPU4jBU16xmdWH0XFc8AKNEEvd31GxjGEGDcKFY9Jyir4Wtzyw3y\r\nfg6C05SKGVK6YIT9Ftb/0Y16pdjJGI3KtVY=\r\n=LSZR\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.7_1667400368918_0.05497461924768032"},"_hasShrinkwrap":false},"1.5.8-beta":{"name":"meshkraft-vto","version":"1.5.8-beta","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  245.76 KB                   │\n│   Gzipped Size:  75.22 KB                   │\n│   Brotli size: 65.45 KB                     │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.5.8-beta","dist":{"shasum":"0eae545546b4110ef500902c1a3590fcc0e783cc","integrity":"sha512-rbacnbwZw05v5DMo8kv+Zl+JdqDip17ZO95JZAhgoxrh4Wh53sXjy6ubZ3Zppw30ez3pHsYK/6oLfPuIGtTg3w==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.8-beta.tgz","fileCount":6,"unpackedSize":262360,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCT0zbzhDWWmQTWDJfTzfXYBSPhyMN8mLkOBCRjEgTBGAIhAPYjxx9gHwaMAiBQ+60aDQeXmLEwGn9iLusAAVNq1UXv"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjaLUPACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpF8A/+LoJtBBhyjRjpFgaBEqPz3UyGDQBs87nEXpK3vI33Ky9tOqm3\r\nWpHuPqv+znQuOijePc3wh8LWA9TCwcU7Smwp5eLN8VRWYlgZfow9WQ0Jag/b\r\ncvhotMkwyNGCrx0DcN9WFHbMC7P0m9nnMuvnQyZZrAH7bpx+v23/heRoGntQ\r\nF3hmPFA0CHoVh10vkRPr02A5KXIf7I3w8TK+/16pOLcTD+Es8lfUIyEU5L51\r\nVNPOhsxcchEJk6nvF+SbMS0hi5OgMSo9eVD6J1VkUed90qngsKG2tQ87CYun\r\ntOHvt6d2QN/RiN308gHu4+/5Lkw3+wu4z0jCly168+p9wYyX1X9XjJA23SLW\r\nP1cJHfxffA3EquQyqnlQSeRxy/3GdtarqVAqxK9h2yQvc/CwJGM7l9ShcZ2r\r\nUN2YrNmcAm8nxaP47pyO+xhQOA3uFlGkUtb4BsLFaZXev/goXXOwhVQXcUff\r\nNfl8HReY0cw4I+bH33AWMJ7S8nazH9x7eiNir4e+IL2/3nPs2zJc+tZZp3vK\r\nvWWAtgqDfh3K+2y3xcqooYQh0VCfc+bE30RUCu/556GIFwhSOR4vEQJRdGx2\r\n2ETdBJcT8VnBR/JlEAnKjDOghAFy2ZSycCRj6koccSKOv+JKO2MJq2Psycu8\r\ntUVECCDxveRwK9gDME7Ws0z9CMZgBisqzqE=\r\n=1Wuo\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.8-beta_1667806479400_0.2898673014385771"},"_hasShrinkwrap":false},"1.5.8":{"name":"meshkraft-vto","version":"1.5.8","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.5.8","dist":{"shasum":"2868f10ec2c4599d131bd68968a43cc849aca2c4","integrity":"sha512-70V8A6vaEJtIH0YezvGaTfveyL7f7CWaHCPDElINb3kUfgNarpXcSLQ13xGIrXj/F2k/PenUUgetaYaBoL0Z7w==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.8.tgz","fileCount":6,"unpackedSize":262355,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDKFZlptRtXPcQ1QxZmsPCj9GNfhUluGp0eQqrGyPI0jAiBJiyFyISVxKLIpzxalyEOS0OLfhgg/2qT4AA4WwKA51g=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjaOQHACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr44Q//bek5HSQQHYijtmCxMDQLu/xc5JHFcpSW324VT+MdgJjwAu13\r\nZvrw+XdtXyydXqLzKEa1xwTBFGtvNeDWvxk3hUT2TKE7Um2zyy/8LGfC/vKZ\r\n0eD4JNXSu2bn2v+szi2qtTuU0zmh+UQnncNvVDp/0WM3i07G9ghpcTEpfICz\r\nr0tSDG3jGYJQ3WcpIek8Y7cOoNzwP4DriCLmSWFZeqkWZGZAbYfBkzFJrJrQ\r\n6+tqAr0UXSHomUsGMvFKFyWsSc9ObhbQYKcFAezcUqDkc6eFiNF/ZuHQPk/c\r\n6UeGprWSn6/otSWeZcYJ5SXc0pq2aevPNXiTsCQDP7/j6xvkrF5sNPJS4/oA\r\nWEOPYWsxoKK6kwCTIQAJMejTAH6rXDnlnjIjW6g/VszQZty3UM1E5DYxxUCW\r\n+QR8Io+8M/9NhdZqGFQiHYXGhOnYOkVsjOMQeu6YDfuA9uhDstSYSLURaHav\r\n6vwlkCi3zy/zZu1JmqpwIj3LMX8uMDawD/cIKbewo0OgBMYJEYaXNClnBBNw\r\nq9Yb8VfYtQE++A6atSNyoZPte3gpSVKCs+m0mqEgSv1GmHYPK9zEeIqNcSSM\r\nfqCtuv6NCCJJ8vXAgcGC2NdEmsVJECiarJeOY1XUW0CNaolw1zOwZcVCsg+W\r\n1rqnGeFQdO0etYTOHs70vNpjqPxNbRMcewQ=\r\n=D98K\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.8_1667818502911_0.45456373664792005"},"_hasShrinkwrap":false},"1.5.9-beta.1":{"name":"meshkraft-vto","version":"1.5.9-beta.1","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  245.76 KB                   │\n│   Gzipped Size:  75.22 KB                   │\n│   Brotli size: 65.45 KB                     │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.5.9-beta.1","dist":{"shasum":"809268ec2dcdd34eee08ca78c131717c8a498131","integrity":"sha512-sdZUPAr2H3n4xXWqOQXRANe2MmIiZaexB7PGUrlyssTWNSD3p8Txm62FIspOCDk4qq5BFKzpJ/e8e8Jy9BrmEA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.9-beta.1.tgz","fileCount":6,"unpackedSize":265132,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGEoqa9mele2cLV4qbETypI9PbWX75K0F0W4OEIDrywIAiASQHw1rP0q8XJu8CfBixCid0fIR4189iTvDNUNY2FNPQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJja77LACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqh0BAAiqWYBtUuk+TuoXuq6HJsFm60fZdUr4eAZKgq7skHh/LKn2Mv\r\nwR8FoyHof6jKV5ZhH1xRTFPdPPn0Qu+MhgKBac1KH5FRqVd+5Z6+gpR1Q1SA\r\n8mhccAjJcIuUVN6fBLo1vfd+peZ5Btj7XImvrtXzhXNZo/hnb/5UcB0YzWrL\r\nn+Tw0Jm4D1Nm1BCjhkiepPFq1h/mC+JDbHLzzrBgEamvShC3uP75l0Uz6HBf\r\noLD1DK9+oMSI8mpOwR0QB+Zz2fQ6ZWjReIBH/cTM+yTIhV8NU1m5cNIq9QYU\r\nz2cabqCIjEkcinB4ugsM0h4IRtifJRtJCQpjFfImWns3ys6hoS7N6rHxExWR\r\nKfrDNBZ1sQA28Dn9QEfQAvn1l2BFTSIY8yqt4CmI30p4p9ZBGLUYBgmZ7nKm\r\nyeIv0oT+h0wn5pQMYsiq2bNO9Z3izsNwMHfAYNPTRIiYAUKrzgJ+Cwn042XX\r\nCSXnHvzsqjRyuUAjf5+GkRZY0J5qQjbQWJ4K033O0arJlA4kmjKYNbGlaK0o\r\nbypSuMoEZ/MwSEVGrdghdWoyxIc2+pAvbi4xdKqz9bU3nAW414JvNMolEMRO\r\nbUZ32dEgj7qt96ciwsh9WjRrs/B3o81rD2iivFFft8fxXlhvDAFb8X3Dhiaz\r\nv9c7e62y5lAOjmwe4tm2cB0dtu/30tpbkDA=\r\n=LtD+\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.9-beta.1_1668005579186_0.7369883405869306"},"_hasShrinkwrap":false},"1.5.9-beta.2":{"name":"meshkraft-vto","version":"1.5.9-beta.2","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  245.76 KB                   │\n│   Gzipped Size:  75.22 KB                   │\n│   Brotli size: 65.45 KB                     │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.5.9-beta.2","dist":{"shasum":"f6945f921fd8f9131e2d953dd0a6e29bbd41b3d6","integrity":"sha512-totQHO+rfx8/RuLVehej+YpetyK+K5NHuhKy7qkLc6dia7fNJ8X43YCl7o5f9RQRuwXq9C3PRM4RSs6CtBEe9Q==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.9-beta.2.tgz","fileCount":6,"unpackedSize":265143,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHEUGYhZvhlkBPtTGfJ5X4TpwPSV4GaqmRYrF2FbCREUAiBrJmyhVV6qRaOSrfkfJVLj9E/46O+npFEOGMdygiWjnA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJja8OrACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqMmA//fy3+LeL3AFUaICW2JRpteRsReIckW/Z+WQM+k2NdJuG1SAm/\r\nCYtbi3o4P5w9PMIBu8/mMBc9zKUdzbTrVZMkX3DvLn3uX3ZP0UWbQdZLc26H\r\nhBrSmRLgOgQtg08k6OQa33Qdl8CpelaLHjFLVpy52NJDiUFPn/+shmjB6LQ1\r\ndIcb3xIjh9s/AirbcdiNjezTK8wmTizNCRM5J82uiPF2yFuAOPbAccQzgMee\r\n6j2EmPXvdeKeUT6MxyhrhcWG7ycrHyeOfyteLvEowXXwVSeUjjwyEUCZkebI\r\nppg5hAPtLDyZgWyHbjHRWuL897FEBEIgUCil3Hi4T7aWhjKs25UmWesb2v+z\r\ngSF2Mp2RvNQmv2dIC1+l8sugTx7bYFKkWYYQFv11lRBpKC1VY4iV8ZHAeu3m\r\n1gnl394tU8o4pOjt3IIcxlc71Fcm8dVfvUu+E10OMaR6YiMfjBuaiP10gajX\r\nlK1/YadSz5jRAe13083eCAUdiEMwYXjGxU+k1eG8cpB0p+XReEHhrIakviOK\r\nGo8fRwqWRGVnnrCxzHz3cQac2VYn2G1VsnQ6TP2bukxPYi8hD0/10wnARqXQ\r\nFETaiwwqIY1sFGcG19aSnyPMuh7cO2m0FnhSKM+unGZOEIH+Yonp3y3JfjgP\r\nYXwWQs79fHyCv0zNQAKm9LfF5U18O02TZ5c=\r\n=o5Hu\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.9-beta.2_1668006827234_0.6397753366534131"},"_hasShrinkwrap":false},"1.5.9-beta.3":{"name":"meshkraft-vto","version":"1.5.9-beta.3","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  245.76 KB                   │\n│   Gzipped Size:  75.22 KB                   │\n│   Brotli size: 65.45 KB                     │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.5.9-beta.3","dist":{"shasum":"1129826df7a1404b9ac20671477a12288347bbc2","integrity":"sha512-8qanr7UINui/bGBG/VZewkAMIv0cTTXY+dFedXdHXre7VZd8BRvbuq6MgJVTKIBDsXIFXjsP9ABP99bwKToLGw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.9-beta.3.tgz","fileCount":6,"unpackedSize":266606,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC9ue/IU/MkQECxcU2VVKf9f3YH71bJfS2KtWDEWv0fKQIhAIm0WFo6PX4ZRJuDYRT6einai2zH6/cGRcFIZVnTIsss"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjbQ2CACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrwjA/+PC5P3cLTqM0Hfqx7cTXE4S/wp4j8Ing94KUS7ssgNDfu845x\r\nz/JpIAFhLy7Aj8omxcOXTOwBmyDYD1V6hfNgU0GJA3kd8UUHv9603YUFdHZj\r\nxZytz5ECRIVRPmh3U7wkKUsI9zNMUTuIVAqYa5FFitR9j/QJHXSXtjG6yncP\r\nA7h4Uf9rSLcCM6uKk4cqV/MS/aGjr5mkEyiHQmUqdVKv2AMWxrdG6AnsTVZx\r\nPE7+a1aZwZzMNHmUFxaKS6IBCR/vtcJs6LWbt3obdyxu9c2ro3WfA8CcmU6k\r\nVYmsLLfHYWHIAC1fHlrRfb9zeW3XbZCdPnMbJzZAm7pk82Ki+9tWpLhhA5yN\r\nI8vqYe2I4v7qJ14cbme2ADi3UufbFxExGEKIZGpD3bGFvuAyT0TYXgXmw9no\r\nOniomuHU0l5HkEMkWqh34lk+UBaeQj2BXpyGOpudR3C6xEFY7+PEVlCaUhQ8\r\nEWfNlay58HDr9OhlKnxLWAp2oCZlUjrsqyoPImC9+C9B5IXz8XjkO1VomOXU\r\nT3wucq8Jv86qs8qKtXcXeNfGbOGUpVYq9HQSw6pVh+kfb5CMQW0Wjf/zkKxD\r\nrLateqtQGAK4x39vb6zsiZY+/jadY8ABJUuN+J/915vYqD20bZuQgJPjwk7l\r\nVWM7MoTSHHPxiL1vBHxbOGgmvDfmG4J4hak=\r\n=RIqL\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.9-beta.3_1668091265914_0.724589246544523"},"_hasShrinkwrap":false},"1.5.9-beta.4":{"name":"meshkraft-vto","version":"1.5.9-beta.4","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"^8.3.2"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showBanner` - Boolean. Should show banner or not. Default is `false`.<br/>\n`buttonTitle` - String. Title for the button. Default is `Add to Cart`.<br/>\n`buttonColor` - String. Background color for the button. Default is `#4dad94`.<br/>\n`buttonTextColor` - String. Text color for the button. Default is `#FFF`.<br/>\n`buttonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  245.76 KB                   │\n│   Gzipped Size:  75.22 KB                   │\n│   Brotli size: 65.45 KB                     │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.5.9-beta.4","dist":{"shasum":"32d30f747c0b6936ec1268ac8b4af9e3c1affab3","integrity":"sha512-NANjnM2tUpQ0JtiYrdNRuuN304yx/S630jX0HngRkBld0ggZuEI5TnwhqB9rZMoKdP6pyvYid7auoeNinGQ+Ag==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.9-beta.4.tgz","fileCount":6,"unpackedSize":266655,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFe1vYxIwC5AbFKV/0R+OzDOjKX0M+3ptcKGVJGu2if/AiEA4vDHBCaJT5NC7UEbMnp1hJRUCeJ5nFk88zmDydFRj0Q="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjbQ6HACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpo4w//eduaKCZIuA4JEZ+sIQ+pJPkmgW/PUWOhRwzGwtmFqXpLxxUi\r\nyBG6IN9rKLeltZBv6vOuZqQy/AiYdyAgFgKblihFEWaFWlLpZFftf8aW3HEh\r\n26+scJQ3npbnGGekMdoL6oDHOHGsjCTtXVTjQ2pH9Q5z1lC0WBp5Ygr9LSdZ\r\ndLXxmwocUpvc2yosoIhbCF+DC6/vXHNB8twXWkoHAE3aGqUZVvi9TgqL8aXK\r\na6xN9vVZMnUxpHtT6TXG4WobfDAo4+hKBRJ5S0mCBi5jyj8fsTPjFpzs5puf\r\nPXP81I2+uUdHkMvOY1WuSOui3wG2BmGEA73LOYHjo2RbU3UOsZ3XDmz0Zz39\r\nWmDaMPk61WauwN66nScgUDy9rDpZWUq8deOaIMyRk/uySqwjuduhUQYcg5cd\r\n7MOtJHonWWDZ8QEs8gIXokKFiA7peEHa1+/6Zc3+z+V10qS3LL2gvCzUg5v8\r\nDf2SnMZlpipVfrW16cUsEsBavuTZnZRtyOIA7YCwC3L3JIRnYddAKZWw4eca\r\nRO/qonxBEafSp5u5i/szyY+VP7nO9ZyhZVfAmuNGljD9RfKXo612Q447eSYy\r\nykUpLywSE+Q3fQ08WNnsmBcNJKHHfs63cQj/9XjDl9RjHyWecQIDymyZvvUD\r\n3/0hoIgK0BnLCVfjTLgWhKdgohFu+R0Ju8o=\r\n=IjTb\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.9-beta.4_1668091527334_0.020843582230068547"},"_hasShrinkwrap":false},"1.5.9":{"name":"meshkraft-vto","version":"1.5.9","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.5.9","dist":{"shasum":"e237bb5e6d78345cbb081d330f40ada74535e585","integrity":"sha512-FV2NQjYvGVGmdEqCwhgCx5uuF9PHeqakz+Y7nGPyaojawpSkRH823nL8vZOFVuPLYM3MCXn0xdZ8SW126qUHeQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.9.tgz","fileCount":6,"unpackedSize":261568,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCphu6UX9Hi9w7/mhI5FfL2b2dkpDubRZQnSCUgECF/KQIhAI9lB2pvGSJdNOjl5XHjce3dlWlQyEy6zTYJ3DTkKC1i"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjcgAQACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmosFg//SKrfuhejs5+qlPZf3o5AD4WYKS4X4+LdJcs3CGgqGyqVzVD5\r\nhhCVemTUgBY0DkVoHfaeyfDmO7ls15ud4JfyxeZD2wYckSMq38P+SCa/zUe0\r\n8piB4bN1q7oGCaEGbd6XoKIyWRr6I9fZ0YXk5ATsFV/rNNwyz3hduu/OH5J4\r\n4Us7MEm/qI1uoy78juCUA8uo7KrSgWrxevv7Cb/0QiiQ1rOc79+qy0da8tOc\r\ntKkyFnyG6seSiEFN91K7acZmnWmYgXnhDkP7FPcZuLyfZNPAAjmn5dPIIygc\r\ndEdg7+z4cFerRgw97XjvzxOyWB5C3vWlbQlRphBwOARAvvEPscGVJWF34P3I\r\nLoe3BAbV8Fx8CaC8u992tP+vSTVBA8mww+exG0K8GgTvqdSYqjzNYaftq9cw\r\nXI/ti5ZPm0Gjc8gJsPAjw4UwuVCb0FFvKftAWcUdbCZAc3U/3CCV6d7PmiGY\r\nXG76V39giWnV8pqudi9T7xb8edY6p1Ue/zwTW03v9CWFD27tFcnDpxxlBjtl\r\n6InxxqggqfLrbHOkUJVF2C4P5oeccBpJUsmkqfIC/EkF23LXx3SenP2JCGKh\r\naOm250aKViTbHWY+Iu5SbLpw+CLF0sf16DjDhaDGXDMUIhTqw5eqYPPuSKEN\r\nzYrSkyjukj6RJN3sDXPuHL5HogmlnRv36XE=\r\n=QUgX\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.9_1668415504776_0.5697669492985487"},"_hasShrinkwrap":false},"1.5.10":{"name":"meshkraft-vto","version":"1.5.10","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.5.10","dist":{"shasum":"029791adb4e61fc67a9a35e3432f24cc593aeb89","integrity":"sha512-6076xypFyap8OKeCcQxneesUXW8ltRoeoHdU5lQVhBk0e29mwFlpaalevvhii4bINoUn6o8Hc3nEPSa+k/y1TQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.10.tgz","fileCount":6,"unpackedSize":261682,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDg9pofvUtdtk6T5CFfCzzuDnElKf6Egke6iJcVmvzF4AIgCPfO9QA+EXp2o/UGaE9OF3HOv54FvrdW0pO4DND/9jI="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjc8O7ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr5Mw//fxSZ1yVCeJ5iGU9hetp1mtaCvVTfCDqHRVIbPzC3Ag/FUqGs\r\nZDRuvsfXc3XPMA7ROsfMmlgbD9P9pRUoN2PjvOqaqCsp3W+qsoNHKWojJWBs\r\n6HiiHJFVtTZs+ELUM8ZDh4yIVNp87FmwQM2l2FS2B0ZV0+Ol1rUGFvsjXclS\r\nE1mQJyn8s2+ZoLR5yFSLskGQmGBgPu3xeTZYGjke4FADWYS4KBn3qZT9vgbi\r\nKoCgsebodqtfkV3b0a0fP0jxITkMGaSOsU64jUI3i+tbO5i5b2sLvSr6Aaaz\r\noutMFy6UfwHjPofxH4lQO4292vEcJQ8auprpU0E/PP4THib1s3qFhXUmjHsn\r\nW3m41ZNj5Rpr1KIVNPu+84lJNApbTpHGMtJvIgqSq/nDjLI6I5DeNmPFNCQq\r\n2gHeW1aeWVh/x/+xKOxFHFPc/GqPEsyN5+YKhMQrQtrMgYBbhMhyLKZIIkVw\r\nL6g7yO11YpJ2pXxF+zRD1iZvVkgAg5X+b+fvC2gUiS2hmj2/fDawIbplTRgx\r\nnCAIuahObtd7qigZCspc4alnKdCDW7aSKeE6CCkvDjxdVRVnigswUmUkWNvj\r\nDGPg4x8oCiXhQfHWZnStgdC39VhVLgylQx5BT34tRBDI4NCo8UfvGns0b2Yf\r\nRuuXki2SMC9QIZfr1eXYvpqw6avzcqKS9y0=\r\n=V8lC\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.10_1668531131457_0.541151028699224"},"_hasShrinkwrap":false},"1.5.11":{"name":"meshkraft-vto","version":"1.5.11","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.5.11","dist":{"shasum":"338e3ba1ce22988d3fd5efe58971cbecdba5601b","integrity":"sha512-Y7K+eFhkum/Zj7/1mIetLzz2WzP/uNO77DhMJCRGfy1+FEGtkozvOZwALU4xeRL6jYRF+R+eGwCvRf2QHiqhPw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.11.tgz","fileCount":6,"unpackedSize":261682,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDm0fwq3Gz9p7OAukDLqE/gX6d1Z5MeuyUZtB6x0azbbQIgP0EQioz38xEG8CG4Q7BLtcX47dkUhbtjvuBv0OPChUQ="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjc87gACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoTKQ/9FoCPlEeeOtZfDXkWzja6L+E6GjHXtzpaIuyQzKq/5O0gM6/b\r\nPW7mAqDmtYbivseZrSl5pCQfVmYzzW9/qQgeXGzL6cfZdpAXB3gGeIXZUpgI\r\nW8etQDtkoZVvK4XMEJCAEGOMZMDdneXrMRKv3PUtfm8fUjjhPKVDEowmVRMv\r\no/qUok9j4QUBsFEP9WoAmDGnyRWDJB1WI0+0TdDwBWB62CuG5+gvGp1bzyFL\r\nMr89k8jpcIGzT+cLKNpddAHT95GUYuz7p//T2cZmYpQss40YQ+IxIh7GIr5q\r\nd4PJpvomEAfqBAPFuDYVT/7V5Hgsx6hthKkUyuVChjA8iwEZvMIdksy+pbNA\r\nguD5WXB70PhUKbgLEFGkHsIaW0UQg+J3PA8exiUiFaODJ9mMyl84vjJTmvGh\r\nO+UT4W3viWbB5z7jPiOV81OTJLfgmfJNsR+GriVUoXJjm2ANf1+hZbZUJmAA\r\nSqXKrRlHEjTbMjch4h2rZRHajoFifGns5kBhT2f8CBxTUVvDuA+WxK0wbnRF\r\ndsNh7PAehE9IzrHcOyw+taLMtEGKrBgZB324nF7A/1LpDJvRRQ2UG+aYMKXZ\r\nQlisusWqvTLOpVHR+9+XipMmS1kdqtoYkJuM4EVc+tRULBzbwmID2xPelJdJ\r\nn7LIzdSklnqyqz/w70aZzHnZ11cBMaCTH5E=\r\n=043j\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.11_1668533983931_0.5810167764082421"},"_hasShrinkwrap":false},"1.5.11-beta":{"name":"meshkraft-vto","version":"1.5.11-beta","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  245.76 KB                   │\n│   Gzipped Size:  75.22 KB                   │\n│   Brotli size: 65.45 KB                     │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.5.11-beta","dist":{"shasum":"7399711961aabb14ccc45abf7779b3906543c181","integrity":"sha512-Jcfu7iRbdtIEIYhbfhBuPzZJcQodW+j5teQN9wNtzc2DlZx/ej+EeyOJTjcvxz5niFUfPLgFUNvmvmJ+bxxw0g==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.11-beta.tgz","fileCount":6,"unpackedSize":262880,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCAcGzp3NJGqweSj/LhQKdVJNipkX73WpN71GvDqAIXhgIgHHzR4GSFtmiU0rC2ZhnXtUoLZmezwUVmSe7ZA8u9ql0="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjdjyKACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrfcBAAg4YyqMk0sSLYiOAELk+VpvAzKeeKjE8FfRIq+KXveMvw8Cy3\r\nIR7J1PsIwZBfEpIdb3MCbYOuyJOmSauBVqG5Qj5M6Ead/SkdQXVMEdY7PM/j\r\nfb9MGuEh4V75WO1qkpnYaMAlQun8r7TPCH4URvrx5i0gzmVgmCw4F+YEhGY3\r\nUalxI1m5DkD0UhAKOGL+tsMuI0kNlTsmKCLFeIDX43/XFSoNK9jWsPkg95Sy\r\n1biyEYKHsNNz/3aBLKUa+B1rN5+d11ouVOEhkYBrgFZ8JJoO7sd2u+IKXX6I\r\n7q5X6yrO6bg3kax92Bp3VH2PvsK3fdps6ip8rU2yUjw9NKtltvMDA/CxQzUo\r\nYiNLpRbPUJbfO5jca7cuuubY4XmIpBFoBpoCvfHKoAizUDNetrYQQ5BsHqvz\r\nZOQayRnLLDz1BobmFQ0La7/YoC54H5aDfq1YEMuJBnwoRcsMK0c4OHLI7Y+r\r\nXr/Dfvpgu09mU1T9CyxJNCmmR5Wk713ElOb03cNsiNvU15RmHerxGiv5paIY\r\nVhB+xmYxJbWkyxdymTAh9Nd0ketJt4YXA6owctCV88p/ihvR47Hrjcdp3Mzl\r\nNQQgjTvjSJq9YqdOlIgij6dtxMFhsSyOJKZ8YzE2elHfuiUw8hArwnRQCK7i\r\nUud8z87+wabt6SgmpjRRmsn8hQJphbAeaLE=\r\n=2qyB\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.11-beta_1668693130661_0.4657171512030407"},"_hasShrinkwrap":false},"1.5.11-beta2":{"name":"meshkraft-vto","version":"1.5.11-beta2","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  245.76 KB                   │\n│   Gzipped Size:  75.22 KB                   │\n│   Brotli size: 65.45 KB                     │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.5.11-beta2","dist":{"shasum":"19392a3aee50bc0aa5cb2f2b477d65990c8b8e1b","integrity":"sha512-bFmujXDtRd+6PQC5lGHX0srO/xxUwdtPr6gG8BsRc17f3oYtxtOolVGGtAZfJ796/9dV9n5pxAFKT8Z40WlgAQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.11-beta2.tgz","fileCount":6,"unpackedSize":265412,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICoA46WOeQLWdYuvlpgY2ZlET+0Jq2b7tstu+9RISZZEAiB9UOMnCFmZaroNdvPqjSA9jgrUJTl9hG+RcK2XAOjsog=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjd1KiACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqabg//aRJupJBt0n2ebuCWEqTu2S1BkSO1UnnMsUTVeABZBQ+8mBXq\r\nkBD6I6CZ1fHnIPhv35UwRsUEC5B/bgFo/mlZnCuibhYCMBsOBOU5UrY6EmNc\r\n90MbEU1kB7g5DU+LLlYpB6WKl1J6ZWvDMOKjilz5DNPilx5QELpOA9mbH+Sh\r\nhbCZXd/MrogoSTS0wQPm30nNKTDHDCGPG4vgXPWOJ6HtEB2VuDyvQb5KScro\r\nsHGhH8PS5TYBndWe1QNMc/5iCPyEn1Rq4fTKfiRbveWaV5xUbNB1j9FskcMl\r\ntS6WrwI3XS92bXQmcnyCzf1J46gYqQj6NHlqVJhSmIcMmrYdg7n8DvOL+QKT\r\nGwY2ZNUP8srFIdqT9VzFWB3hsvKi8uOY79TedyCfT+cNtTosfzGToudd9h4d\r\nGpAQhfnm0RtwZiF4ySKo0skrJRYY93havrnh3N1WbFMtjaprdnR/1LrgD2lO\r\nSjlWBQaL6bCqlo7cyWqy1/3FoGEdVY7wDuqWRth5mnInADXrrcoZASvW9hCA\r\nGeqGohp75TM+9BWzX2aWdqM09naADOOZi03Y7bst5XjMV9LdmvObzXavPe2q\r\n7zrvhxJHUqbZ0Sw8bkt4m3ol2LKf01NSq7OGqNQLS/9c5pSr4mk3heO/ebVl\r\nquFqjyZxG8WBPnxmE5QLofy6hr1htceVnoI=\r\n=ZCoN\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.11-beta2_1668764322112_0.9553993460184789"},"_hasShrinkwrap":false},"1.5.11-beta3":{"name":"meshkraft-vto","version":"1.5.11-beta3","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  245.76 KB                   │\n│   Gzipped Size:  75.22 KB                   │\n│   Brotli size: 65.45 KB                     │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.5.11-beta3","dist":{"shasum":"15209c8099240ce1306b89b7e616bc5e04accde4","integrity":"sha512-p558qGxtssB6IRp5I2TQOzoNIOC+JkGInyXq/BNyIWWG60izl+NlNGrnHwRWC1MKeGLJpkuXeCp/a0Nuu6XD1Q==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.11-beta3.tgz","fileCount":6,"unpackedSize":265419,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDqn5WReWZGPXoXVw1O+WAZocpocGZgOjcNALgKATtZjAiEAyAaCqEfmu3gknzDj8MjiKor2G80rhvr8iE5xVhApJNM="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjd1UbACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrWRxAAghptjgZnrUftqUHg15irPrP9hGZEe3++AXaXDkfZniMI+NR8\r\n3WJ7D4sNHL8O2/8MNHWq+lskRnUwzS7osz71KzHsjayyr0J2+BgGaQyAs22R\r\nOXJ3NGIpHksJ4KJFFdBAzl1d9SOpaYTUDiRLmqZBERph6teu1t0rJZIWg/ej\r\nc8R9Auqnbah8TvC8kZCdYgHJ+J8NA7vtZ+4a39BPWI8QYFtP9yDlMwMYHaGB\r\nChzOK7rpsDoy4knvrfYxPgDt+L2G14aK/6UHeH0kxwHH2GVKf/HeAqKbXMy5\r\n5peDSJP864IRg1RQKj2Vkwr4kk/RXXwArinM1/qChJFaDIsYVzTDs0UOloeO\r\nClgyRAnvWKtSPlGBq6FEoPm4D6h2g32We4OPMmfYXXwIslULL03a1qRPnGT6\r\nGpfnOD6ABq7sVzoZq5XM8xACmuQyF8yD5AmWugeh70E2rXxxf2peUocY5jii\r\nkKwCfThLcWD27c6VoibSHLCAYIuh0bYTTAQZQam5qRaSgGg+DNyOBA6Bv6zO\r\nKvwnRp161OlBUDsr1ViC8Sm4RWmyluj/ynFc5A4j6SDgfol17qaohDRt0Fum\r\ngud05I41R3lSYAkoY4PAW45p/NvhklM3UD6KIT7TC3UE04StsDeN/27rvfwU\r\nFuFwwCkbgcUSFylzi5V7bswtl6mT/NOSgYw=\r\n=q4X+\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.11-beta3_1668764955734_0.9984931171759781"},"_hasShrinkwrap":false},"1.5.11-beta4":{"name":"meshkraft-vto","version":"1.5.11-beta4","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan\",\"qrPopupSubtitle\":\"QR\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/wp-content/themes/art-labs/img/artlabs-logo.svg\", \"showBanner\": true, \"buttonTitle\":\"Add To Cart\", \"buttonEventName\": \"add-to-cart\", \"buttonColor\": \"#4dad94\", \"buttonTextColor\": \"#fff\", \"enableShutterButton\": true}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  245.76 KB                   │\n│   Gzipped Size:  75.22 KB                   │\n│   Brotli size: 65.45 KB                     │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.5.11-beta4","dist":{"shasum":"d616cfee686434b877a86faad735b935d9d88d84","integrity":"sha512-aFZf9oyW7hX9eV3cPEQscaZeAyfX3lpzfbUJYnZSP4DrAORCXegjRxajB2WRt758ILr/wPHx2k7B2VdU9ZzxYQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.11-beta4.tgz","fileCount":6,"unpackedSize":265445,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICl068YihrZqugW7qFMKp10A9Si3ker1Kf2DywFUimiWAiBf4DUoAdyvFe5Qi4BrsGK6DhDVgIzj/4hLr02XjypM2Q=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjd1boACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmplWxAAifKn0ztbOhsKsdm4DaN5sW7Wm4x/XC71Bvpx4qKKJQPcV14o\r\nUMcwt70Q9Z7qxjYt7IKSBPf92PTu8OnC95JbhQI0+f3ITh5jHFh5NgSZRtF8\r\ngkV/luTbGW+wv7qBuU4UATwbZmwLuqWLlaleYue5uTGY4pMRU3I+fUTE1KR1\r\nnbNNpSt+ALRM1ZClfDg8kL+etT0M4r6Ykd6coCDyURVZ4jsik9WRmLapwdNo\r\nHGtrkiAi+le6SeAWw/fog97Zdc06PRulCjn1N/qaEhfW9miinWW65Tb0SAfS\r\noFJd51W8uMGB2Zi3TRqaZWnAzjkb+bn5NfW/BzM093FwehdThD4fVBtJOm5K\r\nNpTQofecSrLqEtkz/HoNtpVDbslH3wNftmi1DSBOgr4wEpf6ybJqk5OrrlKj\r\n9+E8gxsR1Gh/MbhdgcLPU/Vu+uGckHbi1H0tCrYJcpcHJWKs352hP3jrS9PF\r\nsyivQ8xn1R8PulD0bW7+vzgFZrA8+tt0vW15BHqoPzTwkm7Q6xgUGXQdYVe9\r\ncK0v4OH3B8UB1LakCzU8zOrxqSP2md/VMXH9NZADkQB/FzzbqMlY6jWPv/00\r\n3aKHLR0kfHgIspCIVUhV1b90YqlAEsNANgaAB6V0UffNEbS5mDtvNDlbVFOm\r\nMzsMJafp0ZZucNOdJAm/EXLH81o1UwN4H6s=\r\n=CIw4\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.11-beta4_1668765416491_0.7105023625727782"},"_hasShrinkwrap":false},"1.5.11-beta5":{"name":"meshkraft-vto","version":"1.5.11-beta5","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  251.52 KB                   │\n│   Gzipped Size:  76.88 KB                   │\n│   Brotli size: 66.54 KB                     │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.5.11-beta5","dist":{"shasum":"d4816fbaee56ec4d62ef7919c89b63c92eb649f3","integrity":"sha512-tihiGqDGBXoJeKIiBpRW+0065GN/tvgpVzst4NeyeIXjQU5Tbwo2pf9MdG/HoWU2kfhNAyL8rZpyebs1iY9HcQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.11-beta5.tgz","fileCount":6,"unpackedSize":267150,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDQHobxmx9LPCcfrrd3z2ixT0rGI/snWvMJblsUge2PBgIgLlA2NLPKahvuRvSAuynE0nd7Kpjy5cGiXp31TPZVeDA="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJje8I/ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpgcQ/8Cxj/YHtZDGOLKOn6IUvs2N95w5CGrnmy1YJrx5PBRokPDHsZ\r\nIoGMOH5+tBwpQ7a1ThBNhlzLcPlO1cFuhI0AhY50Ywtk7ZchXhNEbDVTFCSa\r\n3dr5FREtHPKA/YCy1KzFnoq1zAwO6ChXUnzdaaMUFFixnQ7AEf+0hExPIEG2\r\nClhHcAin7deLy+pvYEvMOjKnw+GqrOiy9PG7sTVTR3s7D+bRu4jj61ze6ZhZ\r\nEXC7Jyor/0ilFdD1LOmenVC+6WoHzG4qz5dj7KlEt7x8y6+d7rVK2HyoooVI\r\nB+U6HXdQUd48FvaNIhBqFfaaIAv1PlBCbb0u/UuUody/r2r0Ef/Agp1+aKzq\r\nw34YhedOxKENmt7BTr9Tk0aICt/huSZemgYLsp9Aas/ydsSaHrYl0B20qECe\r\nyNjQVsuqqPfg2tAzHEeZU1JoITeC2ZwIb+sASlQ09VzgFtaDb7bdqzNsE3b6\r\nnAoR6q7quItWW+cUlIQPnwEZnRjXooxY+r90/yhKO07wa/wOJa2W15LnZWpx\r\nVv+g3+NyrW7LXq/HEUaMGtyYh1L+TZQezrrMmRkLR5VZSOdOFOs43i8G+jyR\r\nRCa9+T2Zci9zNxuKg41sOTFRqCfCR0nOkqWoEjwZyFkQTuwW6QqMwnoZBASa\r\naT5b3koWLuwtuJutTEtb3IW20ZLBUStLbYo=\r\n=EcX1\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.11-beta5_1669055039239_0.3211844497952474"},"_hasShrinkwrap":false},"1.5.11-beta6":{"name":"meshkraft-vto","version":"1.5.11-beta6","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  251.52 KB                   │\n│   Gzipped Size:  76.88 KB                   │\n│   Brotli size: 66.54 KB                     │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.5.11-beta6","dist":{"shasum":"078e26be1cc9b2f3fb44047cc342cae903961547","integrity":"sha512-voWmhVzPP75PnoKpIEGf71MewB8TbAirUDBVWsWTMDrlSlg4eBgFdUNamjJ6sqwB3QZw0pGHP6ePtob5UdbhOA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.11-beta6.tgz","fileCount":6,"unpackedSize":267192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDzt5OrU7k1Jmd+dZ7GSxCVbq+mMN0vIcouJ8wiBJxAfwIhAIY/xOYboZQipJlIDd+8C9AQXaJaV/+SnhpGnUM+ACij"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJje8N5ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmobNg/+OdR9y+TOy/tH8KjRw1MFu2Z066t/8GXpiOIZr+Gl23p8fHOE\r\n4nirpAQb9hJlVyMIDmJ3tL3QScXCmTA+ZwMDBYyfQxHtYDC/q1sFoB08wJTS\r\n/sNkY+m5QgrfikamfRL2RPJ9a/W/B3WetoB2VyXZlj9eMZvWF5DJGr0phqav\r\nbZeoeMuZnO7xsHfnvZ3mFuPIWvzFOBYkc42+sMTUTvwFBzOo7tSeUWkgrH56\r\nHOZnfcBymaoL1DSC8Zu11A7MhyNsrfMewjkIHVBfG7kNwuwe5FuZ8SAY6A9A\r\nhzoMxa6XfxG+JNKaCT1USd+MmAMFtIGtFD/SfEAOvUGuROUNBKuH6NHU9Tb6\r\nGVcvXLeebayzkiGKSmTkzyd0Mz733rwdQga18JNuVw7YfhSJWoQe0o6NMt8i\r\n17NPBBdx2iyLvt8uM+3hecUU/ZKobglSHWKZ70q8xJsWKJTpJylSQi0raWO0\r\n/JIjGhFr+JfnDe5k550cDZGACCNMWhsFRfIBhmXleM7rA0MHsJHorVGpbFrc\r\nGN7wZnijhp2OXI0CvJh1gJV6Vfl7QRmJ8Zq13JOgD+bl/zgmVzmDqrjiqeg7\r\nMkoT0YpTSFWesj8OhVPLtCEOp5T8WQ5vbXj9kiWYXbeGxe98pRgyeC7Y87UO\r\ntT8bg27fKD6Zf8DrtcNFrMpqGI7EYGZPXrQ=\r\n=8MRp\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.11-beta6_1669055352857_0.43111062431589886"},"_hasShrinkwrap":false},"1.5.11-beta7":{"name":"meshkraft-vto","version":"1.5.11-beta7","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  251.52 KB                   │\n│   Gzipped Size:  76.88 KB                   │\n│   Brotli size: 66.54 KB                     │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.5.11-beta7","dist":{"shasum":"b533416eeae9aef3f029143bddd2fa91c94905b8","integrity":"sha512-JGtqnuih79wha3MhXQH5svCPlwiib3/qNvzcHDNY8P/KcPg2R4FF2Pj5HZgxO9vyRXJbVz8IoTcuxjGzoPzB4Q==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.5.11-beta7.tgz","fileCount":6,"unpackedSize":267199,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHQdtnJgrpzMUTeAcUmJnTJVtsa1+LFN1jO/B5t02jygAiBGZpqqhnhIAsc6isaB+eqxFO1rpPFwuuPlzhHHQb5/lw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjfNWPACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqd7Q/9FmIW7aUuYKLUIGzL+g1bl0wlU5alOTd6T8bnboxgKXg/PP6u\r\nXQyOabYBs2fgLfkNY7pBUh83nwyh0thPKF2Jx5rOH0twS4DtgIVl9joxCtl7\r\nYUiX8vGaFs8VRK3+ZOB1TcsTuYgjz5Gy/YpqKQeph4u907hX2LHcuNOnObWu\r\nGoKswWZ5xXKnu6FJLAMePe/MQ1xMu2jHrhyu0C9tIxTRG/Wg0Fj8EkGfWJcU\r\nkBTapEg8tcYaYju6bGoNF3c3fvEnB9/AKBnsgitHzR6mzuHcd+RiizgG+1Sd\r\nz9y+LIsFPQv9geVpSuT84cFTQGabb4PRq62JstOknB3Wr0n2NuIgjHzVGHBE\r\nwMfUcRFZF19m1y5SxpAOA4rJ2azn9O7f5dPa+bm0amrRuD+F2JBkWbELcgye\r\nHG27txCZ34A8X9fP33VuX2iFCqGciRZhyNRphA/kA/AB/yB6BaV/olVnuDYw\r\nSCtdpSBqXQbVN9wFXvyn9rpu+2grbGIKApGjDXjDH/H0HtpXhDEV6g+dwhG4\r\nvyZF+Auy2N3hzdKzHx1nckx5QN+eWuVml8ojQnUYQqDU2DsvKokH4WMkzwBD\r\nEPWmlapkrm+2ZpjgcsZ1K8xP2B2OrXO3+MWTHAwmrL2ZqxvPAEXw6Jv9+/Wc\r\nb8qdlhIkGDCzswBIXGWow8amE1X+2i4YJY8=\r\n=Kv/v\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.5.11-beta7_1669125519525_0.1842627336963385"},"_hasShrinkwrap":false},"1.6.0":{"name":"meshkraft-vto","version":"1.6.0","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.6.0","dist":{"shasum":"dd130f7f6b7b7ed6641e76ecef6356e2ee98c299","integrity":"sha512-dPTxFOtgMwM7/y1sPjn1FzOO6BxK4QF49zlI4+99SOtrHZMqB3QJKbojyKRMV54tPjmrQIVxyEtbbmS+OycdVw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.6.0.tgz","fileCount":6,"unpackedSize":267192,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCXmY+QlWNV2Zydck05aDo5BdZu7yfuuyuoIiF+3BzEywIgSU7I1bROKHI0Sj4q2+4maRFrYOAd/USMgwze++EMWQU="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjfNngACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqcbw/+NSfTWL48MylPMyS0BZmVOLKeRyakponOx6KcbfEKEryOzimW\r\ni0T1urcOuC0AucvAa2x24d+UvktH98dKhzAt3VkHa43xYvGeKUqjQAb6nQt8\r\neCA9ljbANRewEdMzFl2/hnbZ0j3xTRHb7mifeMcDOjt7pCebmw5c7VfjQBqh\r\nDrjpa9B11xCAtJU8Ia65eQJnahZxiAiAQ/kMxjOXChMj6qlv6G0hxn2zxD1w\r\no95bFm704HtgCLP9Ity3ytI6xMs+afR+BOwdxS/BTKKxzc9QzWlgqayhq/03\r\njF1wPSSqPZoC63ltzci/stdyxNM7Z+h/nmkysn+Wbm99i6P6t+J7nUQIXaNu\r\nfzEp7670KceMkKLRewXcJOIqU0fcrK/0NisI2f07OtkfZ4umTq8r7hkWnTfh\r\nexdTgmgfn/q3xdoSmgNSwP+TWh64oqlJTUq28kZeq2BOQv0ztEvZbz6DXpfM\r\nPFrEA/wMrbNWtRcXJgTH8eVOtKz4wDeaCcjqlDgtVogISKt93pAe44QM6/op\r\nnAZilQRXP+EV+6IxGxWcR4GDAEuAKHf7GlBJsTtEO1zXeXva40zWMQ0RS9k2\r\nzSr/CYHdzcWuwAiXpReDs3SnyefgCy+rZTNIn7aB4W0Cfk2jJOWRvhZfPNns\r\n7jPIDHPjA3s5/ZCV544jl73YcAY7u1DBNBI=\r\n=tpwF\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.6.0_1669126623936_0.3536770643778624"},"_hasShrinkwrap":false},"1.6.1-beta":{"name":"meshkraft-vto","version":"1.6.1-beta","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.6.1-beta","dist":{"shasum":"1e90449be1b6f8c77a98d4b2d258acb0087c57b8","integrity":"sha512-8IQbPimDMjIZCs6VhA/aJ0qbqsWbtINL+7m+P6GdKtvdd0NBKkqEhxRKRl5OxMx1q43+pgQmKot0KzXjc8NMyA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.6.1-beta.tgz","fileCount":6,"unpackedSize":268493,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCy9pGIcfrowWSXlRVbB+l42zUn4US742ky5xa/aqVEogIgLSlw8CkH4YZipC3keO8+ZT3Y61X67yy0qXVZlQHtvn0="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjkEihACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpmzxAAn3RQncf28z1oQudTqBt69cHMjzGyuuauHMMRA3SJthnM6WaT\r\nz7hFCEz0c1PmlUzLHJrnq3cOMDQAG0bTTJ4pF2VPrStmubmes1//LmGLXlVI\r\nFrLF0vWQLu1bir6HiLUqanhE0gAOSFGox1vmOytuKR32avNj5m5d7QkRT7Qb\r\nhlWPyDUHyC7xT/oD2VlLbqYzvYkVwDL7G090bpBnBJmVSz8PL5yDdJsgGavY\r\nnpy7EBLoINKDfrI36uwsBQwaQ6CzuMb73G6ZcMEmdAN20iS2UOE7TJ5K53nk\r\ncnqp5w9heKIued+wizoHMFibit8Pde3KmDeSKiWPBAH0CoEhDW3TPjQtBfWm\r\nhSHAn3m18hQ8I9MhnvWNeb0ShxRx2MdokdGyYPj5Ye1VHPYqteO+X2LCoH0Y\r\nvTAkevquaT5o80TwnH5M5RjVhbud0cu9ZQiW3sqG5DG5diiCivS4qtq9sfEe\r\nJX/8KKYw4kCI1ztQBkrxjnwFpxaAJsDk4JDl1aMS2kHJ6kUQB6BPkKON33j5\r\nT29oF41F8u2CDNh+R1J7TJRoFdgUJ1ULblNPku/R8fB2/lONDxoOeHtWjgWH\r\nzcefVmMs1FkSIvuENDbxOPahCKpHqTIw25RNRCz9qowBvs76hobV/H4DSCrb\r\nlF8OTl8YssxMuPA+KtbptE9R2cyRuLt53Ec=\r\n=gyTA\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.6.1-beta_1670400161768_0.1302365688707785"},"_hasShrinkwrap":false},"1.6.1-beta2":{"name":"meshkraft-vto","version":"1.6.1-beta2","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.6.1-beta2","dist":{"shasum":"bc4f238b973c75fc62a495169deea10e0e06411b","integrity":"sha512-ofZnhsb78OTGbbX/MflD0ZTMi/1T7fUYE0y6LDyGh3vZn25f+qArGJ1HomXBKeTFpXXFDGpySxxDrkedwsYMxg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.6.1-beta2.tgz","fileCount":6,"unpackedSize":268432,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIESdR4qgSA5izAuTEW+d0oe2q5TMFV5mtZe75ig6EZFQAiEAzrC3TYDti/eXpEWMCtt4McJkrTfG20cmiZqVlsDDWvo="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjkJaVACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrtHhAAiqQ3OfgjylYG56isJWRnBpIUmU4ZWrkTb28hdtJn0Zz0Ol8P\r\nFXhsnFWTIO9Ua+p7fUA1tGfSRcInmi/lQMGw53eUAwmwm3R0K/fRoc8PV5rG\r\nOIjgBJ6FcVj/3O6LsjwRFNJMGHjPh21a1EJ5b9HLiBcifoywNP+7S1Wta3+L\r\np4t+hrhWueui/G6kBTRz2YhhAlyU9HtxZm3Z0UnIeTy2AjydAL5cVae4YwQ7\r\nZLr+TgkrQrz87LQbl84ogp6zpxnKHs6vtbxtPBcePbFfpLBMz2I2nIDLr4EI\r\nSRu/14lz6e6aBi691TU27UnaRaNybq6vb1ZM/O4lYMFqQuUSQsDb6r1OgRcG\r\nJngCYJiOBTCvFldYVXW0wHVIvwAAd0u2udOZhzNJzB4vAGIoXgw70IU8kXn1\r\n+Lj3Jb38cjCPzOzIPAB5TVscwUI8TcbglcaWDSHdqMnxNAdxoS9+m8skH0/j\r\ngJpMN+ElVvFOcUbAacYS9FQ5PFNHuIXlFEmmdqgu44jQ6N8CNuYLRH6sCsNO\r\nHGLptnVS/ERkqTXmtt7RdS8NRuW+Mxf16Jq55+ia6M8Eff4C9J0iZGiviOEt\r\nlDaJKwhIfND0OO3Kc0CVDaqdb/8d4kxoHZmi8viDfEiBMY/5wme07f+lsba9\r\nhL1YK6RXez/VH6jDOzwHnPKEoirAU8A6xlE=\r\n=XMd3\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.6.1-beta2_1670420117336_0.16905833781557345"},"_hasShrinkwrap":false},"1.6.2-beta":{"name":"meshkraft-vto","version":"1.6.2-beta","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.6.2-beta","dist":{"shasum":"55690d4778f19500aff9d875d923692b30222280","integrity":"sha512-rZzksbB1pnMl8VFZ7QIOWDizkc9+UIV2PKjK22MhGrlTvNwcDV9WbWITenNHQCy92AyD4N1xzmJigydaWGRQ+Q==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.6.2-beta.tgz","fileCount":6,"unpackedSize":268521,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHSh/cganeOJEB4UkflkCPoppHvQKPnRMKcyyHbQr2sVAiEA3zB3sbSQZyBOMOMC7LAnP6mN8DYy0nY437Emic4cP0Y="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjmIaGACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo7ng/9HSqsuVqgJ0wEyJIbDBF1q6BHej186bMl6xPDB+GaH6CdsgyF\r\nsMJUgUC+6eql3hqG95O8LggOufJ2/flpqfCeNQLgwBjFZps1sM+8ZDIQRBpb\r\nD632a/Ky2S+zINYALQ/Cww36Hg50yXj4eMl3gCYGvXMNpzFkL3KIBDmBVdmC\r\n08gt6UkA0NQG1mWlGARL/WSMt3GWKNiyInofrTKVlBvM10bqiY/5XoYfJ5ID\r\n+pNckOUZMLE3Hvag0Og3Rd9Tu9XxfIWCaDHnLKz0y+8JYFaAMFwGk14jvNoH\r\nJiEYkDJ4fd6iZrGZhBgEtRPQg6n1t90Jsg8ADst9Bzgvy6aBXjG4jR2EwG1W\r\noTaECACNux+htuFQW2/qcqJX1JeyLt6whgdNsIj4bxGnqRTmydxsaIbJo1ly\r\nsgLENk5GnWdJvGPwY+U8jHrt1SkSrDRUglcbN3LaRYWARnm6cZl4OSojlV50\r\nsI6We2adiCAss03O8nMxdljx5pVg2TzbTq/pPbB8Avdixp8Ook3028jt0ity\r\nzOVTWfxB78fr2jdZAmj7rlUOvex4HUZ27+K2cS6PibWRuiNTt4JFCVn8gnsJ\r\nbdr8wc8X5XoAb4GCNP1JDngI9TtljWPChNcYx3vIjmbnxmnHPl3lNOiKoJb7\r\nUjQFb2u8exAloyD4sMpF3q54SeVGMTTCyso=\r\n=R7Yr\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.6.2-beta_1670940294017_0.7862054445149411"},"_hasShrinkwrap":false},"1.6.1":{"name":"meshkraft-vto","version":"1.6.1","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.6.1","dist":{"shasum":"0c7df38c192e0def67403d7ba887cc346a70cc01","integrity":"sha512-8hIvh9/sR4QmjEdsBzEBT7P5rFY0C3ltxGR5BWaDaVY1kNpxrPu1Ehzk0+5c72PnAGAIEkViN3DH7fFbjpwtWg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.6.1.tgz","fileCount":6,"unpackedSize":268516,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDzw0JjyQQ8xcOGhOhbB+ISQIac5DTQkoJF/H7aLSo0egIgMB4cLvDLp/YwDdNRZdU6L6ItkJ73erBJ7RHv+dy7t9Q="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjmgUsACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpVZA/+JE9jlKTD2hvvMX4oW6mfWa7bnOCvYTutdGBqOe8uqbu5jykQ\r\ngrjSyNQKTrI+Rk5CRIy4iHeYtZqrs2U9aZQ3Lmt/P/yecVyTrS/P/uHVqCOL\r\nRf/l7PtGnHHuyRqla2faH8rCBlirEsg2yKwBTB6qVSQd5VIf52jp9O4tttKe\r\nupgFCT0eg5ugDIcZzwj9OWtJ4HewYTkUseG2YqHXeBOvHD4bS1TZAcaVBqJa\r\nIEJZMXkp06IqpbQZzm+UjPcBX4wjSVaCTjg6IUvKlsog12whMTP4vOfjh/Co\r\nHbYG3Ifcwz4QY3Szz0/8NiYvxY1x2+Tq9jqXMb+U5FKvbX1dkIcyT8uAYoep\r\n8FKa4p+mff+H0vovQHCxb0S/BYlcDHtwYYiSHa5OYmjHF4OoSF4igVfAUHbK\r\nEwzRPdyiqAEGDp3KxCIpnC47eYmr3qHuYWufpzLjgpRyo/Pt+pBIfj/+uonr\r\nVYJTArkfGO2jB7KuSz+JZ1dnC/KdGLRBmhR8u3jYw0YtLUN1Q0xFaWj+Au/P\r\nHRm/HLkrSdXIG/GtcQDtjNp83XqyrxHWd/4mMTZs9gTxlIyNfsU2oK2A2Ps1\r\nuMsN8neAK3vMtm6odCyCq1CU7r0/ES303EzjrMMhxj8OF8mTwbqre70CNqIY\r\nEIugDQxIpxDsdfjcRLIRP6hgRknRR7JADGM=\r\n=Ot1F\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.6.1_1671038252113_0.45230028836090175"},"_hasShrinkwrap":false},"1.6.2":{"name":"meshkraft-vto","version":"1.6.2","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.6.2","dist":{"shasum":"8bab5192ebbe487a0572b435d94ce3c7f928bdcc","integrity":"sha512-IzZVKW5tVacD4SV5fb6utOJGCn2B3m2SP83c9ODMuQcTP1yOBwOvcTafNeUTexJ4xQHXfWimL0ggBzejSuenZg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.6.2.tgz","fileCount":6,"unpackedSize":268499,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICSdswaMio5PSYByVNmAxBu+xSy/3veAGjp0joUSaFjdAiEAzRMKYqRpkELkcBZ7mKtNftHtP6DBNtm1zyi2sqQiV3s="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjxpsLACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqb7g/+P8arADW1jXM2ND9+xzvizsoHCU3dvKxFA2EQgGnBcle+flOt\r\n60aAc13bt9IRLD6NlfaAMQlXQHRHsLC2ifQ/iuLgRlkwkpNqWbH22EX3xlr5\r\n+4eWk15lOzisakFEZ4rN+XVl1znmI43nufMZFLyFr6EZY1IIv0LG9uPRPvd6\r\nC42OaEwO+acIfQHN2bIYfuVG6gBd1E+54ihTaa8Im2qVYD5C0szLRo+Er5V/\r\n9Bd8s+UQnRtM9G5nejyvEja1MAhFKFAkVNYcEdVX+9jaBYDG+OW7LnWRApxA\r\nUKHl8HzdFDDKsoZD9smbaTKIoXdR0n1DXgWFmhYCBAAuebC0aJi6zJgI0Bos\r\n8pz2dp8YObckkKzoW4BECke+OcbQGmr17swgQAwa8bVsg7pGcW1CzCPPTdiV\r\nYDuu6zUCRpOA9zVVMt+I/PZTqakHvANEW9hwfJ/ylgxOCg23i2mbqhHBWo7d\r\nYsySlcdoPJH8is7ZWjzUw9tO9elHzut88nBt6+SN+BEIYSi1YoanG5Mwcv6R\r\n5BtERybWFptaa7Fw9evQMXkvhLDR6UKL+OrOaYEBCrW5ha/dLpLafgwWF3JC\r\n5FyFZMada9cCTGAYaGsGNuRQOxW30dvUpEeJbdZUCDMWOGvN2XT4mbl0JkYT\r\nLEQ91tzElM2OzuGppPYEcNTQtcvw72ue9lI=\r\n=AITe\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.6.2_1673960202875_0.6803027541637583"},"_hasShrinkwrap":false},"1.6.3":{"name":"meshkraft-vto","version":"1.6.3","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.6.3","dist":{"shasum":"f2caec5a842772ad57b135333e19c103adf0249a","integrity":"sha512-nWNm9r3W2nGC266VTh/vrufMvgz8E0CjdYl3+ZshV57GGMIgHn1hVvliK78mnuUxzU+rSbwG6ByXQRWPUpX4Gg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.6.3.tgz","fileCount":6,"unpackedSize":268516,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFvFMPk8BwNXS3HFD/jukSfJ2JfAqW1/Ts3Bsz3uFgAiAiEAlsUZ1FNZYakjHPJC7skqmYAgbMXr2+D8DtWx1iW0LsM="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjzldTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmry6A//Qi1hn9rKF6UpKQHM3wKerY3ynaQyL9wE/89zCL2bcNroFjWO\r\n/9NeNFn4xaNuJeBktZVrTQDBJN0SFrXmRdijDO2R2RzB6MdzEM7sej2EAJIl\r\n/kHetvkcnmhX6ibGMjhFs22iuzMtFHlpKXqyKHN3SJGKwRZV1MGY2R3VjOtq\r\nTFCd/YIJ4igtRsIlfSGSQGwh7NxGFPsljDMBKZjr2sKSTBpIERoF9KtLN8FP\r\ncmPfcjoaLAz+aXcTdS1/+h6ZA4NYTraa13JkHkqStuDxs/KnyyfJ6brWrzuE\r\nsdXzqZsUrV4U7bWkNG4obU7ymuyAB9+aKBVRSNT8IRWr8RankxvpLyZWSbXZ\r\noVQx3vhBztPq2vtJKCjUAYnK7xKeH8+LM/VdKyXZ8SWp89WXon/QlHnsOWRb\r\npiFtqjvkcSp7jAPFPw/gmZfSkC1FM75eqHwQ7VIyyR1rRxwVFuhSWmGU08KN\r\nt1MYIbSMRl/aYtndiQdZI+JwHodW8X9wScpb+n1YpXoDaH+w3sjILwqtg3Ub\r\nak6PemkkpyhtX0osUDzkpSVvFyFY2N+df2k285jo/TPPaZ9XX8Y+E6u59p0O\r\nJ3Zn4ajIfFypZVM36ewWKLry6pogNHT2b12bkGvaoFHzNAB6AAjPDKJrRAuL\r\ny+b4fm8EQC2jHUGC0QDsp1vwhIiZGCkEfYk=\r\n=szdK\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.6.3_1674467155376_0.5203956691973464"},"_hasShrinkwrap":false},"1.7.0-HOKA":{"name":"meshkraft-vto","version":"1.7.0-HOKA","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.7.0-HOKA","dist":{"shasum":"ca0c62f40754a04fcca2a05c7f5f6ccc121e9961","integrity":"sha512-cqnqcNscK3KYN8lJtRCR7EwV7mcjT7kQwuAuXWdmDOUbK8NQKXsbsfa0UprRxHsAaXSc+Laq19tGBgNSM+efkA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.7.0-HOKA.tgz","fileCount":6,"unpackedSize":270077,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCStq1mDVUsNrQ7vqEf37LpKLJf0iO+QV7Lv73+SHcBRQIgKXSEKGORLg1xLvCA2hMqOrVuRCZQlnYbdWY5Xmv8+u8="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjzlduACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo1RhAAnXakspWncAlUdR2XmiLkThD9pyaE+jDwxQigCVkOXI33HY0F\r\nUFC1Dh+nBLCqsMxJOcXsvuE6vpb5eVF6eOuhTHH34GVHXWN73XzevaqKG6Dv\r\nuBPaXXx8fIRGUE76qdOJArdPOZg5YJ9Pt2QNTay0Bpm/u2hiIFI3L+EFa4Vp\r\n6Cv4rBsgzqhd4hLGYvev/Bvyh98Tp/WND/lkQtedFTHbEvZJmQvVqqECtt2U\r\n1hx+fAsYJ9oJ/pOUmLyxXh+uD4WV0TpkKYiFQwho4FUJ0xpGdo5LFyEScDE1\r\nW+Rszgbsjc6bSRqdtLMY75AonPzA6lTswCmpVVIR6yPyVhSmFn8I6iyl+nF8\r\nlJvOOcWdk4tKMVcsEmp/yLhNaLI2VKc/uUO+cXNUywBpujBE7a9X/kpzt7oH\r\nbqjxd6Y+Sf6a1Fej1T1+IvCohZvYLWsUOg/5r+pMNgcOUUE+oW0VK29ydGP/\r\nw2QlpoOZozOdJNQ01MT5D6bth1l3LJrdb9zJcAYGyDPfED6yUatKwCCV0fq1\r\nqc9Ado+ccBtWFVGrPsNT4eAytHyWrp1IqUK01WUuetTja7qJslpVmqRDokMz\r\nkf19HJF6CBADCgJGHcPz9r3sdUlb0ovSBqZ39ocKTMRBnyQ5JCdh+hBjWOBj\r\nlwNnNrDSrllZ/LP91TqIjR/mA1XJxLZtkVE=\r\n=x8mW\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.7.0-HOKA_1674467182061_0.48695742576295276"},"_hasShrinkwrap":false},"1.7.1-HOKA":{"name":"meshkraft-vto","version":"1.7.1-HOKA","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.7.1-HOKA","dist":{"shasum":"b6d5d5edf5a888279b5fd266332704a6105583dd","integrity":"sha512-v9DVu7DH5glZ0qU3Acin08U9G+Ux6nAwAhEgFPDK+8phQhn4K+Xye9J0xXsOaug68XIfQcGy+715sRkvMm75GA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.7.1-HOKA.tgz","fileCount":6,"unpackedSize":270008,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGVfptyOC2Aivedhk6OYKQJqXW7P6FrLEFT3xqxqxvC7AiEA6s8xmvqouOz5fVnutPA6b5JQe5ULBFWmDHNEaPCtfCg="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjzqnuACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqbZxAAjwT8k/vEEM9VsRhzckbhj0lO1jOBSVUmJD+4HrbotZGTjomd\r\nSDuCjFGreXHoXkm8CASHrw+bkNF8UY7aIBgRMsYOVb5FiOF6pAM+/jJSk0RC\r\naK3gg4nUyJelgqIPHJF2Ad5hf7JUKcqgDPbW5HEE3XgMF4jtGbpXqhyujrHR\r\n0Vu1s0k+NJgGDbYZ9D58xDLJ27xTybMj/tXbzXTsr/Bd9G1+C1wKptioF2dW\r\nhIaRXiqhINu2mNMWD+UDZd9BnCjtTw+3To6Ypf0yFvu85L2ntXKDspRWCSF3\r\n5HxxDAm+fVH5B7KyITHnl7HxkRenAMF3uPjPScFopqLDvFgEM8hHgivtzXKQ\r\n7b4vK0S0tsGyGqCdrvboJFUHcMkuwCxAKqVJmTdd9Pec6/JTdXVFeEZp2S6O\r\no4ap+ZlwWTNTKZBhEk2khJO0eNzg6X8lJ5y1C871MWHce45tntbTXcpQ+vgq\r\nWo/Ml2ynhGWwjYRGqHgsAxzI3rdHoHJLiRY7JeLdmn0ukBThkd0B72dymc1I\r\n3t0jLb7/0Z2ESKwV+eilE2ilvFxYd3W1pq/ajxBAoHA2BDXgcvzUHStJ/+n2\r\nTUM2CoM6H8hlkccLAFQq8zpQsocETrrbayxHgmAE2N8z1EFrxhPfT5wgP6hl\r\nB5DgTh4m+Cl3i80BRCiEe1njp9rBeYVY7tI=\r\n=eszF\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.7.1-HOKA_1674488302486_0.7903190016825286"},"_hasShrinkwrap":false},"1.7.2-HOKA":{"name":"meshkraft-vto","version":"1.7.2-HOKA","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.7.2-HOKA","dist":{"shasum":"2782e43e6497001352fa46936fc0997b277c55f8","integrity":"sha512-jLNM699iZCSfJ2LTOT6NTVK4c/WSC+Mchqjs7YcUaVeZgvV7WbsCjttWKVDohJuQEpTvzDfYjtvWxqbglMk8Hg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.7.2-HOKA.tgz","fileCount":6,"unpackedSize":270198,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCcsPLR+Aa7zafW+kteyslgXuqXhOnQWSi4wNB5c6iWmwIhALFC0O+3xnp6PSGEpJa8lcgjzGNxzxFDnXqqsvaAu4DV"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjz8tDACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp7CQ//bL2rEEz6u3RiIW1iftLKt3FTi6sgU5VcoXq8TOTVrdgafUY9\r\nK0d/6GR4d8hmM8VMeY+jrtcwVeaJsjGF04AZXn837cgjz26pNrUyzsGX7HFM\r\nBf0+oQz3HQ+I63t/c0qwfBIt0F50Il1eJv9YPCiFkjB90bmxXhV/iGje4Nup\r\nBz4duhKbfgjvd6PJ3uP3n3PWSpxiMPVNhGWQxyLj4KMSyx9TBmf7DMWhHfOU\r\nGWvBX2Y+T405/5hRYuUDRbI8qYSgDS8exle8Pso6uW9dvK0nePlL9N/8A1ga\r\nnM4wHQtbYJTyNsMciQKwHt9tsJHBDURzV3C+DqATNUaCbWwt33Cjz5x+2yJ2\r\noGdoKynN5oyaM5HRjVDkFgJHBmmqLBfh2LYylFvCHrXKyT/uHgnamZiD9YUa\r\nxtsP+AVf0BOYHwCKWZ8tZdpOjD2S697HA28QZ8RMhJtRqQNnkLBtNW9iWt3W\r\n0IKQ+wKYYufQR+UMdpfSv3pPjKKZGdOOHwNTe8vyLvdpARyoT0cVV2iJMXmt\r\niv7ylqQDbMQuf3agEDTz1cktcN1ozOENZwmZjrVWXPuMRaSAdAUwx8cntQQ8\r\nnAPEKSJDNghAV8Tb0mhSDh94WHEspJF1YW8exbUaoxLn76yk1AMvOYziQfpW\r\n0SCsPg3UaYEiZmlisBzRi/LNHY0oC44MogA=\r\n=mPzf\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.7.2-HOKA_1674562371056_0.2778692461011454"},"_hasShrinkwrap":false},"1.7.3-HOKA":{"name":"meshkraft-vto","version":"1.7.3-HOKA","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.7.3-HOKA","dist":{"shasum":"ae472cf54270b7f42e5edd4c7f0de0e55cec411b","integrity":"sha512-9lcDzLzx3beWmSzUUSvDB58nSvDe0ge9XFzTP1DNo+qm/UGJio4YkV1z1MjkwyAnwXa6hoQ48DGluvL5JYlLng==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.7.3-HOKA.tgz","fileCount":6,"unpackedSize":270025,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB8BaZlg0S4ycRZvYsS8kOnVERY2B+IN2DeGX5R1C1lvAiEA+F77pivtiRYlcmQNiZzmaC4iALgRpfDxLkLzXx77MdQ="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjz+KdACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqnjA//bsew8aKTOLg+g9xxnEelbMGKA2i2BFzkmWk3CvHd/265Su0z\r\nBSrrFib3l2pxL3yDaf68w/8sZNBsLldq8PV6bzeVJE6JDArFToGFJYv6xHzm\r\nkv1s+tVFQR22Nra+Bd/elwOrnZaCaPWxyonuFrP4FvIkLMfRB25TqJBmM2vx\r\n/FOPnUswZs8JoiGOKNlacOr+AR0CDzkPmwxMDVbU2o0bDbohKE10bs4DnI87\r\nRdcZcrE029VhHSLoBjDTTxYbUYDl3l7XZed/RZvzbRDiEyB3tuMOyBPiabA+\r\n0D6uAErKdskp79x+r7WaKiB+WtfRFmLYifiz3v8n2oF0dUbXStIThE/zxPWW\r\nO3qzNatbRVGHnKXIaxevC3u6EMKgSdBgOSZuvzUslXZ3cvLbXARXrqMmtA32\r\nFvos9unztGdBnnJoXfqA3p5HWhCyLyO/kbOMXBsEl6aqK/NM5rVFxmHkghfs\r\n21SIow++/8xK5bw5UoTWlHENtwLqrcHjj9Dw/yIaKJhXSfrWzhKXahl301qB\r\nXPjuoyVFe0QfdeDZ+UETLKrwDRaSZi/WyexBnlZX/obBlplkzqlyCVrX5lxb\r\ngO/nz8U89ECiKDyIM7xXs95v1L6fxJAyJaqcT4fzF99DAsBIZKxFGj5lv80W\r\nsOv5kyYL/c6fbHgzP+EYlQVcNj4EaaKWW30=\r\n=GBsS\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.7.3-HOKA_1674568349746_0.3504013992818815"},"_hasShrinkwrap":false},"1.7.4-HOKA":{"name":"meshkraft-vto","version":"1.7.4-HOKA","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.7.4-HOKA","dist":{"shasum":"1e9ec303ef78d069313a41ccd0120735098e7e2b","integrity":"sha512-587KNThlEvEgy+iyjWHs8dS86SK6i4nl6qlVuwyaaEXDkSI+HGJCJ8uB/SwgXyej4NSGA+2NCCVlHC3N+Rgeow==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.7.4-HOKA.tgz","fileCount":6,"unpackedSize":270048,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD9cNSEfQz6jLw28Z5WNLEOoQrhIy+G6edEts/0xwli8QIhAILmGSr1IiSLTUAzwxH5APqrQ45aVz+GCN8XMQvsox0H"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj0PU9ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp/lRAAmHoBB/Nf8UDoqkcsaAIeGUVs2SATeV4hEiYmCbYvgque2wyh\r\na4W0fV2AadPClPRR8JRpYP/I6tJ8Cp45tAbgxONgyFWTjONPQUvt5lW992M8\r\nt44/19g/1gczV03P806Sd39rJu1zXt/S/AHFMXOEFJi9M6k8BvyXXoAPUaMd\r\nRfg0IzU8c+dC3ULAi3wp66JRETOF1YQk9MWEZSi2oNro92e7IFx0fMkT1cdv\r\n68wpU6A82MkPPqo5lU9ZHcucP7vtQXoh1sTH2lbUdntDoz7S64pHbqbCOd10\r\nssEMGyjKXYGsReUwBPUp3aZOyKc4jb/s3HU0LSXGZlWUW2TT6+Uspof348EU\r\nZPy0MfHcbDvBgjSpHoc7p0/I/G7vjd8vFgvjPT/UwGu2lpG/c1RUtURGsyUP\r\n8/Jnl0chjYXpqbHBDmEUYd/b8pzdVJAX8hvUdfURxfBIFXOBWKqfKE3ZA8dt\r\nf0xC77Xvfr8yUfJXVAzB2kh8ZSuziLj8Ba75xfwx9GA2nYRjGYslqfdpuKtn\r\nECQxCsZNEmwKL32dOrIIP4rO6tEGwrr/siu9saYi43Cn+oqOmCdcysPMDgvt\r\nbp03m5sh4XaCvBaOZYhhK0v5ND1H117giVxiGTF0MDEeNEUhs+k/hbl1UXcU\r\nSaZ9f1u0XXJvj6oEqcAU9Ajb4lBPE6zq7qM=\r\n=2Vgm\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.7.4-HOKA_1674638653088_0.15336853968720066"},"_hasShrinkwrap":false},"1.7.5-HOKA":{"name":"meshkraft-vto","version":"1.7.5-HOKA","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.7.5-HOKA","dist":{"shasum":"b82aa023a71afdde3d81611d830bb873d6171e58","integrity":"sha512-9vgrCkG23JM2IGzq5KD+et6c/YQuLzH9Jko8ZUxdP8JW7b4PxSZdwLL5v94I27CMhE9W8r8A/d21kNvS+edfQg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.7.5-HOKA.tgz","fileCount":6,"unpackedSize":270113,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC7uy4uH16f7Rq+ylTjgYzS0AqbcI2vlSEtDc18SOiKJgIgZqzME82yyyOit9G8drtbyaQYK0sxeUIefY228ebp1ZY="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj0mPTACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo3Sg//bldmUkXe2Jo8bPXZeo45sSCaAenAt2WAT5oiKRR0phWnJjPQ\r\nVwQCTq4hcRFjpVWy4ZCW4X7wIG2Z84nuGX1SkzpgcPQ4+RAXJueB6mxluXOv\r\nM9tgtSNPSscq+d5IgsCAzplfAAldBRuNKWXDoQWkZDNHw/FTUWxQfsU7BcLg\r\n7Qs2aHuYudiHxT3bhUJjhfCxvj0eVhJxx9PqrIA1GWySdaHgW79VM6sECqhf\r\nFdkeszx+WujmMGVtL9CPWgb/KamrGr/IH1sswxYkfdnXI+qSB+jBg4LefMsN\r\nHquZCpebyuiYQq5EFnF2IyEjZG1hN2Ro9TgWGSsgcNTWPzeZJVD80juZsD/e\r\nLkW3ZnKr35R8E0fij/2FgfO7UEJS6QJb68lwqvF4FgLxCZHHb4NQeZfoSFHg\r\nH3ca62VSEz9YmkqQtjEhUPII2ssQlabkuIywMKt2gWUF5KaVr5zBS6cC64D8\r\nCKbUKxOuGxRhW4rLaOrnKJMMos2tuxXHC7308o5U0DLgE/5z9zN6OMP5g9PT\r\nr+vgSSjZilnY1sfThhgNkSuLrg0WjoEnz3b0gz60C2PqY3zjRLroz+3GzsYG\r\niYrmFQPHU6PTHHfbKUdNNJ7Rjp3lHaJulejTn2l1IfHjU1cwald1OiT1nljq\r\nKjbtU0S4a+AYMd5Max/zim+bM7xJxtjbync=\r\n=dit+\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.7.5-HOKA_1674732498918_0.3122682938150596"},"_hasShrinkwrap":false},"1.8.0-HOKA":{"name":"meshkraft-vto","version":"1.8.0-HOKA","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.8.0-HOKA","dist":{"shasum":"fbd33fbd6c96bc52e377282feb19db6aa96efb05","integrity":"sha512-S/F52r2Y8j81mEdjUS9/+y/F0U14RziMFHOZprRLwacQYF2Pc9rlI4j838cbX+C5QKa7ByyKtL0vQu0Ci/Kymw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.8.0-HOKA.tgz","fileCount":6,"unpackedSize":273234,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICvb51baVs2jN6cPm2vwekLyaek8kO9OoXmnEezUsNtvAiBbDsho7yilt+PqMwrzoW1X9RwzY2/iFDZ3zATu0ud5ZA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj2S9WACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoFcQ//fS00GjdG9UHBeBUZfu40c7UU5jngrqTq/PnmscLpFH9uLFAl\r\nlMvY9i9rtrpsCYB0Ex4QVoJhmcnW88sFxphUot2A73SNvTjGxenOZ6Vu1USW\r\nkxa/E+qBLWcFFMLzzbLPpm8OxNoPDKeii0PLb5ATbDopm2JBFkmWAnVQ1lUW\r\nSOk1ohuCRbigqgYNUCmgeb0edBHXYvJJJZBlhhXfISXq/HslFEwABjhbKZWy\r\nNPLBbA53G9bc2ylFHKtfpNO2mevSCzFDRoo/joYjN/tTzqDFJlvmkQHY1qpP\r\nhsq/NFBmr08vh4GZFm4GoGyats2cENSUI694svx8RyGGwyLX3ovEYVjUy5KJ\r\nG+ApIEdQLfWcrofgeiavh34itBohQkh7rQdkT66V2A/rZjfzsDjEzyxOzZqc\r\n6OxO+gvTrExlC/bWFw1KmB32P0PAYBnWkqxJSpdVgzHkwc3ELsV+iKXyLEVZ\r\ni9wBISQnFVg8n10FmPmuKVOBGi6cRxSPq/aKGNYbo7WMlmJOAE01/UjUXBpS\r\ncdukmE9uqGjWR+C0ry+P4NzsRzTt8YGG/owVFkqFLaDFnZzEYvRklxmrhKam\r\nzzXiwRYhlxDYxqWeKT5/JIuUfzYNP2cnfvAboy/+WdMm9TcO5c18sZV9ep9B\r\n+o1GN5kK7XEglu409LyH9QuIdqwJdsjwKVI=\r\n=Y8Vs\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.8.0-HOKA_1675177814589_0.7283032637285889"},"_hasShrinkwrap":false},"1.8.2-HOKA":{"name":"meshkraft-vto","version":"1.8.2-HOKA","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.8.2-HOKA","dist":{"shasum":"c37283c1828850975263faa39743607a8ce7ff23","integrity":"sha512-CEkDISatjJlEEGKYcBi6s7tl0kItL0IW72A7osT3IB7d/WwgtH3gtdylO1WCS5/UKngpb9NoDGb0a3ZUr2F2Gw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.8.2-HOKA.tgz","fileCount":6,"unpackedSize":273401,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDLVDQOfugtP2470w2IlOZYg/1UfPDhWSC2w0gp+LlfiQIhAOR08uFCaLzC/mj+lvHD1miuiR29zo/kkDpMx838Ykw6"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj2kinACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrNkw//ZSO91+6lagpbGeePG2BlSjUkURsHMR00T2c4U3fV883WoOH8\r\nWOzqmHoiNSnt2KxI8bEMu5r4ZE8baYnYatkVqL0qUCCF8YOt2OueYyuTMla3\r\nXHyHpncNLZtSklULTTY/0soRhcSxrEveB9393aQHZN2HjrgvcbuF+jxitzCw\r\not2XINIQ66VCImpFAAsAts6lHYDPtJRmScV8BouzHHzCVVFoYo5cgZqR8Ilh\r\nnwcT4QNO2baj9jai9qvLksYLtlAEQtsX1Il+xt9MdB9GtGu9jrtmjTgA1efv\r\nD2wQa1Agynla0OnYCjbC5HxWcUs1q3vCkBrNJOwnukjHVuYRA82fSlF+QAKU\r\nZEMOyQHsUpBGyK6e218leALcM2iXYGU7nd8BFnHmEn9aa/PpI0SYvkKMve8u\r\nxFx4dRiQCMXwmXdInU0MXcIdU9/I5tczZNOHETd+GVoZFoChiX68GiKLDc9G\r\nrWHr5VLCV3NRQOpOH6WHKaOtFP7fys6QQm4s/+TAG0tU3zpSQj1k5cUIUach\r\ntPgwbk2HbLtkRDSIwhEyHGGYiThnZAF5xF8IKlkdfMT0nc+PESs7DS9bhi2r\r\nwhGDCBLMMitDqd9yoC/a6qiRQr/D+S8jaP/GTApxi0HGLBgv2qE+4myY2Hva\r\nSPIW9bRSLcxPuTkp/AopN6wsr+FXU7uA6Bo=\r\n=S06/\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.8.2-HOKA_1675249831309_0.14457327736049042"},"_hasShrinkwrap":false},"1.6.4":{"name":"meshkraft-vto","version":"1.6.4","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.6.4","dist":{"shasum":"7cdee5060030af697315644f4a571da6a2f075ee","integrity":"sha512-s9mauCIPLCQp8e6jUoSlabtuTGRi1Tg1TUgtTcSuSNnUYAXg7MPzoXfRcl1gv7LVzLjl9ZDZXbRFn0dAAk9KRw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.6.4.tgz","fileCount":6,"unpackedSize":268492,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGqMyefanfcNiCmSgBkQ7Saoos3Oka8XfdVa4q+WJ37TAiEA8x0T7sbgHY9edepqUfPfVTmOeEFwt2U+LkSQkKs+gIY="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj26FzACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr4XRAApRJSl9MkdmS1jrm6a+Tby9+9RfdN+WI+fiGTNVOYAZyV6s0K\r\n81RMzfRBj+8BmaAVMdT0E9WVk1+DVInVvlaFFLxW+YAUj9rMX02JFdUkoeT/\r\ncaY2yOrrp17LHhsQy1mEk0zk0i0qyr2tADEYCaqOy50KYmEXnM527F+9ktei\r\nYnIR2usygfJ38vx3K8fhPZ3GvL/wzWk3IC3Z0+J5hORJXva3nIwTjcPg95Ea\r\ng5bU9UeRt3WyPaT+i0pZGJSP4DlfzQsXoURkdJF7kZ+Y0IPzq3YNfrNga3bm\r\neiKAjfC2mN6xpcwx8ii/tbIp7DCLicktJe2JZCv/owmjEd6q+o72hMzRKCc2\r\n/pdSi0dNU9SyteOMIMw3++0adZwoQYzQECMKrksPFi7NKj2BKMwUNyLZnLQB\r\nOuSx6GGHBlTeak+rMCvqt53mbGN1wI+dyp9a+B5WlQm01Xiw4d9dvsgLxQ3s\r\nCNYO4uHnLdT0ikB5s4c7vN5EM2GLaUxom88KECSIzPZ0pzc8rUKIgS4H4L1l\r\nfkXziZ8NwnNVGVm9R+kZIfeoZj0RnNfkweX8UjoD+8jf9ihmQbU9PeOdBmow\r\nN9QjlnCVP0oZYCvM1uBJgnV/AFj7uJ4zTsNoFgcUD5G7bV7H1imK+Do8smBE\r\nnswoAHuof8nieq58StiyHhd4nh4riOT/ijs=\r\n=9nrq\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.6.4_1675338099491_0.8209201539992415"},"_hasShrinkwrap":false},"1.8.3-HOKA":{"name":"meshkraft-vto","version":"1.8.3-HOKA","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.8.3-HOKA","dist":{"shasum":"2bed682ad579539ca5aaa29bada2363b56989275","integrity":"sha512-fl++TmWgMHpgum5oxynEm0VmHcCJOo5RvZgB5N1fYj35bGHARQWdz0K/aH3nRFfpth8gVNM12FaBwjdLkhwRvA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.8.3-HOKA.tgz","fileCount":6,"unpackedSize":274388,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBLQ00GYSQeFfUwQOCsmYV51/cYE9SM+22lBWgRzFzKJAiAz1xkkXOb6eqgANkMPU7k/FCMNUiNHUgWlM39T03oNtQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj4S7PACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrE4w//XBs2nYgkW3y8st04+eYLHRLv5kvl3Lc6zj+6B3zS2x8K9lOU\r\nAmllZ2AMalJc+Ivhg3T034pCVQEJrGxbodjMEF3TWtN9HKp7d+N8BZY3MBaq\r\nY7r0RYd5dwq+mW43c9mxUM5k02cfntwChE14LZf744IvlQJy5bJeafOHHJmR\r\nKBGH3eKLW7YI1JxLTPfXAAmb1aA4dT3cQtq1kPNM16n54AqOZMGQpvzkyE8T\r\nBW6yiC0RBuFC6xYhIvUDxazhOtzVEskzDhK4x2rw62RrVHBEHoO0VDTusbu3\r\nBAhWi6a1g/auZHLZ+si/2UM8mHhXhl63XtPgw0sZja1IvvQTGPTlHeIaeH/R\r\nGdst3nslHK9aArkaCU5TVLHRWxsIByQ1bNo+Rq/PHQAkBsw1PRlMaQTLULb7\r\nqbDo5DYZCrFbvVKsmNsBrpB5lG4oQot3TCMYeLZYqYgMkpQ26uu1QNexWvVI\r\nb/82LAExoasHB1UXv4zOFvDh3xy+pjJLOjsGP0Olc3e+4StC9p1ydVaKFEwX\r\nXNDRdZK+zPM8HAihME9JIaUzIIw616s6sQMOk94ZOpNKyIpdj1g+J7oC68O8\r\nom+v+50Sjf6boqkBA7Djlw/m9LJLNOQfYkZ/wjRVh0MFDWCgcj/eYfnaltLH\r\n1mxAc3mcqCnmCJkX5PuAwGmakCw0GtwYcW8=\r\n=PIfW\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.8.3-HOKA_1675701967070_0.9866575887724491"},"_hasShrinkwrap":false},"1.6.5":{"name":"meshkraft-vto","version":"1.6.5","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.6.5","dist":{"shasum":"463382af41deaa32f9be23bbff6f0880f6aae952","integrity":"sha512-J7OYo3oHgni6V8gqlnud7l7Csnh9iicz1Ihkcma4rL9yZ5a2fu2C16qer0gTqGz32HyKq9T+sXXJXtwLNaSisw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.6.5.tgz","fileCount":6,"unpackedSize":268547,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDdxteYChlKCE/JUCgDAvSreMCkyDUMGQiXJKeXFk6I7AiEA+Ftaip9uEwV6RSPU7A0cOepTslliuU7yLgiSBubMWpU="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj51SCACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr73g/+JUFzbWPuBf329scU7vSL/6q8c6o6vmoDQHBlrvGW28clIMQW\r\nETx+bY73fGHx4jwx9QNfRxSLfO+nm1iu12mP4G+pmNjWUsJ32MWiy8zgI6jz\r\n1O0DQA5prF9L89P36q7xXKCUddEJOZ6g1NVrRswgfVJPLmKU7asdBaV0USTJ\r\nJ7IrgaNf/m0C8dLXxCeJkLJ2UigbPJXvvSrtTc/A3FIZTR1T1Vn8Vi2IhV/K\r\ni+8fDpKfgxRY7D60jyCUr7JxAMDyWH4IDXrgVvQk7VY/DiQl76kPostLycqn\r\nvH2pAILn8A4db2+bJTNyZKQwfjCijZyGK/UfnaNs5EXVtJIF3WZTPB5Q2n9q\r\nMhIRyhDemnwUovr/YDtfPnQDjrxJW5YlPvvMeb3GInhcs8JZjtO35JpRjl69\r\nds1EDyzknZB581x8xCpZzpT9wDXPMKvdLvKXYS0Wm3fQMG1NdgxN9K+cXyt8\r\nMH/VzOCzEDDzEWqxuHaBJPdFzoM8PyVM3LsnTlVuW1BAXuZczdbkyBb0X3iI\r\nZv7SU7Dsoo0TQzzamPnw4zAdMoXVs9+OMzE97tcLLYjkwDU4/GiHtl5eriWZ\r\ntylfSQxIF6m+UIhZNOX6OBWDbj/e+hP0FLNVOkROX00Nbji8W4vv84WMPZkz\r\nLuIt4QdVvRqJ0APrlvKEwcy+rzEg1mKUs4E=\r\n=1OMh\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.6.5_1676104834112_0.3635438240417248"},"_hasShrinkwrap":false},"1.8.4-HOKA":{"name":"meshkraft-vto","version":"1.8.4-HOKA","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.8.4-HOKA","dist":{"shasum":"8794dc8074761cf817f09a6d5782834168991674","integrity":"sha512-bhhfcpjudKsonlodxa5v2SlmD2COch8+QiLCO7K50Ggxy7h6y2/xMR7Fde46aplHwH8CcG0khKP0rfgA7OpgYA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.8.4-HOKA.tgz","fileCount":6,"unpackedSize":274499,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFjkcWeE4rfgnrws77M9iM71SfNkXOl9sDV3gmwm6ZUgAiEA9oVqspEIQ0iVO5bt9OS9JyxRlNj4P7zemGmV4dzshGY="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj7RqJACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpZ9A//fLOGTDUjz3yj/Usoaf8I/GjXKOWeQdQBg1EqKeSebC6P+YTh\r\nLfLuoL471XSnoWj1Ltb1D32ySEUUQd5thb0A57jw7m+sB2OW/EPB77+oqcoV\r\nf/9kalFIZAlabgX4cAbR8GEat9tXGpO6EKZqx48x5GgriGqB3AQNonWtk1/M\r\niD9PfirXVDBmuq1qlzDNYqvGt/9Oo8LFQRmQR1xuNib7nOtnzbtcBq+vrk70\r\njHYbHU+kKwWaFvpRZsTMwEZMa8uERkYyf4ydiL3s1T3R3QU9z3CYFjL9K0lx\r\nbkQTx5UCfjdC5IDuBx3sBvH3VJz7DA9OfAhin4gjfjh24sFZvfNe5jA/ZobY\r\nuRKCEFpGa+4E8t27cXphTAbXWdw+ocf9pXvnfWfj+kFb3zzyOrnQfa0g48fN\r\nxxRK1MMZuEs0a+MfQSZNLViyVO3iqjiwT/BC2bzcrqujeAqrRSYcUzI1LYpx\r\nPGsmTxmGRhH4X0BM2oMq9awG7igtr7syA/vQ3iiukqwBKgShhBGnTgBNai7j\r\nKOYDnWz/FhaZOhQ/13FOooo4M6dRsKwqVM2KZrXLVW3K/NPMKm0eqbJHrpiw\r\nR/U4QatrhxJ5lmZZu9doMuxPpXW27X7eFSRKX0aAi0HYS8njVF5FQZ7ocL0i\r\nbQSm+e/VHpFSwqYWCVKid/8Jc3119ODarLg=\r\n=IcTf\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.8.4-HOKA_1676483209173_0.5527806161575404"},"_hasShrinkwrap":false},"1.6.6":{"name":"meshkraft-vto","version":"1.6.6","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.6.6","dist":{"shasum":"205edeb194f3dd331e5ec997e843a567e517652a","integrity":"sha512-pBwBTKBArAV3aLGZIA0AWiLyhDjOU2/vBKmT37/Xioofrlt6rk2+TDtAcnIHHN6YQaizuxYAmpaUlTPpaYHMCg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.6.6.tgz","fileCount":6,"unpackedSize":268555,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFweFJHEVcQlI304U8cFppn3RAUFRbKNQswfMKG+UA4iAiEAxQ9sfZ/dQlAn41oa/GuyXwIMrYVCeOEFDBghE8P/Pto="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj856ZACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrAERAAiVqcRuyZi/i4QkOoDp6DPb+SDoU5TOmX7P5gGGSFEu7NYhJB\r\nsLOZgjTynsoeMlqlMIr//InJIdQaNRkVjkGUazQOU9qLr+7+J5vdKi1P3gx0\r\nKW45yBqNm6abncILbZJpHj9IeJ/kF/B7zxIsfGQJbWJxgnWXiOqkLrcXYdHk\r\nTPUhxHYycVZOs2hWnmHS9CREbQaVT5p8DEkPj2lpSc8L6b7HZcYTnxUWwGAx\r\nDWIaO2tqjPJFmPJqW3l8VYgG0uHv83ji3fm34NWzy2pTyg0SArY9e54SaOpT\r\nSSrS6P0jlchSqAmDK30mhQMmFysQo8aqpJf6fGRgZH4fM12Jg/e3Lt2NQ69c\r\ndEvU8u5IK8I18oPstCvnIVdK0j5A5AietgOqsWvUPXk9//i1QqnB021wOpWk\r\nbo7wuQzGkIVMLafFKVa7dc4Afw2DFh+ms3DMBBTRrfNucdgsyKkbsfqPiE6X\r\nQHe/UR6gfrLqeCtrVsbAHnl/KkzCiMLT9Ppa3i2G6NWrt7iXcJszxteN5dhp\r\ntKn7wAlaQhtuKo39u18qScbuzMxnwjBU5dWATHfKUpa+GCzt6Ttvj2jbDWxK\r\nCgRptD8H5S2a6sY3cUQx9KKkSIh+BLfvZ5DzmLD0kZKe1Dms+oTJnC9o8p2D\r\njpynl3wm6BSropcpp8KNo4MgSVDASEJ7tFk=\r\n=d0Vg\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.6.6_1676910233495_0.9470574010023847"},"_hasShrinkwrap":false},"1.6.8":{"name":"meshkraft-vto","version":"1.6.8","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.6.8","dist":{"shasum":"8816a089f7c0aa79970086f052db0b16d6d4c8c9","integrity":"sha512-WHd+PrkTf4uoMLK410W4iWwYtKG6VzYOWHylIahNv7QGs99ZWdqOWNStWZn8nr/54F7GB3S7kZGTESDsnfXtIg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.6.8.tgz","fileCount":6,"unpackedSize":268553,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDDwFmyXTPsAOt0SrSDpRkWQN8oJWpPmGYPvO9Am5b4TAiA9DzuoOpeYLL1NgFtgc/yNAatxAM5w/1UOf+58Vv3Dog=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj878dACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqBjA/8Czkp1Put5WtlTpYGGm9kcwCcnKfnqkDaS0t356mdVsS6q7g5\r\n4foDSgmKl6RBT8mgseZpOuS8p1sWiVlHUqBuT9DByoDQi6KUG7leMy4xLtys\r\nWIWIn21s+S0BUwAMZSfvaxBK/Dmu9Ekc1V2NGa8Y9Ru5Z0Ji88LGbHHFgFRJ\r\noQbvd7djX4DzmRHQYD+LflHQa72Dr7eheyNGa0zviJKmw9XQw2VrgQ007KWr\r\nh+ihALjOIuTb7R+oHfiNnITOHiHf4r6aSsLjj5m3gG5awBMHgh4bu3XVw5I3\r\nNdlEO6oDHSQ9P28w3xZ3Q04ySk1iI1EiKMkB9wXg26ylN6++jfk8aADxoyEZ\r\nDkW6us6iwGG5+aleVFAxdvD2x7hp3AvH7gI563EBHmfe9JQLGqyVWM7nOZ9l\r\n3ZyzFp+RfHaYG/Me4opeK2o8LteZkgZf/c/73BJdAwabbUwN1UZwhuRJaZF8\r\n7jCHqcYaOL7d/ED8g8VhuNPoxSZ+vtkffQ1gIrZddflLeLOQze2uH7OGAsHV\r\nV2s/2bJKz+jTAqy2VIJilqA77mNvnpYBLXXWQgdgk0GYh425l1knsoHBvPN9\r\ndcFVa+2VMfJYN+64wzLFe1zFEay6X8vKwWUh5E59ZBZE0tZu8vdJXj8HHBnR\r\nSHCp2ALILELt8oXLaaEzK/ULNLB7wNw1p7U=\r\n=lX+O\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.6.8_1676918556828_0.3457464861599835"},"_hasShrinkwrap":false},"1.6.9":{"name":"meshkraft-vto","version":"1.6.9","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.6.9","dist":{"shasum":"3acdb5a8471b754e8822711360b2c3cc0929c0fd","integrity":"sha512-llw3c9xXs/nHOyEmcbqbx/yPyVkwvjre6y2/0yxKkA1QzICgoRXknNgCiE8kBOv1wytigcgk3ty7HNd97mB+Zg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.6.9.tgz","fileCount":6,"unpackedSize":268547,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDqaKxTtqSB/GyGXNUxlv53OUB+kG0j4R3f2T6KGikVhQIgQ/i9PYFod4dERGWDbo/QxJ77weaWxC7A30DMxC+JKQs="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj9Ku/ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr/pg/9HQ5OkNNCOt7X+VaRhobkvHeoM+vnaI+Ljm/8YcNXSf6hZfPj\r\n8U471VysjoCWFd+ksIPASayj8pcChQo5T30ccA/J55499GUVoAsjpvRlursK\r\n8GB8Q054Ux7REp7AEMGkFOtxe3gV/VTSYh2Qg5PznquuHdRXpDwjOs4uAm+i\r\njX08LxfQL7VmbXBuCf0oikJn/QNyKoUg5n41cknqaPckxFCTvf9J79LF9EPv\r\nYumlAvEJJov4Z08oYfew6sNcltbcGgbx/3qrBwVzKCpwf6lEWeQEBKAGx5zD\r\nFJMB082JJLrzgnAKzCaSJiasQk0RWywwc1a1qih73Hxf6RCXwLqFp9yOFtQ4\r\nY89K6vMyasFK3naIc8HbbgU2fuPCcXD12XZmRQ9Obdl25ToTA3bzBH+s2Ehn\r\nm3xT3eMWCF/dz07IRdQWKuW1Pt6zcYDp5UkIdu2orN+8D/JsHZ7l6NaQzgKt\r\nchLZMQxMnG74To5COik67e0hqek6R9PjxbkThncUBBlbuHZJu8BwWrnYEOme\r\n3bSx0IORdoEst+dmzVdvlhGW467JMw6MqirHCBkY/0JUiNY+120NxUinryu0\r\nTe8ap/s7C2qM5pHZJ9soMG9pqAb+/WPeOYhPYOGPfooraX2vSixEGyNYB8Nf\r\nAHjphXwHiYN061ecpx2jX07OO0IV0ZJ21a4=\r\n=Xdhp\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.6.9_1676979135061_0.7603986817252757"},"_hasShrinkwrap":false},"1.6.10":{"name":"meshkraft-vto","version":"1.6.10","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.6.10","dist":{"shasum":"bebb927db73174be4e750a02e97661aa7cceed23","integrity":"sha512-JjIEnRVYp/804WiHIfvor75hlgLnVy8BQMk9fCgmNT/FJK51BKlDCc3HvtpCjoKYy/SrTjeQzK0DfydYjQyEPQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.6.10.tgz","fileCount":6,"unpackedSize":268525,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDhDfw9lYDosOdD4CJfIyjzKN8P+3jt86NG9MAJfvnXvAIgSGmYInK6aQnwRlJl4K9IkrxmJF4UMtiru/VejFwuZcQ="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj9LPEACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpzjQ/+J9ow+zhqYFzu0lbLxxs5aC/1vJfaGnFeaOlJ+QXFbJMKp0aM\r\nb43gx/IOz3N8dX90ciMGmrfG38Pw9vQAH9RC/ArgZQ7zKgkq+B8zNgfrtI2f\r\nFilbDCt0dRfs/JXTW4XcGrQ2G4+E8c47AM1biSpdyhr0OjvPV26MBUYsfcc7\r\nJ9SLW280lCqk36kR6wa5EPCNB25qx3wasa1CxJiUUAqPNCB3VXVBykGbPPP0\r\nm+6bNQsds8Qzrxyde+3odyy36/d7P2COmVOsJ0fy0/+COhIRUitdolzQZNn/\r\nKg5MTENpkzug9t9p3toWUNp9BNMr1nhIECI9lspnILxpDtLvhqcRIbM6SgRj\r\nDmAxuMGa25QFr0Ir2RlU52+fqTkgmR0ZlkeZJxz1BgkR5a4hulQTS9igOCV3\r\nmB9iA5NMBtsA0z2IIGFKad7CaZeivtTOS2HLuxfvKpferQZWzsJUtdMsZfHK\r\nUhXzHlWh7823HuM4Wf/d5zk4PnZcwA18eByZKzFtb+Iw85rD2LaXwi5nYQVI\r\nDA7xOdDb+EmAhquL4tEWlSUIlgnpvC4KJKW+zyhvBfTgjwgf1vQ9MMh65USx\r\nY3ELd5o2j7aPPkh5H6WvGyt+G7E+Pg/SNTA9sRGutvs8vt+OQ5Nvoz/aorKX\r\ncBcoK+ZGZF0YKanl8PbGzOPlQNo7Nl95yu0=\r\n=29hP\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.6.10_1676981187942_0.220950005129813"},"_hasShrinkwrap":false},"1.6.11":{"name":"meshkraft-vto","version":"1.6.11","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.6.11","dist":{"shasum":"707b74af459604ffbbc4a102d9a85ca80bc22de1","integrity":"sha512-CeszM91OiSdBOdGyjYqWWObLpVPDHjz9uR3GTQIXYhwjSNPka+nkexdluZkcWSJhkWSTyiZCSWCFYOSp1FieHA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.6.11.tgz","fileCount":6,"unpackedSize":239801,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDVyTYtCXYDTf08tnmIVUHGg6nsAi7+Rb8Sn3/WS6fQXQIgC97FVyUk3+F4JoQKLYmT2fDdMzul795Hh9gDtA0EuGU="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj9zytACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq9Ig//agFyFF8gt90nRZzNU/3YkgPdXZGSUMDF57jFMQaYQgS3fFpY\r\nDFmsSEnHS22DRmkawve3roBBXzhebpsxco3WWbIil1/QmOKyYdOuqupfouVO\r\nM8XXAcr5HM5OLGA+z1b2/lwzoXA97XlZDa6U9C3TTKmJJ+4p42xQadxdtzP2\r\ne1ompo/Ol2EP/RDjIj8xppAr0J8oxt3Mas54S6xn2N99cs6XnAvr9sZXsPYQ\r\nb3m7pFncF0/GzKnt3s5xwWf78th7g2S/6NTUkZw3rp1EX9iGyP+0gPd0SNXz\r\nfDFlBDyNV8tE5tausQ8QK+bYl7HDoRI6jmpzRB6zABOWkPKnLMdF8EFJRmj1\r\nMXibfsqT6j3yVzc3l0+iy0toNWczH4uxtQAfj2fSl9fYudADuN0DjibGM5lN\r\ni4I+9aw0iZsnZZxUSdD4jojNXl7S4KGEsbBmJGgyS7CzpLaeioaF/7KGWVHA\r\n2NKki7N+DN1ARu+wNlLSoIQ82PlOtguL9X2+h0b+1eQLtRKxD87WTkKtYtrj\r\nteMNAgeotzK2D9BWgBaCW6uri1TdNOkFbpxPAT49Ylsaa8Y5nD5CT9/zWdk4\r\n02YUDk5vutveMYH6lQdzTASs3aBHCWSFiyyLbhyDw+YzoTnCHb5zWk/gnxWS\r\nncSD+vYzN7hDr0sIAqWaHX1jquArCJld4so=\r\n=Vb/f\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.6.11_1677147309135_0.7442475561276829"},"_hasShrinkwrap":false},"1.6.12":{"name":"meshkraft-vto","version":"1.6.12","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.6.12","dist":{"shasum":"dc1db21bd13bb72ad54df18eaeb73b77ad6530d6","integrity":"sha512-SbA0t0GJzWJW7NZgksC0MW+MYLYRRgvwy0DZO1dbexLhSOhIBSBE2f32u0hEffxePti6hx7Kyscnn/+iSERJZg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.6.12.tgz","fileCount":6,"unpackedSize":239764,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDeot83lREF3ztJzdgUBrHAG0xNC/EDbcylxPrEiLoBjgIgWGT0Kax3UMYwVwU7iAKr1Dsygsr8WiA4AUnA2TY1YN8="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj9z9LACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqnAQ/8DKxuomK2tAFnskKuISxswKteLRClNfzajuQSXtvVvmNfNx78\r\ncPfuHlGG7UkraQ8K+shzJz1j6ICa79Ymjx83oW8CG9DxnAJC5pnfWZQ+9wT7\r\nDIBrKZteYIUQOKwCkhXAROvTvd/qjSZd8W6i7fvgShEzo+qMj99P4Ece1PzC\r\n5+/mRvWhATkPkkaiMDcQaXBhmVWxM/0J0tuZeTMxoqYb6300knbJN/d/Q1ZH\r\nuoFOujv6zRqibwEY7SaNHukhKlTeRvgiOQG/wPzBnO9V/QkMCbRk1FiDmACY\r\nd2J7QPsGfud4IOKI4N1+E9tMb7uXU182k/Pe73Urpo6m7jHFQUjBYiCQqKUM\r\nnV2a6KBpOoOrQHttEmpKFKt22ntFoUAIBHDgRudYERHLuCbvS7eWxg70Snwe\r\n/WFoqlooMVJAI2YzOwU5XVxbZzlJdWERSLdfiS55az+VBWVIjSxqX7Kh13kV\r\n0jgWXh0krqqVF2oniPw4v1142FHRlG8ACHzv22G6+2A8n6qnGmE2zmEuertx\r\nbve81vMtmBOHCAvHp8f8dTd3XMTnrzG8MVgqGjQ9PHbjDhn+dDJRB0kwqBLF\r\nQ+DeuheH4Y0DzY9mWQB392VhaXfXnY5ay4JeX7qekWBrcLtGzg8/6n8HphvT\r\nmO1G+yxzJhey3H0xLT9KI2xQsJzu+6pDn0o=\r\n=iv51\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.6.12_1677147979140_0.4858942182630812"},"_hasShrinkwrap":false},"1.8.6-HOKA":{"name":"meshkraft-vto","version":"1.8.6-HOKA","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.8.6-HOKA","dist":{"shasum":"4ca29d6249fb00a94219ee5c07adc43c4ec24d92","integrity":"sha512-Zd8Y2FqBQnbp+FYxxIfET09VIu0UlA60CCIn66FF/CZFhH7hIsZlzbGy5MWeoR3IsbcVRyUcOqZZGyE85MeuZw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.8.6-HOKA.tgz","fileCount":6,"unpackedSize":245722,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG+k5QdL22mKKpBrq0W6g+dOTXkdXHFAIoQvY36VSbm/AiAodFIfNY6xSHP3H1t/7+qutT6itjUMzoVAc9P5vS14sw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj9423ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrqpw/+NUi3stXuq9MqQYsiSY782SkZm/ixp6lUOyqiTFdDoPcuMlJp\r\nHYlrtqdurOWkkxqhha7zv0clR6uJAGMSJnORBIBW+1DDcuvVSycY7C5g8IEI\r\n0OmS0pusLhI3HKMYJc3Lz/kAMHo1Lm8JnBB7u6+oIEzaKFcQ9nKGFaq7EfjQ\r\ngeYb7LaeZ6zQdvS/lc329kZ4NWER4lQZO/S4zG4/vgcgoykm/rI1fIw3TBtN\r\nzsGo3AWNU/Zu3YUcSWuAG3L/xoq57IroJV9Ggc1DUQ/pxC74BnG44cKZfof5\r\nVV+EsWiGg9QtBVANqCjrX8HXM3YGMAVRp5uQFKNG/W0RvkT0mO/KBRvirIbV\r\nx2h3ll+8fVvUMLYZGn9tAEJimqp3vAzdmhKE6ztBvyMyBZly+dXTpvc1Kedy\r\ndl3rzQZKYP5bLOUmN5BHmoeABFgcs9p0n0rkaBwrmRhmSrlhoVdBArgAQz74\r\neAIr502JMNZB9Tloxd/QWgpJYaFGNSUmeFPbnpzb4oo8TrpFEQTg4CcHe51s\r\nksDD4DApMQns/MA8kaIRAdfECJeIB8YO48jOQaqCgyKYVcZ7wstpKre7lmpv\r\nzMAfPzFfhyYbzGuRUKFHGV9KI//NZ+gGEmm3cnTJu4BUsxgfTvBmwrjgbZt4\r\nQN7cOeransGW9OS/yN3qman/uE0AfvPZUZM=\r\n=cu2m\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.8.6-HOKA_1677168055654_0.7504177310762825"},"_hasShrinkwrap":false},"1.7.1":{"name":"meshkraft-vto","version":"1.7.1","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.7.1","dist":{"shasum":"c7535d64ecbf90b718226ea0447ab911349a92b8","integrity":"sha512-w/Muof5xqL92u7AWC+6Swkk4mhyHJBIXZO894ysUtaS6CZWwJOolHq3przwwXZsIw08gCnhFXeR8yx2gQKRMxw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.7.1.tgz","fileCount":6,"unpackedSize":239763,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCiChDS4c9u3wRJMTOafx8Dc1Xw58bmQktgPI5J6YN0bQIhAPeNo2e4dSr2SYCZtRi3TbRcKJDnMthgtSNcaCMrQT+k"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj+Hs0ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpj5A//QKcHEb8ww3CNifmRGO++mWWtEqSlJhQ9T4RVT5La8U9hTPte\r\nOAp/snf74eAVnS+A5A6PTICVwXuyQGyc8Uo8E8u6eCuGgjDf306RLQM1uBzI\r\nDuqr2FgmzeGYPAOAzw/bo5hE9aT5IwCw1Xhu5B2pkfXPnXzN3o4rREHxdo74\r\nXfMQvka6ePJvJ4LMEf3WpWtjUyUQDFxUhBVTVIwWN3lfvQrhI+5h/RM9uCLv\r\nxndwDpjOVaBXpQjj9zKxRCf41SBxfljIy8/bzDJRnnvx2QMxCtQoaRmrWrrn\r\nh56NxQpc7PrDbH2ygb8MdvO7EU6+KeMAbv0vlJBoktVT0zR228FijH84qCU5\r\n0r4qWn3KsBc0sbWTZkb6De0akjtzmedAQNsBTeqF+AqEk2cuFVvZCOOKkaZX\r\nzHJlzXT9pmZrd37JiQ2GN5qtxstF1FgmFHxymAjt5n1BGrbR2nkIoH6Rhmfg\r\nYn7vczsZI4w+yi38eYEDLE4Q3/838d5g7UP9OvE+ut2DtsxXzN8nUv//nter\r\nsM8repVww1lqC18c3yRANsh5HrRqWe3GCRyv7n+6lb05gvqYh02OkqOmS4kx\r\nlLGW0MrPDhSZoPwfhpGOlfCFiZxtNenQChe1DWBcb183qKtuDYFd2We15BAm\r\nmpDs3LOGod6zczqW5asA7IMrnYe2CRpXhnY=\r\n=q65C\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.7.1_1677228851835_0.8912992025854063"},"_hasShrinkwrap":false},"1.8.7-HOKA":{"name":"meshkraft-vto","version":"1.8.7-HOKA","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.8.7-HOKA","dist":{"shasum":"bc84da64a4a7bdf9cb36918ad3a9e3b3623093c9","integrity":"sha512-T0FAOfYnbIVnODc8Ea6FBRO5VH2iTNHiy7SZCJgihuUxbMgckA/h1B+98G3lUcO+BItjA9oQCTnJTk/TtUmlkg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.8.7-HOKA.tgz","fileCount":6,"unpackedSize":247766,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDCllj4RiWjiPrCzyMQehoQHPDLEMK8lIt5fylxvq3ZIQIhAP5J9W5BpAFVvubspJQI+oRqYy+ZRYsXOJLNBbnntgFg"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj/MIaACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo9kA//fAwhQGFATwBpTEWyF2ad2YQrbyYrX5wezM6L4OJSFBd9cUNc\r\ngRso9Eu4P5BiFM6FUmMOQOhFfIoscL8STyN7MB6p88brN2/bhbP77LjGfozq\r\nS8RujmDgVWdm/koRhTwJuV1yGcSGk4HdJNFgoO/RZXDJOUuGrvnRZZNYXiIi\r\noSgPJrals8V3WhuLG2eb9jntwNTH6w5yZaa5MM6tVeBwAH6bF7Xod6Bx8VPF\r\nE9gts8qOiPwZg3VPHc8HlPsfJVr8DNnoWavkxdbfYagNABXqC+Rvc0kWhYgD\r\ntSQDcQT/aQ9OhA26JUQhSJmOzZep8504Ff4reCkKF3jl4woO9cR3jeWqSnqk\r\nKTnEvjFY2pnxieSUp3SVYM67m6UsTM0sWpazoDNhtJ6eBOIn1Fn+rcqAiVK3\r\nWs/avofVLGIG3d/ofEQ/9ildYDT3K1H2rzUs51fy6bjf+22RSU1bj/uPYWpk\r\nHLfzrXX4TEGP0CVtb+ZKlrDWlRYGol9PuhVt8QnTaq1v860qSJCPZop/iLVR\r\nGCKB1F9tTqKJlmc7G0Obw8roA1MHV/48///9FxB/C3jF5S9Avk46HrbZJ2DZ\r\nVgTW4CX7wtNlk17Mmj3WUI+g0Zl9cj+NqLBEZTJceachBSoHTkY/XbCxzTz5\r\nSGt+PfLDK1DlyLWWg3flcheO8uuF2W1rWtM=\r\n=oru7\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.8.7-HOKA_1677509146316_0.5645111125414051"},"_hasShrinkwrap":false},"1.8.0":{"name":"meshkraft-vto","version":"1.8.0","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.8.0","dist":{"shasum":"ad7ed2e10cf1f8948414a797d8f7df3d29052921","integrity":"sha512-TfX5GUZgSgLq6Ch3WOWDsQmZhxE0Q3E75Nn6gNVqBjHjVw0HxJviGCIwhGr98Tdvd38Hv2Xqycz5XEmqlJPlEA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.8.0.tgz","fileCount":6,"unpackedSize":241077,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCJ7Xkp6cUhjtTL9SnwzvqrYCkPWcK4vPQyJiS7K5o7SgIgBneGPVtZau2yX5xzIfLxXQZ/7uBfXctQLfvqEHRw0UQ="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj/bDbACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqJig//XQJ5s3jM6maZ6CG1WguQyzkdk5G+rSsA4VA0/vw+siN3LszH\r\nKq7EuB/Lt/gWRKdl5QGu7T+jTiwTstTBzAJI/mEtb6Rds6hNUrTBzvagpsaS\r\nf9WsE2HtY1wlX1j4n9U6y0tMcJCymStOc46cZnrk+VS/F4GyuD5YofQxvejz\r\n1pulpj2Q58ELgkRpOpABZmpt3wSbuvuiOT18WLWmIMAzdbmjs+gri0xSYB/W\r\nQNEF6TfVq2+OQLkSbAfAYqkkyNItnilJkjHx+jucAuXCnZS2nNkdXnwQOPXD\r\n0YwbCR0FgrqophHTVlIAgcJu7SW7wX3pktFsQIl0H82eOLfuCXZ6A16GAKSn\r\n7bZvlCnQaPBc26AnDczrN+zpYzHXK8ebMyDsLPqxM/Ml1ZWxetEsRdfUpVt1\r\nKHt9T6Syj795UZ+cYVl44f3kQqH8r73Edr3p6hhfRLlCbC1AbwWbhpkGy5mc\r\ngh+yct2A8cAvwnOylGzQm0MYFcY3W1Afs/OxFm7SGNSigQBtNIyypmjRrxQ5\r\njQOsZqjmeEfeLSxi7Fo5wyZWQ0qKIOZs60P6vtqlxcbohwkQxIlCN5XhrCDT\r\nUn3gqEutvkmsP+DZU04qRXUm+3M+d3rr/BJwXtdQpBt41bCGBlnlmpBpbKVU\r\n5mDMPfQchZaxDHKV/MEa3+YuhwumomMR2Ng=\r\n=xIpT\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.8.0_1677570266943_0.8493648160405951"},"_hasShrinkwrap":false},"1.8.8-HOKA":{"name":"meshkraft-vto","version":"1.8.8-HOKA","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.8.8-HOKA","dist":{"shasum":"705ba8964b900bd2ceddbb4fe4cce14d9dc168a6","integrity":"sha512-ka0HC6w0BSlrhzg1XbYNmJ0i5KzmmzzRFpjFK3heJx9yFZ7WDF4Sa8HMGjOnmhHRZPG1sepyWf0mypOk3dPgxg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.8.8-HOKA.tgz","fileCount":6,"unpackedSize":247661,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFIqzQwX6qEvyl7L8ffUZvAErnQ8Dei65I6gf68QVSB4AiAIYiH+9BzOlA12PNdojmCha4PF2NNgiQHWY/GE6KUEXA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkBeSVACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpVYg//VLb7gcIf/RtzO9Zd2cduJ0QKW2Aund0NyV3Z3XoKI9zxe4/5\r\nmt204qIq9o2fVLO1Nlmk4vT8iqZwoflsAACgwaZ/EJ/n+jscQtDCYzVyxOaO\r\nsz4db1j+JjTrXqjU1a7+MpbRWECvVZ2mTKx2EkjnV75MJPZ+Ds6hhtzKRex2\r\nKgzJhTuMVBUZLHR7a7yZX4kQdQZHRSJNefvktKyAdjod5A6/5BxVBMC49Ffe\r\n4nKvTIduA63BbF5cBn4I/m9YBtbGDlKpHWQ7n2STVFt06nfuV4ccgsd8XXB/\r\nTfKErrh9nFooQUGGy7kRbUAEyWHkjg9fTCR0mnFAx8rWqQRzr6xtfRisdXc1\r\nqG36QqjGmV4KgOaTUKPJFHKZ7oMg7vcFhzZPtUqb1biB2kD21sEvrB0IrrFh\r\n46lh91KvrNEgd+AxGM9cfrrntNGW4t/Oy4skVJ/PtptOZmJHjTsZ+iwrgnV5\r\nBwzDk0+baUmnlFQXZTXpa8Q8LAki7T/K69v5h4mwjFuMLMkCTQJbv4Gk67+p\r\nMfGnngTnCXu+/+XquMAB/DEqjv+Lh1qve2OIKxs8/j8XzxcvGhD12vQDXEAs\r\nSIhJztFFGSshQdW8LY8lcmvWk5Hh9SCXJ2+AVmPBPz97MtNH0V5OcQ543ouc\r\nS6oBY3/cXH/VNljttjnxQ9ytkEfp29rdTS8=\r\n=csbI\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.8.8-HOKA_1678107796862_0.0034245552675837843"},"_hasShrinkwrap":false},"1.8.9-HOKA":{"name":"meshkraft-vto","version":"1.8.9-HOKA","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.8.9-HOKA","dist":{"shasum":"0fdad8d02c2fb7be622d886ec62a89556d3fd0f3","integrity":"sha512-hAD50yMwiNq3jte/FUfsl6TuJXGJj9cYIQvodiqqAhcm/IveylLAxnQiCteV6WjG/Nag/R/ejliLyLoaULtPFg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.8.9-HOKA.tgz","fileCount":6,"unpackedSize":247668,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEMkY14ZuwJEZ+YX834I3MnASvO0aBYt8Vg+zsQXZ/QGAiEAwnmF4sT2mgVWvefzZsctvkWsBo9/23HakDkOgVJOKMc="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkB2wUACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpFNxAAgv3tDh3riExcdWatR8+XZyQj0eIaJyT0CwodyNXeuXcQ6s6j\r\n2ZQGD5za+cm/F3iy1oc9X44Xiej72EjDRfavv6QfwAn8eceiP+nDUYNGb+XT\r\nM2/UDnMQLnr+O4/TVJoz4ggkew4rbM4Sm9tNMuUhRrbEJeS8xBzIscbB4RXQ\r\nvHzumv1MZne4b3eXv5bjIa6nut2O6Ph65LDGoX8PCamKELxOvYbneiCeGfVh\r\nkPFmDmQC9Y0yc+oNriIiXvexHS3CyOhtV63pwXd5IisBvn1Wi0GOW8F4Q/f3\r\n3SN+RSdmK9lscD9216WSLQOKPKvxwNNfOFd91LyqlHANjb5WHT8ekCi/1Hmz\r\nINMgBGbFwa2uDXcZE9GRGyyspYopdc7uP1a8BgJCruZI9UMTLM/NT2U/7YrY\r\na2DVQ5EoVrhReJRXkXp8xVOl9i/diUx71VivfQFk++idKrsHl00RZbtAHM5V\r\ngH4abf80BDRf2qAx0NLuiJVx9zgzNQha5OTI4syXGEkW85mECKBNMY3lUdh2\r\nrQ8ody0o6eHReYOPGTkKsMXQB+4t8Ea3RvhOyDwhEMA58xKKqVpJ3c79R8v9\r\n/WxkQI3347CQq7R5W6L8GfJXRqnCbWgCKiMZnxllc4y7Sq/DuTW2VDdavV/o\r\nCr9i+jx8VZXHgK463W03MtmMT0s1ndBK0tQ=\r\n=Q87D\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.8.9-HOKA_1678208020214_0.5262834309483821"},"_hasShrinkwrap":false},"1.8.10-HOKA":{"name":"meshkraft-vto","version":"1.8.10-HOKA","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.8.10-HOKA","dist":{"shasum":"57f33ed1d16119131424f1e1183c814367311baa","integrity":"sha512-6uKFusgeJ1do7l4GmIqr7r7gG8PiFhWjTv2c83WTTAKfGcz26qNw53ZNIcpHX9XB7n9eMEK0VK7e1zGdUnuMew==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.8.10-HOKA.tgz","fileCount":6,"unpackedSize":247701,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCk43Qjvhl2itLKhbfYLP1i4IfZwW23HTc2TuwDyfvunQIhAIMJ1epZGiFXugi75ALZqcP8Y0HS4bJtdkHS3ylaznu+"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkB3XIACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo9aw//TzG02fyUhh4IgjKy9ep+6I+0Yp8htXK2BSmS7lBAKN8u0DUz\r\nIejKK+1cwjCQiPLOwdclbVpDdVZxXo9ZnGPyb+E0GLn2Ce2ZB6xkHbdI8oqT\r\nmGj+X2ibOER0t0SSCLgua17CMG9rWmrZU6Aj0oOPgUVkI1dsQvkG2XrW6lcP\r\nJ69d7IhchhN9hZsQkkwc1ivR3JPpz9QlYlHwDa8cpeXsdA00QVqTjBpXdY14\r\nIiGWdJN2IEjCog8A9pWTPt1WrBFT7Xs7I6SKf96zBvvP3CdVuu7HUnUJOOk3\r\ntnduqXc8hQBoPvLpBc1tsPG4bSb4duV6DK/TSAvP68OpyVvc8Vah47HrDztw\r\nx336quB4QJLFkxNKzbzFGKBunf5eq+bOxH+mrFhLHIrClysk6ftxiMa3ZDRf\r\nHC3R29jn9k/ibnuL/fegwFxkP90wfCt+KrwM/gcvkwu6MxRIriYZ/YXjRP9I\r\n4cDyCtclxP7tXoALe9itoMyaICE3Z/Kxcje2TVcjxXQI0gzfWNtJyws4ElE/\r\n8ZhbDUMLIieTYol1o4ttG6EEqt/dzCPdqugG1MOxBcncuP8t9iukW+Xka3TK\r\n8lAChzLcw/jOd9xFQ89nKzkM6k/UrBWHExEjhpMKbIWExW3z3hEUAZ4R+j0X\r\nhge21yCKbBiCFOai+5oWul55MuKoJN7keck=\r\n=k2g8\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.8.10-HOKA_1678210504729_0.7045954688835969"},"_hasShrinkwrap":false},"1.8.11-HOKA":{"name":"meshkraft-vto","version":"1.8.11-HOKA","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.8.11-HOKA","dist":{"shasum":"be7ea556d0c8c0bd41a40932affbddf958840dd5","integrity":"sha512-ZJhHXONfTHAlc6H13j9nfESrDckol24+nlEcfDnXb6onmXEL0tmEqAPEqoG4TIJpNYhWNNzmmhmL8yjzqk5q/w==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.8.11-HOKA.tgz","fileCount":6,"unpackedSize":247707,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCqSnspvdYM+puioMUc4TiIee0LznOIgQmhT6pAiH55ogIhAMdFYQZXCsZbwh2IMAyyNCvmZvRwHVvFWAcMHkmI2I85"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkB6gXACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoXpg/+LP39bgjZLDQ/7xqiJDpTif11Eo3jHPzRx4YVniqdi8E1b/b0\r\nlLpSPpmnOfZ2R1xGr/XcR0eXOtprahHAvEpn1Ofqkb6cMlOcpAr7fNLoY6V9\r\nKnHkdYouuSzqUakMGMLqh6k3NdyID4qHjZ2iRBvM18jGakuK5K0ZNmDHXn+h\r\nKI5//zq9P63WbQQrrsdmTg2+YwxG/WfLukqaC77RDtTTf2PvTTLo1lvDkHEt\r\nRtHr56HoY5AsI+JSgCCtpCOt1Nucf6tsOUsUlrXnHN51kyk8c6pJN2w/BYZ6\r\nl83qNxQ6dMUx9Da/Pns1wbeQVUoUXllGeNkdCfSXlP3kwcmAT/MUoYtAie6x\r\nRxYQk8pCCiilXMgts4WLoyZgEWQNZhflSxCeM9rtaUbGGLFXGxEoKtQ0jGs7\r\nEt5yRWDJRiOCd/B/FiMj0w6YXKJ97lyfTepX2B9mnx7+eYN7Pka9jdR8bjGD\r\nseErTMkLyw++FcIBeOQ800VYCRZOOaEIP3dwNjfV3ktNroex81Nvsy0/QgYw\r\nL4L+ADTJ85gTe4Rr09L1+KwA/mfI0N6//TYKmcVYaDeCeYq3gdtpjmQGwQGZ\r\nraEYyMNf9lxMKRGLLsp4qkk9wfwbVvAOdVnYqNlDVC0WLslD2M/zCTgppQlT\r\nJJwztZhTlAW2aXWB9/t+mQirT50YSMv0+fU=\r\n=jw3S\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.8.11-HOKA_1678223383816_0.7421063726238502"},"_hasShrinkwrap":false},"1.8.1":{"name":"meshkraft-vto","version":"1.8.1","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.8.1","dist":{"shasum":"81ab7ba2d96fc15688dbe105abaad3ec59ea9d69","integrity":"sha512-k9qmkEH4DJDMF+b9p3v7uX0yMzp2lGXJCIpl2s2ZnrQaPuyg/lxZCzjuSN0IMCH/nHlqYl5ubumcpkzEQdJu0g==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.8.1.tgz","fileCount":6,"unpackedSize":241131,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDRyGJ8sUj65HzTGMhSA5Ucydpdt5+bIv2JsLitytdzhAiAPJg7KE3CnaF0hDod4wjcI0sVOLDEC5Nu4YFGfqV/BGA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkCeGoACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoLBQ//fPhiZupRSY7CfpOkt7ar4yxGfPUEZrfRyhEixWyoof74Nhza\r\n2eZnBRZSAVIGnK8Iat+I07wcugRGuyQp3uPqvM3DxXD2QoyRF6En1DiLSoQC\r\nkOch8s5KmhHwUmddg+DpRdDeSFVrepzUSUVCrrFiXo6en+WpobM3nkEB7dhZ\r\nNep7aj/g7Tbej1UufLPVNl/Yw7iYEenmzraqwRdyfnlr95C9whT++RIRFX/H\r\nLUTH0LeL1orasZOKg8bpBk/tyS03s1MLGOyfLvHE8GEmbQ9cMX5Y+UIDaqFM\r\nnPvDz9QjT/J2fXYCKFpNacKheUlmUlkwhn8D60jpkdOtPS1SNwE4Tw62z9OW\r\n7QXWlskygbAwGk0l50t2Nn9X2I3NIL+yBZipSBDjfT7u9/uH/bMHEbEJAtSr\r\nAESVzVt145FSm5d2mN7qTarD8aFdPsX9Ta0zDLGY+etk3nPPTVHNC8Alsu0t\r\nApz0safMPdtb4va7F0kjrQvvmjMAkvR3GyPLr310Lx7hhD2dgA6esdJrO8k+\r\nDRGDOMmhBjuTuNcZ3ZZ3Nb+2jSOmrteP8MDN2kAucgx9sqG10r3LbU0E6RKM\r\ntmJUXe3Q8he+IVzdCyL1TGka7XdcqRB+81dNYq16gWwsXhlY48BmDItK/c/P\r\nxk2vBmyTyvwgAz4xpb+qk5+UeLEMLGich5Q=\r\n=l5KR\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.8.1_1678369192222_0.44272732539205206"},"_hasShrinkwrap":false},"1.8.12-HOKA":{"name":"meshkraft-vto","version":"1.8.12-HOKA","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.8.12-HOKA","dist":{"shasum":"c1862d9d38daefa4d63849bd6b605d031897c966","integrity":"sha512-uKckrcqlrZKTjh1W4i0anqhiM3VqqL5ugI6ldZKs3gY4GEvJ9GZwJ/1SyefVOY5mFeoA6/5t7fXoyUUF57/Bpg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.8.12-HOKA.tgz","fileCount":6,"unpackedSize":247453,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCopvb8UuB5kuszHbUVzXyAcMOkjn/2sP3YZwWATjT24AIhAKyZQgxlqlK8FGMXaskIQ11dI661voZo9/DH3NuJJjP8"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkExUfACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmodvA/+Md6ykE65KrsjR5WFag0mVj0jtsPpkR2whkotbL6ax4Xb/+Y8\r\nprd6RHu6eddwpCAWUKPDXxkHrTuUIuddl/yceJ6I6+h82KtMczdE1xvxyf5j\r\nQKZSUACBuhYNftmY04/ZP9BA1zLneEkXvff010jAwOl6LwufNE5NEZyzOFN2\r\nWCrQxgX8C7XlcuOuEvFe5KUsn1tfoyaHxICKiXihQfELrlht6HgHcXnpD9gz\r\n+XEg35F8JrAxPk/j6eoQqfOf6Evw/Ie/8BGhm3keepivCeg0OvwLHYS82bpo\r\nlqsBV7knKpq9GcF6HCLCqzAOBluIVmdgxZqr4F0JD4QKBq9iYKhwT2m1NgWa\r\nOTwKuJTyidRu3l/4WQqEqioWGj/DYil8qbDWr/CYh/BmynBtQIh3hWDN+pfK\r\nVxD3V7HwRbdPTqB2b8UJqv7qS7RVJ8+/7xWADCrsvGwcpR7DRjJasplbgY1v\r\niSNWge8yxoU6WCQDbefFyS5eFc5BU6QWO3HXmE5mRKGJoHuwrBt8o9SWVAf7\r\nk4n3Pk3anPgVm4emCsm/+azSw5D7oEFO94cXr3kaHn2Ne3UcLufvBQ90XIhm\r\nxYRzjs0s/AlWB/eU3mXSaAO/2Cmid3IUIYZRhm6ZOHBbTMDv2xuUu7FKcQfc\r\nIzosg/8z1FAdPrUTdTWJG9H4k7G3ByTTx30=\r\n=CtS2\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.8.12-HOKA_1678972191003_0.37025923159632423"},"_hasShrinkwrap":false},"1.8.13-HOKA":{"name":"meshkraft-vto","version":"1.8.13-HOKA","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.8.13-HOKA","dist":{"shasum":"9f4e2148024a8ce0af75379f853bf5fedbc7718c","integrity":"sha512-8aAGquBYyrpPxSWP5vYQHn0TnEpWUoQsK94W3DzIsEzThTShhbP2eT5J6Adm3q4u3Ld11E1Ku1KUbyfRNFzq9A==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.8.13-HOKA.tgz","fileCount":6,"unpackedSize":248257,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCjVJQMbLxSPmJal4pfUV83KZfJFICYiaw5BIpYypFZEgIhANtJHtrpNnLUC+NcnqsbOle75jcn3kiCheyUdGvZYm4k"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkGuYcACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrauQ//WBlEHbisxlaMDG8cukGdLXfyJJ0A7CwyfANLAjgGX7Q69SJY\r\n7pmL/0h4yINnisz8oub5dKF7yMTYifE2mKrYIASzR+X86Sx6HAR4vSn8ZonX\r\nqGo0CDxmEpu8qvnoAQiVLVMK4vibn+uGXMtuQwOLHt+bP2UGsPgq846TWlzV\r\nkVM0tvJWm6mdhTjKSWq8cRGpvS3r1kNKeqkV74r1ZCQ//4L7Fy8ptbMpxraj\r\niyKf+jbkhqBzqnvJIGdltgwaIfLoy4IJg5t+FJ2UtIbyGGp76ujT5CdAiZDw\r\nz4YFb5E1mn/IOlK1QMe+auvQm2Jw/UGtE45cLevy8Y1QR4nDeCj+OsGetw6f\r\nHNuGgBQygsWQGW7MZKxumNjgYfPnJYxCC0Z0aDU39wAyJP1Rr+19AGkKIcLD\r\nbioKKDKmfPm+zuu2AgPZ7y4KA8QjwCB7Rk07MEPgyUpXYSHD4hhCmNVWqrqw\r\nyIu20k3LuIQXQFxjxrD/VGTMrWRXVtzddSe3rSZJSO5Xbt5WRg2RvtRK7PEx\r\nbR7LkPkJYycyeYZ2T1jdPt9f7KuVcJ7IWr+kjxZdKtqRqcLaYF4yw8Wg2Ix/\r\nG19Rr4vtoRYdJBYBEK73tW3T+/nzpL3PxwJR3bO1izEw70KEDLGNPGgE+iA+\r\nkYzgn6E/WJs4+cf21NGz+LICOF4KNHsiPIQ=\r\n=ppJp\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.8.13-HOKA_1679484444369_0.5317826989833865"},"_hasShrinkwrap":false},"1.8.14-HOKA":{"name":"meshkraft-vto","version":"1.8.14-HOKA","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.8.14-HOKA","dist":{"shasum":"e50565b49ee981b7631913859fb42680b78dc3cf","integrity":"sha512-CczMk7akbvINTM58mLpiJNptbMUNmtfh0awNjaIh+oGQczfSGxW0rxl7L/OuenSCJkTETvybs/uI1DqmilfqXw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.8.14-HOKA.tgz","fileCount":6,"unpackedSize":248262,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCDLFoyn+Gz8tSpHpFn0YVG8CkFVdPEOg3UsmBI6uBcWAIhAP6WN+0CQJuwbqI0Lk5F1iKWrMuECog/bsYKt2akg1Ih"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkHJ3wACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqEbw/5AZh+TcP5EeKKmDjEUp7ImiPtNwbSexF2T0oTtveWdqvnFpPx\r\n8Op3ZlJ6omzP9HdimK+6wG4do74no2ZW8PZsavJv5M3x/Nm90J14RUmnJZnM\r\ng6XBBaBWvqhzmcSEABPg6pGe6o6Z3C0Nag31SWwPtr+WToBpwJWDs0ksolC/\r\nnEbkelYK9ANnL2UvZujdmkv55+esXTZ2iQRQ6SoPhX6ZFOT0iDYDbVet4NDs\r\nZ/+puAJCyM+I0uhwi6BI19AdGAJSE9Kn3yYoPbFyPg7tFxFjaa4/qV9guRxO\r\nTZZJ81NfRZE1T7xl0Q6i8MEUkRpm0eAAtVU0kYoJ9p5vVcZGEIHY9IkcfFCS\r\njuJbwoUsScAkSWcA7S1grqcsZLzX4+d3efi60R5df2H34Yr6uZrWKi0i2Aa4\r\nFjqUMGh/4WQvZZvgx9aB85QJYgjDosrBBzFL1Ob/r2E3afSXxjKvQoy9sKpK\r\ndfBYxSF4EX6q2WjBVqeQTsdbjbfa/2lm7314/GPIhWt7MPfau0bSIb4TZuzC\r\nPGjocIgNryC3iHf8Jgk9JJzR0I7hp/x2CsfW967kxV1fUxVXnreAd7CGSlWV\r\nTLNBBKhuZM9bo6CWhgEFeaLTpvh34LvhsrFT5eN2F9oli7139GckQU75mjk1\r\ntAyQzRabClSYQ5Mlxxhn52gmpDMwSgfY714=\r\n=qxi3\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.8.14-HOKA_1679597040061_0.3083424474767804"},"_hasShrinkwrap":false},"1.8.2":{"name":"meshkraft-vto","version":"1.8.2","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.8.2","dist":{"shasum":"028a8f1e65a96ef282200fdef14455e9a92b24af","integrity":"sha512-a3KnHhnsFwKe95fWCs3rPT8Xz/mYUjWLxsKH/nYSQB6+U7YsRj8cYLDI6j7oVbpdlf4fT9IQRI6YKS9mon3SFw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.8.2.tgz","fileCount":6,"unpackedSize":241929,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDdjGyGPkWZTYRI8GARG0I/ge0vb4BvzrV3OsuRk70sWQIhANqCzEpsmkLNXamhzKF8RjvAzCRCatRqmrFtEEPiTdAI"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkIYN1ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqMIRAAluAnv+WWbkPzGiD04thOAqK29R2I2VavCOCkwtXjL6h+P5XM\r\nb05iiqoCntpGRCXBNETgiqHjdz5cwIuQv6vN3ggL3iOAeUPUHHdL7a5D49kI\r\n1c9X+j3ttnlffPWSGaQJMF0R8SMuyh9Zq0pGCBxEdf7n6FqL+dI8ggBBRLeU\r\nqfSoGOqKoUpEB1+IWIt02vQ45ciaOSkrQErKAbeWZYbOyb4wixnjms/8uV8J\r\n84h+EzYPXywMLt+Hk4L7pIlKtgX+Dx9C98CpPRmv3J/aOb9LBA2fRNe/BjPm\r\ngtqioluatQ0dp3JbfB5ToKPgCivqIjmQpPWj3/g0/dHoTxUgIJ6TYTXpg5Ue\r\npH8Gm1xr9NsiXM33rPInURZ4vC2RK4aibxEI9XLbuVgm6VkNn7o0mnEZ0Da4\r\nWAi02uM3mZHBoHdU2vqX7Zjpm8ECENrLXAucpsKj6ND6RMKve4salVqnpeEQ\r\n4pHRTPvLuU2qAx3rR7PXmcD9BTKzmEn3AaH/j40WzRgdE7t6rOO6Guhc8PkN\r\nup8n8xUMkV8uVxklsYfVxh7ZTmu8yL+GK+YlhBRO46pnVZgYYlU93i4KuFb7\r\nECUPjNY2LxqshqqceCwX3J/S4VGgTUJgbAaQXw5UtoC+N9ankbnrWTduG9qv\r\n1WjAuyjrOwVGp+6majzqo6itP610OaDYSKY=\r\n=2SiA\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.8.2_1679917941632_0.9303958520030842"},"_hasShrinkwrap":false},"1.8.3":{"name":"meshkraft-vto","version":"1.8.3","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.8.3","dist":{"shasum":"59f0d22710224f59a547b591a9cb1526b0f01f04","integrity":"sha512-EeVvCOf9/EdNRASbgzZIn7maALiDD0YG+/4OFtk4nxa2v5ytunYTpOhiAADfpSDYref8Fo7yE2BYYO3WEl8DKg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.8.3.tgz","fileCount":6,"unpackedSize":241958,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDi1Pe0C8GB9opJucLNkS7CbEG89f3nC15QYx8Kp1wAJAiAUQ/knJ0dJPgfcJSB1MELaMbbGEBVnAHpkyw0JNxyYgQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkNCXkACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo6ag/8DlCK2J+X/+no5iJ776nUcKpJt5KrFJ96GN7TtpJ5Z7yebGqd\r\njxee/KRDHDwtiSrgT7lIaR7gSlsFiWhfoKJd+Y5ai8ExdkOOEOjdT63rnAwk\r\ndX7K/c05Fc4Gg6Gy1YBop83sYrzgYzeUubohRou4PYqp8OT+cbFq3VocuNL+\r\nUXTRdLVfMl+6cuZ7fvaAYtO1p1/uNOlwnPH9n0OO0N1BfSM/mYbK7yJjN/05\r\n3I4jdYIpuJezgDUgGCmY1+gOMVqLBetm1I3omFkkEVlN9xKIpCoMQ/7y0wop\r\n1+DgAgpKkH6gYGYI+dY0nzn2ui5WKwylGhSVKSk/1iyo5ruzkQOrw9VJryAa\r\nz1A+jdSuEoeObY+fCFfMU5tSnKE621eCqUjNIK6DAZbjMHRXZCZzHD+mEj4C\r\ntExi4kXeH8VNruS8iGcSBSnKwo8+3S0lkUPAhInD3BL3THsmlBEY/Fp+KgrY\r\nv8hsvYsBPTOKA4V4j1cw6+4Ii/BDINj2ez/bkmMMdQOd1BuxI7JUcYnKpvZR\r\nLxwIAvc/w7axQDtyXQp4KRIb7ii/k/P8sDgmT3WEkHyvHlyqDGWi/FWHDLMm\r\ndkcBXKFu0+qXj5ufrBc7DPk2Fj45y2aQjqAFeiUrDLjKY08vTLH4/ZBuDVlr\r\nsVC4HEPjXmczV3yofLpti+wbJ7WFrR5r8Eg=\r\n=QjB6\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.8.3_1681139172719_0.831770963376073"},"_hasShrinkwrap":false},"1.9.1-HOKA":{"name":"meshkraft-vto","version":"1.9.1-HOKA","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.9.1-HOKA","dist":{"shasum":"5bf9541d74e891ee5da2b9428335775edd0588a6","integrity":"sha512-5xuUACBfSMLYCOTyPMO3ZAbw9iVBlfvGwbehDE1wFuZ0YmxYdGeZNcjsSDmTdu8w2+ZqKES9QLC9CjAsRzvBgw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.9.1-HOKA.tgz","fileCount":6,"unpackedSize":248400,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDMg9VQvMMlZ3t97KnFmz0TvRobKV5ofN1qang0HEx+qAiAz0IEMDfSNX6X5+Hg8QVbp8/nb3tJQi3HkrhA/sWy4vQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkS3ijACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqdyA//clLRRLI3ahAABSrTVQbYn7FeZU+KJeFRhhtTPbCDwu6AERWd\r\nDvzXt7NWSq+IbjArbLK2kpNRqNAzkNn2UNX8DNsCfAJMgVTlW2HAU/W5+2Uw\r\n5ZMlbMrKU/Xn6lvmyDtDY75Ss8k5Gy7wA/EIr+tYWakKUGVAVemxLmXVkXgb\r\nQGo7q1a4V1HdRXcRR6yIgcMhuR270NXFKitbY5MGKusYyCdtFZr5lMMG1MR7\r\ndqFL8ry98zv4g4t1USBC/Vs+lE4zGQaCn3VRcA0ST0a+0hBjWcx4ocrP9nOZ\r\nm+aEiqxH6HWTNCLXOi1OZ1yjlFsfOQs/Q0dVLqkFVDSBRx4I0r1f7JuOEiRq\r\nOnvERFR/tr0kk3oM5r8TkwDfmD4I5wIx5tXiTD1b0dbKx9ttf0V/Ioe/zaqP\r\nI8tP7o71n0JD9z57RZV43mmHGACMgfKJrYAxl33MK7hIS11DlXnFw7q+diS+\r\nwjTjo39V0SKQj5M3PmfeDagpYqeN99ps2c+E1gkeIp72sFTaNv2my2btjGAW\r\nGCOdYORixHb6t1FdJ0df1op4ufyNtQ/YmGHiVKVhVDt+rYMURFg4pgoyAdCR\r\nMfMTl/ucQLnOhzbym3gVD9/gCMgUWX5N1lrammPPUFRqRnhKlOKepA+vm0qa\r\n+GIL8Ny5U/4Iui9iEFCVAaMkKVI1k6OFw6U=\r\n=2kkB\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.9.1-HOKA_1682667683107_0.27241476633626394"},"_hasShrinkwrap":false},"1.8.4":{"name":"meshkraft-vto","version":"1.8.4","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.8.4","dist":{"shasum":"e661d56f530a6eada933520a42cb1605e7441cfa","integrity":"sha512-DS8Bxanez8C7dB0x+QXj4vSJZxgmitwY3/FmJZvpL1+aCwQT4aWndrq8mfF0vSlQvUa8PlC0DST3mNuA8bLsTw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.8.4.tgz","fileCount":6,"unpackedSize":242125,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDMfLsSv+IaOdSWoKfELDX2AWQ+D0BS0yWqRU4ybzx7qQIhAMySWMaXts2hRpEX0aPULQo64VoVrqt0NpKWAn0wZXog"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkU5zdACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrvyxAAkCO/JxVinWv5tSJkHmy3PyWP5vwrGQ0rNbZtXtW+VKc2N1BD\r\nrpIxl+H1IpS4ipoiRtvIFGQ4mT2Qt7IxVT/ivkauu1BB/eGXOF7jDijCJRdt\r\nG7s5t4K6CcFDjhlcUMpjkT4TrLPRCKAeCedQBnYfesj6lG557uSsOFzJmc/2\r\ne6LdeoGxQKeHd5747oDw8XejO1ngJKCX7wrvoDpX/Hj23Ww2nhBSQk8aF1Bh\r\nKS8QHp9a5XM/FUQoafonIzlmE4Hfe+VBXDkSGYxKVM4ECVLrdR6Z487jrI8S\r\n6u+iX9PRt03PgdRgzSxdxUMqxWQ9+TG946cKGilyR/iG6sACA5AB0GmhDDlP\r\nHyz3/nyYssFDAF/+NpMZp/RGzfMi0kdFzg9nlloJ3krE7cHEE8HeKn28Sw0m\r\nOoRWLzy7rX2rzukL/htZBNSs+wgDB0ED11Q/0pcHg0wQ4t4aOawANom0+7mV\r\nhIwfyJm8NoRyBqiF4JLuRwrcwp+w63TCIOrUzSuvbNZS43FmRZKXdfdMm0UA\r\nMs7iA1IrI+0F5yqimOsyHN18pKDU7+3dXmdvyIOCjg7mRD6gvAu1ve1mFujX\r\nfmx/fnOVxsMhEZxn2NTX7OTKvHhtQaa1CKP6/fWhRS5kreOBatqm7DobN5xb\r\nH7L3BuvK+xoaHkJ4qPQmSPMlIwkDUJSHFwU=\r\n=mSQr\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.8.4_1683201245221_0.8078417047109057"},"_hasShrinkwrap":false},"1.8.5":{"name":"meshkraft-vto","version":"1.8.5","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.8.5","dist":{"shasum":"c694b3cba77bdb5eead7c74653f6f98c62981391","integrity":"sha512-WeV7CWjvfKk5GJ7KjN+uxxKtGcL/NWB2PDwI7UFnt4Ot6l3vs4Urgnui1wG3yTQ+kjMtlfuaWDHtiXx7PjuQGg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.8.5.tgz","fileCount":6,"unpackedSize":242043,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHPtsOwI0nlLiCSM5aPoI8CCp6mHHTVYw8jYj5dBZiIiAiEAxC+EMps3WhooE9gxBh5MLXrpIVFfK01gyMk30mVeYHs="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.8.5_1683630601224_0.5880531393668946"},"_hasShrinkwrap":false},"2.0.0-FIBBL":{"name":"meshkraft-vto","version":"2.0.0-FIBBL","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@2.0.0-FIBBL","dist":{"shasum":"82889effabc431ca2c1d56dcbde33e1a0f3cbe1c","integrity":"sha512-hybfDdweCsQDa+0zh6XcCDlJCL8QL3NiD7vn56YTYRToWVCd3502JjcKqIypjlbIr/hhHfqYJmo9nF+FRsSeuQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.0.0-FIBBL.tgz","fileCount":6,"unpackedSize":241559,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC4m5BS11fQPEy5rW4gNAHBaNkhjSXUQvSyQDIk7fplaQIgC6J+tRW6Yseyl4SibmSb+cy24HSin5EmXuzarzucCj4="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.0.0-FIBBL_1685356948692_0.2151924502302871"},"_hasShrinkwrap":false},"2.0.1-FIBBL":{"name":"meshkraft-vto","version":"2.0.1-FIBBL","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@2.0.1-FIBBL","dist":{"shasum":"502c8863072ebd8fba1234b9353fa53b677e97b2","integrity":"sha512-xpJEJkVrTv6w2jCOMCnML8McFjaB9hiyqVHEqEipNVxF66DFfUT/VqFpYQi81BrAtl3X16q1UwRdoY37u7auVg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.0.1-FIBBL.tgz","fileCount":6,"unpackedSize":241771,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDZ5p7pLB/OaRdkj8vrmrfnFM3MrwoclwCA7tmsjP7NXQIgdmtRiZvL832SID9O+F8qIA+pJOkQRc+2JUGodvCjlks="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.0.1-FIBBL_1685448199187_0.15208086288634592"},"_hasShrinkwrap":false},"2.0.2-FIBBL":{"name":"meshkraft-vto","version":"2.0.2-FIBBL","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@2.0.2-FIBBL","dist":{"shasum":"ee3cf93301ec97e39720936aed709d74c260bfdc","integrity":"sha512-f/mNI8raxvT5q8Bm5h+3eQq9AUjg+7R2hIFK64WPwk8/JFqHI9mKa8Z3XxqRTJzLlwvkp3SUXcuyViC4YYS29w==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.0.2-FIBBL.tgz","fileCount":6,"unpackedSize":241827,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQChATLdoB0iiJqaEmY4PJsNxHXX09eh/8D1X7e0WNl+OQIhANQimDP+rL4ZYccgHJ8TPTJiwAuqupRLWgkpPbrkV+lK"}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.0.2-FIBBL_1685532037699_0.6157552090998457"},"_hasShrinkwrap":false},"2.0.3-FIBBL":{"name":"meshkraft-vto","version":"2.0.3-FIBBL","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@2.0.3-FIBBL","dist":{"shasum":"94dba40026256e32411d2d95331c6fef93895649","integrity":"sha512-nuT0XmGZ/kGUzMputbLVBLwjTrbaHbcPkI4tUrRXBwN9SbS2VySfahNUGOoOPQZYoRI4Y+ONYw4mk/0V0lxGAA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.0.3-FIBBL.tgz","fileCount":6,"unpackedSize":242174,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDqABG10zhuPHVs59po5hqzaxng6pLX3OvkT4DPnGZsogIhANWZbICt+104K9LJvQ+ybM8PfEltqsjh2vqxwasWJ6bY"}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.0.3-FIBBL_1685533816079_0.06826402985219904"},"_hasShrinkwrap":false},"1.9.2-HOKA":{"name":"meshkraft-vto","version":"1.9.2-HOKA","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.9.2-HOKA","dist":{"shasum":"6668c1e7857dc2c458dce5fb331419be0eb7a7c2","integrity":"sha512-dnZe1mx41nPrKaMjdA+D294P/jsMIa1rURXMogVr2N9pFsJCMzImREzlwFECfnfxfRPJzu038jcZpFP1E+/asw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.9.2-HOKA.tgz","fileCount":6,"unpackedSize":248460,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCbHuCNEc5lXqcpA3bONxXRbnRHHrTO95kvnhj5Kf3LjwIgEGyTTf7UA7xWT6u8G2pO+ov9Dbw78byiky4IKZTONMk="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.9.2-HOKA_1685538224043_0.45771890854074315"},"_hasShrinkwrap":false},"2.0.4-FIBBL":{"name":"meshkraft-vto","version":"2.0.4-FIBBL","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@2.0.4-FIBBL","dist":{"shasum":"ee76ed6c7d684dc018b70de9f80e9302b9441752","integrity":"sha512-uL3Y6k2lB1HypYcmSTga9DfdpdsRMX85h2JsRqnEzJz2/fSCbdYKJv4EowuUICgvWoAD5C1CUVfdCZ9KVaZ2aA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.0.4-FIBBL.tgz","fileCount":6,"unpackedSize":242627,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHjWBdDog8929kIriAey+WRVnWQk1ivZl+bZXjJim+NVAiA092ggOZz33N7W1Ys+Ev3u8OHaSoIvxWBM+Iu0LZ/50Q=="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.0.4-FIBBL_1685959064281_0.11611335350797414"},"_hasShrinkwrap":false},"2.0.5-FIBBL":{"name":"meshkraft-vto","version":"2.0.5-FIBBL","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@2.0.5-FIBBL","dist":{"shasum":"d9bf799c8a9f2c151d0502070c817454feff5d2a","integrity":"sha512-Cv72bqGQykc8VoxLDjmlei8/LH2ixzwpLBTP6QFzA99IufaFa+N8+2hkWAd57cZaQJ/a9PV9EOhw4x4VojACRQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.0.5-FIBBL.tgz","fileCount":6,"unpackedSize":242695,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFrCEW5YDoAGO64yPikmU/QQ3zAl3rqINVfZTJL6JTeIAiEAqqETX/wL6dtVToPOvzSg/VfC7v0yMrW416RIoz+dQfo="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.0.5-FIBBL_1685968150467_0.8319596092627637"},"_hasShrinkwrap":false},"2.0.7-FIBBL":{"name":"meshkraft-vto","version":"2.0.7-FIBBL","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@2.0.7-FIBBL","dist":{"shasum":"5a20eed8f08b488b6a93daeb440d91808d2d2e60","integrity":"sha512-lauIoFA2mvBmTop6gxT44XN0rErIOA7Bt2VH/I/plG7x++dWSGBgU7IUFYJixAuAnAy/xThFumkqvYqpyCc0MA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.0.7-FIBBL.tgz","fileCount":6,"unpackedSize":245541,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICdcCiTf4EK66IiAMbc4Lzz7IkzoHLViih7nm2MI1xgmAiAAwXLhJsreJ6HyoFz3HD8b3dhe4lvwEzheJEPVazf33A=="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.0.7-FIBBL_1686150192916_0.3020371417479224"},"_hasShrinkwrap":false},"2.0.0-HOKA":{"name":"meshkraft-vto","version":"2.0.0-HOKA","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@2.0.0-HOKA","dist":{"shasum":"7ad0da8ddb5abcae6a7fdca6bc09b3b4a29e8b74","integrity":"sha512-FeG7M8to1eloHZdo00PmZXzicThKA0EdeSpV0F4Fdd45y+uxqj7jBqE1EH1NCfiYnDlSVjJfRdXoT3Ark9FyHg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.0.0-HOKA.tgz","fileCount":6,"unpackedSize":247860,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFOKDgSHjjv6NHlhwbGZKkO7hGhwctuUzSC/NZslB/XSAiEA2I62eV6+epqaflhUCIMLzjSQOHmq09Au8abEqBZEqMY="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.0.0-HOKA_1686232153520_0.4930186262664047"},"_hasShrinkwrap":false},"2.0.8-FIBBL":{"name":"meshkraft-vto","version":"2.0.8-FIBBL","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@2.0.8-FIBBL","dist":{"shasum":"88845d90484338504a0d3124e4ddc8c7421a39eb","integrity":"sha512-NCvx7bFA8UspELpUe0H+6nC3aLNl9vppCA/uasJhCzkXJ0l1kaBmOZg1sF8+ob00kqngDLqXi7Giu3637shWKg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.0.8-FIBBL.tgz","fileCount":6,"unpackedSize":246048,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDMVsmvd+pPaTrO+rBDT/3l6rNJ6Wq91Ubx7LVxD6mUNAIhAJdUUlqM0Q89dZoDaPvZvCNVQlvUo+3tZw7TR2Xv7grM"}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.0.8-FIBBL_1686302903979_0.09692479850859503"},"_hasShrinkwrap":false},"2.0.9-FIBBL":{"name":"meshkraft-vto","version":"2.0.9-FIBBL","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@2.0.9-FIBBL","dist":{"shasum":"3e30fbfcf96733f56143b193d653cec34fc4b689","integrity":"sha512-MSyU2V6rWKRYPnnqV01QLqfBSjoJHfk1bgwGhEwLCmxJMBCic7UaunO3Ol0ign5khnxSdzynWajNYn0hA+b54w==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.0.9-FIBBL.tgz","fileCount":6,"unpackedSize":245929,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCihE66hwspkviV/MIBuAda/wylj3mIrP9c7+At8DLoZwIgM3GhjQW/KI9aq/3srEp0CnwAeHbWCYK1OpaReF8zhP0="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.0.9-FIBBL_1686902682378_0.06158703237287311"},"_hasShrinkwrap":false},"2.0.1-HOKA":{"name":"meshkraft-vto","version":"2.0.1-HOKA","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@2.0.1-HOKA","dist":{"shasum":"359cd41e34a92d9f2a1fbcafbc4636f3bb42e228","integrity":"sha512-YUwz/xTTYklKBuzJ2wZ6sW/g/qkkSaNumZ1MN6aCPPcFQnjKihy3CvBH4OTIBkVUj0+UsPwsZHDQFJpiCuLXgA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.0.1-HOKA.tgz","fileCount":6,"unpackedSize":248340,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGDNH/J+19Q8KKOonc+MhZ6PDUmBrh2aQodqTyOWWwzjAiBTLmUnJrg9UNS0QIzzJGnlosSfnkx2KNcKBMxdnUw3Ug=="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.0.1-HOKA_1687420626049_0.23858057762806384"},"_hasShrinkwrap":false},"1.8.6":{"name":"meshkraft-vto","version":"1.8.6","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.8.6","dist":{"shasum":"a604ce49108446e9634377653740f1f612666fb7","integrity":"sha512-Kuj2Ui5zJ3tyxQHBl1ouRol4QjPNnxKs5rQcSu4YppgxfOD/Xu9f7oQjEVRMLd0ewi2nH/9Nn8WqZxCu+9EHVw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.8.6.tgz","fileCount":6,"unpackedSize":242394,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDi15w5r9H11QR1QZ9idQ5hqX4EGASUi3o7eHnGo+UTHwIhAMu9cGbHahNVK+MdKQH196eVXp63EnBvUmw0k+8zlOlK"}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.8.6_1687420654271_0.7488781622830913"},"_hasShrinkwrap":false},"2.0.2-HOKA":{"name":"meshkraft-vto","version":"2.0.2-HOKA","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@2.0.2-HOKA","dist":{"shasum":"18ea2a1d4f27c66538073affdcd0bc98a5c760bb","integrity":"sha512-930KNX3lX45J87Qol19z/jAdbqNnbfaKKOi34EvnNsv4qElUMdnyr0avBgIM3sOsFnviE+dRwJwwy0jnDExxyQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.0.2-HOKA.tgz","fileCount":6,"unpackedSize":248617,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC3+8/vyfhMJo4KhbfLLPaLsb97VpwgAQFJWYWkozIS0QIgHajX+golUnp1tlyiE/Pr8WBmNfy/M7iYGw0cV0YDAV0="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.0.2-HOKA_1687422357395_0.10206428611872442"},"_hasShrinkwrap":false},"2.0.3-HOKA":{"name":"meshkraft-vto","version":"2.0.3-HOKA","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@2.0.3-HOKA","dist":{"shasum":"28778c6c7d8732489ceac6cd032a09d9f7c0537c","integrity":"sha512-S0GfuF+HcvkWnZfiZIQ5PsjUYNGnRPM7gxuPhjjNI+sXW5s+6PaB4IB9fEtpzFWnSEhwxCasz7F0h0OmLKJtIQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.0.3-HOKA.tgz","fileCount":6,"unpackedSize":248617,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC2+L+gUivuGR7IIGirxwgf+9whX9VVIE7HKPIgbQfITQIgNuzON6/h7wlZ0lSwAjfBwkEqbgpwtdY8zaTp7uwfqP0="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.0.3-HOKA_1687423070327_0.9694282929078013"},"_hasShrinkwrap":false},"1.8.7":{"name":"meshkraft-vto","version":"1.8.7","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.8.7","dist":{"shasum":"2b5d04918b81fb79ea298dd4c5bc44188992dedd","integrity":"sha512-LEUoRNIrUMQABprvZu98loSwOQfYNitlyeKyRgoDvKqUjSnZAD6tUzCK8Xt10cGc3ssas2b/vOYPY1eREbnt0w==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.8.7.tgz","fileCount":6,"unpackedSize":242319,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDX04Qgetp76Ulyt+xAozZS2C2Q/TkR+2HN41b4mmm9rAiBlLc1l8VYgrq1npDBVfA1B4SYf0KeySChuPKOEtZM0jg=="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.8.7_1689946493801_0.3606067975769227"},"_hasShrinkwrap":false},"3.0.0-beta-memory-leak-fix":{"name":"meshkraft-vto","version":"3.0.0-beta-memory-leak-fix","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@3.0.0-beta-memory-leak-fix","dist":{"shasum":"13421d1920f2674fa46c4962b551731aee786151","integrity":"sha512-rAzHnsvAIWxaBd6n2zxgJ8P19GwHlw2JuZyqaOsf7W4VncUYljxF7MhGcR55r62kPEE8ASMBEXwRy377+m1jnA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-3.0.0-beta-memory-leak-fix.tgz","fileCount":6,"unpackedSize":243436,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCu7klHG1xtizvpP/Sm8QehoCf5Jup9fKzW94GClCRoxAIhAK+G3ycesBlSnh42zrabnuCq1R75dufbuveJtQ98VAKv"}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_3.0.0-beta-memory-leak-fix_1690376048298_0.9763546255513458"},"_hasShrinkwrap":false},"1.8.8":{"name":"meshkraft-vto","version":"1.8.8","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@1.8.8","dist":{"shasum":"14a982080eb5194fac8717fa8b3b5f9f9c6c2c83","integrity":"sha512-LNBm6ic3poBCjj4D18kzOVrOwTEhtkBWtqGRJ9PIUBftF4UlS2ZdDB4m1IBgzHVX/7pe0/u/0NpXDH9ZEPTwVA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.8.8.tgz","fileCount":6,"unpackedSize":242342,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBfWJNQHdjjHLADla1rDxxSDmeKVXIXSpvfm/3dtzAenAiEAkuSDpnaE+uAjof8Qj7EvKnQwlqIFPCiskFuNuLO1CMI="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.8.8_1690449138723_0.3102124745687802"},"_hasShrinkwrap":false},"3.0.1-beta-memory-leak-fix":{"name":"meshkraft-vto","version":"3.0.1-beta-memory-leak-fix","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@3.0.1-beta-memory-leak-fix","dist":{"shasum":"7fedd78f13791208b7af6265549e7716f5aec726","integrity":"sha512-24KZl5VPQfJotpWNrsOuHfb2EG2oqSYDvbZHLLsBJlGEvk24sewMUVi6FDcp5eSfWD12oioTOISE0xUpC7xRjw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-3.0.1-beta-memory-leak-fix.tgz","fileCount":6,"unpackedSize":244053,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBvN5Ca6qh2ZqNhETY7vYvegCy48ZPIZx+ZqIIHyY9hnAiA3PY9oz1bYnMoFPLPSJFYB1dCNvBtDqYj4ZA+OZ7I9EA=="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_3.0.1-beta-memory-leak-fix_1690457122473_0.9624518862349001"},"_hasShrinkwrap":false},"3.0.2-beta-memory-leak-fix":{"name":"meshkraft-vto","version":"3.0.2-beta-memory-leak-fix","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@3.0.2-beta-memory-leak-fix","dist":{"shasum":"e3ff8c5c25217642c6f9cdb343ee24d026e60be0","integrity":"sha512-/a5HG2NFMjf+ZqXbGEWzwbRPfZJRAozFBPtSpEd7byUTxB4rcwZvM+02dybrXkCZz5te5hRqFMdCeybe+BorVA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-3.0.2-beta-memory-leak-fix.tgz","fileCount":6,"unpackedSize":243966,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDg1ObkO1zLP/mb16Zx7wLkCwqf+aevhJfIBfGRl3wlRAiBmzmiAJTFfNnUCZhmjA8QSzsBLWOPXv/xZge6O8fMGog=="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_3.0.2-beta-memory-leak-fix_1690460668365_0.5732977580756051"},"_hasShrinkwrap":false},"1.9.0":{"name":"meshkraft-vto","version":"1.9.0","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@1.9.0","dist":{"shasum":"7b638976d66ab9d2dc94e6070fdcfaf7f74db029","integrity":"sha512-cSDIyne/3aznTbpqHdAouR2E1m1QansrbaSNnv12semXcqnx/9yFwU6Z0pTzWAQrexirolHVcV0iyYpDusXBsQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-1.9.0.tgz","fileCount":6,"unpackedSize":246313,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAmi0tj84dwcNdSHELyS/TKq8c/w60JOaNU+0L558eJhAiB/deeEwziYE1j+apCaqqjOV+AuQPvZTkVcHtRISdmsEA=="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_1.9.0_1693558553973_0.3424682292522454"},"_hasShrinkwrap":false},"2.1.0":{"name":"meshkraft-vto","version":"2.1.0","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@2.1.0","dist":{"shasum":"4c0b0baec08aa5d8d52f45d8915563411d1968b2","integrity":"sha512-TJM0eVtqH1I5w41okCHjs1xzkxnphykbhUBxvqfps5md8rVXU7bt3vt/nakk2P3Yx3OfGOgaTJJa4nJ0IN4pfw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.1.0.tgz","fileCount":6,"unpackedSize":247211,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF8Ma6F1tgmF81s7nh04m+m54b/T3/SwKujJX7lWGGGDAiBiQKJJYiQW7+UCEDhSeTz0+3xae22Uy5+V8aZsIyTVUQ=="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.1.0_1695285105121_0.5921552271491266"},"_hasShrinkwrap":false},"2.1.1":{"name":"meshkraft-vto","version":"2.1.1","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@2.1.1","dist":{"shasum":"87ff3c7dde98ced1640f16e85b485af9d4826164","integrity":"sha512-6/FtQw5qg4oX/3fa68jBYLNv4uZlqA1JrpI3Z+drCeYhKtGsbhoF6v+KU8ycRBvN63jDb15KaiMcWMh741P8uw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.1.1.tgz","fileCount":6,"unpackedSize":246777,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF7yMiicyf3fEEgVhUdNWrqN+Fmjoj16WuvR36axrKbaAiAfq7yZfaxlB/UemlWBigBkySL67f856+8AjgwF4ukW9Q=="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.1.1_1695897914601_0.02313325558853574"},"_hasShrinkwrap":false},"2.1.2":{"name":"meshkraft-vto","version":"2.1.2","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@2.1.2","dist":{"shasum":"8ace73a6b55f0860e1b2a5fb39af5b17bb4b13a4","integrity":"sha512-tLKXh3yiSJS1QjaCn09bI1pxmPb4m05g8lq3VsMWImhp1Bybk/J6K7XSjNGu0Jvrwjp93uGQ5gD1kMFsAXHsWg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.1.2.tgz","fileCount":6,"unpackedSize":246956,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCpKC6CJw8WXFqGVwCth3pLZh93Lp0IUmZYBMVcl7gJQQIgczy6f2Kf5cmE6Pt/Xwnbq/89UkLWaJO5d866Vn10850="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.1.2_1695914262641_0.6636697712554964"},"_hasShrinkwrap":false},"2.1.3":{"name":"meshkraft-vto","version":"2.1.3","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@2.1.3","dist":{"shasum":"d0b064b6638c39d13173b21218b3ec23b5cb414a","integrity":"sha512-50k4Fym15mAziXpNn4VL1qdE7zzWm0Kcj1DXHBcfVLNgomPitZF7tRpjsfbOTxx9a9Ns0+dEzP+AScRLHVh9fQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.1.3.tgz","fileCount":6,"unpackedSize":247066,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDH9vNcmClEo+dhjKSyspnkHfDlidrmoyO7j2iYCqGyswIgTgacPhZUkj1Jb6IUsk94MYFn40v2pISCU2MH+KRKMvs="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.1.3_1695982428373_0.43585241755726356"},"_hasShrinkwrap":false},"2.1.4":{"name":"meshkraft-vto","version":"2.1.4","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@2.1.4","dist":{"shasum":"72c61d33b263b412221fed3ae73a24e63d9fdd6b","integrity":"sha512-HWLQYk0sjm+9J3OZFM5nJq0MdXShXboF/8iWnf4D9E2tIo0xASjWvPP1nMb1Lp3UVL30n3pGTiYyZljbI/fMsQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.1.4.tgz","fileCount":6,"unpackedSize":247066,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDUmm1axCN0f9lRcLg1NrG6TXwky+uhGeugWEFrReryuAIhALzHM4vSEZ0sy9HuvdBrkq4kFZ8WWidXIjzRf+itN0pQ"}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.1.4_1696876882141_0.19822180998237982"},"_hasShrinkwrap":false},"2.1.5":{"name":"meshkraft-vto","version":"2.1.5","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@2.1.5","dist":{"shasum":"95fa18f73eca15dab608a52a4772fbfe5f50d8a4","integrity":"sha512-gm65QibmTPndA8HY/+kSf/cifR9LOq1RPhHx+SvBYR39vBT3M/C+3KmwBnbepWK+JWKCrnhMuwDU1OuOI3o2zw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.1.5.tgz","fileCount":6,"unpackedSize":248507,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCpO2hVnLMkq4aC9irybXH1Hy+VGHMPQe7Ms8fITCsNkgIhAJ0hI1QAtXrhU54eRtcMF84BcXWkXVmahKVhPNXkCmJX"}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.1.5_1697541867414_0.9097637136958614"},"_hasShrinkwrap":false},"2.1.6":{"name":"meshkraft-vto","version":"2.1.6","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@2.1.6","dist":{"shasum":"aecb89ec9c93cd437b8904fa2d9808b3381f7a51","integrity":"sha512-rs+k/Dv8p2fC4Pn061WUEitGhjerjviJYP2+HUr5HDK10YG5E/ZcNONE96okxzGbhWdovW1zE+0g5YD9uPUGjg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.1.6.tgz","fileCount":6,"unpackedSize":248425,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDenlAhnFDHPVKal81ANtHE48KKPajkguURWicfmJkYKQIgCKw6yBtRlO1oYPUGipgTsRGBZT4PGrWkUtYVBbcWxyA="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.1.6_1697622756826_0.5877498974984665"},"_hasShrinkwrap":false},"2.1.7":{"name":"meshkraft-vto","version":"2.1.7","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@2.1.7","dist":{"shasum":"16f42e6bb61a8fe08a5fcc4b7501daa12d6e905b","integrity":"sha512-A25ze7m1CpyoLzqVGd12c4uaDxVF7wuFaBYCZQitVZgf+472BpI1jgbXK3bwMO7EmD0uTIWpzc4/NlCpYvC2nw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.1.7.tgz","fileCount":6,"unpackedSize":248417,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEHaSsdMRuT9c60SSb0RdbNgEWPk7pa9UwNt6Eoq6FdbAiB7/nr++i62x140WhuDf2GhzyB5NvmZAeSw5AGlorw0WQ=="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.1.7_1697623010128_0.683005800416089"},"_hasShrinkwrap":false},"2.1.8":{"name":"meshkraft-vto","version":"2.1.8","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@2.1.8","dist":{"shasum":"99de2afd69bfde8ae9ca604db7218b7855b35ac8","integrity":"sha512-SHV3QLLyYaUl8R2Jq2oSpwWqur4oIS/HVL1D7RNGx8NrV/HohFSLe/zHUHhpoY1XG18hY3PJly/4KIN6yQPN3A==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.1.8.tgz","fileCount":6,"unpackedSize":248548,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC7kQYM+i4YI2E487Z9Y9yI8s5IC+oxv2WEMzTl+xHS0AIgebc3vY0b8J2S1cH5qXpndylvGE6dYywSqq2FufRNZVw="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.1.8_1697625278777_0.03968489910187767"},"_hasShrinkwrap":false},"2.1.9":{"name":"meshkraft-vto","version":"2.1.9","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@2.1.9","dist":{"shasum":"f88226ee30c103f6015296148ba95c2da50cd662","integrity":"sha512-14wsMdiCD/sHsk6iJZDAPOBW0dt1BN/yeOwgv7kYnZzad/toofMBNjPCU8c2XTn9HMvk8ypMup8hvSFBanzcNw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.1.9.tgz","fileCount":6,"unpackedSize":248548,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD7OMXGVpzNrH0XGbX/O0cygzD+7p8h0nRJONp9NFKvawIgJPIDsg2vVnNXM2p2/q1gNs9l6kBH59awPmKCPrDKP40="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.1.9_1698061561281_0.2765879518263159"},"_hasShrinkwrap":false},"2.2.0-rc.1":{"name":"meshkraft-vto","version":"2.2.0-rc.1","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.esm.min.js","main":"dist/index.min.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","@rollup/plugin-strip":"^3.0.4","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@2.2.0-rc.1","dist":{"shasum":"1d6e27c1a761fd7ae4415d335a7386f72ef43ac7","integrity":"sha512-57Qa+ENCYIFYo9JNbLYiGKqWahfG2sEO2qeOWXpLl+J43YAbUMd40bHazk8AvEHh4qpBpeCeMVAq3R65nOY8gw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.2.0-rc.1.tgz","fileCount":7,"unpackedSize":487122,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBJIXmJAojVyAnia1SJjmS/YXQ8NdWheq6DuhMXCG92GAiEAzsU5HxFEbGLhkk0RDxNo/Fetcp37cAhdZJf6R30Omwg="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.2.0-rc.1_1698144292019_0.9121187597369695"},"_hasShrinkwrap":false},"2.2.0":{"name":"meshkraft-vto","version":"2.2.0","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.esm.min.js","main":"dist/index.min.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","@rollup/plugin-strip":"^3.0.4","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@2.2.0","dist":{"shasum":"63b3d55a1749d0d8b0dcdb946e57efa274768098","integrity":"sha512-NgPoYOFHNsNLZMGbnhj0bl0Rw/x4Zchv1Qppdl2CT2K5dQvsjNaIL4yt/SBFnnF1d/fNDm49skfI4UJi9sCcog==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.2.0.tgz","fileCount":7,"unpackedSize":487106,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD/Nxgc+XBvBDvRocwB8dkdlPEAJvAelM2zCYoCTMjsvwIgeoLF5j7bTVanAnfHOc3AhsWmr5fxaGLwxIEzPeUENUs="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.2.0_1698162786999_0.6412715671909115"},"_hasShrinkwrap":false},"2.2.1":{"name":"meshkraft-vto","version":"2.2.1","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.esm.min.js","main":"dist/index.min.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","@rollup/plugin-strip":"^3.0.4","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@2.2.1","dist":{"shasum":"8dda0012d9150509d7db2c2847f5410b47d3172e","integrity":"sha512-luTpDnChnoElmofZ8b9383jXwgtkYcI7DuDeqB2vr8lSKStIkVp79Pl2CueaW66R/IgAUsKL1oQAynb13UiSRw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.2.1.tgz","fileCount":7,"unpackedSize":488160,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDdZxTjAA6RjAWDkacB31nvRYY08x3V6qsEjS/HUBG8FwIhAK48D1IiphMRnhsvKj15uHZaXORUIt6yO0uZ7pXSJACr"}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.2.1_1698395378784_0.45056946171677015"},"_hasShrinkwrap":false},"2.2.2":{"name":"meshkraft-vto","version":"2.2.2","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.esm.min.js","main":"dist/index.min.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","@rollup/plugin-strip":"^3.0.4","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@2.2.2","dist":{"shasum":"4a7401d11244d5732bd04775e3850929eaba879f","integrity":"sha512-9+ZtpH+Lp2oHCQ8zkWN/KKUijoot1ps3WmzWqra7nf6g1TVBG4HovIDIFkKdV0BKKNtC9tX33EoJtfRdgS/TZQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.2.2.tgz","fileCount":7,"unpackedSize":486826,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCrWX6jQgCftjT7i7caRHkcRt/YsFWRQAvargw7vdAbRAIgSAujBXSufCIkbwKbCU1VzuhRjzGezvOENmc4GKBvmw0="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.2.2_1698665756867_0.3839176009267167"},"_hasShrinkwrap":false},"2.2.3":{"name":"meshkraft-vto","version":"2.2.3","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.esm.min.js","main":"dist/index.min.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","@rollup/plugin-strip":"^3.0.4","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@2.2.3","dist":{"shasum":"5348604f49e21de628ac302304325103e3e2c84b","integrity":"sha512-PvTB8Q2EOSdNoZrFEcqrj7IT6jZ/CZCkAGY7jG/DVD9//dOfJMlwfjFatRVQ/O6dLRXLNt0UdSehc78F4GbVGw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.2.3.tgz","fileCount":7,"unpackedSize":486872,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDbOpMdj0reNAV8/DFaGIXAo0tvkucIQmdn6oh1n1W5AgIgJOj+rdbns2a+qD1PqEpLoRyw0V7NG+G7L8RWq76iSlQ="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.2.3_1698746576471_0.6351761463394034"},"_hasShrinkwrap":false},"2.2.4":{"name":"meshkraft-vto","version":"2.2.4","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.esm.min.js","main":"dist/index.min.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","@rollup/plugin-strip":"^3.0.4","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@2.2.4","dist":{"shasum":"9f7e4a2217288b3e7bbbc8d52369405e79559c86","integrity":"sha512-BLWVdn7LWwcYLs1cNodDRh0zdlGSCzC+WC76OvkmUqzeExVDTDiMfFGzfhtuncqZKnR5vCXIv2SzrEZDgPUL6A==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.2.4.tgz","fileCount":7,"unpackedSize":486634,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGAKiCfrY5gSfFFW7gkVsH7YP+2Ycq7C9ff18I8mJAryAiEAtXRK6MpdPrB3xIRIvmfUI/Ayflt/Dqt1MeRLGhlL1Ys="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.2.4_1698927581213_0.43158868082006774"},"_hasShrinkwrap":false},"2.2.5-beta.1":{"name":"meshkraft-vto","version":"2.2.5-beta.1","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.esm.min.js","main":"dist/index.min.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","@rollup/plugin-strip":"^3.0.4","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@2.2.5-beta.1","dist":{"shasum":"6e6a9746df803f666a0890ed9859ff0c113db901","integrity":"sha512-XiMVEVtBzN58oBJ2lzISjpKrDhx2YOfykZO9QtGMXQ+QCrpN8mb+nKfI44p3g8TSZf5y9LRJ0LEldG0vtk2Owg==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.2.5-beta.1.tgz","fileCount":7,"unpackedSize":486335,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDFcfhoCyUYW3cMi/wl3wtFeVNl6Zmx1bO57CfybOEGiwIhALYnh9C1rS5TJ1GZrQzkIjfkyjEKYX6RVO4vNomR+qQM"}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.2.5-beta.1_1699472622396_0.8712612800264636"},"_hasShrinkwrap":false},"2.2.5-beta.2":{"name":"meshkraft-vto","version":"2.2.5-beta.2","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.esm.min.js","main":"dist/index.min.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","@rollup/plugin-strip":"^3.0.4","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@2.2.5-beta.2","dist":{"shasum":"6ef4af6c8c1f8d98b7df1816b9f9e85cc6c22ddd","integrity":"sha512-XPD1ciWChQt1kWxbdiqQlTtQII8lQyRfb3vGcaIjXU4r2blS2dUgEpt9fHkX82YKeju0+RRkMIZUt8CsorrEBw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.2.5-beta.2.tgz","fileCount":7,"unpackedSize":486511,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDV9HykKEOUy1IpxyZPRCMlcgqD7oQoSLvVm7XhCqURUAiBfALfvmwLycIpxJGYaKbW2QdbwfBJEhfbbW91923+ljQ=="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.2.5-beta.2_1699518511909_0.9675153615995356"},"_hasShrinkwrap":false},"2.2.5":{"name":"meshkraft-vto","version":"2.2.5","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.esm.min.js","main":"dist/index.min.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","@rollup/plugin-strip":"^3.0.4","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@2.2.5","dist":{"shasum":"23b8d8d56f79fb30be684eaba847482a43eb3ed2","integrity":"sha512-ZoIhhhv61NHNBetyi0B5iJIng9TV4GACcsBet+zqyDcTRp5nmPS48YLtE8xQ1KcCfPklKfZ8Kjzza87RNFzXow==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.2.5.tgz","fileCount":7,"unpackedSize":486596,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCeHZyStLSIeSPBy90cit7suWsv8y1FbHnAaIlSzk5q5wIhAOTmc0JE8Y/CaS86vDOA2+0Mp/5vudVy3w46ylKEpFaR"}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.2.5_1699539619489_0.8309137469834929"},"_hasShrinkwrap":false},"2.2.6":{"name":"meshkraft-vto","version":"2.2.6","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.esm.min.js","main":"dist/index.min.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","@rollup/plugin-strip":"^3.0.4","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@2.2.6","dist":{"shasum":"fb3c2d5630a82c07f25d9166c78cd17355bf8a42","integrity":"sha512-pmkLsIra3Dmp/x4UTf2x8rybUvX/bKt539tkL3Szw4AilZ3ueHXpSwLPI3ZBRegVErxx8XKhiuiZwmnH9pFptw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.2.6.tgz","fileCount":7,"unpackedSize":487754,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGXrj0gtEavT2k++oVFOiMY/9/RWU4R3lsKeehm1Mu6AAiEAizO/UWJJgl1+lcKU7cwHgBYGr32TV+lKzVlrcsj2a8k="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.2.6_1699606612028_0.9852717436983771"},"_hasShrinkwrap":false},"2.2.7":{"name":"meshkraft-vto","version":"2.2.7","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.esm.min.js","main":"dist/index.min.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","@rollup/plugin-strip":"^3.0.4","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@2.2.7","dist":{"shasum":"ad7743237d54eeeefcb34912e892e9f08ea98844","integrity":"sha512-cumPf7zIABkOl5G5n5yv0aNqglH27otaKMe0E5T9iexCh8+9XedTCqa6pRm031jf4L4eFvWo+AaVyAr2b2CY6A==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.2.7.tgz","fileCount":7,"unpackedSize":487772,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCUeCZLkXiWji2ix14ZBThiurmUN7RVmzF4tjyGVm4TaQIhANVX94L9M/eOMfSYYjZh2v5Y6aczr7R5Judd1jgK4LEh"}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.2.7_1699608944162_0.18232480039616616"},"_hasShrinkwrap":false},"2.2.8":{"name":"meshkraft-vto","version":"2.2.8","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.esm.min.js","main":"dist/index.min.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","@rollup/plugin-strip":"^3.0.4","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@2.2.8","dist":{"shasum":"4f01fa34643b8c5ae53a380a42ab4a5fc3003d41","integrity":"sha512-O/DOgFtwE0rQ1PBMvIbPk8Hd7wgfvEXTDuShEOegCQKnfLyuvIABq2d2J2GZtGmnEHvAzC6YTfX1bDrUhdD84w==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.2.8.tgz","fileCount":7,"unpackedSize":487940,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDXb2TVhktR8ELkh1+afw3+oIg3G1G25/cCrgAFhEK9aQIhALs9ukWKMgcIUyOO8ZFp3NbojxM8JE1gSu0ZjoGWRzkC"}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.2.8_1699874300696_0.7328107903141432"},"_hasShrinkwrap":false},"2.2.9":{"name":"meshkraft-vto","version":"2.2.9","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.esm.min.js","main":"dist/index.min.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","@rollup/plugin-strip":"^3.0.4","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@2.2.9","dist":{"shasum":"3ff7628c884b98a3f30a8f72813770ab5ab45926","integrity":"sha512-ehZmr6Wd+PlZHJu69zl97YULDGw4ZBoFD1OGs/pNPG0v2rKgx8p9/uPNoYEVdDBSBJJGUx8B/3fyCIg0O3Csrw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.2.9.tgz","fileCount":7,"unpackedSize":488408,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDkH3iktSNOEjBmsxXFHUVMWYuxOVAtWOh/hW/qQ3Br2AIgTaIMGRO5maNoeRXbchVKB2w+72Mh/WDFAqBRvJaHUwA="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.2.9_1699880953195_0.7268279782159413"},"_hasShrinkwrap":false},"2.2.10":{"name":"meshkraft-vto","version":"2.2.10","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.esm.min.js","main":"dist/index.min.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","@rollup/plugin-strip":"^3.0.4","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@2.2.10","dist":{"shasum":"a26aa859c6fcb136ce6791cc7b27a6cce6d7f3bd","integrity":"sha512-zYpZthHyIrKj1fMUmNcjM8Hyv8fhBccmKofaTPPm/lvX/6b7Fz/7EXnycGEDBfFFttqvgs3BtNeO85eUp2woPA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.2.10.tgz","fileCount":7,"unpackedSize":489103,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICSwsFDJJ8Gyb0lBeRtgUy7gfKKroS16h9hIWgZo/1fgAiBJkm77kBfKqClH1qfhVvDaNWuH0giy8csPWF8OsNtvXg=="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.2.10_1700049268694_0.8256906173233478"},"_hasShrinkwrap":false},"2.2.11":{"name":"meshkraft-vto","version":"2.2.11","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.esm.min.js","main":"dist/index.min.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","@rollup/plugin-strip":"^3.0.4","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"_id":"meshkraft-vto@2.2.11","dist":{"shasum":"274c77b679b76c7c43bbadb9bf511f45d0147e23","integrity":"sha512-matYs80EwT2zYpicfPqDwrbGe85CUoK2/gw61N+TZkNmVGEozOGqk1LxcwMxsUkOWuvzwMv02G8uIDTs6EadRw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.2.11.tgz","fileCount":7,"unpackedSize":489195,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD9yBCKx/qOFvBWdlyFjLPSq3BlSKV6Prm1QwsOWaB4VwIgUn30B+xpbMAM+yMbT9dZNX6J2s6QL8m8QG9ZsJixwAY="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.2.11_1700481473698_0.5787030871607237"},"_hasShrinkwrap":false},"2.2.12-beta-draco":{"name":"meshkraft-vto","version":"2.2.12-beta-draco","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.min.js","main":"dist/main.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","babel-eslint":"^10.1.0","es-dev-server":"^1.46.1","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-copy":"^3.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@2.2.12-beta-draco","dist":{"shasum":"cdeb5ff81d74f6da45b1c7d2c61e019bdefd6285","integrity":"sha512-YJnk3xD5GI1ftOxbwm41e1FvmMCpHcl9JBMwcPOhH1MVrMxk0s4rBy4m5Fa/XB3cU55UplUgyy9ObnJuuRvJyA==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.2.12-beta-draco.tgz","fileCount":6,"unpackedSize":242072,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCyUHctiTBAz/NL+ZjeBxm5dtHYyD0MEYRdJ0sPTqwcZwIhAOblTasNZXFSgpTxPeNy3C4WCN+DDATf3wcpoLhTB4Kc"}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.2.12-beta-draco_1700486283993_0.39975092483169083"},"_hasShrinkwrap":false},"2.2.13-beta-draco":{"name":"meshkraft-vto","version":"2.2.13-beta-draco","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.esm.min.js","main":"dist/index.min.js","dependencies":{"@sentry/browser":"^7.11.1","@sentry/tracing":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","@rollup/plugin-strip":"^3.0.4","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@2.2.13-beta-draco","dist":{"shasum":"b479fa60d47c110cb91d979e5c556246e8c1d3b0","integrity":"sha512-GAUidOlxTwJAFnFJTi9SjNA8PpC4veRgw3b65+xRMNa3gjOCLzlpIkxsMjPLqxmTjY4VOtO5IzObOxILz3oWuQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.2.13-beta-draco.tgz","fileCount":7,"unpackedSize":489238,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDoH1ULYncXAW56sr/wB3PNjj9FhZDqdlj8z3xyfzNqwgIhAM4yC7Z2zEszYunW7zLgNvQ74uKmLXL4FniM4hzvitZv"}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.2.13-beta-draco_1700488107895_0.26117180856084876"},"_hasShrinkwrap":false},"2.2.13-beta.2":{"name":"meshkraft-vto","version":"2.2.13-beta.2","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.esm.min.js","main":"dist/index.min.js","dependencies":{"@sentry/browser":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","@rollup/plugin-strip":"^3.0.4","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production"},"readmeFilename":"README.md","readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","_id":"meshkraft-vto@2.2.13-beta.2","dist":{"shasum":"89d778d07611d746b82fb2a08544fdf27cb067f3","integrity":"sha512-tGBjWme88RjWTkfo1CsQt9xAQTBbZnE6yt4wFDgvQnhH/3UfhkqjUFO4IdicQe8YfI9+V+W2BUJlk2VDOPPbQw==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.2.13-beta.2.tgz","fileCount":7,"unpackedSize":504645,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDOannqznP7TEzz/PVwfOJ8BFctUsBspjkYubWs6aC5cwIhAMOnKHQ2H81lrm5OJVzIgxEL61OCElyia9aKZetccSKm"}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.2.13-beta.2_1700489869339_0.6055619696148424"},"_hasShrinkwrap":false},"2.2.13":{"name":"meshkraft-vto","version":"2.2.13","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.esm.min.js","main":"dist/index.min.js","dependencies":{"@sentry/browser":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","@rollup/plugin-strip":"^3.0.4","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production","release":"node -e \"const pkg = require('./package.json'); require('child_process').execSync('git tag v' + pkg.version + ' && git push origin v' + pkg.version + ' && gh release create v' + pkg.version, { stdio: 'inherit' });\""},"_id":"meshkraft-vto@2.2.13","dist":{"shasum":"355b36df84cf55603d7348cac38996fe885313ed","integrity":"sha512-3zFNM6zGnNdsay6M7vPFNzO7SSGsDeKmQOdzaFY3Vy1ncszeGcCclqlimWR73XjgmJLpKIqXQKAye+mIlpue0g==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.2.13.tgz","fileCount":7,"unpackedSize":504859,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE4TSbLVKbsxoUb/E6AdHHN7LzpFkiSn74lHijVNHK08AiAlHsoE/ao719Dz+2enNbsPXpqank7cBYaPHirvPMfPaQ=="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.2.13_1700659102081_0.6774483925978325"},"_hasShrinkwrap":false},"2.2.14":{"name":"meshkraft-vto","version":"2.2.14","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.esm.min.js","main":"dist/index.min.js","dependencies":{"@sentry/browser":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","@rollup/plugin-strip":"^3.0.4","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production","release":"node -e \"const pkg = require('./package.json'); require('child_process').execSync('git tag v' + pkg.version + ' && git push origin v' + pkg.version + ' && gh release create v' + pkg.version, { stdio: 'inherit' });\""},"_id":"meshkraft-vto@2.2.14","dist":{"shasum":"3a42177862ba7645c3ef39937d46b114a461dcbd","integrity":"sha512-OhrDQI4vN2rzGpi2sQZ/fbABJvSnOMJXHJvPCjTfoq5UGvuvd0cd/jmQBH7NO9npZt8mxkE0hH0LZa03xUWmAQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.2.14.tgz","fileCount":7,"unpackedSize":504971,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIA7k7Zjkhv8++idGP/oedvsV47HW210nUhPvYunrIVJIAiEA4544eOolV3CGaGy2E9+EjKgHYq1OT7+U3jOP1XqtMl4="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.2.14_1701242856718_0.057158936122782666"},"_hasShrinkwrap":false},"2.2.15":{"name":"meshkraft-vto","version":"2.2.15","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.esm.min.js","main":"dist/index.min.js","dependencies":{"@sentry/browser":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","@rollup/plugin-strip":"^3.0.4","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production","release":"node -e \"const pkg = require('./package.json'); require('child_process').execSync('git tag v' + pkg.version + ' && git push origin v' + pkg.version + ' && gh release create v' + pkg.version, { stdio: 'inherit' });\""},"_id":"meshkraft-vto@2.2.15","dist":{"shasum":"a46b0897ec0313a3c683fdc8ab865ed17c872219","integrity":"sha512-oNkyrdrSEJJZ0ryXge950hymcSRd+TqZQ9tW3TJBMF9iqBAzpuo5WsHu9nkdU3OqTIoK4m8rNp4EMRRVYJ3kQQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.2.15.tgz","fileCount":7,"unpackedSize":505179,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDiO1lv+w+F4OdeVz4fUlpm3n248Dj1SJMoAVphkCJ/DAiAbFa13s8l7K2qBu5Pibdq1OfwOiPFgb56FgCsIXNHZDg=="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.2.15_1701351121282_0.2441743190913741"},"_hasShrinkwrap":false},"2.2.16":{"name":"meshkraft-vto","version":"2.2.16","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.esm.min.js","main":"dist/index.min.js","dependencies":{"@sentry/browser":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","@rollup/plugin-strip":"^3.0.4","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production","release":"node -e \"const pkg = require('./package.json'); require('child_process').execSync('git tag v' + pkg.version + ' && git push origin v' + pkg.version + ' && gh release create v' + pkg.version, { stdio: 'inherit' });\""},"_id":"meshkraft-vto@2.2.16","dist":{"shasum":"ca422ac86b7196140005cee4f55558fd8ef8d570","integrity":"sha512-iXrQo7HmMCZv62oyp87eepYO8WP/QdkmDCA9zL+cNd7QPVCJEcFUhtsWZAWgqpV8zmVlA/hjU2ZErPbsH+NX8A==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.2.16.tgz","fileCount":7,"unpackedSize":506055,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDknGt1j3pLE++FJSQkKO2wtEnIugR78o+l3EKaePO5HgIgKqcpYAKysB5cH0aq/CaAirlNc/ADrEi6Eo610F0MjTA="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.2.16_1706553320824_0.9399583257476711"},"_hasShrinkwrap":false},"2.2.17":{"name":"meshkraft-vto","version":"2.2.17","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.esm.min.js","main":"dist/index.min.js","dependencies":{"@sentry/browser":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","@rollup/plugin-strip":"^3.0.4","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production","release":"node -e \"const pkg = require('./package.json'); require('child_process').execSync('git tag v' + pkg.version + ' && git push origin v' + pkg.version + ' && gh release create v' + pkg.version, { stdio: 'inherit' });\""},"_id":"meshkraft-vto@2.2.17","dist":{"shasum":"44e09b597b4522354fede83b3d3867955810f764","integrity":"sha512-itR4Osmp/YbH+p8NKlGEmR8D2il20r4ai2mmiz2KKmNsy2Kx/mK3qiuaY6hJB70Kpojg7iI3EMy2bd/5U/ob8A==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.2.17.tgz","fileCount":7,"unpackedSize":506083,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGbKZVsV9yk4+yzN3pA3KgjKmNx+rAwyIUb+FNjHRr6HAiEA8Nh9p/LyrVXYOmlZqesuSRSJmC2oo+hFgWXiQFbB7bM="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.2.17_1707816443552_0.35633315311427727"},"_hasShrinkwrap":false},"2.2.18":{"name":"meshkraft-vto","version":"2.2.18","description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"license":"UNLICENSED","module":"dist/index.esm.min.js","main":"dist/index.min.js","dependencies":{"@sentry/browser":"^7.11.1","basiclightbox":"^5.0.4","device-uuid":"^1.0.4","ifvisible.js":"^1.0.6","jslib-html5-camera-photo":"3.3.4","qr-creator":"^1.0.0","swiper":"8.4.4"},"devDependencies":{"@babel/cli":"^7.16.0","@babel/core":"^7.16.0","@babel/plugin-transform-runtime":"^7.19.1","@babel/preset-env":"^7.16.4","@rollup/plugin-babel":"^5.3.1","@rollup/plugin-commonjs":"^17.1.0","@rollup/plugin-node-resolve":"^11.1.0","@rollup/plugin-replace":"^2.3.1","@rollup/plugin-strip":"^3.0.4","babel-eslint":"^10.1.0","es-dev-server":"^2.1.0","eslint":"^8.4.0","prettier":"^2.5.1","rollup":"2.30","rollup-plugin-babel":"^4.4.0","rollup-plugin-dotenv":"^0.4.0","rollup-plugin-filesize":"^7.0.0","rollup-plugin-import-css":"^3.0.3","rollup-plugin-node-resolve":"^5.2.0","rollup-plugin-postcss":"^4.0.2","rollup-plugin-svg":"^2.0.0","rollup-plugin-terser":"^5.3.0"},"scripts":{"watch":"rollup -c -w -m inline --environment NODE_ENV:development","serve":"es-dev-server --node-resolve --watch --http2 --root-dir=./dev --compatibility=none --watch-excludes=./src","build":"rollup -c --environment NODE_ENV:production","release":"node -e \"const pkg = require('./package.json'); require('child_process').execSync('git tag v' + pkg.version + ' && git push origin v' + pkg.version + ' && gh release create v' + pkg.version, { stdio: 'inherit' });\""},"_id":"meshkraft-vto@2.2.18","dist":{"shasum":"6688f010871fd5de11da9b87dfabf98bcade94e1","integrity":"sha512-CYdIUUHMAbfg8sQHIDW9QCL4hjgePmP3HmdDzin0W/xSRN/75/qv7FWeYAd/qigHfzMkZo5L+kN2JCtbg+8vLQ==","tarball":"https://registry.npmjs.org/meshkraft-vto/-/meshkraft-vto-2.2.18.tgz","fileCount":7,"unpackedSize":506007,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHdwbWCttn1ijbRWQnsPkemYRREwsvSXbUYs4LXLeKS+AiEAzX+RQkJeuLUyFo+8QoJaboX3pTdkwc3BWljgVeZTSGI="}]},"_npmUser":{"name":"artlabs","email":"engineering@artlabs.ai"},"directories":{},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/meshkraft-vto_2.2.18_1709711667451_0.39682118050740245"},"_hasShrinkwrap":false}},"time":{"created":"2022-03-04T10:53:43.454Z","1.0.0":"2022-03-04T10:53:43.725Z","modified":"2024-03-06T07:54:28.079Z","1.0.1":"2022-03-04T11:06:21.850Z","1.0.2":"2022-03-04T11:39:49.917Z","1.0.3":"2022-03-04T11:40:47.716Z","1.0.4":"2022-03-04T12:01:01.559Z","1.0.5":"2022-03-04T13:48:15.411Z","1.0.6":"2022-03-07T10:12:20.523Z","1.0.7":"2022-03-07T10:30:19.978Z","1.0.8":"2022-03-08T13:16:37.484Z","1.0.9":"2022-03-09T08:16:52.771Z","1.0.10":"2022-03-09T08:46:42.296Z","1.0.11":"2022-03-11T08:33:30.635Z","1.0.12":"2022-03-11T08:52:18.011Z","1.0.13":"2022-03-16T10:43:38.471Z","1.1.0-beta.0":"2022-03-23T15:06:15.028Z","1.1.0-beta.3":"2022-03-23T15:19:55.588Z","1.1.0-beta.4":"2022-03-23T15:26:34.997Z","1.1.0-beta.5":"2022-03-24T10:14:58.603Z","1.1.0-beta.6":"2022-03-25T08:38:31.723Z","1.1.0":"2022-03-28T11:21:46.222Z","1.1.1":"2022-03-29T10:09:11.963Z","1.1.2":"2022-03-29T10:42:44.319Z","1.1.3":"2022-04-05T09:04:52.848Z","1.1.4-beta.0":"2022-04-08T10:08:38.698Z","1.1.4-beta.1":"2022-04-08T10:11:47.851Z","1.1.4-beta.2":"2022-04-08T10:33:22.377Z","1.1.4":"2022-04-11T12:08:54.045Z","1.1.5-beta":"2022-04-28T12:13:06.603Z","1.1.6":"2022-04-28T13:20:59.918Z","1.2.0":"2022-05-10T08:57:21.987Z","1.2.0-data":"2022-05-24T10:54:41.465Z","1.2.0-data1":"2022-05-24T11:17:21.769Z","1.2.0-data2":"2022-05-29T22:13:48.232Z","1.2.0-data3":"2022-05-30T22:07:14.724Z","1.2.0-data4":"2022-05-31T12:17:12.496Z","1.2.0-data5":"2022-05-31T14:33:53.844Z","1.2.0-data6":"2022-06-01T13:17:14.571Z","1.2.0-data7":"2022-06-07T11:50:58.733Z","1.2.1":"2022-06-07T18:30:33.933Z","1.2.2":"2022-06-08T11:04:56.801Z","1.2.2-data":"2022-06-09T20:27:07.533Z","1.2.2-data2":"2022-06-09T20:42:12.663Z","1.2.3":"2022-06-10T12:57:55.827Z","1.2.2-data3":"2022-06-22T07:45:32.796Z","1.2.4":"2022-08-09T09:22:15.409Z","1.2.5":"2022-08-10T08:56:05.062Z","1.2.6":"2022-08-19T10:44:40.063Z","1.2.7":"2022-08-24T10:42:50.074Z","1.2.8":"2022-08-24T14:20:33.820Z","1.2.9":"2022-08-24T14:43:03.508Z","1.2.10":"2022-08-25T15:48:06.556Z","1.3.0-beta":"2022-08-26T11:26:42.282Z","1.3.0":"2022-08-29T07:08:25.074Z","1.3.1-beta":"2022-08-29T08:55:46.262Z","1.3.1-beta2":"2022-08-31T13:03:29.656Z","1.3.1":"2022-08-31T13:10:51.450Z","1.3.2-beta-tablet":"2022-09-05T09:26:50.615Z","1.3.2":"2022-09-05T09:55:05.480Z","1.3.3-beta-slider":"2022-09-06T14:15:07.869Z","1.3.3-beta-slider2":"2022-09-20T11:14:34.455Z","1.4.0":"2022-09-20T11:47:18.960Z","1.4.1-beta-core-exception":"2022-09-26T08:20:11.489Z","1.4.1":"2022-09-26T08:27:22.134Z","1.4.2-beta-manual-trigger":"2022-10-05T12:19:18.934Z","1.4.2-beta-manual-trigger-2":"2022-10-05T12:27:59.295Z","1.4.2-beta-manual-trigger-3":"2022-10-07T13:56:31.849Z","1.4.2-beta-manual-trigger-4":"2022-10-07T14:11:45.896Z","1.4.2-beta-manual-trigger-5":"2022-10-07T14:17:05.733Z","1.4.2-beta-manual-trigger-6":"2022-10-10T09:33:20.394Z","1.5.0":"2022-10-10T10:50:50.773Z","1.5.0-beta-test-log":"2022-10-13T07:01:19.480Z","1.5.0-beta-test-log2":"2022-10-13T07:04:06.106Z","1.5.1":"2022-10-19T14:08:28.393Z","1.5.1-beta-2":"2022-10-19T14:34:15.561Z","1.5.2":"2022-10-24T15:37:27.928Z","1.5.3-beta":"2022-10-25T11:10:22.541Z","1.5.3":"2022-10-25T11:16:25.964Z","1.5.4":"2022-10-26T11:42:55.222Z","1.5.5-beta":"2022-10-27T11:58:46.821Z","1.5.5-beta2":"2022-10-27T14:25:42.591Z","1.5.5":"2022-10-27T14:50:19.946Z","1.5.6-beta":"2022-11-02T14:41:06.101Z","1.5.7":"2022-11-02T14:46:09.075Z","1.5.8-beta":"2022-11-07T07:34:39.571Z","1.5.8":"2022-11-07T10:55:03.154Z","1.5.9-beta.1":"2022-11-09T14:52:59.336Z","1.5.9-beta.2":"2022-11-09T15:13:47.383Z","1.5.9-beta.3":"2022-11-10T14:41:06.137Z","1.5.9-beta.4":"2022-11-10T14:45:27.490Z","1.5.9":"2022-11-14T08:45:04.959Z","1.5.10":"2022-11-15T16:52:11.637Z","1.5.11":"2022-11-15T17:39:44.110Z","1.5.11-beta":"2022-11-17T13:52:10.897Z","1.5.11-beta2":"2022-11-18T09:38:42.258Z","1.5.11-beta3":"2022-11-18T09:49:15.887Z","1.5.11-beta4":"2022-11-18T09:56:56.656Z","1.5.11-beta5":"2022-11-21T18:23:59.413Z","1.5.11-beta6":"2022-11-21T18:29:13.017Z","1.5.11-beta7":"2022-11-22T13:58:39.704Z","1.6.0":"2022-11-22T14:17:04.095Z","1.6.1-beta":"2022-12-07T08:02:41.955Z","1.6.1-beta2":"2022-12-07T13:35:17.516Z","1.6.2-beta":"2022-12-13T14:04:54.192Z","1.6.1":"2022-12-14T17:17:32.350Z","1.6.2":"2023-01-17T12:56:43.021Z","1.6.3":"2023-01-23T09:45:55.518Z","1.7.0-HOKA":"2023-01-23T09:46:22.216Z","1.7.1-HOKA":"2023-01-23T15:38:22.623Z","1.7.2-HOKA":"2023-01-24T12:12:51.240Z","1.7.3-HOKA":"2023-01-24T13:52:29.891Z","1.7.4-HOKA":"2023-01-25T09:24:13.282Z","1.7.5-HOKA":"2023-01-26T11:28:19.079Z","1.8.0-HOKA":"2023-01-31T15:10:14.780Z","1.8.2-HOKA":"2023-02-01T11:10:31.457Z","1.6.4":"2023-02-02T11:41:39.630Z","1.8.3-HOKA":"2023-02-06T16:46:07.298Z","1.6.5":"2023-02-11T08:40:34.295Z","1.8.4-HOKA":"2023-02-15T17:46:49.533Z","1.6.6":"2023-02-20T16:23:53.713Z","1.6.8":"2023-02-20T18:42:36.988Z","1.6.9":"2023-02-21T11:32:15.312Z","1.6.10":"2023-02-21T12:06:28.141Z","1.6.11":"2023-02-23T10:15:09.291Z","1.6.12":"2023-02-23T10:26:19.318Z","1.8.6-HOKA":"2023-02-23T16:00:55.812Z","1.7.1":"2023-02-24T08:54:12.001Z","1.8.7-HOKA":"2023-02-27T14:45:46.474Z","1.8.0":"2023-02-28T07:44:27.169Z","1.8.8-HOKA":"2023-03-06T13:03:17.001Z","1.8.9-HOKA":"2023-03-07T16:53:40.370Z","1.8.10-HOKA":"2023-03-07T17:35:04.893Z","1.8.11-HOKA":"2023-03-07T21:09:43.958Z","1.8.1":"2023-03-09T13:39:52.409Z","1.8.12-HOKA":"2023-03-16T13:09:51.196Z","1.8.13-HOKA":"2023-03-22T11:27:24.512Z","1.8.14-HOKA":"2023-03-23T18:44:00.217Z","1.8.2":"2023-03-27T11:52:21.862Z","1.8.3":"2023-04-10T15:06:12.928Z","1.9.1-HOKA":"2023-04-28T07:41:23.278Z","1.8.4":"2023-05-04T11:54:05.431Z","1.8.5":"2023-05-09T11:10:01.398Z","2.0.0-FIBBL":"2023-05-29T10:42:28.849Z","2.0.1-FIBBL":"2023-05-30T12:03:19.472Z","2.0.2-FIBBL":"2023-05-31T11:20:38.058Z","2.0.3-FIBBL":"2023-05-31T11:50:16.350Z","1.9.2-HOKA":"2023-05-31T13:03:44.261Z","2.0.4-FIBBL":"2023-06-05T09:57:44.501Z","2.0.5-FIBBL":"2023-06-05T12:29:10.778Z","2.0.7-FIBBL":"2023-06-07T15:03:13.100Z","2.0.0-HOKA":"2023-06-08T13:49:13.694Z","2.0.8-FIBBL":"2023-06-09T09:28:24.171Z","2.0.9-FIBBL":"2023-06-16T08:04:42.646Z","2.0.1-HOKA":"2023-06-22T07:57:06.199Z","1.8.6":"2023-06-22T07:57:34.474Z","2.0.2-HOKA":"2023-06-22T08:25:57.564Z","2.0.3-HOKA":"2023-06-22T08:37:50.563Z","1.8.7":"2023-07-21T13:34:54.023Z","3.0.0-beta-memory-leak-fix":"2023-07-26T12:54:08.532Z","1.8.8":"2023-07-27T09:12:18.907Z","3.0.1-beta-memory-leak-fix":"2023-07-27T11:25:22.602Z","3.0.2-beta-memory-leak-fix":"2023-07-27T12:24:28.625Z","1.9.0":"2023-09-01T08:55:54.344Z","2.1.0":"2023-09-21T08:31:45.270Z","2.1.1":"2023-09-28T10:45:14.810Z","2.1.2":"2023-09-28T15:17:42.850Z","2.1.3":"2023-09-29T10:13:48.574Z","2.1.4":"2023-10-09T18:41:22.399Z","2.1.5":"2023-10-17T11:24:27.681Z","2.1.6":"2023-10-18T09:52:37.002Z","2.1.7":"2023-10-18T09:56:50.406Z","2.1.8":"2023-10-18T10:34:38.989Z","2.1.9":"2023-10-23T11:46:01.501Z","2.2.0-rc.1":"2023-10-24T10:44:52.332Z","2.2.0":"2023-10-24T15:53:07.329Z","2.2.1":"2023-10-27T08:29:39.183Z","2.2.2":"2023-10-30T11:35:57.138Z","2.2.3":"2023-10-31T10:02:56.764Z","2.2.4":"2023-11-02T12:19:41.460Z","2.2.5-beta.1":"2023-11-08T19:43:42.593Z","2.2.5-beta.2":"2023-11-09T08:28:32.128Z","2.2.5":"2023-11-09T14:20:19.749Z","2.2.6":"2023-11-10T08:56:52.295Z","2.2.7":"2023-11-10T09:35:44.449Z","2.2.8":"2023-11-13T11:18:21.077Z","2.2.9":"2023-11-13T13:09:13.521Z","2.2.10":"2023-11-15T11:54:28.933Z","2.2.11":"2023-11-20T11:57:53.967Z","2.2.12-beta-draco":"2023-11-20T13:18:04.218Z","2.2.13-beta-draco":"2023-11-20T13:48:28.162Z","2.2.13-beta.2":"2023-11-20T14:17:49.564Z","2.2.13":"2023-11-22T13:18:22.278Z","2.2.14":"2023-11-29T07:27:37.050Z","2.2.15":"2023-11-30T13:32:01.600Z","2.2.16":"2024-01-29T18:35:21.028Z","2.2.17":"2024-02-13T09:27:23.799Z","2.2.18":"2024-03-06T07:54:27.636Z"},"maintainers":[{"name":"doruk_art","email":"doruk@artlabs.ai"},{"name":"artlabs","email":"engineering@artlabs.ai"}],"description":"Meshkraft VTO SDK (Public)","author":{"name":"ART Labs","email":"engineering@artlabs.ai"},"readme":"# ART Labs Meshkraft Web Virtual Try-On SDK\n\nVTO SDK is a web application for [ART Labs Virtual Try-On Engine](https://github.com/ARTLabs-Engineering/vto-core) to enhance its capabilites for user interaction. This application introduces various concepts such as dynamic version management, multiple event handling, customization for customer requirements and many more.\n\n## Install\n\nYou'll need to paste script code before closing `</body>` tag of your web page.\n\n```html\n<script\n  type=\"module\"\n  src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n  data-meshkraft-key=\"YOUR_API_KEY\"\n></script>\n```\n\nMake sure to replace `YOUR_API_KEY` with your application token.\n\n## Basic Usage\n\nAfter you place the script above, all you need to do is adding any `button`, `a`, `div` or any other clickable HTML element to your website, with your own style. The SKU that specified in the element can be a comma separated list to show multiple shoes.\n\n```html\n<button data-meshkraft-vto-sku=\"YOUR_SKU\">View in AR</button>\n```\n\nThat's it 🎉.\n\n## Config\n\nYou should pass a stringified JSON object to script tag via `data-meshkraft-config` attribute. Available options are:<br/>\n\n`showAction` - Boolean. Should show action block or not. Default is `false`.<br/>\n`actionButtonText` - String. Title for the button. Default is `Add to Cart`.<br/>\n`actionButtonEventName` - String. Event name to listen on button click. Default is `add-to-cart`.<br/>\n\n`logoUrl` - String. Logo URL to use in upper-right corner. Default is `null`.<br/>\n`fontFamily` - String. Font family name to use in SDK. Must be included in DOM. Default is `Bebas Neue`.<br/>\n`qrPopupTitle` - String. Text to use in Desktop QR popup title. Default is `Scan QR Code`.<br/>\n`qrPopupSubtitle` - String. Text to use in Desktop QR popup subtitle. Default is `Point your mobile phone camera to the QR code below to experience Virtual Try-on`.<br/>\n\n```html\n<button\n  data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n  data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n>\n  Enter VTO\n</button>\n```\n\n## Events\n\nThere are two events that can be listened to. You can register an event listener to the window element via invoking the `addEventListener` method.\n\n#### Added to Cart\n\nWhen user clicks the Add to Cart button in AR banner, this event will be fired with SKU.\n\n```javascript\nwindow.addEventListener('add-to-cart', (e) => {\n  // Product added to cart\n  console.log(e.detail.sku);\n});\n```\n\n#### Error\n\nWhen something goes wrong, this event will be fired with error message.\n\n```javascript\nwindow.addEventListener('vto-error', (e) => {\n  // VTO failed\n  console.log(e.detail.message);\n});\n```\n\n## Full Example\n\n```html\n<head>\n  <script\n    type=\"module\"\n    src=\"https://unpkg.com/meshkraft-vto/dist/index.min.js\"\n    data-meshkraft-key=\"YOUR_API_KEY\"\n  ></script>\n</head>\n\n<body>\n  <button\n    id=\"meshkraft-vto-button\"\n    data-meshkraft-vto-sku=\"Nike-Air-Max-90\"\n    data-meshkraft-vto-config='{\"fontFamily\":\"Arial\",\"qrPopupTitle\":\"Scan the Code\",\"qrPopupSubtitle\":\"Scan the QR code below\",\"logoUrl\": \"https://artlabs.ai/images/logo.svg\", \"showAction\": true, \"actionButtonText\":\"Add To Cart\", \"actionButtonEventName\": \"add-to-cart\"}'\n  >\n    Enter VTO\n  </button>\n</body>\n\n<script>\n  window.addEventListener('add-to-cart', (e) => {\n    console.log('Product added to cart :: ', e.detail.sku);\n  });\n\n  window.addEventListener('vto-error', (e) => {\n    console.log('An error occured :: ', e.detail.message);\n  });\n</script>\n```\n\n## Bundle Size\n\nYou will consuming minified and Gzipped or Brotli compressed version, depending on the browser.\n\n```bash\n┌─────────────────────────────────────────────┐\n│                                             │\n│   meshkraft-vto.min.js                      │\n│   Bundle Size:  253.42 KB                   │\n│   Gzipped Size: 77.24 KB                    │\n│   Brotli size:  66.91 KB                    │\n│                                             │\n└─────────────────────────────────────────────┘\n```\n\nInitial bundle size is small but the essential parts of the VTO will be downloaded after user clicks to the button. The total size will be about 2MB to 10MB, depending on the 3D model.\n\n<!-- ## Desktop Behavior\n\nAs AR technology is only available in mobile devices, users on desktop will need to be guided to their mobile devices. Both SDK's will do that for you on desktop browser, using a runtime generated QR code and a guidance popup.\n\n<video style={{ width: '100%' }} autoPlay muted loop>\n  <source\n    src={require('./assets/desktop-behavior.webm').default}\n    type=\"video/webm\"\n  />\n</video> -->\n","readmeFilename":"README.md","license":"UNLICENSED"}