{"_id":"@divegames/dive-ts-web-sdk","_rev":"32-68122d7c2892ab8afa60c7f3a8af65d8","name":"@divegames/dive-ts-web-sdk","dist-tags":{"latest":"1.6.9"},"versions":{"1.3.1":{"name":"@divegames/dive-ts-web-sdk","version":"1.3.1","keywords":["sdk","typescript","web","dive"],"author":{"name":"divegames"},"license":"ISC","_id":"@divegames/dive-ts-web-sdk@1.3.1","maintainers":[{"name":"federicosaenz","email":"federicosaenz@gmail.com"},{"name":"eladdive","email":"elad@dive.games"}],"homepage":"https://dive.games/","dist":{"shasum":"9849129597fefc9e47f8348353afc8fbf667fa1e","tarball":"https://registry.npmjs.org/@divegames/dive-ts-web-sdk/-/dive-ts-web-sdk-1.3.1.tgz","fileCount":79,"integrity":"sha512-LOht7IKK/6Q5klLybjjREBvtPNtWmQYN93Gs7v/XqblqYlC49QFyVd6XpEzteqPpsky8sftQGAad7bY0oWSfrg==","signatures":[{"sig":"MEUCIQCKOxzs2PUqE8iGAyOLcPvfdiGnFCHeZACyP9CYZZsYRgIgHMu55VAmSXezM1gGGyjGE2nuB81LL4kuvLKAVoIubh8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178959,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf6hGqCRA9TVsSAnZWagAA3CwP/3QfURC/6eJuzAUtu2Jo\n9/byqOQU0QciyfYtB2f31XFcPp+YR1HnPy8pmYOKFIvTolomylul5bQEl2BI\nKjB29Y64GZqIMV0MLIobsR3Jl3a8v5yjX6Yqjh17EllfCS7G2KVY2uSIEiBH\nsnQzo2HKbdTKvJ32gZtzStpOZ5QKN5yeAlQDO/gIjEjfuNtOpg9OOsnq6Zl9\nTM03I+fXhcKca/U3gMUpvdPPXsHkIhnTT8O3DqDYOyh2QCuW/4itNIiddQjn\nAo+vcNJY/5Pw3Gn1HZiRxj/KRx1vyPQm5+YTNG7J9GgyjJN8+9qOEkUanayt\nXkLDGbS2dAAHOcRVV3RzYoUfYA+F39dL+Yg2duJr5h83YDUp0GSyAgbpe2ys\ns7cfC8uiI1NJ4YzNxQ0JcJLm8qz8o+BcJsXEi80TggbHKxqmEft7pNput1oV\nCda4XZXKraG4um5AySG+od2LHqBbW3jgyY9HDYGfG8FjKIqhDRm5t+fAJuBv\nvn2bar/UW25GHQQAc489W1X6qX0W9nsCuDDMFGOus7PEioQ0ec6xXxUmp7gw\nt9WrQLx6Vnx1Bz+Vf9YhPVbexE8nXyvfmcnZuV7pck8Z8FXOI11BKNfRIlqM\nf2sdKTbNXDF98n2wEG4/pgMR0EmRil2hzOnlOepkmu8WGFSgtemoVUf/g3dg\nsQwV\r\n=EoPS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","gitHead":"70f86bb0ed0a2ddaa3fa5d1e988eaeb27198806f","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc"},"_npmUser":{"name":"federicosaenz","email":"federicosaenz@gmail.com"},"_npmVersion":"6.9.0","description":"Dive Web SDK for game analytics","directories":{},"_nodeVersion":"12.2.0","dependencies":{"@types/node":"^13.11.0","ua-parser-js":"^0.7.21","@types/ua-parser-js":"^0.7.33"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.8.3"},"_npmOperationalInternal":{"tmp":"tmp/dive-ts-web-sdk_1.3.1_1609175465981_0.40744496023982646","host":"s3://npm-registry-packages"}},"1.5.1":{"name":"@divegames/dive-ts-web-sdk","version":"1.5.1","author":"","license":"ISC","_id":"@divegames/dive-ts-web-sdk@1.5.1","maintainers":[{"name":"evgeny_mikhalev","email":"evgeny@cyclingbear.studio"},{"name":"eladdive","email":"elad@dive.games"},{"name":"federicosaenz","email":"federicosaenz@gmail.com"},{"name":"rmoralez","email":"rodrigo@dive.games"},{"name":"madcoder39","email":"ilya@cyclingbear.studio"}],"dist":{"shasum":"6a8a2ff56de7ba4c76cc0d6a90883f5195ede2b5","tarball":"https://registry.npmjs.org/@divegames/dive-ts-web-sdk/-/dive-ts-web-sdk-1.5.1.tgz","fileCount":111,"integrity":"sha512-QVPjkvLTsj45T/Y2GQKy8aXogPh5zkEe0OeweYP6TuHYXmIjoucGv7unB0c8NubnZojelvnyP1irDi7nJN/wnA==","signatures":[{"sig":"MEUCIQCYH6Qp1lmIk6gy9U2P4XKD4lZ5k40y7LdmTCbul/EDCAIgSFRgDLhIo600PY2UW2qx5zz0DdHltSm7zAKfAf5iwhU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":263575},"main":"build/index.js","types":"build/index.d.ts","gitHead":"d85c16b967bb238d1784a98c649ea39b1dfd0861","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc"},"_npmUser":{"name":"evgeny_mikhalev","email":"evgeny@cyclingbear.studio"},"_npmVersion":"7.0.3","description":"Our SDK is written entirely in typescript with no native code requirements. The easiest way to get started is by cloning this repository and then link the folder with `npm install` or `yarn add`.","directories":{},"_nodeVersion":"15.0.1","dependencies":{"@types/node":"^13.11.0","ua-parser-js":"^0.7.21","@types/ua-parser-js":"^0.7.33"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.8.3"},"_npmOperationalInternal":{"tmp":"tmp/dive-ts-web-sdk_1.5.1_1633529553540_0.45778062882129533","host":"s3://npm-registry-packages"}},"1.5.2":{"name":"@divegames/dive-ts-web-sdk","version":"1.5.2","author":"","license":"ISC","_id":"@divegames/dive-ts-web-sdk@1.5.2","maintainers":[{"name":"evgeny_mikhalev","email":"evgeny@cyclingbear.studio"},{"name":"eladdive","email":"elad@dive.games"},{"name":"federicosaenz","email":"federicosaenz@gmail.com"},{"name":"rmoralez","email":"rodrigo@dive.games"},{"name":"madcoder39","email":"ilya@cyclingbear.studio"}],"dist":{"shasum":"b8000fd2c826c8c4c439b1c0b59677695714ad3b","tarball":"https://registry.npmjs.org/@divegames/dive-ts-web-sdk/-/dive-ts-web-sdk-1.5.2.tgz","fileCount":111,"integrity":"sha512-GKpcGOLAtE9p7S8Q0m/FyRDHEOdbhp2pMcIy9IQ98Hz/lMn+Hxj9S959aZh8jLD/CInkDhWoMlJdEniTI7gTKQ==","signatures":[{"sig":"MEUCIQC7fwMh2/m3tm/JRNghQ2n3ofhgeXFLMk3pJTF7Kn+xWwIgaPLlQcl+5yp6uM8TbM4golqkCGvROHWfFhdH/VjbgGo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":263033},"main":"build/index.js","types":"build/index.d.ts","gitHead":"bac08a7e75e04e55af7f13f0c2eb25f740bf60e6","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc"},"_npmUser":{"name":"evgeny_mikhalev","email":"evgeny@cyclingbear.studio"},"_npmVersion":"7.0.3","description":"Our SDK is written entirely in typescript with no native code requirements. The easiest way to get started is by cloning this repository and then link the folder with `npm install` or `yarn add`.","directories":{},"_nodeVersion":"15.0.1","dependencies":{"@types/node":"^13.11.0","ua-parser-js":"^0.7.21","@types/ua-parser-js":"^0.7.33"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.8.3"},"_npmOperationalInternal":{"tmp":"tmp/dive-ts-web-sdk_1.5.2_1633621724585_0.11859919808102481","host":"s3://npm-registry-packages"}},"1.5.3":{"name":"@divegames/dive-ts-web-sdk","version":"1.5.3","author":"","license":"ISC","_id":"@divegames/dive-ts-web-sdk@1.5.3","maintainers":[{"name":"evgeny_mikhalev","email":"evgeny@cyclingbear.studio"},{"name":"eladdive","email":"elad@dive.games"},{"name":"federicosaenz","email":"federicosaenz@gmail.com"},{"name":"rmoralez","email":"rodrigo@dive.games"},{"name":"madcoder39","email":"ilya@cyclingbear.studio"}],"dist":{"shasum":"3c32bc039b45ed4ad6926673d9715f8ec806fc58","tarball":"https://registry.npmjs.org/@divegames/dive-ts-web-sdk/-/dive-ts-web-sdk-1.5.3.tgz","fileCount":111,"integrity":"sha512-gwQA9FHlt37uszFRXDDkZ1Kql7nmLC/Mo/jLVsBpQOGIhSrRdorti3C+NZ1JlXss4aEPMBixjkUfd7FJQWf3hw==","signatures":[{"sig":"MEUCIC1kdS8WGFUq0XQ4w3dvze+zIuLQ/DxhED0n5ffUoo+HAiEAsdltZNqfWc6mRwXec9bOca0yvF3j+1S9kMgvymn/kJc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":263223,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhzwt4CRA9TVsSAnZWagAA/9oQAIvi/8g/330zcVEjxZRU\ni/CbY0te6GWVj4AqdjwIDbmvkoncgnkB7sRIUm74WREIXMSL4qqivvpqwBaC\nZlKiJCisIPNvdqAIzhD9z9oRC6DDhXF7jIOq6rznxj3iAJPsTANt9xqv/KJ0\nWuQu3eUloDTIBUe/U8oUYtokALT1QaCm7BTVP+DBDSHp0MxjKBU6wKZCuwBt\nHfLMieIvQ0a+AYU+dYWFIprux/4kIeyaqWRZ63rd8QIvAjRToGMLxmGQg776\nynCHdMVNfthwsLsurMsOGYvnB9TJXr2hnZLhm6QX6megVWkPFwGi60Nar/05\niMHC6o7sEfeG9oKwRm8sR4RMvEqLKz3pNJBMAtp4miI7StJJx91H27sarde+\nnkO6FB0NX5ZP1TSFm3DmZG+/64rHjLh+vH7W5osIW0Vj5paxh+Rn8qaI1FvZ\nsKrF5zGe1IZNRLZMu0D1G1+fld/fPY4F8ldB2rOBNa0+jKZlEJRvpenx+iOP\n/MpLd+ax3xfcGaDiNicxZNPo8OIH5DIFZwg15wAwrOC59Mtbhwh4EkpVPp1K\ny+OD8SZbJweLdgIw5UQg7KJsLGoEQfG70GOb8Ca7QoF6sEw5REVd4UIomFD1\nwkR9yhV4kFC5NRxwtBnlhEF9N4ZkVpmGIOjbnS4Gd05b1dxuOyl69tWBS54a\nZ1Nf\r\n=QeSO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","gitHead":"362cf2fa4417fe0a2294f7e643bf831d184fb929","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc"},"_npmUser":{"name":"evgeny_mikhalev","email":"evgeny@cyclingbear.studio"},"_npmVersion":"7.0.3","description":"Our SDK is written entirely in typescript with no native code requirements. The easiest way to get started is by cloning this repository and then link the folder with `npm install` or `yarn add`.","directories":{},"_nodeVersion":"15.0.1","dependencies":{"@types/node":"^13.11.0","ua-parser-js":"^0.7.21","@types/ua-parser-js":"^0.7.33"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.8.3"},"_npmOperationalInternal":{"tmp":"tmp/dive-ts-web-sdk_1.5.3_1633963669341_0.1543628920732567","host":"s3://npm-registry-packages"}},"1.5.4":{"name":"@divegames/dive-ts-web-sdk","version":"1.5.4","author":"","license":"ISC","_id":"@divegames/dive-ts-web-sdk@1.5.4","maintainers":[{"name":"evgeny_mikhalev","email":"evgeny@cyclingbear.studio"},{"name":"eladdive","email":"elad@dive.games"},{"name":"federicosaenz","email":"federicosaenz@gmail.com"},{"name":"rmoralez","email":"rodrigo@dive.games"},{"name":"madcoder39","email":"ilya@cyclingbear.studio"}],"dist":{"shasum":"4538873467d94b87fea53cd6eac6bf8be5744231","tarball":"https://registry.npmjs.org/@divegames/dive-ts-web-sdk/-/dive-ts-web-sdk-1.5.4.tgz","fileCount":111,"integrity":"sha512-XclYCIeMP1cOa1M2qpTqah1FqZq3IMI7oxfq+k898/99Nvf6wBu6T8Sihy8Zy5PR3NWV7UZ3l7XkTZT/OdHjOQ==","signatures":[{"sig":"MEUCIBDUrX/zhn0/7V/oMUM43/2oa3Hde5yDcSzZtxSAdIvrAiEAjfa165y7zArG85zjioTWFnfEM0hygSRJ7bWv/BVFFPs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":265690,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiIrrlACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq5mA/8Dn9YqcnKy0q17AID/AWUfoZ8ugs9bFyjFwpahNMIJgnBqJfw\r\nheJCshqqEjz5ijzgWy4yFIUV0P4SO3//q7CX+zRRPLPipElswvTqmsWKsEgL\r\nC31a/BvMfVjy4nBU7tspx2lU+3daOC67P1x+gBIBq9jn3zHDlEhmxNLCmTYd\r\nqeud0UFjNXoIq6RtEKuRPpcPNKXcltzaU6K1DRdWRn3mkokmgIYHZzUYTFAs\r\nZ4XNXrIOXzi/8U++qQ7D9/Ha5yRy89I1NEgvOgSZ+k348EebJDtkuFCeUh01\r\nq8VcP6sD60o238yo8nAvYqCtLPcZxrpGVMZKsxFZ65497iGE1lrtxkFVJuHA\r\nHUNacd+HrLnS6jqnJb+pXXDyanSqr5nzmyMYFZcYUzrTXCT/4k/3MytQ3iZw\r\nI06jxmbXj4wbf2Esb0W1sA8ozDNg19AB1SEliRZXC0czu45x8V5bu0qqRg9K\r\nGqHhSI8KMR4S0ZYp5RiahlNYbt+yHf+w+Y5yb5FQnVScz4iE1bCSIAKXKyma\r\nr01N5HKDlo5S9vurDup/1cp4MsnJ+RAPbNqza7DFa276LKEfYwEb93ZSe1du\r\nWi6PJfazzxiwBdEompjN22+gjsXCPpeZZ25udmh2GhCOeezVSSaX2NcMCuZC\r\n0cxATQlSVQ5Z7EgOfstzwa+WN+jojcUJOTM=\r\n=ViWO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","gitHead":"4f5fe6866178fd8b562b670378fd5de3041b63b6","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc"},"_npmUser":{"name":"federicosaenz","email":"federicosaenz@gmail.com"},"_npmVersion":"7.9.0","description":"Our SDK is written entirely in typescript with no native code requirements. The easiest way to get started is by cloning this repository and then link the folder with `npm install` or `yarn add`.","directories":{},"_nodeVersion":"12.2.0","dependencies":{"@types/node":"^13.11.0","ua-parser-js":"^0.7.21","@types/ua-parser-js":"^0.7.33"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.8.3"},"_npmOperationalInternal":{"tmp":"tmp/dive-ts-web-sdk_1.5.4_1646443236910_0.8439222241425424","host":"s3://npm-registry-packages"}},"1.5.5":{"name":"@divegames/dive-ts-web-sdk","version":"1.5.5","author":"","license":"ISC","_id":"@divegames/dive-ts-web-sdk@1.5.5","maintainers":[{"name":"evgeny_mikhalev","email":"evgeny@cyclingbear.studio"},{"name":"eladdive","email":"elad@dive.games"},{"name":"federicosaenz","email":"federicosaenz@gmail.com"},{"name":"rmoralez","email":"rodrigo@dive.games"},{"name":"madcoder39","email":"ilya@cyclingbear.studio"}],"dist":{"shasum":"ed772b4982df9ada3d014e8bff3696fa68999e42","tarball":"https://registry.npmjs.org/@divegames/dive-ts-web-sdk/-/dive-ts-web-sdk-1.5.5.tgz","fileCount":111,"integrity":"sha512-8ez3X8poJcDBMM53C2QJ9YgUOtI1OUK9McUVgewIgg+hk8EQO4n6bEDxMFY5g8p7/4viA7XrtAXu/UVNUJGxJg==","signatures":[{"sig":"MEUCIQDfincUOgariu6gebxGRdqzVNdebw7FscUcWSZm0ZBC8QIgB0tYYXcDMZs5H1u0oFnPHF/GTrW/f5FBxZQ+nrRz8fo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":265937,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiZ/AHACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrDcw//bsmk6Tu7dqcfB1spkXvecqR2C0Du0Rhw1yvWY6YQm/i5S15E\r\nxbp4hmF4DRELMhgFiYo+DWkFb6H6F2/GeVRNYqAfvR6B9bkLolWM8i/rOofD\r\ne0yke7pUv64QY+OU5c1IzSDHbhR/Gv011nBXVhDaA9DV5r7qamRpE4vFUXx0\r\n0iDR8PaO4uygDnsT/q3GrJdptda/dUmOJ2px4pQDwhVvMogJ6bQNuzmheNXc\r\n1ROuy0vt4f3VL3820xvFKhdPkI+xYGzuLHtzyPQGNirllkHBGneHi1IBTos0\r\ngA72NSoE1+T00ZFrzY2MAr6i9WK2HzUWIxajPxT2o61NBFh3O4JSzghMxMwx\r\nRqCXnxVPwZPeHiWp2jOwAg8Acnb8zd+w6L1jiVEBaQ/VnM4RqWAw41m4OJhC\r\nnFRETA/kgasRTp4mwJ0ilZRaAYe4ow/skMY5Z14gy7t5a4ZLBWD/cpIyfQ1J\r\nVLEP7lv2Q+Xcsd4piSQcbMQvPZV8rMka+gmTxWLuivxHILxK4OQHqRinDcyM\r\no24n6qg9+0WUh1ZxVW14qFKplT3b53YFkwTDjFXqctgQShQkFvKd0Bzwu+80\r\nZy/D5YGs6yp0VFYfXqprG2fmXMTE97Ea8wGBOQwLiPW5HAKTQjNspEJqSZ7I\r\nRlowi9LxR5u2nj/Ct7Dk6xaOng24LPUedQg=\r\n=Axgk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","gitHead":"2e482fd81546feab6533e6765957b34705638f5b","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc"},"_npmUser":{"name":"federicosaenz","email":"federicosaenz@gmail.com"},"_npmVersion":"7.9.0","description":"Our SDK is written entirely in typescript with no native code requirements. The easiest way to get started is by cloning this repository and then link the folder with `npm install` or `yarn add`.","directories":{},"_nodeVersion":"12.2.0","dependencies":{"@types/node":"^13.11.0","ua-parser-js":"^0.7.21","@types/ua-parser-js":"^0.7.33"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.8.3"},"_npmOperationalInternal":{"tmp":"tmp/dive-ts-web-sdk_1.5.5_1650978822793_0.38483683171468064","host":"s3://npm-registry-packages"}},"1.5.8":{"name":"@divegames/dive-ts-web-sdk","version":"1.5.8","keywords":[],"author":"","license":"ISC","_id":"@divegames/dive-ts-web-sdk@1.5.8","maintainers":[{"name":"evgeny_mikhalev","email":"evgeny@cyclingbear.studio"},{"name":"eladdive","email":"elad@dive.games"},{"name":"federicosaenz","email":"federicosaenz@gmail.com"},{"name":"rmoralez","email":"rodrigo@dive.games"},{"name":"madcoder39","email":"ilya@cyclingbear.studio"}],"homepage":"https://gitlab.com/divegames/typescript-sdk#readme","bugs":{"url":"https://gitlab.com/divegames/typescript-sdk/issues"},"dist":{"shasum":"96c982aee2662b5f1fd62b72a7bb30742dba507f","tarball":"https://registry.npmjs.org/@divegames/dive-ts-web-sdk/-/dive-ts-web-sdk-1.5.8.tgz","fileCount":111,"integrity":"sha512-Z871dl78Ks1E4I61YdsXB+uVD5UIVR5ASZ31FVGT6jwJScuit6qI8vfNzG8EO70H0T7IRBi8iGp78XvzNPrNpA==","signatures":[{"sig":"MEUCIQDAU43PCcfWyD4JMMbWk4ibnQRPs8sm21pPKqhy6rARXwIgOQPLZRdl1/xRO3EZczakeksELa34LMJGzgUOVTl5Fkg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":267519,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjf3XtACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmokVw/8CAqhgGceUw1xSd0qhbZYBnhewaJpBOfgpxsWvkJkFGYc5M1f\r\ny+7NhZ90KHYxLeU0ubrnJFfTbhG/7AZcn7i+s6isrOSCd/JZ3kvs0MwQmz7A\r\nwR5HV3Xp2tHvKpyP7bId7lmMTKxbY7AGWUgcmBwaVhrDL+4ubiCoW8A0m2zh\r\nTOoE+RCcq/7me4/+0OoQ4C3OcpqThLpR49t+jEbv371kbQpJ0IhJSr2CXTg2\r\nyfBc0S5pRKTCZSyOzHDIsMmWPmnUP+1GjX8+Lm6My8Gu3shKYAKC0vvuS2Js\r\naBSpGDtx4n2jbART6XIG3xGctHa4ihFJly48jArX2T303XOyUR2QOlVu+C6t\r\n8qD/ObKv28vlY08fnQOQU9tyM1PwsxUJWfDqBURt2NCUUMp94l9b/9BHzcwj\r\nXqFkFTC+k7lRdWe12KN9t3p+BgMHc8BWFMRSwe0J9c5opW63vZg0CcHYZVa2\r\n5UlWjVHvpxFu+GK6cfY32cmwun0/99dTvxQY+AGn3ewBeCjDGl2AT7isKJ4d\r\n+HLc9xNpsD6uZ2ZhnZT3xfUaaik/zAb6gad1QOu4H8O6GRCPsOIwcxz6coU9\r\n6ZVHinaTR0aNOOKR8BF/U0+nmQPJb8Q5xZdngpOwrEXorneSHTcS7QLJwy38\r\nz0XaJHlzQP+tIic/Pv3ziLRKkK5GLniTP/k=\r\n=cUpi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","gitHead":"353adf3254e88a303e9a6a92b5af2ab052827f28","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc"},"_npmUser":{"name":"rmoralez","email":"rodrigo@dive.games"},"repository":{"url":"git+https://gitlab.com/divegames/typescript-sdk.git","type":"git"},"_npmVersion":"6.14.17","description":"Our SDK is written entirely in typescript with no native code requirements. The easiest way to get started is by cloning this repository and then link the folder with `npm install` or `yarn add`.","directories":{},"_nodeVersion":"12.16.2","dependencies":{"@types/node":"^13.11.0","ua-parser-js":"^0.7.32","@types/ua-parser-js":"^0.7.33"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.8.3"},"_npmOperationalInternal":{"tmp":"tmp/dive-ts-web-sdk_1.5.8_1669297645017_0.76870833804993","host":"s3://npm-registry-packages"}},"1.5.9":{"name":"@divegames/dive-ts-web-sdk","version":"1.5.9","keywords":[],"author":"","license":"ISC","_id":"@divegames/dive-ts-web-sdk@1.5.9","maintainers":[{"name":"evgeny_mikhalev","email":"evgeny@cyclingbear.studio"},{"name":"eladdive","email":"elad@dive.games"},{"name":"federicosaenz","email":"federicosaenz@gmail.com"},{"name":"rmoralez","email":"rodrigo@dive.games"},{"name":"madcoder39","email":"ilya@cyclingbear.studio"}],"homepage":"https://gitlab.com/divegames/typescript-sdk#readme","bugs":{"url":"https://gitlab.com/divegames/typescript-sdk/issues"},"dist":{"shasum":"1576a8d9ab044f8b07ab87675d26dce9fa4ffe58","tarball":"https://registry.npmjs.org/@divegames/dive-ts-web-sdk/-/dive-ts-web-sdk-1.5.9.tgz","fileCount":111,"integrity":"sha512-3Grd6zRIri6yWXHsq1EIAO/nKsZ+sbxwI7QaRZ34F7QyP0lip/7wjTV2yXAzQi+kBe80bT9qi6W30NERZtFw7w==","signatures":[{"sig":"MEUCIQCuseV4di2iwuKBUpQC1DpT7Ttm4QpT8wxUSVPbz+v5FQIgSwqo+k3Nxg84xF+mVaPjb8Z5+DLVByiREByllWuNKO4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":267519,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjpZxfACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo6qhAAgMoKl6Fso5/vFZUlv1FrIysbQw2hRinGBdxioh/CmB4R3gcm\r\n2yK/kSTLWhhNB0oS2PBV4xjgYywKphVNMr2utKX26iyVFFpeAxACXrJ2Ozeo\r\noyuLPCvZRwFBi4+WPCGqRfq8otc4QywSc0JEn0NGwv63+Tb/JT7U5SbOXaol\r\niIGfm+9J98WHz/F3F7kPtasEcikTw0jQOe6hYNBrq2KX4eZRJgGQKGvE/XYa\r\ngvDFEJZ3jsjf7UugvjUBCJmJLIdOExXRNtPlucU67IH3/EB9999Dp2ajvAwO\r\ni/EfkslZ8/Yvg2htD7eD+1XKEJITi2ODBHNkfGI7mndh2VGoPCG5c7f9Pb1c\r\n10wtraXw2bZljhIDI87bk/v1Qqj8wlRe4VyUF8LyJAVL1aFaYJtNnpFBTlyp\r\nbbLNKI5h950NASOZCMSbqYHh5SBBZ1w/08710+RinCbiFkRVORtM8nnYg6ic\r\nL5nOAhh5md8KfL4I6Nz64t53f4yVMOppN93tBSgVPTIeMIBiGmygrM4Q2A9E\r\nPKLP6mUfBehmZTgB674sQ3Qjtw//A6+f+YcWHUUr1PVlrx6YBqxZ66KgLFMA\r\nRGuNYzCItdZvSIgSDXOMa8iSdWpwAn2fQ/OGW++m3tERW13hWnmUftRxZ5BM\r\nSWXxC4nPMkjEjopm6X1QAg+vFsRB5usyf2o=\r\n=IGEj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","gitHead":"a8ca75ee9a77eb85b82aca92606527d7f7cfa8b2","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc"},"_npmUser":{"name":"rmoralez","email":"rodrigo@dive.games"},"repository":{"url":"git+https://gitlab.com/divegames/typescript-sdk.git","type":"git"},"_npmVersion":"6.14.17","description":"Our SDK is written entirely in typescript with no native code requirements. The easiest way to get started is by cloning this repository and then link the folder with `npm install` or `yarn add`.","directories":{},"_nodeVersion":"12.16.2","dependencies":{"@types/node":"^13.11.0","ua-parser-js":"^0.7.32","@types/ua-parser-js":"^0.7.33"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.8.3"},"_npmOperationalInternal":{"tmp":"tmp/dive-ts-web-sdk_1.5.9_1671797854997_0.6295750653265355","host":"s3://npm-registry-packages"}},"1.5.10":{"name":"@divegames/dive-ts-web-sdk","version":"1.5.10","keywords":[],"author":"","license":"ISC","_id":"@divegames/dive-ts-web-sdk@1.5.10","maintainers":[{"name":"evgeny_mikhalev","email":"evgeny@cyclingbear.studio"},{"name":"eladdive","email":"elad@dive.games"},{"name":"federicosaenz","email":"federicosaenz@gmail.com"},{"name":"rmoralez","email":"rodrigo@dive.games"},{"name":"madcoder39","email":"ilya@cyclingbear.studio"}],"homepage":"https://gitlab.com/divegames/typescript-sdk#readme","bugs":{"url":"https://gitlab.com/divegames/typescript-sdk/issues"},"dist":{"shasum":"fcc0550e75aadc80df35841ffafc04f36f3ec682","tarball":"https://registry.npmjs.org/@divegames/dive-ts-web-sdk/-/dive-ts-web-sdk-1.5.10.tgz","fileCount":111,"integrity":"sha512-OA0KCzyBbxfsUblj4b/oWqc9RICStUbT++VZFQDfB3LTdWd+Tg4UkoQPiUK4bg5ZHBhSca2UMX58vb26swXSGA==","signatures":[{"sig":"MEUCIH30fhwY5Z3O88lDTj1Bdu4btd5ulwy3omv2ZpgqTljDAiEA7onxkWkcPUyHyi9GY++O9xYNDZSGP6/nELZbVfPAjGE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":267090,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjpZ76ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrcMw/8DQ9QA4QpgHCtT/h32xyvUiRDrZ8G1mROt5tNNfa5bNwg6E8o\r\nfKpiR/nksONZvy0WFO/XChx6801V4NGXjL+4Ui4HXl3i4xmFzo8rrG3R/VLq\r\nk0nR631FwpSOjGBkOZvnOAenTtPTvyCz1JhMIhPhwy0pxhvYLm7AAbOmPmum\r\nV5bWJKOyi2DjT+RxvYp2LVH5USLECqlRde/WFT0RcY8wIGYk3qim8R6KjYrM\r\nVoXbrOfUgYc8uHtzsU+dziE1tEOExFxiNQCIMuPUol9100MmiV0k8jsMy/Ej\r\n4LEdWrQCCTNdFUBgZn+nWqxvJ7y8JKoGkGuC7AoHyHY7iIojlJRQHmAe8jA8\r\n6NhbDtcSyi1/u9PmbY04jhVTZXYwNEOandChEMNA3Ng+EIApo00PvACa5Xy3\r\ntYuRhzulz1idJa2J5E6fTBNK+nPmupDBMOxs2D4HCbIaLoMHhoVp9Q6jG3/B\r\nSUBTBVtS+Cmh33rQJQzhsHKfxJ+RqVbaraibcdklLGynPVSquLoeW8GKpGB/\r\ndp3n6n+CPXpFOi+Tz08x61Xdxpjd7UcvWfgMmUnsLU+GVnvtZ0/GwhtI2PuV\r\nfIplh62bIaqpFjw7YFp2vTgy3Bk8Bc4/zHe5XsP8yeGC1ncBkRLe9od2EUya\r\n0hwaiJq0+2ksGQae41AeKw+PfIJc+U/cz1E=\r\n=lDEh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","gitHead":"5be4174f7cc4363033443ec004666953167fb668","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc"},"_npmUser":{"name":"rmoralez","email":"rodrigo@dive.games"},"repository":{"url":"git+https://gitlab.com/divegames/typescript-sdk.git","type":"git"},"_npmVersion":"6.14.17","description":"Our SDK is written entirely in typescript with no native code requirements. The easiest way to get started is by cloning this repository and then link the folder with `npm install` or `yarn add`.","directories":{},"_nodeVersion":"12.16.2","dependencies":{"@types/node":"^13.11.0","ua-parser-js":"^0.7.32","@types/ua-parser-js":"^0.7.33"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.8.3"},"_npmOperationalInternal":{"tmp":"tmp/dive-ts-web-sdk_1.5.10_1671798522485_0.3571831425922136","host":"s3://npm-registry-packages"}},"1.6.2":{"name":"@divegames/dive-ts-web-sdk","version":"1.6.2","keywords":[],"author":"","license":"ISC","_id":"@divegames/dive-ts-web-sdk@1.6.2","maintainers":[{"name":"evgeny_mikhalev","email":"evgeny@cyclingbear.studio"},{"name":"eladdive","email":"elad@dive.games"},{"name":"federicosaenz","email":"federicosaenz@gmail.com"},{"name":"rmoralez","email":"rodrigo@dive.games"},{"name":"madcoder39","email":"ilya@cyclingbear.studio"}],"homepage":"https://gitlab.com/divegames/typescript-sdk#readme","bugs":{"url":"https://gitlab.com/divegames/typescript-sdk/issues"},"dist":{"shasum":"77a7441ff62715e6325118110d62c9182299b8a5","tarball":"https://registry.npmjs.org/@divegames/dive-ts-web-sdk/-/dive-ts-web-sdk-1.6.2.tgz","fileCount":111,"integrity":"sha512-PVudhHYaOG1M+MLIiNV2iuoIK5t1TjDN6mCiMDDkfJzOwpT/yhA3jGumSTznTRQWx8CB9cQVabwNiSZyzbxJbQ==","signatures":[{"sig":"MEQCIH9fCUqQLNheFxjmOnFsOKJtNVw2vy0um3KHT/UNuBJdAiAbbrln200ys4vB8mI7OGPMehiiyfgn3oHoCKvn3jdoPA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":266184},"main":"build/index.js","types":"build/index.d.ts","gitHead":"3418cf8352ecb0069effcbef9feff032b0b608ad","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc"},"_npmUser":{"name":"rmoralez","email":"rodrigo@dive.games"},"repository":{"url":"git+https://gitlab.com/divegames/typescript-sdk.git","type":"git"},"_npmVersion":"9.8.1","description":"Our SDK is written entirely in typescript with no native code requirements. The easiest way to get started is by cloning this repository and then link the folder with `npm install` or `yarn add`.","directories":{},"_nodeVersion":"20.3.1","dependencies":{"@types/node":"^13.11.0","ua-parser-js":"^0.7.32","@types/ua-parser-js":"^0.7.33"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.8.3"},"_npmOperationalInternal":{"tmp":"tmp/dive-ts-web-sdk_1.6.2_1709555455461_0.03073415009159719","host":"s3://npm-registry-packages"}},"1.6.6":{"name":"@divegames/dive-ts-web-sdk","version":"1.6.6","keywords":[],"author":"","license":"ISC","_id":"@divegames/dive-ts-web-sdk@1.6.6","maintainers":[{"name":"eladdive","email":"elad@dive.games"},{"name":"federicosaenz","email":"federicosaenz@gmail.com"},{"name":"rmoralez","email":"rodrigo@dive.games"},{"name":"madcoder39","email":"ilya@cyclingbear.studio"},{"name":"evgeny_mikhalev","email":"evgeny@cyclingbear.studio"}],"homepage":"https://gitlab.com/divegames/typescript-sdk#readme","bugs":{"url":"https://gitlab.com/divegames/typescript-sdk/issues"},"dist":{"shasum":"ebeccb57ccc75f167d82022247303c6fd03dd85b","tarball":"https://registry.npmjs.org/@divegames/dive-ts-web-sdk/-/dive-ts-web-sdk-1.6.6.tgz","fileCount":111,"integrity":"sha512-ST1Cn8VEh65nfIWDlja+Caws9CElh58dijzWDbAZWoNTIxhqwO41VPD5WlCqbKRu9lIqRsDxfxEg/pIWFDuGaw==","signatures":[{"sig":"MEQCIHsWIC8V8Bomb2shbRPEJm2J1miMyQZ9ZvdcDM1ERx+mAiBW/bg7wZWig/kQZ9v8LevDZrGnoVcEtYsVm9k9+BMrBw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":268409},"main":"build/index.js","types":"build/index.d.ts","gitHead":"a604e9f49b1de01f717ed1b5e53d17a92e4ab35c","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc"},"_npmUser":{"name":"rmoralez","email":"rodrigo@dive.games"},"repository":{"url":"git+https://gitlab.com/divegames/typescript-sdk.git","type":"git"},"_npmVersion":"9.8.1","description":"Our SDK is written entirely in typescript with no native code requirements. The easiest way to get started is by cloning this repository and then link the folder with `npm install` or `yarn add`.","directories":{},"_nodeVersion":"20.3.1","dependencies":{"@types/node":"^13.11.0","ua-parser-js":"^0.7.32","@types/ua-parser-js":"^0.7.33"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.8.3"},"_npmOperationalInternal":{"tmp":"tmp/dive-ts-web-sdk_1.6.6_1738268242053_0.4276855082018065","host":"s3://npm-registry-packages-npm-production"}},"1.6.7":{"name":"@divegames/dive-ts-web-sdk","version":"1.6.7","keywords":[],"author":"","license":"ISC","_id":"@divegames/dive-ts-web-sdk@1.6.7","maintainers":[{"name":"eladdive","email":"elad@dive.games"},{"name":"federicosaenz","email":"federicosaenz@gmail.com"},{"name":"rmoralez","email":"rodrigo@dive.games"},{"name":"madcoder39","email":"ilya@cyclingbear.studio"},{"name":"evgeny_mikhalev","email":"evgeny@cyclingbear.studio"}],"homepage":"https://gitlab.com/divegames/typescript-sdk#readme","bugs":{"url":"https://gitlab.com/divegames/typescript-sdk/issues"},"dist":{"shasum":"4496fc737255a3a17a8842dcb5e02412cab7d2a4","tarball":"https://registry.npmjs.org/@divegames/dive-ts-web-sdk/-/dive-ts-web-sdk-1.6.7.tgz","fileCount":111,"integrity":"sha512-rCwyAAK0eLgJKgOgU5zp94a2kOX9aKXEXB4v+ARIRjHQtcQm9pcITCpzKi/ra5cw5jIF4CVxQ3fE0OfO2hPFOA==","signatures":[{"sig":"MEQCIB5Caynut8Ci4fCMXMRxtvzvC7m4zgYlwKxYr6Bjnj5yAiAP7jObOn7PQpwWy1gRhIpsQ0qbzBzQNIJQ8VtUmkHlMg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":267364},"main":"build/index.js","types":"build/index.d.ts","gitHead":"825814e92c7c1048657877907a272d37583aff92","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc"},"_npmUser":{"name":"rmoralez","email":"rodrigo@dive.games"},"repository":{"url":"git+https://gitlab.com/divegames/typescript-sdk.git","type":"git"},"_npmVersion":"9.8.1","description":"Our SDK is written entirely in typescript with no native code requirements. The easiest way to get started is by cloning this repository and then link the folder with `npm install` or `yarn add`.","directories":{},"_nodeVersion":"20.3.1","dependencies":{"@types/node":"^13.11.0","ua-parser-js":"^0.7.32","@types/ua-parser-js":"^0.7.33"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.8.3"},"_npmOperationalInternal":{"tmp":"tmp/dive-ts-web-sdk_1.6.7_1738345362696_0.4043729607991371","host":"s3://npm-registry-packages-npm-production"}},"1.6.8":{"name":"@divegames/dive-ts-web-sdk","version":"1.6.8","keywords":[],"author":"","license":"ISC","_id":"@divegames/dive-ts-web-sdk@1.6.8","maintainers":[{"name":"eladdive","email":"elad@dive.games"},{"name":"federicosaenz","email":"federicosaenz@gmail.com"},{"name":"rmoralez","email":"rodrigo@dive.games"},{"name":"madcoder39","email":"ilya@cyclingbear.studio"},{"name":"evgeny_mikhalev","email":"evgeny@cyclingbear.studio"}],"homepage":"https://gitlab.com/divegames/typescript-sdk#readme","bugs":{"url":"https://gitlab.com/divegames/typescript-sdk/issues"},"dist":{"shasum":"99e26b1e44a44af9c6613d181b27ad9d714d69f8","tarball":"https://registry.npmjs.org/@divegames/dive-ts-web-sdk/-/dive-ts-web-sdk-1.6.8.tgz","fileCount":111,"integrity":"sha512-ghCX/6sq2S93oQ39JJXvKK2waZDFxKLSzb8i0YvlMA3r58B8QNJ83swyBij+890nu9TSO3PVpmNQS/RiSGw4xw==","signatures":[{"sig":"MEQCIA/fH/Bx0r6jaNuQeFRaSerMQ8WGV5UnqmlKIruXFoARAiBpjQXxWPXl8k0wQFm8oLMI78tqO81KQsqGpShMEZtm+w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":266485},"main":"build/index.js","types":"build/index.d.ts","gitHead":"825814e92c7c1048657877907a272d37583aff92","scripts":{"test":"echo \"Error: no test specified\" && exit 1","build":"tsc"},"_npmUser":{"name":"rmoralez","email":"rodrigo@dive.games"},"repository":{"url":"git+https://gitlab.com/divegames/typescript-sdk.git","type":"git"},"_npmVersion":"9.8.1","description":"Our SDK is written entirely in typescript with no native code requirements. The easiest way to get started is by cloning this repository and then link the folder with `npm install` or `yarn add`.","directories":{},"_nodeVersion":"20.3.1","dependencies":{"@types/node":"^13.11.0","ua-parser-js":"^0.7.32","@types/ua-parser-js":"^0.7.33"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^3.8.3"},"_npmOperationalInternal":{"tmp":"tmp/dive-ts-web-sdk_1.6.8_1738580740378_0.8496528429881567","host":"s3://npm-registry-packages-npm-production"}},"1.6.9":{"name":"@divegames/dive-ts-web-sdk","version":"1.6.9","description":"Our SDK is written entirely in typescript with no native code requirements. The easiest way to get started is by cloning this repository and then link the folder with `npm install` or `yarn add`.","main":"build/index.js","types":"build/index.d.ts","scripts":{"build":"tsc","test":"echo \"Error: no test specified\" && exit 1"},"author":"","license":"ISC","devDependencies":{"typescript":"^3.8.3"},"dependencies":{"@types/node":"^13.11.0","@types/ua-parser-js":"^0.7.33","ua-parser-js":"^0.7.32"},"repository":{"type":"git","url":"git+https://gitlab.com/divegames/typescript-sdk.git"},"keywords":[],"bugs":{"url":"https://gitlab.com/divegames/typescript-sdk/issues"},"homepage":"https://gitlab.com/divegames/typescript-sdk#readme","_id":"@divegames/dive-ts-web-sdk@1.6.9","gitHead":"9ae0a42b92a607dc19eb6e27eb6d713857752ea4","_nodeVersion":"20.3.1","_npmVersion":"9.8.1","dist":{"integrity":"sha512-gh4x9axTh7GvQAmgQE/GVtESrTywnJoXFrC+iNlrBKQQuijUC+d69H6slswoOGrECIyIIrdo5dX7+y3U6MhJYA==","shasum":"781814a7d5e2d5446b5eb64bc89416ff3de4e191","tarball":"https://registry.npmjs.org/@divegames/dive-ts-web-sdk/-/dive-ts-web-sdk-1.6.9.tgz","fileCount":111,"unpackedSize":266727,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCiaaLfuFW5GD867Czi4GXymuAy4fLEBXhOI1lmon5n1QIhAKawMTX/0nlMaFu7OmhUboN/QEOFVF/ZuLqsEvYSmjls"}]},"_npmUser":{"name":"rmoralez","email":"rodrigo@dive.games"},"directories":{},"maintainers":[{"name":"eladdive","email":"elad@dive.games"},{"name":"federicosaenz","email":"federicosaenz@gmail.com"},{"name":"rmoralez","email":"rodrigo@dive.games"},{"name":"madcoder39","email":"ilya@cyclingbear.studio"},{"name":"evgeny_mikhalev","email":"evgeny@cyclingbear.studio"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/dive-ts-web-sdk_1.6.9_1739203067115_0.8664380950740118"},"_hasShrinkwrap":false}},"time":{"created":"2020-12-28T17:11:05.734Z","modified":"2025-02-10T15:57:47.563Z","1.3.1":"2020-12-28T17:11:06.145Z","1.5.1":"2021-10-06T14:12:33.709Z","1.5.2":"2021-10-07T15:48:44.780Z","1.5.3":"2021-10-11T14:47:49.523Z","1.5.4":"2022-03-05T01:20:37.142Z","1.5.5":"2022-04-26T13:13:42.980Z","1.5.6":"2022-11-23T16:58:55.188Z","1.5.7":"2022-11-23T17:01:50.890Z","1.5.8":"2022-11-24T13:47:25.174Z","1.5.9":"2022-12-23T12:17:35.175Z","1.5.10":"2022-12-23T12:28:42.657Z","1.6.0":"2024-01-09T15:47:38.158Z","1.6.2":"2024-03-04T12:30:55.641Z","1.6.3":"2025-01-30T18:39:04.282Z","1.6.4":"2025-01-30T18:40:27.415Z","1.6.5":"2025-01-30T20:15:51.622Z","1.6.6":"2025-01-30T20:17:22.272Z","1.6.7":"2025-01-31T17:42:42.874Z","1.6.8":"2025-02-03T11:05:40.540Z","1.6.9":"2025-02-10T15:57:47.355Z"},"bugs":{"url":"https://gitlab.com/divegames/typescript-sdk/issues"},"license":"ISC","homepage":"https://gitlab.com/divegames/typescript-sdk#readme","keywords":[],"repository":{"type":"git","url":"git+https://gitlab.com/divegames/typescript-sdk.git"},"description":"Our SDK is written entirely in typescript with no native code requirements. The easiest way to get started is by cloning this repository and then link the folder with `npm install` or `yarn add`.","maintainers":[{"name":"eladdive","email":"elad@dive.games"},{"name":"federicosaenz","email":"federicosaenz@gmail.com"},{"name":"rmoralez","email":"rodrigo@dive.games"},{"name":"madcoder39","email":"ilya@cyclingbear.studio"},{"name":"evgeny_mikhalev","email":"evgeny@cyclingbear.studio"}],"readme":"# Dive Analytics Web Typescript SDK 1.6.9\n\nOur SDK is written entirely in typescript with no native code requirements. The easiest way to get started is by cloning this repository and then link the folder with `npm install` or `yarn add`.\n\n## Compatibility\nDiveSDK is a typescript lib. Works on any project that support typescript 3.8.3. However, use fetch, arrow functions and promises. Therefore: when you are going to compile it, if you want it to work in old browsers, make sure to use the appropriate polyfill for the browser version you want to make compatible.\n\n## Quick Start\n\n1. Clone the repository.\n\n2. Use the package manager [npm](https://www.npmjs.com/get-npm) to install the Dive Analytics Typescript SDK.\n\n   ```\n   npm install --save @divegames/dive-ts-web-sdk\n   ```\n\n3. Import the DiveSDK\n\n   ```javascript\n   import {DiveSDK} from '@divegames/dive-ts-web-sdk';\n   ```\n\n4. Call `DiveSDK.Init(DiveConfig)` with the provided configuration.\n\n## Init the SDK\n\nThe method `DiveSDK.Init(DiveConfig)` initializes the SDK and sends the `sdkStarted` event.\n\n* Call this method as early as possible and only once\n* Create a new `DiveConfig` and fill the following parameters\n\n### DiveConfig\n\nThe Dive Team will provide all configuration elements:\n\n* ```AppToken``` -  This is is the key that was generated for your game (UUID)\n* ```HashKey``` - Secret key used to hash the body of the events for consistency check with the server\n* ```AnalyticsURL```  - This is the custom URL of your event server. This can also be updated remotely via Remote Config\n* ```Environment``` - To properly test the events, use the `DEV` environment. If you are uploading the build to the stores use `PROD` environment.\n* ```HasIdentityConsent​```  - This defines how we track the player. If it is set to false all data is\nanonymous. Default Value: True.\n* ```ShowLogs​``` - This enables or disables the debug logs. Warnings and errors are always shown.\nDefault Value: True.\n* ```GameVersion``` - Config Game Version is required in the init\n* ```ApiURL```  - This is the custom URL for the API server, for now it is used for Remote Config (developer server). This can also be updated remotely via Remote Settings.\n* ```Domain```  - It's the domain (without subdomain) of the page that you want to track. For example, if you want to track sub.mysite.com, add mysite.com as a value.\nInit example\n\n```javascript\nimport {DiveSDK} from '@divegames/dive-ts-web-sdk';\n\nDiveSDK.Init({\n  AppToken: \"119bbf52-2248-416b-921d-16178847d121\",\n  HashKey: \"EBmKgrWfrdfkerTt4mPs6Fxgs3Nv4kSQgjhgrUuRDcdUEr24wj\",\n  AnalyticsURL: \"https://public.dive.games/fallback-events\",\n  ApiURL: \"https://apitest.dive.games\",\n  Environment: \"DEV\",\n  HasIdentityConsent​: true,\n  ShowLogs​: true,\n  GameVersion: \"1.0\",\n  Domain: \"dive.games\"\n});\n```\n\n### Restarting a session Manually\nIf you need to restart or renew an active player session, call `DiveSDK.Init(DiveConfig);` again.\n* This cleans all the data from the previous session including, `Custom Player Config` , `Started Checkpoints` and other session data.\n* You need to perform the same Init sequence again (see `Example Sequence` above )\n* The SDK automatically adds a `c_session_restarted_from` global header with the previous `c_session_id`\n\n\n## Custom Player Config\n\nDepending on your game, there are some configurations that MUST be set before launching the `DiveSDK.Launch();` \n\n* `DiveSDK.getInstance().SetPlayerId(playerID:string)`; - This sets the ID you use to track the player. \n* `DiveSDK.getInstance().SetServerSessionId(sessionID:string)`; - If your game has a custom server session id.\n* `DiveSDK.getInstance().SetPlayerLevel(currentLevel:number);` - This has to be setup on every startup and when the player levels up.\n* `DiveSDK.getInstance().SetPlayerXp(currentXp:number);` - This has to be setup on every startup and when the player gains xp.\n* `DiveSDK.getInstance().SetDiveCid(cid:string);` -  This sets the Dive campaign id. This will override the one detected in deep link.\n\n*Note: DiveSDK class accepts method chaining. So, it’s possible to write all the configuration in a single line, as shown below:*\n\n```typescript\nimport {DiveSDK} from '@divegames/dive-ts-web-sdk';\n\n//1. Init the SDK using DiveConfig\n\n//2. Set the Custom Player Config\nDiveSDK\n  .getInstance()\n  .SetPlayerId(\"1b314049-b9e8-4650-90ec-071f34d137ac\")\n  .SetServerSessionId(\"98e6e003-b4c2-4ac6-9176-0350cafb8108\")\n  .SetPlayerLevel(10)\n  .SetPlayerXp(9400)\n  .SetDiveCid(\"22\");\n\n//3. Trigger the launch with or without parameters\n\nDiveSDK.getInstance().Launch();\n```\n\n## Launch the SDK\n\nThe method `DiveSDK.getInstance().Launch();` sends the `appLaunched` event.\n\n- Call it as soon as you have all the information required. \n- This method automatically adds device information parameters to the event body .\n- Only call this event once in the player session. \n- The Dive Team might request some custom parameters to be passed to the Launch event.\n\nExample without custom parameters:\n\n```\nDiveSDK.getInstance().Launch();\n```\n\nExample with custom parameters:\n\n```typescript\nDiveSDK.getInstance()\n  .Launch(\n    new EventBody()\n      .AddParam(\"c_id\", 1903839193)\n      .AddParam(\"is_refreshed\", false)\n      .AddParam(\"extra_raw_params\", \"json string\")\n\t);\n```\n\n\n\n## Record Events\n\nYou can easily record custom events by using `DiveSDK.getInstance().RecordEvent` method and the `EventBody` class. \n\n1. Set the name of the event as string . \n2. Create a new `EventBody`() class. \n3. Call `AddParam(string,object)` to add custom event parameters to the event. \n\nFor example:\n\n```typescript\nDiveSDK.getInstance()\n\t.RecordEvent(\"userLoggedIn\", new EventBody() \n\t\t.AddParam(\"login_type\", \"guest\")\n\t\t.AddParam(\"coins\", 2000)\n\t\t.AddParam(\"gems\", 120)\n    );\n```\n\n**Important**: The EventBody class support adding any object type. Avoid sending entire data class objects with nested elements, consider using a JSON string and check with the Dive Team for special cases.\n\nSet the Logger with ShowLogs​ in the DiveSDK to debug the current data being sent to the server. Your data will appear in the \"body\":{ } the other elements are automatically added by the sdk.\n\nRaw JSON sent:\n\n```json\n{\n  \"name\": \"userLoggedIn\",\n  \"level_before\": 3,\n  \"xp_before\": 94000,\n  \"player_id\": \"34223465454\",\n  \"s_session_id\": \"b98d5fbe-80b0-417d-837c-11a23ab4ad32\",\n  \"game_ver\": \"1.0\",\n  \"app_token\": \"cc326318-7783-404f-83e5-7220bb34b960\",\n  \"platform\": \"web\",\n  \"env\": \"DEV\",\n  \"device_id\": \"c51348fb-8002-48ab-933e-9a20c1ef6e7f\",\n  \"c_session_id\": \"b26b2fac-4920-45cf-b1de-edf74564cb37\",\n  \"uuid\": \"2ad8c235-6541-41c2-b6cc-fbdb6a3896b6\",\n  \"timezone\": \"-0300\",\n  \"ts\": \"2020-07-27T16:54:06Z\",\n  \"timestamp_utc\": \"2020-07-27T19:54:06Z\",\n  \"unixts\": 1595879646,\n  \"sdk_ver\": \"TS Dive SDK 1.5.0\",\n  \"body\": {\n    \"login_type\": \"guest\",\n    \"coins\": 2000,\n    \"gems\": 120\n  }\n}\n```\n\n\n\n### ScreenViewed Event:\n\nTo properly track the user screen flow, call the `DiveSDK.getInstance().ScreenViewed` method as soon as you display the Screen to the player. (example: lobby, menu, store, etc.) \n\n* Call the method every time you show the screen. \n* Set the screen name as `string` parameter. \n* The Dive Team will provide a list of relevant screens to track.\n\n```typescript\nDiveSDK.getInstance().ScreenViewed(\"store\");\n```\n\nThe SDK will automatically remember the last screen viewed and send the correct screenViewed event\n\n\n\n### Error Event:\n\nTo create a `errorCreated` event call the `DiveSDK.getInstance().RecordError` method. This is commonly used when you have unexpected situations in your game. (example: The store receipt validation failed, your user logged out or similar) \n\n* Every error reported must have a error code as `string` \n* To put the error in context add a description as `string`\n\n```typescript\nDiveSDK.getInstance().RecordError(\"401\", \"Failed to validate Store Receipt. Invalid Token.\");\n```\n\n### Checkpoints Time Tracking:\nCheckpoints are used to measure periods of time in your game (example: asset loading, server calls, boot sequence or similar).\n\n* To `START` a checkpoint call `DiveSDK.getInstance().StartCheckpoint(string)` and pass the checkpoint name as `string`.\n* To `END` a checkpoint call `DiveSDK.getInstance().EndCheckpoint(string)` and pass the original checkpoint name as `string`.\n* Checkpoints names are unique, this means you have to end a checkpoint before starting a new one with the same name.\n* If needed, you can use these methods to track code execution time (example, how long takes to render a frame in milliseconds)\n* If you are measuring async methods or server calls, `EndCheckpoint` must be triggered from the methods callbacks.\n* Checkpoints count only the time the app is in focus by default, if you want to measure real time set `pauseOnBackgrounded` to `false` when starting the checkpoint. `DiveSDK.getInstance().StartCheckpoint(string, false)`.\n\nThe `SDK` automatically measures the time in `milliseconds` between both calls and sends the `checkpointStarted` and `checkpointEnded` events.\n\nExample:\n```typescript\n//1. Start a new checkpoint\nDiveSDK.getInstance().StartCheckpoint(\"load_assets\");\n\n//2. Call your code methods\n\n//3. When your task is finished, call the EndCheckpoint with the same starting name\nDiveSDK.getInstance().EndCheckpoint(\"load_assets\");\n```\n\n### Custom Event Headers:\n\nThis is a special method used for rare tracking conditions. Use only if requested by the Dive Team. \n\n- `DiveSDK.getInstance().SetCustomHeaderParam(headerName:string, headerValue:object);` \n\nLike the Custom Player Config, this must be set before launch event and the header will persist for all events in this session.\n\n```typescript\n//1. Set the Custom Header & other Custom Player Config\nDiveSDK.getInstance()\n  .SetPlayerId(\"34223465454\")\n\t.SetCustomHeaderParam(\"custom_tracking_campaing\", \"fb323451\");\n\n//2. Launch the sdk\nDiveSDK.getInstance().Launch();\n```\n## Remote Config\n\nThis service allows the client to fetch game configuration values from the API server.\n\n### Quick Start\n1. Set up the `ApiURL` in `DiveConfig` and `Init()` the sdk\n2. Call `GetRemoteConfig(playerId, onSuccess: (response) => void, onFail: (error) => void)`;\n3. Wait for the `onSuccess` callback response\n4. Read the `GetRemoteConfigResponse` and access the contents\n\nIMPORTANT : If you don't use a Custom Player ID use `DiveSDK.getInstance().GetDiveDeviceId()` as `playerId` parameter\n\n### RemoteConfigResponse (onSuccess)\n1. Contains a `object<string,string>` called `remoteConfig` with all the keys and values present on the server.\n2. Contains a `configVersion` `string`\n3. Contains the `metadataExperiment` array with information about the active experiments on the player\n\n### Accessing the Key-Value Dictionary \nYou can access remote config values with `GetValueOrDefault(key: string, defaultValue: any)`\n\n```typescript\nDiveSDK.getInstance().GetRemoteConfig(playerId: your_player_id_here, onSuccess: response => \n{\n    console.log(`Get Remote Config Sucess.`);\n    \n    const wheelsValue = response.remoteConfig.GetValueOrDefault(\"wheels\", 5);\n    const storePriceValue = response.remoteConfig.GetValueOrDefault(\"store_price\", 99.99);\n    const popupEnabledValue = rresponse.remoteConfig.GetValueOrDefault(\"is_popup_enabled\", true);\n    const textValue = response.remoteConfig.GetValueOrDefault(\"menu_text\", \"Main Menu\");\n    const offerEndTIme = response.remoteConfig.GetValueOrDefault(\"offer_end_time\", Date.now());\n    \n    console.log($` > wheelsValue: ${wheelsValue}`);\n    console.log($` > storePriceValue: ${storePriceValue}`);\n    console.log($` > popupEnabledValue: ${popupEnabledValue}`);\n    console.log($` > menu_text: ${textValue}`);\n    console.log($` > offer_end_time: ${offerEndTIme}`);\n    \n }, onFail: error => \n {\n    console.log(`Get Remote Config Failed. Error: ${error}`);\n });\n```\n\n### How Server fetch works\n* SDK attempts a maximum of 3 quick retries before returning `onFail`\n* SDK only fetch the results once every session (if the remote config was downloaded correctly)\n* SDK will always keep a local cache of the latest successful response from the server in case the player is offline or the server is down.\n* A/B Testing, Experiments and Segments are automatically handled by the server.\n\n\n\n## GDPR / CCPA ##\n\n### Forget Player\n\nBy using the method `DiveSDK.getInstance().SetOptOut(true)`; you can notify Dive when a user has exercised their right to be forgotten. \n\nThis will instruct the Dive SDK to communicate the user's choice to be completely forgotten from any type of tracking on the client and/or server. \n\nNo requests from this device will be sent to the server in the future. \n\nTo resume tracking use `DiveSDK.getInstance().SetOptOut(false);` \n\nThis will start tracking again in the next `DiveSDK.getInstance().Init(DiveConfig)`;","readmeFilename":"README.md"}