{"_id":"ts3d-hc-collabserver","_rev":"39-4f72846b81e3c88d6d6afdeb00659968","name":"ts3d-hc-collabserver","dist-tags":{"latest":"0.6.8"},"versions":{"0.1.5":{"name":"ts3d-hc-collabserver","version":"0.1.5","description":"## Overview This Library adds real-time collaboration support to any HOOPS Communicator based application by synchronizing a subset of the HOOPS Communicator API calls between multiple clients. This includes camera interaction, selection, markup & measure","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"181efe5454701620cee4b6a7f3ac49f1ab5abe4a","_id":"ts3d-hc-collabserver@0.1.5","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-Xbir8uZVSLzFVP/neJW9tiPjw3QyQuxR0p7Y0yAydKo4GyP6WSNPtSpSixlkdf9scHgB+Ci6nzNZGdS0PH4TsA==","shasum":"5e7e7571977ad7695940d73135f7724c106c75e7","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.1.5.tgz","fileCount":13,"unpackedSize":48620,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGhr32pWvvfuaCzbaCIIheqL1lPHMAoO/0Ewt80/XWqgAiB4W290fei4irJKl/OckNzJL2FiHIBZpMMv4UtiX23P3g=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjW94oACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoLlA//UsCTp2csR+JeQ+D3h6VvHk2rsIrhtsg9rnPTLJ7AsNIhnA5s\r\nmbM/allJ+MaC7ElhStdvTTycTI4F0NIbpOz9W4iPxuDbGFHl22GWixocz3Yy\r\nE2TqvWzRzGjIBUMXIEzQDAk2IQOIgUb7j94PiO0PviT5Fwap1TmFcSQhX6XL\r\nIHDOL9HeyVZOQidU0nXW+b+cjzyHEInVZaEpdNJy+nQaySxiHd5bfg1TgqOF\r\nQlfe2E0ut2alKqY7ginsuwa3+kQ9keSEMpXA12sl4K26e90kcNMnqrRNVZU2\r\nBcNzOHsJA9HKM+46UMq2WoZ/sX3+04DU3V0vx+I6LhzTD/1SvepCC+Xn2S/K\r\nB9He/9gajvgu/mkXsjgiFcTIVr1jdl8zzOKjUcq+lelOaRK1kbmK2M5Bye8W\r\nwkGnf7Gdh4EPPFIqD6XCWjmXVywaFvPq/9AeZQ9GbGCihxhU17ixNNppExB0\r\nkrvdtlNezGZ5soNws8qQScTCnbkFWdxqRAErWRbXEVWWKuuDOKzEy0eQNvag\r\n+y1yz9PJIm7E8X8SOq8La+++TPuSynMcT0sth6nBTeC9m+CiV743+Rg/PL35\r\nJCRWWttVh7rQezBP4JAt4eXxPivpwVKzH1IVo4OuunTmeOFw2lFl6tDTmaaF\r\nVhdiOi/ZQYGnF+i4Zt3Mybv7R2hSFP2yfMM=\r\n=67I5\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.1.5_1666965032272_0.9232438997378338"},"_hasShrinkwrap":false},"0.1.6":{"name":"ts3d-hc-collabserver","version":"0.1.6","description":"## Overview This library adds real-time collaboration support to any HOOPS Communicator based application by synchronizing a subset of the HOOPS Communicator API calls between multiple clients. This includes camera interaction, selection, markup & measure","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"181efe5454701620cee4b6a7f3ac49f1ab5abe4a","_id":"ts3d-hc-collabserver@0.1.6","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-gNNnXepcVQlA7mceF6JghkjfCEwA06ec7HQhhVDK1hSbOHI/R2UN7xTBAuRsowOT6XWwawv6Kg6OlwEmIttP+A==","shasum":"a84545d10c99200c874055ed88e35de7857d93ff","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.1.6.tgz","fileCount":13,"unpackedSize":48642,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH2tpSdJn6gQugUZjGu87cLhsSlR/TPgQ+f9m8iT0E7gAiEA+9aSjKI2dE24m+s9Ft3Uq0TtB0JiTJAyeZC9/K3py0c="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjW+AkACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpwYQ//W6IgmYJoCb//QHyMmehDCnrfyDqF4Y4EPq5uBVnhig/k9eRg\r\nzG3b9tpEwu/R5/H8uhvF5KNCT+Sx+tRfwHgp7s4zriK80Engnp4C4//gpdjZ\r\nsFA/8bf3rRZtTjJlHH8O3B5o0U9dnZkOTl9cneVoh+5XTHCdX/0LHD6IJ370\r\nFQ52HpnIvwg2MBtlLE/Tr/aSgoabPz4HU0piDZPuqv2lKH3zWvrCNcpL48Hw\r\n7veG3qkwNmP0I4wbrS/UmehBh5XxUPXVqFYsjSNVpqO5ZFZEHGqk9GJe7QWV\r\nAMgk6COQ7NjaqiZzr8C/n8fp6gMx0LkJDxUzvNBiUT9w7rwcRmFXwGvtZ+AU\r\n9YSx5sGNwRHlFhuNfCoYzaKeXiXeUjMsNysDoeScfP/7NrEatbv7NekKjKja\r\n3ssu/RMxdIko6XVez1VQAz0nN50HLszMXZQ7qw1/OIrkUFZIPXJNytpTdUCG\r\nD+xdRO/p3jnQ9XMOoNAxIGSbYEbIR5XK3A6Kzy/IrBGj243RW0Z311bPa4UL\r\nWR5DriKjwmKcQ18EGuRYrUHMOE272jCFVObLFucR2l4wJ3ZERRpE7hLMqW7C\r\nlO859npejfJEb1TxLBguV6kCfPWzM1ifWGR9Ohr69TbDQCdblfsxvklBFlx0\r\nCYrobQGijZh10KGCtBugnelJKrBA/7Ki1d4=\r\n=AOYe\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.1.6_1666965540379_0.4801778246505404"},"_hasShrinkwrap":false},"0.1.7":{"name":"ts3d-hc-collabserver","version":"0.1.7","description":"## Overview This library adds real-time collaboration support to any HOOPS Communicator based application by synchronizing a subset of the HOOPS Communicator API calls between multiple clients. This includes camera interaction, selection, markup & measure","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"f5817c598174c5865ae263dac901ff523d217479","_id":"ts3d-hc-collabserver@0.1.7","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-vWduc0mGhHrB2MOifcQw3X8NMXY22JaqovWoHSPh/5fH2CxE5r6YE0JzNbXY+Dd4RyKd6wxbDvWmHLgRWlV0Kg==","shasum":"39a3dc9c9d48e9cb4fcaf4bded0ca89981fb9314","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.1.7.tgz","fileCount":13,"unpackedSize":48754,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCBEC1OWcqWdnJWm+GuL8aOVvd7izdjdyw01binxmyTvQIgCTNGiN6eOGA+3teQsxQJDjDEqSUBstlqYuwVebx0+NI="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjXBxgACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqIVg//WD5x5wRzXX0mvqDnqOITMdA26ojf06E97gsUezUJQkby+OK8\r\njBR8tsXvVP580hUZ7EEekFSxt7lH7g7cgvZnEE5bjJGmv2ThIEscrfnPN51n\r\nOATbqLf65W/lhNntQyywvqAIOR1yjl73WQG8+xPPePYEwlm0ELebA/yi7xFM\r\nOS0nkIR3ZyWtXHlPknhEUiYgNx9lcCizqwSE6RhMYYEZaF1WcOWhkgU6TREf\r\nLnI/X3Hygd1uQvyzYZe+/BAPmzZ8lX95AWl+x2pVFsXfPVhSGGba5Vg3N8BQ\r\n+M05TWm6+MU11Yt3bScPLewUoVi+POis6ij0akWIaVYSp6qPw0Y7/W9DXbE2\r\nV1S5MQ93i9cXcyNYK/Uy4nRZoI4cBnpSrMcSYgPcEmpRZKLGa29D7qY1//Kn\r\nthe21rvWdOdGW914WkNyytxC0bEiUE2bGzPrgoZ+4VmGfdCQA3Z03I7wib5K\r\nZNMkGQjI/pEBmaG/xZ7aPH8YEYxWG1ZZ3//81+Ib2XK7TJMLtBb2fuu0JE0Z\r\n+7U2G51+7x/C8GLxgEwt+Uc3aYyBj/gZKCqlrL5d4UH1JRuMtK6y5jJ4wCdx\r\n2ODQIrFh5nqr8ntYSRnxHMhyhScjfM03cuAxAuz0tfL+Wqu7Z/YJ7/55Y4nJ\r\n6k8ueKF+CkZvOJtOL8k+T3tZmxz53D8heC8=\r\n=dz7U\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.1.7_1666980960736_0.31114300783360815"},"_hasShrinkwrap":false},"0.1.8":{"name":"ts3d-hc-collabserver","version":"0.1.8","description":"## Overview This library adds real-time collaboration support to any HOOPS Communicator based application by synchronizing a subset of the HOOPS Communicator API calls between multiple clients. This includes camera interaction, selection, markup & measure","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"0d6023209eef76d1c31790c0206e4c55897e94c2","_id":"ts3d-hc-collabserver@0.1.8","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-BSfQXPUjfQoW7l7zCRF1kX/Qmwj4LX8SxHeXa+0MNgdcy2K4P+X5z9VIwURki5WM5Hc062l+UuhuH7wv8qwvWA==","shasum":"d8164cd8c9bf4c9fbed9d4b6dbbe5f70496b71c5","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.1.8.tgz","fileCount":13,"unpackedSize":48945,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC0BU22sbW3YAe1gdcQ+XzqR4QfOda5f5EeKsWt9SqeoQIgFXQhwo0YYY9ll/JB6M1esYi2KBAThiknTxp832WtSrM="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjXDFrACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmp+NhAAk2LQpcU5FloDYOhDnekNh81OjT30tgrZ9OPyhgyxfhb72jF7\r\n/sUJBP8xEXcbNwuAd8ZbPoIksYog/18D9pZKvUQGn9I9TUT87VUQ0qPw63PG\r\nMZpsNNJc+ir3fWEh18BjUULUUJdpynHKyg1g0pYd3MA6DMgUG9dbjmwaD7YJ\r\nvJ0N2k3QH4wY84vjqCvH/yKFPLUfGLgKOSNosoda+qVszrAHu5LhaRkiO+kr\r\n6Hssi6Sq+Be7tClj8VAsWSE7Sw9lNEoEwfE+tX1HShJ9N8jMLNsboq19W89Y\r\n4rzofndtmuIYn45AgPCa8mqvWRljIOdN1HaifKzA7RLIWYkirxQWi78r/JSG\r\nS2XEzK0G6RtaLrBSSTO1Y/GcVdumkt96JDcM5VvCYI6s0JisbivLffrbhMsA\r\nvf8cp3lQwJzUgOVyGzm0nfV0lC3fzW0HhBv9YWeaysyxYAEn8MmVWB8q0me6\r\n00WTn4H3E5L2PS1Jc/jPjoPbe2yj9NDqMJD+nYlTqtsn7TR9XfZvRo8BkFZW\r\nIh518obBkP/NwU/ofCuzswZsUewIaSbFhSLmXir1R3Y5Y9kUIzXLhCwwTJn4\r\nA5yTDpfUAwvH7WasfAZLWizSlCR3krALVlRZhTGm5Ml0LhAOfhVd/J9eirLC\r\nYikoc6v7Kd0c4fYHpJkSUPZefnF7D5rIzco=\r\n=bLNO\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.1.8_1666986347503_0.43018370632496095"},"_hasShrinkwrap":false},"0.1.9":{"name":"ts3d-hc-collabserver","version":"0.1.9","description":"## Overview This library adds real-time collaboration support to any HOOPS Communicator based application by synchronizing a subset of the HOOPS Communicator API calls between multiple clients. This includes camera interaction, selection, markup & measure","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"67fa6cbbd415da495f61cd38ccdb627a8d98f188","_id":"ts3d-hc-collabserver@0.1.9","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-l0AuhMasPvCYvGH/2zp4OI7yctG+ohIiBqudA59CeTBNVHbvbwu7Utg/8HuvQLEeSBbmhQ/batjxgKCVNVfvNA==","shasum":"58ca0ea878f11718945d060d3ca8d62f19ff5e24","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.1.9.tgz","fileCount":13,"unpackedSize":49774,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEKshcgw/Ui/lDvRCNnqRWjmM/E954GF6bbs5J6xCTGkAiEA+H09eJMPMldZ9fkMHTmQ0gJb91tV0AntxLZD4iTd70c="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjXTh2ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrJbRAApOWb6nvyMHwLCW3W3IWCSHNycd/FtPgnB1JGz27oXQbkAcGn\r\nnQ2V9cyAXtvYNytaGADWdJXKPHeISexl1vkcHVdOonQMN/Av4yJUkdqzxhjI\r\n0sxm8Gg2qDAv41iRuQwODzsJvBTcpdXQaGUZopNYkXBoR4NPhG2Rqxa0MaWR\r\nfef9b67bXstijugxb6uJhwdUGHPmPtrak+6j+IZ6IfMziHlEXoka8Pw0BKE3\r\n/HED5gJachdaBDwy8hYydcgksNojdJ5VgFy5RSq/SG7KRjBhAR4LNuY7+NyF\r\n5Q9aqGSwYulp1ohepZ3GYSAoPJVp5MWENL23Vfxf+s+LUsIcnlr0SVkpHMUy\r\n030Q9jlzq6nqRCJLetwAut0K+o1wc7Y0yFaqIsMzrZOiAGQR70C9dHQ9RpYt\r\n1WbnOXek9r1pdQhrqsH2En3qVpYzI8wiKLrkMcnEVhC1D5MOvDvWg8NTYRuF\r\nWKn2gz0c6NLFztLvN+7G3+EM8FFRZACeSGcgcW/fbSKdlEniTOTlNLVvRsvc\r\nY54gQ5k8eYNKdqhqAcGaJ7ynwxsabM825YzyD9aRWUCKHUrVntU4s+CDeTDi\r\nJeMGEwMONKNz36Qg1auNCYqfZ0RBphdZP9gRAONfzpoRHmoqeNOG/4QhPAHR\r\njZ6WNBtqAbDbPWXmNglf86cuwip/MOeBjF8=\r\n=y29S\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.1.9_1667053686663_0.6080544525183378"},"_hasShrinkwrap":false},"0.1.10":{"name":"ts3d-hc-collabserver","version":"0.1.10","description":"## Overview This library adds real-time collaboration support to any HOOPS Communicator based application by synchronizing a subset of the HOOPS Communicator API calls between multiple clients. This includes camera interaction, selection, markup & measure","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"75f8ade95591b3d620096917c771882c1917fc46","_id":"ts3d-hc-collabserver@0.1.10","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-RpwKxGwJRUTPzWSaUpP3CjL3GuveTNrIs5PkDk9JHcKPe+odetm1lGDBwUtLyIcIypIu5P9rJ87UsKNpDw5BHQ==","shasum":"e54821aa02e84eeb2d91c526b513d4d7f5fafb5b","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.1.10.tgz","fileCount":13,"unpackedSize":50079,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDvX36qISU132k6KedtJU8Ch9MSxjGoqJewErMYikk65AiEA7H9761OtbuP+UEBIOhTYERu9WIpeCIOJ8AvNGNNV9rM="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjXTwDACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmracg//VvDbndt8HHByzQ/7MKUn7kOCfcRvqX2Ji9VeL9W/854I7ByB\r\nlr0S1IE6IwYnCT4+E7HfyihVn1p0VfFH1lqZj3OiAujNRAjuTmTB8PGFv7Ga\r\nH15TnxceiRqTxTN0aX5bgrsqYozFyz1/ni2GM6Sl/B9/tUvRmtrphGHCevDA\r\n40zQbwk/Cc+OJrhLA0G56rRMcrAb/oB5gvyS/s9dtNJn+BZx13ItA5/KTjNP\r\nxNZsljd94V9HXWV1AiKjf21WdSFYaGOsDxkbm3y2Hoiu/KRoMHK0SC0GPUYM\r\nJITftPCj7j6nMbIqnFS9RzJ9C8qwUfoxHyRWbtC0XF9HY1kvtav8jVuqEF99\r\nxaBOahMgpB9HO1DT+MiJ9fm97SgrtQ6wcXJAj+z70QS7EuQd51cJnXT5lIAw\r\nksRA2APpR9lyDe8itUpFQf+7lk+/YLDE9+vbAbllTQ3gl/LSJOyy8c5zl/wc\r\n98t/mActwDJePOMNnZpyrtwo9E3YIg6hRPg+lFS9miNbcYVxipBRpd597ieI\r\n8XxPyhXrtA1UqjV0wRs5Zps7sKsY3+XtZ+JpP4/nU/bGPaU67nfqQp/Fpmok\r\nidzAoYmETgAaKcpr53k22CiElmPnHY334Bqfc80fJbH4YKwsESlkR9+HsSUF\r\nwACsemgSLto/RdFj03i4FEwHdEbjuv/wKIc=\r\n=xREk\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.1.10_1667054594937_0.7748299557802607"},"_hasShrinkwrap":false},"0.1.11":{"name":"ts3d-hc-collabserver","version":"0.1.11","description":"## Overview This library adds real-time collaboration support to any HOOPS Communicator based application by synchronizing a subset of the HOOPS Communicator API calls between multiple clients. This includes camera interaction, selection, markup & measure","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"bb41f7e754026002bbe6525297c9daf0c24239c0","_id":"ts3d-hc-collabserver@0.1.11","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-f78K2iPKlcjhjC8Md0lMNFAnROvNctgzh9nE4FqkEhUNUh3CrcgnkLHN9QG3i6RjXT1tO1gq/mFybLWlaIMBwA==","shasum":"5d1f73a6b3a00af2de87050d38266a0579c9eb87","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.1.11.tgz","fileCount":13,"unpackedSize":50281,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCUF8kULE+MsMdPonVREaHWPED/InaUqpP4T8W3jI4UswIgMpxBdhrp2FrJyKvU+3Sziu9MW1tJskpfZ5foklGqk+g="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjXT7EACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpuHQ/9HQGv47vUjywhjhe3niMXwLB/J3f/jcvXqxbdf5gd5VS8Va6T\r\nQ+GDkA0t4eCKDQ9OQNs3ZsxOY0vM4WAGESOGRtCNMG7JHqTWFVP2OvRtuyUT\r\nazD59CXYevApJryj4x3GlZEgHx15ecLDyCWyCyh0OJxTY2LImNvVFLqsYYsN\r\nb7cpuJJY3U3soxKIc5uYgmqL6oaCicyvDnhPMT011QR3QDLgxysfWMac8MnK\r\nGXJatsolmiDZvus2U6X0o26+xzNa4j11+jAx4sMbPBg1iuLyR7K3sDsQBFce\r\nFEfDNxwOYEd9eAwqgx+Pweu9QgRS2i98rkPX0HdV7/TP6apesftBeUiKac1a\r\nnOwCEZnApbaJBoekQ33HYet0TIDJ5NRwFaeqUROlYFWdG8JCg/pouiZiW0jr\r\nt1UMkgXRhgBTPVdB+xP+4FFR9one6FhpfoApL1STIrr1s788vXqzgHPgfWmM\r\nrdzlE22NUJs2++TIkyS5Aq5UwACE0DlqH5lKzmV4BMgIFa8YGsPBeqKII5x1\r\nlFGiWba6rzKEBUQc8SGnHFguCErRZZFV/5DYZXlfvDinSfaxFa/9BlYWrwon\r\nHnQ2POH/FcJ/xJOXRF03laDhHqcPYxIaezlW00ETTkDJPGq/TpWvTdunumVA\r\n7Bx3bHbOBVNRYPYUUbZCNgOjlcDgQ77RqOg=\r\n=eHs6\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.1.11_1667055299809_0.7219304655393548"},"_hasShrinkwrap":false},"0.1.12":{"name":"ts3d-hc-collabserver","version":"0.1.12","description":"## Overview This library adds real-time collaboration support to any HOOPS Communicator based application by synchronizing a subset of the HOOPS Communicator API calls between multiple clients. This includes camera interaction, selection, markup & measure","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"d4715010b7e8b5d374a36b26d89ca2b4ef74feb6","_id":"ts3d-hc-collabserver@0.1.12","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-AeRMSzykkqHcCY+fE5Dk2FivDvmxsuFReNJJGlJKwEcUiNrJCE6SAVphaHOvHtXSsxwCO7CVjFI/sF0Hf8d+ig==","shasum":"408d02f0ea8ac4df35112b75e4c8e16020c7a1da","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.1.12.tgz","fileCount":13,"unpackedSize":50512,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHPYsAPMaYcVzSsHJadj2qxeOL5W0ZUT5WWlF0SUsazhAiAGuzK8XekbKrgfD6p+fIQBGTqNZ6COCbPewRO+0pJLlg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjXnRRACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqOERAAgaIPmyNqh10h8E6w67DhisRMdcgNbCL0+pL3nJ+ITEKa9Zg6\r\nZkw1jMIDP0p84FAai+gaeUUojt3mbrfdZpy7EbaipAW6yBTLopvgLSL7fNBu\r\nc7YmpvEN2aaC+tB8uYyC4CvdZS4H7bR2cykU8vt/PPZQVufNuHsX85WVKzpn\r\np9iSDGsr6Ge8ibF57Q9GzQmNrMZbPUVT8Yw0z5rAvGpWtBykuG1YnwDCMssl\r\nq5kubp9/0X/OCWPa8gORVc7CgVnPddynhLkUs0iXT+oUQTs0Z6bhjlBrrJjX\r\nQ/InsU987f5gt+DCMnwey2Th+MxDPUio0fsT1ZZmDhQVHpUURc9TWdpcDdY4\r\nF0TrCavPminQynUVOVAGaU6ZU1OVQIGpLTiZMCIJs8tsFUjVdCwqGfFNHJhL\r\nK2ht/aotkwXz0Xv9TZ8qaeOxtoydNxf2O5EmuVdUKYgln6kuTgW9yzgMNAn9\r\nCfR6E3uuNHtas8mYgH7+tKnRdXjdGK5xdtqCkuMwRmuuVOmT6ZalcCdZ4FNe\r\nZ2JffKPWBL08G4ov6eYo6R12tPwgC6V2Kry3w1FgPQx4tS6xE1zi0WtWyGfA\r\nlIv7zS/fr2CBYC5tC8XrjE7C2aj9mgc5/vjGu15IINW2eX4gdeSzQpafPQg0\r\nDqbCsJxs0aFQk+AIxXRZEAN0N1sCDlmoStI=\r\n=tb7U\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.1.12_1667134545477_0.024320466064815083"},"_hasShrinkwrap":false},"0.1.13":{"name":"ts3d-hc-collabserver","version":"0.1.13","description":"## Overview This library adds real-time collaboration support to any HOOPS Communicator based application by synchronizing a subset of the HOOPS Communicator API calls between multiple clients. This includes camera interaction, selection, markup & measure","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"457ff25cc3360b89f517d1fcfcfbde091594cd77","_id":"ts3d-hc-collabserver@0.1.13","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-c5vkl5CYgzspvtNPmYRGlsgc6VMH2xC2ed0qumkJUdopsNtazxfKOsxUFhb9Ncvr583TNq/Q4XY8TuwS/JhkLA==","shasum":"46819e02e1977e62aba888cc57b8082003a2da73","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.1.13.tgz","fileCount":13,"unpackedSize":50800,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDjbPmnSGhpPrkbwDbxUMw9kmtIkYnntMOzoX53irolmQIgKfWNCr8hnrwGMGR+Mwa5OqJS7RUpQzIRUEYGtqtdw/Y="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjXnaCACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrViw//estCntqcN0KvJa6J1TYmasO7IXhyhXOns68bZ3aisORMmOsz\r\nSbYpBxl0HlciCis5bEqUJi6q51E70qrVFVn6twBiFkOt9FRwnInY0guHNOdi\r\nxFHUCC4t/Qs4EBFSJN9dZ92cL14Qt1V1cJJ5UZXPcIGvhBNLiLsAVSVmSrjS\r\nEGYZXuisg5pM4IZD61uy0JQWBXNSOCS3CTcH/tDwL6ENdNqjIqCO0CIz11Mb\r\nDv5Hv6J/31NEj/Og9r3ktwut5W87h4RQeLCqytwvYZPr22OkYq3Jiy3RMrbC\r\nQu9L/JHsaX+dtR1dxp5AvKTxryeo09zvIh3db+R0ddyImb6/SDmog1AWjLym\r\nE9+KQG4rUUM7hHdaza9PveLDrQCvkghxzDH/QCebbQcxNjjDofa4VZEWBNJN\r\nO8A90gXzv0f0VH2PmPlWUi9fD+6eogFXtFB3av07827/Bg5M2bCVbI6YW/vD\r\nLdHVwo22LMN/CBeB6lAGE8j7OrwpgHw7cuUorxkI9iyxQVJFDDXyVw/wuJMg\r\niMWB3u1NxWDQdIL8D3rgI8kefM/offYObFOpMVFqjwqDq9buTMX7SfxRQ1m9\r\nzm3ksvu4BxNP+SDn2pzUw1+JOKKacOY3K6RqETWCAv3v3476oS3a9GbvpaJu\r\n2CkAJ9ipjyq1Qj7UVmdj9P2aOdCUhPR49Hs=\r\n=RrMx\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.1.13_1667135106432_0.7804936246424306"},"_hasShrinkwrap":false},"0.2.0":{"name":"ts3d-hc-collabserver","version":"0.2.0","description":"## Overview This library adds real-time collaboration support to any HOOPS Communicator based application by synchronizing a subset of the HOOPS Communicator API calls between multiple clients. This includes camera interaction, selection, markup & measure","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"5316b49dbcb2a80088f0511404b2cb06e88d0bf4","_id":"ts3d-hc-collabserver@0.2.0","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-CbcgdE/TBL8xRK39b3guhjvYNYeXU71JPrWQXk4butgbLiTNXYAIzPKqwqE8cUb/BJX6hECmAYB4PsX9+Rfs3Q==","shasum":"2e3da8e0530ab98cea1cc26d44dd253c09a1693d","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.2.0.tgz","fileCount":13,"unpackedSize":58009,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHcofiEiFdDG9tZ6hN4aGKlzPFjyEsiNjfO+TLlYFJ+iAiBsjZlmR+XmQ7OowWLczLayauzbGEgGThTyuMaz60/FHA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjjNKsACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqQLA/9EQjTZmnHKi3XFW0b5ZyOFZahexuSRE/+qbOBF0uLYIzizoov\r\nbImHlXIJt8K7KkliZiBWezScNoG3bd853zrRjP2l1Lij8p8X3W6eMdu4j0tl\r\naYcWwDtXoTKGKsqcQ+R2PLkSWJQxbPvQQ6hqFXn8jHn7xKxb2fU67tOembIO\r\nH7ieBjJfawi/E4VhGrHnOucQAwMDM+Rzt/BMOBfLlPkRYIJ0WTY6xzQAC9sY\r\nplg3pv3J9sPLGUX9g6FVmImsQgQ6GnXB6v6hF8UnbDpcuLaXy3aEQNN/NoUH\r\nVLUiRnyb6sTk2aevW0m6a8nPfpq4ELIOH3uSETBZCUxMw+CyM2Rkn3CsAnSj\r\nGS3GDumPqNAdRRKTaSR3hncSk5KPyPOJUT9CEYY5NBE6IB65UcvxL5v/ntGy\r\n6jxt6Cu9onkMH7rR7tXYTyKSl/OzItt9oPwoAExeqnl7JrMApzYDqTcERHXD\r\noi+h0LebetsId62tOmrYFPiO5+5+UT6QMFRJnfAeRA+JHKDLW3VhKvl7cPMs\r\nBlcc2O2B0JiKt/aZ5n+t/cvzWceVQOaIhxpGwW6wAbzPTv40GhUxL/iiJwe6\r\n/FbzgnJ9oxVbRkTWeXA9r5A/dS9tsQC97JUI6oLa8e8loF5SYTa7Ujun1cDx\r\nj+blHAs3F6DNooHuet4HcGExCwAbgmN3r9k=\r\n=xijB\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.2.0_1670173356551_0.9365125928330806"},"_hasShrinkwrap":false},"0.2.1":{"name":"ts3d-hc-collabserver","version":"0.2.1","description":"## Overview This library adds real-time collaboration support to any HOOPS Communicator based application by synchronizing a subset of the HOOPS Communicator API calls between multiple clients. This includes camera interaction, selection, markup & measure","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"faba770609fe69225bb5086b2c4dd747fb97c7a4","_id":"ts3d-hc-collabserver@0.2.1","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-7vwSWQBJ2eI58XGaNL3wEeZ/L2eUxIXh4phy1X9DWn1l410euTtFGyJBA4qQUE2g8D2RWKfRUlI3bMn6VjSDbg==","shasum":"c779e1e4473a09ffc7741acd7241505f87b9d0dc","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.2.1.tgz","fileCount":13,"unpackedSize":87796,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDkHIWhkSNRdArwhfZKx+8SVYCVuuRPIqvvgpTDUiF1zwIgOU1uAIpoaKChqRTKMSCqyZw1OqQlUG3OB/z6zB1QXY0="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjjljuACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqWUg/+IOJJERTj5THLCP52X7bt6QNTEbF5AbUnjfmXtJPytGMkXi45\r\numCxUJ8pyk0iMqYN3uBhoG05uVFSJIuVvJI37sftTBNPyeOA5aJFTZ+/YFbN\r\nKL4m/tpGm98i+hewI6Q3/bu2pCZxwSuyD6aZaeTpfugJLroc4KspcRhxXdRh\r\n2JXLJBSsQCcdCTmTT6WoL79PCHLitLA9DZD2MnQ0yGk7epP1c6X7jq252QTh\r\n69lMprOnHuZ855wyxUyvo21svCMu+ycSoyynqgRpVCXASrlNRdirj5CPqdva\r\nG0m9DT2mLRKMnK6TqhbIQss/8P+f6cDVm/Js8RgLDtTpQD0TZSLkuv/R4xPs\r\nNDkXK95E+KC9EiMFQiH6NEqYMYopTykIbZD/4qrAGVohrAtommJ9KxnrYtd2\r\n3SsQUiFbsR2YNcC4RYAiXvHKp4fl1CuMVuvKUlgyNVo1n+MSYpPj4lC/PcOT\r\n6AIgwRNiDBGlTcW+hmlLtUix48VPRKkEuxTDXkhDyeZ3xRTiUPQACLJzBfa2\r\nsCs0RRlwBEf6K03f3XSAZo0PrL60Yl5z4yBapd+8f6liqBUE6wCKDu1/6ldp\r\nsaLIRtYiN2iG4X0pbnZsg8cA3NBrtWKWyGQIWE7yvFKfqIUnC1frF4JQqKKr\r\nrXJF5iBGkXLtVOANjyAmFZn88p+Lp4k7v7I=\r\n=MGgb\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.2.1_1670273262340_0.9517986650490633"},"_hasShrinkwrap":false},"0.2.2":{"name":"ts3d-hc-collabserver","version":"0.2.2","description":"This library adds real-time collaboration support to any HOOPS Communicator based application by synchronizing a subset of the HOOPS Communicator API calls between multiple clients. This includes camera interaction, selection, markup & measurement, as wel","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"a36a52d57c0270a5d4d98bdb6958b33f8c5635df","_id":"ts3d-hc-collabserver@0.2.2","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-95ZttlJa5tC50IPN3d7a88J/oUGCWpwPU5uM5UeNPWZh3TjrwWTHtp4z8uQNH/b+ChY2nq1i7P+YG0NzIBK22w==","shasum":"9805ff2cba7a8dfa4b5741641cd940602ae48861","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.2.2.tgz","fileCount":13,"unpackedSize":88570,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDO7Z9CaN52bbeMBq9On00nHCzdjKr+jqk4U2wBjOpTswIgQBcXR9K0qFbhduwP6Z+x3ysSsp5e5lzyZ2nUe1TKkzA="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjjmCVACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr8yg/+LiZmXWmN5ASzmpt2JCBzivGQwL0998Luo+uSL8OmxEGPU0Z4\r\npH5AOV/i4n3IN1wJtpsvY4Cz1lVD6Bpm0bLJCOvirbQ2bIPWWbQTW8M/dD9c\r\ngW11EdrDPbvv6J3sNe3Vxby3VSm3sqUCGNcJjIXP4DtZ2GOUaYgBUnLcJIAU\r\nEsBuEeVyhrkxskxw5/IgGPOLzT7GfpJd46iGZEdKYzeiOl+yqt4IBYTFXMj5\r\nbDFqGPxp/i+oL7M9WwASB/MYZkylejpZYFT3zhkBVlyh9PSB7rTbCXrmJFzb\r\nt2ZYLMs0cCv22y3347r7+nSXBWO/fvN6k1YbPFHfxrVA5oUTH2Jnrza3PwSd\r\n3vR/z3FaOIXfrG7EXShXTrLb6bZoueySj+T5no7vMGjc+IBuWH7FUeh5c222\r\ndwUJ6SyuF1YqSzMht5tEr0N+lRpq0PbJzUPI5ToGsvE+XEoxeM+kFQ6AUw6q\r\nJnEQY+UlzF/Wn5czt36j6z1O6LWFQcNIZXLtjMtBDYrjQY9uEjilJ9a11gQU\r\n3Oul8CrT5mmyFxbtGIGsmq0TkoS1+wi+xbkSs0KcmzGziLkeZpvbHza6m51Q\r\nbSoC83eg+adp4EphE7xA4hvAc0m96kP4axQsBux7f1Fla8Y5eXjp/xeENnW4\r\nn5l3vXhWk1cSOcr1aQ7sIjeWqA5i5ZAA/KQ=\r\n=CxrB\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.2.2_1670275221200_0.62331164076289"},"_hasShrinkwrap":false},"0.2.3":{"name":"ts3d-hc-collabserver","version":"0.2.3","description":"This library adds real-time collaboration support to any HOOPS Communicator based application by synchronizing a subset of the HOOPS Communicator API calls between multiple clients. This includes camera interaction, selection, markup & measurement, as wel","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"a36a52d57c0270a5d4d98bdb6958b33f8c5635df","_id":"ts3d-hc-collabserver@0.2.3","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-gnUgRRqMZQqHrUDYMBimBXI6JP1L2uydYGjO3B9f5813ArI7pIlb+61b8Td78Jk9jbzzTNyqoz2Mq7aKLJEmYA==","shasum":"1401c77e364db44696686f4016e6cf1b457f006d","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.2.3.tgz","fileCount":13,"unpackedSize":89330,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCP3eFS66ry8I0Cg/h96M+f0vjHGsfs6szg9zBhZlYj+gIgGkndJ3jGJ/sargRpy4reFIBf8SGLa4PgnPQPG6mGil0="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjjookACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrVqA/+OnA7WBuRSPvikD4oEOWbZwRIc2J9d+2uMqiRj4ELyPPjdlRP\r\nr5cyzFJcRdXWaDdX7Oe8RErPBfZTaYQzbSI3LxFnDsqaBMSheUmN/hjicD3J\r\nFCIQWUx3D2F+okh6SgrqTF9obN/sA1I7wM9fk1Vz+dM3fFcrJgMeRV4XJWVX\r\nNA0qQSYN2mKVFgeB5ryNNvAMntZ45VCIUpRertqVdXdbhsCfH17CXcKigt0d\r\nk0yyvXwk9BchLWaXXbcR367Z9b7X5wgsugOhbvSq5Ox4/enM7aLvOofmr1dM\r\nrF40x7WZKGWvIfHkuKqZ8LxswSgVIbFAhe2lacMwtKXaMKV7ouj1f69P3Htl\r\nFjO4KjDuRUS6h8PXnPGLSkUrP039ivcy1VVjKSjOEHMVUXZ6VBkNheQzbcqj\r\niog9c2jvcGkqWsqcKEtat0GRkK/ftZ2Fxj1aUHkn7UYP2l4TC4KLVxlDhgmE\r\nv24/Vo/aP1eNaWUmi8PJvUdaHy96N0FVWvlEqDoavnCMZFplnhy0wIdVk03L\r\n8NyPWrJsqjJ5GBFcZ4leyqJrhr7KrDezGs1Ru5zTkzjkEiASQkVG+IeelAQh\r\nHGXEQ9kcrxnRrEml+mfTEcIF8k69+b3Liqg4JRrG/44HzidoHVd6keaoGRwf\r\nUEyN6m0B970cNmG7cYPaQ7xplqrnPlDviNg=\r\n=kdsd\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.2.3_1670285859833_0.5053658751234438"},"_hasShrinkwrap":false},"0.2.4":{"name":"ts3d-hc-collabserver","version":"0.2.4","description":"This library adds real-time collaboration support to any HOOPS Communicator based application by synchronizing a subset of the HOOPS Communicator API calls between multiple clients. This includes camera interaction, selection, markup & measurement, as wel","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"894dc5e65ecfb21424ba3085e95bbd43eb6adab7","_id":"ts3d-hc-collabserver@0.2.4","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-X3cBZyc/VzPdSb/4buuiJPyaqIeaCBH1NfKSRcpQfJM/8G+jRVynmbBLg+lBrjIqc/t1mv4j2Dc1Wds1B1baCQ==","shasum":"9d61a2e316607c706c11b545bec80713297112b6","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.2.4.tgz","fileCount":13,"unpackedSize":89832,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF89nIOulngrFiNubyr5ShU2uWd8KfOF3jWCK11+wagjAiEA2i8pxd8j+YyIaYo9jojVWeylKjmpiSu8DZW+cJzdc8E="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjj0zmACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpBhA//W2Ztxo6wk5GCaS7xRBfTUHRtSNhe5z7zjmoz3daJWf5pVuXm\r\nvfBI9K3VOPIlXHk38fJ9JX3MAz0Yd5a8fT1pOrekQX0SFQxJ+5u45X2bonfe\r\ndKppSzBxeShadOzcEVyBh7p6deRkf3zBHhkl+dO9LFneW7nZli1PLoudmxiE\r\nk+4L3AmWkC09WnAPeDveuGeadxFp1xSrTml8Di3m27Hk+NsO2jz+hQXOS41T\r\ndyHuoQxfgSLx5eK+hpy3bDcmProzmkwv0jBeZ4kq6ruKOR5Zl2hxplAv1rXh\r\n0/zHSsDCWUwIwpNjITBEp97G9jtC/XGfp3vL/7aH1DY3QwLUiUjNK2Gwv1h8\r\nYpoihrnnN0+VqybG9Tu8ELygTlfXDMqpKHoiE2ZaYbjM8RwHeBXgg6B7YBZu\r\n7J57EAKOhFXJInXL9zau1ipZAH/211Ed6SPrpLZAowOTEaqWXJ5RxLkNMPyb\r\n9hmmnI7BPmMfSO1ojGiZ6qPAxOhE63IUMbyQ32Src+dw1xbiY/pDRvk9fKdB\r\n78BiT1pEo7x0PGTj/PScxS+hVwvrHj5xSbyGiWCEBN+Fb7/zxu9WWV0bMPpT\r\n6nakRUq2YCgYrEhNnnHAw+cBVfURwt4vQjOHM2gUsZw6edslujTKznzM/Tmj\r\nZklFFTBVLbmekurnqXETuatVx1Vl/1RyFFw=\r\n=6pgt\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.2.4_1670335718681_0.6114301354805705"},"_hasShrinkwrap":false},"0.2.5":{"name":"ts3d-hc-collabserver","version":"0.2.5","description":"This library adds real-time collaboration support to any HOOPS Communicator based application by synchronizing a subset of the HOOPS Communicator API calls between multiple clients. This includes camera interaction, selection, markup & measurement, as wel","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"894dc5e65ecfb21424ba3085e95bbd43eb6adab7","_id":"ts3d-hc-collabserver@0.2.5","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-FPDKW8k7YpqA6RnfoULs8TGi3qPMVO/IMEAAdhY+R/wKsHdB5Ymzwm9xaUN2AXxK4MNZt01A1vGETQ2Fu4o1vw==","shasum":"0c5dc21af85dc2cd452179eabf084700f9e8587c","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.2.5.tgz","fileCount":13,"unpackedSize":89948,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIQDc5JgWkkiS4NX45XPDUG4Y12ZIsgf2EbCUEIksemdMhAIfUBCCDliuE/3q3KVfFAete1/1taCaS4gDM5gZaKVVEg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjj1BoACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpf/w/8C4fnWC5jYMokZi3pchqzleu1befeoaRGLF/Ql576jxCJZbVJ\r\ngi2e3emqR6BjFRCz30LZBvzgbWdOS25U74aADzfL8h2NXuIYx+6itPKNDBeV\r\nyCdRHs07lfpP2kHZParFBtzCDWhJ8VzsqpzOMh6W7tusGEiAtuX4rVCzjRuL\r\nJxMTx1VJCGH7hgYyRDBy5ia/98giDVgzPCHfMrRs+2LD/fQEfACTLHcE3Ih7\r\nd/hJbgGcjAFtLM2lEpIBiQKVmJwFPUsDt6iMBAe4+NyY/sbnA9LqMhxjjfbL\r\nZoBvdkFU/n29w3YwH9en6kGlBaYZihub+U5rZpnIEKIgfAbV7veaTsHmgWtV\r\nmtea3pBoq/oJ0t5ATLOLHaAoWT3XHEc708HmrN3WFNzRh9tjsBpvNfenjB4X\r\nsq7S8h8CfFpkKjWZzJPtT9ia/XUBfjbiHWy+wcxtotVs0yBecA/Lea+nn6UQ\r\nz2jsU2J1X8rbbVZy+AjfxGENF6/O+4N3p/oCJWF1EOOeRja/erowUdpkcUpO\r\nZt1LBo5NaWhuVioR0FaIpuMYJqXJ+znKjmfo8TQSu31LWHWqjC9aD9oA6rqv\r\nybXD/df7lS+U2OPKbh5ypggr3UvyVwAeHO2aHxLZprD+2Fw7hSrjqb0obXjk\r\n0mtCaCvv1gy60GRYpo+A87u/4lHIQD+gXCE=\r\n=Kf0H\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.2.5_1670336616200_0.5030860365393708"},"_hasShrinkwrap":false},"0.2.6":{"name":"ts3d-hc-collabserver","version":"0.2.6","description":"This library adds real-time collaboration support to any HOOPS Communicator based application by synchronizing a subset of the HOOPS Communicator API calls between multiple clients. This includes camera interaction, selection, markup & measurement, as wel","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"f3121ea1d3ade7de8d36b6fbacefe730e740d039","_id":"ts3d-hc-collabserver@0.2.6","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-SxSCrbZc1837MKkb4vRCava1u80VY5TpCqbzMp/yqMaaIBh9OAWfrpOuCw2Z/S5/7aheiUc6w9WlPSrAkaflKA==","shasum":"1631dc33257547f9a24e8b0d3957d4410ff883a7","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.2.6.tgz","fileCount":13,"unpackedSize":89988,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCfG5lGlbvWENSLmMzuX320QGNYKw1A5xT6a6vdM/DEowIhAO1XI6MFYHor+4TqYZlvVE3gmOl6UzIQ3cpUU53miJva"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjj1w4ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpVWQ/9GlYepGah5wFnTW0byEfNm7iQK/c1HOBO4RoD4jzIhxPSr4f5\r\nyVG77/4pukZU96NTHnu5fo1Y2qXjjqQFXO62hZWxWkF/1IP8MsXeMML6tiuS\r\nB+bCzRvxCsHyeJTMrTnDzWDXXovrlF5/9CdY/xWoLY/fjBWtiiGf805ETl+J\r\nnQArkj4YReuxQ+5i9ZJLAXWh6UrAIXlQ9dW1n55Yl19wfNMBegbsXpp50f3/\r\nnsVgcOHyqKKHvC5Ehmgjy+XaIjvy7yxo2jtr+K+kmW5wwFcMwzDSY82rGBLt\r\nlzRFlVZPR8R27gpQVyu7DulBVM0lmCftKlRwOYGTMJZVKayisXwE+/etf4+B\r\nlbi7FVQFmOCnMBi3Seu3vMxv7QuNZxgxgQ0fwwEtfQDctdsLy1J1cCq8hTPh\r\na6SdxHsaCCgV5BzMGzBs5Z91EOOfHctTv8wW5CtB3LIGGOhZEzAPo0BQwmmD\r\nQiZPOWN518Y/TFqWjJ+YzbHENJb2Sbe+dPDpPA/boBEqVQ1uu5s9//vnkg8N\r\nYgyG7w+ReFykpM00CvFm1lObFwPWqb+tiHzf+FgldZr+QjRyIJHWhC3WRyYy\r\nBx+nSSSCgkBvkfzqbx8KqIFRTtHFk55r34+3CdIBBzkke7fCwmYNnNc+QbvX\r\n1ieqT+7fA0MtkBJAgMkbkuJVGJcRof8m5F8=\r\n=YFtr\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.2.6_1670339640700_0.21073257613153573"},"_hasShrinkwrap":false},"0.2.7":{"name":"ts3d-hc-collabserver","version":"0.2.7","description":"This library adds real-time collaboration support to any HOOPS Communicator based application by synchronizing a subset of the HOOPS Communicator API calls between multiple clients. This includes camera interaction, selection, markup & measurement, as wel","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"abf6176daaf386b31492a0e2e8964a30ebb8d329","_id":"ts3d-hc-collabserver@0.2.7","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-65Ghd5nllrLIo97y+GKprtbhYJc2P6ENP4UxqKX5ApIrQD6dIFsPES9TaR3KNwmXsaKtIkykal9oe37uk0qdGg==","shasum":"cba803e8e5c2b30b3deef621c4077979b67c051d","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.2.7.tgz","fileCount":13,"unpackedSize":90002,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCltdOg3iHT52PdIM4uS/Hcme+3Qw51FUfB7f37W9wAGgIhALOInhP+jAm/uLbLwTLywihmjyMmgs8cKXJbhwUGzz1n"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjj3FLACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqTUg//ZoygXIMNbGezrS6x7/vPPDG7P0BZIE8tofMHSRtzDWhJxrGB\r\nF/zxIGsjdrd2cbqfgDM1IFgJzuGabAqkLFM8K0OcXGF9jlSFqqT8TBefbpQO\r\nBBz9nS7wYFB1+oULWSvC510HqM6wEMp0sQkPsidnT5DpTSkmBYlAhMYYMmMF\r\n8p2D24AgNZV1vJL3+bMk4W11PTJ/AqN6F/++M+QMoqC+cLWz7Gc8oDg//Q/T\r\nVfIE4Z2FUmHa8S1WMYmn4HQX3x3hKhHNTFsSQ4mkL/06xs4knt51BvysCy+A\r\nGWgq47eIOl8Wf8PgY4/Np2Bva3qbaf3yOZ3Q0A2WYoBsZTEWXEaYNoI0Tqg9\r\nFsGT2h/IVXhUt2MMsuOK31sPRBR/CP0ULex3QLkVWkuRKAur/n48ribAwtPt\r\nXLcDZ4eTAOgzE9VR8ve5DmR0h1rti96BzUjYBMu2Q+MLLnnBGmPBuKLJZLu4\r\nf7JPqYPHkHBCxsguaxpgSlTBxZeeWt2HC56aT8Inc2hACjuRchD62e4vukUh\r\nEFFLsKxj3+j3eVnRn6+4Y6BgxpUdB3sbtlFX4CxIgwL/lGulpUvlspm8toAZ\r\nVmrwgVgMvfYOgVHuaKZK2XPeoDlkaUPg9lxHj4ZqNcYQ3V+KxAJ4TmUb+yf1\r\np2mkfiEdViN6ibkaleLIilras5ZT5L3S6V0=\r\n=kNYt\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.2.7_1670345035694_0.7890910188124638"},"_hasShrinkwrap":false},"0.2.8":{"name":"ts3d-hc-collabserver","version":"0.2.8","description":"This library adds real-time collaboration support to any HOOPS Communicator based application by synchronizing a subset of the HOOPS Communicator API calls between multiple clients. This includes camera interaction, selection, markup & measurement, as wel","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"7f11aaf78e3756dcae877a67c832db6dbcc07252","_id":"ts3d-hc-collabserver@0.2.8","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-RuEG4oY/f2nCwsqZytuVwtOwwbpJBuPJmyZUAOW2TODS9PnCs/qclusC21ytS9m9mebUmMINfr3ro30+P22JWw==","shasum":"efba0a6e155c7d4b9a9dd5e745de30047fde6807","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.2.8.tgz","fileCount":13,"unpackedSize":90346,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCyTQHqZega++fAsqus2WQt+xEQLWm42RYf26UIQqvF7gIgTw/itFp+tdbIY/Wy8qvRsZrUOCgQx9FH7biqVdxr+sM="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjj4VUACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmriZQ//RtfzuCDncanfuzdCJCOZ7woq3vS/z1DWWhuFvGyz+gUDkRj9\r\nywbp9l5hKaD3A1OugRQI2huYWEeKA95Cmw9McERvCMOigV/AYGJx4xqBdpyj\r\nusS5M9xwmu0U47qn9wO6/FT+IJMNkDbnleofJ4w8zpUB9SVV+jhN3Yyj+Zdc\r\n1f/RPFPBzoIR8tQ1BbdyahZiHKYIaNvF58FYGg6+zKV0gJEGxQBPYcpMR0Sq\r\nNT8zZjb+FUJMahgGb8uHP199Z8Oyfd1fYG/QPg3pusfwvoEMsz9NmCLPqItW\r\nY4vOc4KHKrfpvVXZzDPHQzqQcz/W+VK0nmU1P1Aawou0nZDHHjwsW30lmCWu\r\nO7Zl2FhFFe5Ndco3Y+LBwCbdEDvb5q9OT6TFbZou0noWBPcsZ4fal4eGbB+A\r\n2crP3AiVif7NQUfZ0WZiHmYc843OHrnp/MCH4SRuHceBwg9HLw3f+pMdMyhh\r\nNEHGmqdqlWNvSGqDTMFKOhBv8ZAydV85PX8H1SrgDoBKfFSjub5lFG1gIPB9\r\ncD6pYwF/IqcOASUPk1Ib1gP7skhd62QGrsbwQdQ6sU3sKWSBle6+8DuAyoeP\r\nTzkVp4iPfn4dI+6VGKhqu+BDARUP1X2saoVxnyR1VwwcYOzIfQogjnQIUCJD\r\nKsK9sK9PNdQFUFEXW+adES5bKkxHupj8TSQ=\r\n=8qd3\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.2.8_1670350164157_0.5913780770352763"},"_hasShrinkwrap":false},"0.3.0":{"name":"ts3d-hc-collabserver","version":"0.3.0","description":"This library adds real-time collaboration support to any HOOPS Communicator based application by synchronizing a subset of the HOOPS Communicator API calls between multiple clients. This includes camera interaction, selection, markup & measurement, as wel","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"dd1250c9f42c1e8a4ca247cc4014b0ea9e2d9eb4","_id":"ts3d-hc-collabserver@0.3.0","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-rBgym59SkGDzhJkbnS0VLCd00MVhnRuVxE/B5W8Zk6gG+pjFinajDZfD0o59kks2uGqbHekeTRRwFeb6kq5XcQ==","shasum":"deb27641e1e0009a611e03e99700c1a2377407e8","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.3.0.tgz","fileCount":13,"unpackedSize":93720,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGHFSSWgKedJYSLd30H2HggDVO7Eeqsh5dFnCkGMRokWAiBLIu2fjaaseiw6qYOOaXAvNmGlO7q2xSG0p3UwIlZWyg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjkKieACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmo2yw//dXdNG89/QKJ2XlgX9ih52EOTKTj/lSaY/SVhFeLlWGFw3O0q\r\nE6jd/JB9rQ5jHSzF8VZNDu4V/p9gWZNaCf81bSy6aUpIjTXbm10LQsVNeWux\r\nkSMsK9OIODsgrS4wlpJyPzP6e21p8qtMD5zfalRkAdVVjFR09mth/mvBGiNj\r\n6Z0XNVFo/46QlwcyYNYKNCN9/mBbUnJF2VURJnpNE54vkS4CQVQIP2YvIktf\r\nFGzb7XuKs5WS9rPQL7GD2ELqCi8opzouJ0JLanrZlxon/JWkv3UsSjNdG/n3\r\nENUGTxvsl1lgth7wySGm8jxrYxT8AbBSh1pK3zDM7ZhPohoQ5HDhoQU8a1Ot\r\nIpO4C24uRGQ/uM8IAXhtIP3SP+yZB+ugj2yW7quhghKwa1UxPExDBd0C2mG8\r\nKKsbSAVtMbyK5ZJsO58WVR9xMECQBhKogz69WXPfeNcIXewAH7vfhNriywqw\r\nmRjvROuTwC+NvBUGPgpqTkfX12dAudXzoVvmFtw/i/4Uv1vEtBV8qQYVNVkR\r\nhqfXhxGcqAOELF/oRuvag2UP0i6GnZLbHRuGcJTfovFRbzYc/FrX5mbKkyNF\r\nwhBJgLgJ1/YiVjurhP2QpAge3p9giiGLaNUKdFqJSIcG5I56ez7WZa+L0YV+\r\nF1F+oUNv4OwxrtKdxaH/XIzDMpXvqzUNRk0=\r\n=xs0C\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.3.0_1670424734709_0.08925909314134306"},"_hasShrinkwrap":false},"0.3.1":{"name":"ts3d-hc-collabserver","version":"0.3.1","description":"This library adds real-time collaboration support to any HOOPS Communicator based application by synchronizing a subset of the HOOPS Communicator API calls between multiple clients. This includes camera interaction, selection, markup & measurement, as wel","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"d152ef6ab641d4956cebd8d84357cf90cf200204","_id":"ts3d-hc-collabserver@0.3.1","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-EZ+DR5so2EEpxgg+3Zs4W2PTAHWJL+r07ejSCcWEypn2AROio9IT+f9tbImB4V9/UYq4sz4je3VHIQoOgoIVdw==","shasum":"6fcda32cef20514f9f4d6ce055d1a0b7e82b1369","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.3.1.tgz","fileCount":13,"unpackedSize":95216,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGIl5+wUwvsIluZo6Qb5nPPwGzIuScDjDKN3EdQ30XfQAiEA6761fj8fb4Kox3dW9BPlGR2pXH8SRMWhmcfvSxQfSKI="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjkSWLACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq8gw/9FbZX/4HhxrEa12pTFQqefHiF4iG96ZRQqCZklErl99PqelNr\r\nkotH1UrBeBsNyOArzt7trPdXFVNsPn4VD7LxQgx5MO68nT6gV2mX4oNvGmN+\r\nry7n3xzcAgqTcer04/QFXgOmh+PY8KTyx5ZE5uvb7dP/rE0hyWbrjmmAcA/j\r\nyyhNKwyD3WOwGfVRAk6xyjylhwDjPihFe2/zvq9IxHX0P3OnEMrEhIVwJIVH\r\ntdDV0RUAKuH2Gtck/tzZ9U2Pmk+yWyBA0F/FgQJyItAh/IQQwu7fP660vGk6\r\nBxuP14w4GTgw2QMEyQqCuXBz9hIdunlz3Q+3DixWKOutr7OHT6bL14DYLk/t\r\n51jiCV55ipYVv2TP7JWof/QPpTrKCjIAPMRucecW7H4/vn3UduR2OHP92Y/U\r\nQ8uJDZYKHKuduFNffLCV/5PsxkAehono4lHVoXztgpjo+jjsfzAEzLyN5hiw\r\nHdXfguk3O7n4+4Lxcx9VXa7ziBjquEG1SevnXl/h51TV/r6xtll3hIFkQH8o\r\nR3fv3T5LZlH9AqHcATybYhC/gl+xj/WrgV24Q58GGgpbDVibKFL5whW7sFaH\r\newVz5iWsrgQSPl10KBVrywdX3B235hqZefMSwdp3m0PjC6kJg9CeyESn2uH3\r\nKWRVVFmcIhQVnlLoGdRq11q+NuZ4BLNByRs=\r\n=J58h\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.3.1_1670456715748_0.8937568279263983"},"_hasShrinkwrap":false},"0.3.2":{"name":"ts3d-hc-collabserver","version":"0.3.2","description":"This library adds real-time collaboration support to any HOOPS Communicator based application by synchronizing a subset of the HOOPS Communicator API calls between multiple clients. This includes camera interaction, selection, markup & measurement, as wel","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"d152ef6ab641d4956cebd8d84357cf90cf200204","_id":"ts3d-hc-collabserver@0.3.2","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-ihYUHSWcVgVuiwxKtl71mcInYmkbqSA3FfBYLHRn8pNa5zpv1vbemkmfs3bTRXdr8ZQzNZW/VxV+BjZXEtAwmA==","shasum":"422377deb0c651c59a8a9cb8523a22ee41a6b569","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.3.2.tgz","fileCount":13,"unpackedSize":95216,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDNdGhPfgCDpOy7dY/+ednF6nirOLGSz5xHq8deHHYLYQIgI783FEdAwMz15JsgkNLBlYYq0BVN6FDEi0oQrFY5qtU="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjkSfnACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoKRRAAiJvDMvpckEIx1q7goAJI6S1EvlIthEjSMnL/JJ3ZZxQ2srIT\r\nHjUZUQGfzG5j4NfiG8vhUNr4WsUmCrTtOCQUsVllZxiuwjXda65deljM/A4T\r\nbE66SKUZze5Wcrs4EFuUww3Z+5YkLBDJltyFpMr62m2MdkuSOaC9d4xH6v0R\r\n9gbN3TDvsE1NEKNiY+pbYk5iL+iw6EOYLuGnzUaHRGSTmZ3kJTHU3Xa67o8c\r\n3P1GxsMBcWuQWbyU+y3XizaUZM4Ts2IrXk6kz10gw8XfYyo8XvVOzHsJ7j3F\r\nci7VJgFgKjAJR28d1lGkg3tE78pghF9jPuiQrgq2Qbsxvahz2J885YbxZdcd\r\nPKmBXyCVjPRRAdnf2PNa/Mz4Zdaqk2rv/xeZg6lvYCdgLn8TrwR6V4o66y4Y\r\nT4GEaPdoTbS8w0pX0iVVeMtBQt470Z+FWshcVmCtqgGwqcfKp76H4KtDpBo0\r\ntsil0y/WOIpW6hH6GmzsvAyN46fEqzOC01YwiqeuDN529EwvBaPI5greWikK\r\n6BlXTdVUqsw/T9N1q9CfhtQM8kqEqfbkL0tFsfg9tDA8xsGnIG6CKZNE+ff8\r\nYyLEgO9N8xkAFkPTXHH0GGRexuZkvuvYKYl1AvvgsLPaAU7Ueoop8PI+LvgW\r\n9DiVec7iTwi2pl9GzTuTDwlXcvjqWD3plW8=\r\n=vxHV\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.3.2_1670457319549_0.788551682455362"},"_hasShrinkwrap":false},"0.3.3":{"name":"ts3d-hc-collabserver","version":"0.3.3","description":"This library adds real-time collaboration support to any HOOPS Communicator based application by synchronizing a subset of the HOOPS Communicator API calls between multiple clients. This includes camera interaction, selection, markup & measurement, as wel","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"4a80dc53be5148fc91610eaafc126194ba9bd630","_id":"ts3d-hc-collabserver@0.3.3","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-BAWSpFb3am0CexdF/c7xwHfRf99KfWkl5nOX/u3QzHtxAK/loof/axCkq4ayaxIJNOU8oTwB8nuzE1wtYt6SLw==","shasum":"13240b1fedf7acb597a74176722b794dbfd25c57","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.3.3.tgz","fileCount":13,"unpackedSize":95428,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIES3GBG17LzG7+3lNI/Tb/Qd3Anh+JO0K7YPfOaIUHqyAiEAjgpDFMjNxHwHOoqebFb4efqW1XuE8XjswEm1UI7kVP8="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjkef/ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoVTA//eIy/tm0xz+ooLYRvJ40+bpvkgoI0OaQA5DHvSVd0DbyHL7wA\r\n9lHCqyrrCAmqG3na7FIWrWRxhk40t5by/5lDigX1NcG4fu4/QOe7VNM5Iiyz\r\nTTsKgNwqrcvAAvR35OK/XsZoCURXvX9UwMkw0MAFYYmfnaWo9HYJIvSwn6kc\r\nRjutHoGPHq3ZE6Za3JmchhNkucqCadB5InuKwBu0SaR26QzRNeOJZ2SJ/QOJ\r\naOp5p+wLcpJaT/2RMwF65qcrGYifyAJiVQl/OVX9JyRJZMrDbK13sD40nYpi\r\nt8zL/4YSvIsv/UnwtR3ektWXFlhGK1q87e4f0FNIzurcLL02oCdmEg7LQwQ7\r\ngS4k3iKoFSQ0Q00ArZJdo7EjaLcXvH5LL2Rz+6j5a7uKUbQhkYv1FbOIt1CN\r\nHGgUPPZLe3C51/+r2g3pnvp1NRwwCxln9YnORT6AvydyxwxewR1WU+CB/NeN\r\nyqll9Q3k20J8n6uHkpDB7SP5Jvli5XhgduIh800P7ubY1i0MwEuP4ZRbquey\r\nQ60+HEXyVPi0/NIO1a1NLWTOVbpBPup2kt4ejJSNrnrfUPHbAdJmB7kdiVZM\r\n1nQAKFYoVc8vq+rDm54IGqfnKWF3gNYwPKNWCGl34CXGK6i3UF35gq7YIV1h\r\nAbq3ZXEnSAJONVS81y5ed7DI9N46LqaATIk=\r\n=R6ag\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.3.3_1670506495671_0.9227537745657517"},"_hasShrinkwrap":false},"0.3.4":{"name":"ts3d-hc-collabserver","version":"0.3.4","description":"This library adds real-time collaboration support to any HOOPS Communicator based application by synchronizing a subset of the HOOPS Communicator API calls between multiple clients. This includes camera interaction, selection, markup & measurement, as wel","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"8ab3dc79880fa654196e7666e1a331ff5bd6ae37","_id":"ts3d-hc-collabserver@0.3.4","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-a9BTuAJ0l22Ko6ledK+0CyfzqSL+e87fvkWesVOnTnO6BoIDheF4g9cDxr6dP+tLYhhXxprm6S2HYgOaflJP4Q==","shasum":"4298405511889227e6421ab7ba563d07a7985545","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.3.4.tgz","fileCount":13,"unpackedSize":97674,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDqCMShpx6bHzy5s7Po+CZNwLN6XDgG7r1ZAixvGRJwQgIgY+/6hCEPIbnse6aRcDXpF0bNYndwTmBzCxp8ZLgkyPI="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjlegRACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpzEA/6Ao6Bt6YO4ofhZSKH+tW4W4iupbrdkme9DBu/qT0exh3+tpT0\r\n+vmoIagDiDTAfmKAlZKllz9WldhsbGqEYHawJbviMcwDgDKhvZkPrO6tRBT2\r\nNwT4Igde1LMkM5aV0y9NEI+FWyNCKYLPyxIgImIl2wOyMaE4ciJk5cQ7xS3h\r\nJWgdjdPOoAZSUgoNpFnVgbUS575WNA8vvQELBHMEYV55nrKiIQy+9WK5i9xE\r\nA70qNDSPUKwlh+M7bE4alYdNH8Z15R3ywe1lgTEVd/1qAIskbSxDn+DS7o73\r\nQc/zu3WgloBvomR6RUMcJ9uw9FWjVR+Ls8GDjYwmMR4bqy5yLQcWTcE0pDAO\r\nF61bvfsSG+cTeEGMTdEo7j+IM+sDnnYZQcww1appFZHbTq479B74NbkJARk5\r\nPUKUpobyVHAGMRJ18tA/8zl/EPZopF5i4XaFxoOSWQHxeI9liJZeCl6CiRLB\r\n+lJYSpW0CGK/+YPwsC/gdvArK1fCimVMlCbPVV3OuvzLxzVuJ/Jn+vKPxkaA\r\njqVIGXtpuYUbQXb8MEJ3cXO3n1SjkD9VtQxTceuW9CkM4gr979H3hPKGR+xR\r\nZs9Gr/x0hEiaMIJ97UyTyQ+Xt79J1FZlxmnUENhy3xMsm3NHIgxibFiQ7Q9Z\r\nCrSUieM5Y4GiqtqfDxqNSgiENeX/i6vdJ4Y=\r\n=yrkA\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.3.4_1670768657559_0.11724213783869475"},"_hasShrinkwrap":false},"0.3.5":{"name":"ts3d-hc-collabserver","version":"0.3.5","description":"This library adds real-time collaboration support to any HOOPS Communicator based application by synchronizing a subset of the HOOPS Communicator API calls between multiple clients. This includes camera interaction, selection, markup & measurement, as wel","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"ce2ce688148536396251cc7135de23f51a1c9cb9","_id":"ts3d-hc-collabserver@0.3.5","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-zjcMhkoc/tr8ic0PbfPPHFq77sZYfbGatVRgV7XaGdAyB7aLb7uZJxIGNgSg9qm7UrcigDkV155KJv6kMg3m5Q==","shasum":"a341c087544e4811b2b446d1ff3b6884df9c0c2f","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.3.5.tgz","fileCount":13,"unpackedSize":98524,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDJFDXrAtlVGiPt8qmCKeghyVomdyySTR9fbDymz+C+NgIgLEnZ1h1h5wevcBb1A4hwrzoj+XYgQSPyeNV9/qnYoqY="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjl69UACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrWPhAAo18/2T6JPz2DOwUoyoJPjIweHePE5+imdHSVmG6jj+UdzS7U\r\nXf+GCG7kHsOKZAt4I9HpEB3aIuN2qzV0viJbkfghewWWs3NeQDg/AYYWxNg/\r\nk/vGb0VBDmElQrVcKeVfDG2fts7AGN0/LzoG6jH46vYaJJ5PNcCoEfqbUt1S\r\nqa9s979qvX6XbmvZ6k3DydEpGHb5JrUrGBkUGJcRMG2d6MEyhDwUrcszunJL\r\nzkHnKBB8uTAzReOCzDXtqiJ6fUd3q/czjlIHBRjjaN/8EfX8QYyWECT3p5Vk\r\nYoWkDwOz0a2rvq2/KGHj2/Ss45Je5q/nNQ7YKeDBELxGdqRTriIY3l4IO7yD\r\n5Or4zpXiU9431Szmcwpk2RsU95LIgZMRCWY21yMiG2hSmdiby6zXs7uZp/GZ\r\ns9EWVXchyXYmBZhCuaYTYsgxoDPbtJ1H51V/qoe2TyJ4lqRKDqKIjSDE5tYk\r\nLHqwjKclmtEririrFxKM+/Guc2J9PfSc5MrEQ8mp+ZPTTU1lch1jSJDlnEd1\r\n32cvVZp6+XNvXf9BxJUvE4a8jyP1KTOBeedS5U5+4hT+6dmbzVN8cKKO7rBK\r\nKWhuVVfvhLLA7jNqCmF6M8XzdXMHyFCepgTwkKNMoQHczWkC1hgxESEshduw\r\nG+if+4eHsP9sInc+gCDnXkUdpVGwS/z1/LE=\r\n=vuhc\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.3.5_1670885204463_0.5078124464101257"},"_hasShrinkwrap":false},"0.4.0":{"name":"ts3d-hc-collabserver","version":"0.4.0","description":"*  Support for mesh creation & instancing (beta)\r *  Support for Desyncing camera and user avatars\r *  Support for persistent room data","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"de7553ceb0539f4950b82962e1c7792f70401ef1","_id":"ts3d-hc-collabserver@0.4.0","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-fqCzHm7hI5erCzY/4eu8iPE8HC7mrWhkSaEGvEjXq0gz372ij8gFBQFDxevFNjel4q/She72sRePMcTlh3urDA==","shasum":"f50572a4b7272e6c0177a44c1dd2ae321ef9f55c","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.4.0.tgz","fileCount":13,"unpackedSize":102104,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH3ufUExifGD/zS+uqXsyHqWats0Hyt/BGE0k2N+slK8AiEAm/MXJMijC67r0ucXgKyDKL2dISypZor6qDxW068pFWA="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjmJGBACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrNjQ//cuJ36jJPHV+ln/NjGZbyHXxovDAm4Y6v4NQrVToWJgolelyF\r\n24FJ5+5iq1nDp2wwI1dO/iMFPXAsRQn5wFuGZbdNOouBpbs+i8i2poEWuKJV\r\nYB0ZSbD5l09Iw/JL2E+24Gc1hl+H+aH+wCnXG0GNbiicabBvovETUJirK6f2\r\nGfCrlmSYTeyDbM9usUlG8gUSnXNGP3uhpDb9sNhhdXMoyp7SjphMV6qei3Qh\r\n/NxLzqRCbtmKcLu/koGxcJhLfJL92Ah82i654Bainoet4osD1MrG50RYRH0z\r\n8/uVZ9G/37RMfcVFZhF6VCN4AQneU4BewH8HC7alwym/yntCI1tKPpjXwBWI\r\n0snFPRQeXWgpmsN3CmLmVV3CPzZ1YkITsOrizOMO5Lg9yI8xSesrKwNt5dZi\r\nvVNZ7mcUrBc1yTxXJ+jAXKVMCx8khjzucIUU0hLI8Ysm8fnTuhUIb9inP3Xj\r\nKOUL0b5bvofNnrd2V8TskL21gpDlBG7l/WZPKKt9MANdrTdXgAqOkzXBXzR0\r\n0DHIGRkNX2ufe05/Eza1sINN83bx/4pLSXBk3BJuo2tpAeHUDNGu8SGHELD8\r\nb8qrtonWfbDPn2LEdf/kWicMnK3phRamkbpX8uFq6VlNtxJB6FD7QK45Gyw4\r\nIV+8DgvIGwbi3ifqAwfNyk9MoOKf6CKZG4E=\r\n=16n0\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.4.0_1670943105461_0.9763014759443884"},"_hasShrinkwrap":false},"0.4.1":{"name":"ts3d-hc-collabserver","version":"0.4.1","description":"*  Support for mesh creation & instancing (beta)\r *  Support for Desyncing camera and user avatars\r *  Support for persistent room data","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"43bc9da22a97f128c90800165df84a0095966587","_id":"ts3d-hc-collabserver@0.4.1","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-Pdpe5qUlIj4rWjXfKATZ/ii1MlThy+yDGbjkxhJCpXFGLOra+yXxjmA2o7f1H5lZZAzEACWsREpamP9ELzXukg==","shasum":"68d4dd92fbec50be0f4107dfb1d93c9d5c1e1276","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.4.1.tgz","fileCount":13,"unpackedSize":103944,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDC/P19zKL98W63lWKj23C77ZBFDj8Lqinf1YTr1By01AiEAqShJXi1BloWwEdDvOc+wv5KUvSlrUcfFw/Przp0MoTU="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjmKvoACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmro7w//aK/aVA69NuBefOIXVLCxd0tFa/aiMnUEwjvyW5PxTZqC7/a9\r\nsFhvOfZds0vBq6/fgKcNZd7dWU8GKMpLBR3mntPDRkNFotneI+KoW2E5dVmP\r\nnGHVXihU+14n1tLzPEWnUsql4/d2rS4DeDRXY4aVVY4xKeqed3kfVtoDTIOf\r\nsncxs5syjajGcUwj9OpOYBONJZzZ8iJgGyK+izslG8qAVDHsGBcXSIJxiLMQ\r\n3PcTsdyUnz0uY4egiuHYnxuYlgIfAsa+XCc8sDOwKheBSzQM7sERgvJNm5YK\r\nWnmZQeMTHmJewNVSLZDtgH9fNFZUERWlf5FQ3d+3rfogGfEgWJD4vzzpRn9/\r\n82+CuG7SKAemLGSV/w47P17sK3X0Eu/nUggJPmlcy3iGHX8ituY7BZhUxxGZ\r\nwoY/mOqy7svHGrl6HcOOQC8BGuB2l1oAa98VdWodqCPQgtQZ6E+ebQ1aDtrP\r\nhY/wczVoXRtj8aGV2EELUVkYP8zeeF1V5yPq9QuG1DO5P/MERfYq+w+mUP4P\r\nlafamdkkLtO7GG+iTaX3QlrW08Y2TSgt6H3bdY1C2xfebX55exQbT6/mNxvV\r\nNZBX0zaE3x8lgNCsM46NiasPxysGnhUhqDiW4I4TqOa7TwM1N2RtwKBrOVvq\r\nQLo5mfDfCz9CjfDSBe8PPfEvECZp3Q1cEEQ=\r\n=vxxA\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.4.1_1670949863948_0.3827950158109501"},"_hasShrinkwrap":false},"0.4.2":{"name":"ts3d-hc-collabserver","version":"0.4.2","description":"*  Support for mesh creation & instancing (beta)\r *  Support for Desyncing camera and user avatars\r *  Support for persistent room data","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"e42d9d4b0e6000e0e299ec48af93c4f9622e0be7","_id":"ts3d-hc-collabserver@0.4.2","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-Zew0MqSMFDCGdqkZ66EOzSc9cgQH29LE1CVQE3mf5vJXhtZwVgNHAMQClI4SFJNEi6LDNFTZZZ438BdoJGioQQ==","shasum":"5ecf8b8b5dbb1c47d0d52d7afaf9296556c6fb2c","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.4.2.tgz","fileCount":13,"unpackedSize":103974,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDjS0E4iFaQCUl4sPXVEZL/ddLwqx0mqWIW4SVSS1cZmgIhAORhM6REVgPUrCc07+MnGXZvy5cg4wu05Loqdh2G9Ccs"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjmL6hACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoC8w/9Fy7z1SOrSY5YiTxj7jBpIN6y+jA2M5QgSROQpeGbecJhojf2\r\nPcUvrZbjNjFcSDM9WD/HOc6/6U98/vC2zy1ct1QUFSRRXA3AJVLO6/3A5ZTm\r\nJs0u5GcixcBL0WFjkxh4fdwPrVrmfvYFBI0g6Gt0ErwY0WzhTA4rU/c3Dy9w\r\nN37HyKxjFnXVxIfo3KjhHU7SI4gL9xpOIt0QJOPFJouMOH9MPtEUNJpHhhFI\r\np2NBb+hw6WdHMVnqKXbKTO201ZixmGoGALXHGpHqAczxas04zPiKV6K4bMlY\r\nkFtB/BrurvaPCh2l8ecm5DaDSIj4au8V6lJ0v4NytU1pKV9V49tFu1veyXii\r\n813y74+z7VkwdML8hdwEg37PwWozhjEBZ8iRmfgiRCWT0WGVYofW3ogiv96g\r\nsKUEVmZTaLnOSyj/Mm1vDn2QB53RY33aSkrYLcKhdqvTW29cV3gPCKaNzGQ5\r\n86tvoeWI0rEe9Gasnr1ffNAp0W4iX5r/LgkbIEXBgQviMR+QlDr1/1MMXFM1\r\nRpcPNFcMl6TKKE57ug47LGVxVCRjdWRYNruvdxZXgGpwQVSOyyD/inptYHfh\r\nDL2YId9a6ciDAIRjuhZb/7q+xkA7Cu1Crq350l/mpt3vE2ax5Cb3UAuTN4pf\r\nNhaKwYEi3TYY1hZCBlI82Mq6xgMErrKe4jU=\r\n=oO1C\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.4.2_1670954656773_0.9328817691785709"},"_hasShrinkwrap":false},"0.5.0":{"name":"ts3d-hc-collabserver","version":"0.5.0","description":"*  Support for mesh creation & instancing (beta)\r *  Support for Desyncing camera and user avatars\r *  Support for persistent room data","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"85c34f8f9095346c44f6501d413a5b49758e2a55","_id":"ts3d-hc-collabserver@0.5.0","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-i4+Qury+r456JZh18Fvb9wbHT0tKc9UUQ5Aa9ev7S7Zl21dzpgspsio9OZyAkaoipNFTLAs0VNI7V+7CrlWjng==","shasum":"824b6db25649c8f4abf9e3228a15ea733a13e8aa","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.5.0.tgz","fileCount":13,"unpackedSize":121622,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIH2zH+B4cbhdOv+BrqoeXeLcrAWIQLUtBV13xtb8vSW4AiEAzYUMSUFH1O4Ycv6UmcSBdiDwTbIcGJjZZl2ZaX14hnY="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjpcl7ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoHag/9EnnTULQZLcT+H13tUZCx8Laee5HbGSDP2W4lZRoOk7yrx4JG\r\nnH7/0JincSsk5HdsCW5iWF2pSCtUnBjz9G5cjubaHoaWHYcXbe0UH+55nQ8j\r\nSaJJDT6Iih5M4z9CVMmThY39Xt+T8EFKMTezEMlPW5rv6K6sOJz2VG4W1oIb\r\nwq9Zb2nD4G09r9gpmxtg/6Aqu4bEwaVIK86yzJNUlZyonlTvlE7EO/eQG183\r\nATpRiVv5OSLa/2Pv8f3dBEYV7Mm6uoOWj7ud5wIMeEreXz7GHjIg40FJFUkW\r\nvvrlQbwB3o5ipamVapOjaBxoFbCKZ5I2lEhuGy49yz+gK00YeGyMpHs9dCnw\r\n+QYV68dJ/H977Bu2nrxpRIsFjQzH5n81jQm3HXU4lZB0QKK2WoIhnFe2WVVa\r\n7Wy9wjC8h2cFruNFLBbHEZhpWbkXzZbOGlcoA1SVL+rb01Gpkuc3W2qDUZVT\r\ncwI6H44uT8MceSpnI82lst1tAzW3/c8PxvLa1fgrzwwGqxkKYnGIpGOxfleP\r\nt+/Kh5pP0v0fVtW6Ow1eMZo7WWNzJ79Coj1XJwxqZAW7om9CxphM8mkoPtQV\r\n73zMzY/iBw7TmC4ZWdgpdz133bebEddR2Y8jOYDYl6/rzXiaU2d1SQ/3pp5G\r\nGf+cajSOLEKObeOlzM8GgdrmW5Wl94MBWl4=\r\n=xlct\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.5.0_1671809403349_0.7273643000566474"},"_hasShrinkwrap":false},"0.5.1":{"name":"ts3d-hc-collabserver","version":"0.5.1","description":"*  Support for mesh creation & instancing (beta)\r *  Support for Desyncing camera and user avatars\r *  Support for persistent room data","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"bb9fe92dc67b7a02c812135644fed5a624f74706","_id":"ts3d-hc-collabserver@0.5.1","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-Oc2EMlkzBu1Mfa/+x0x8mM97jix0OY90yKTyz5qEmdUgq9/1VaOcyg4sUg4UxAd/KK9KSHY0LWYH+ueadAhHtQ==","shasum":"1a6318ba784a479d1b4153d76862cf5b9c652d03","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.5.1.tgz","fileCount":13,"unpackedSize":141469,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDikiMJI0z6ZSJIDcn80FCdhR5oDyW6RRIdEBkoVMCsrAiBNdLxI9g0znFS5Za5VPFUAsEZnjwlC8EbMdl15l2sPKg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjphIFACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqumg/5AZlj2tUJYzyhC0ojeuUm+V9sNp2jO1f85MrWnZFoY5vGvwJD\r\nch30n9gOMB2qn/tYJrJ+Wb+zoKG+hy6YOEax/DcunU71o6Hqzl9XtFeSgU+v\r\nwKpHDcfROzXdLNkrO5WVOHxmpCzqFLLfLZZzqE9dff4oAuGzu1dyAGOxX64p\r\nu18sxo22ibhq+aQEGLHoYGuQ0FsxzcwQ0YSeqCRy+MGjH1IvODyHV9z2Zjw2\r\nj6p/5vth0bGhEhLYd5QlJ48tiQaljvxpln1PtTt4c1+pSphD8sJBdLS2VWB1\r\nDcB3tDfSKZGyP/WCW3P+UimEuCS86MeGF/V8D1IAkZjHDWv70c1AgAuQXoyG\r\n+0wEhYlWY8s+VkezSUqcsaYzTV3WGur6anjznYk596ODAXZkBFxAM6mNoW34\r\nLpIhxe+RqlBkIbNluElYNSQjpuy9dHEboisLhPQI1VXvikYxBIYpcP0SL1kK\r\nP/fx+ZGDlA0AFavDM7BPcvyz2KqN9ReKqBYlu/8LZPYvjxyEru7SGZyoVExq\r\npwMs49R2gEVCx+b92MRX3OUUBcxLLV1CLRekmkLe5FUZ80Xr/wH/yrJ9ulr6\r\nZghTzAp+WNDdiz67uHaUwM7T15wYjVZAWWpA/artExNNQOAiDdbmj2sarPw7\r\nr7KGlmwAb3ZZOGPu4h4SHsE5JIDHg09R17k=\r\n=sYg8\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.5.1_1671827973132_0.9528305044801428"},"_hasShrinkwrap":false},"0.5.2":{"name":"ts3d-hc-collabserver","version":"0.5.2","description":"*  Support for mesh creation & instancing (beta)\r *  Support for Desyncing camera and user avatars\r *  Support for persistent room data","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"b2db58075e522bae6f889294e3bfb4eb6881c544","_id":"ts3d-hc-collabserver@0.5.2","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-X8ZuUUbHk0G4V7uLi0XEDtd5wDiRhaSVY+FDm6r0egg4qmDc5YS8N5ztIGqW/0B0O3FnXRjwi/5VOaiO+0ZViw==","shasum":"2f4aafd63eca6aa8ff1020e0ce3d8258584e11eb","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.5.2.tgz","fileCount":13,"unpackedSize":141631,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAOGRq8XFZRGgMgYoEBVN6O0lWyvLAhzi56dhOWQFFU2AiEAppFNrzcWCZfqFRZSPKJSTFTyQ8baTNq/p61CULF3ctI="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjpwaEACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmprNQ/9EiYPXLNRKjpxBFx+qGLRuygB3Hh1zRq36Sw6ejzF6agXio4/\r\nyHa8M28U6Ssdb3j9szUHU3dRaGHGz6JSecXQgtlzm7NpUHLsGhpkepKldAQZ\r\nM3VRC8d/ZG35+3tjBIVtnGUa6BuBVQe+ThvRKNCjFgVYI/hNg6n1+F5aX+IN\r\nFO3x3WEE5jteznTWGaKz8133rjFD4a2uYR7XgV1TP1Ts/S8nfYv7CNxbXcPY\r\nYjmI1+XOpYu/x7Z/AdrpwhO+ubF3BWRotBjnPPsl9Aut0DaP3EFyTlgxvJL4\r\ngH3JC4oXeQs5uzn7/LtnZ8vlBK1EPMxx7WmpfKNUJla/y9TosrBRAQgVHisp\r\nrMwxobTr3obLF4H9OHfHqNNkmHInNHVbOL07i4Wq/XoA7/OlCxym7Jemzqf5\r\nwQbsoh1PunWZr5/OZqjzyCSuViXt/HOGgDMcoz6UEt05+rRgRexjsEZaLCHB\r\niMW+s/yuWAILzGRy1H3YtwbnHuI3NLaN3pgFn934HW7FLHZoY7UOlys/orNr\r\nJPVdVaX7+4CXVZUXdjQybgskci6qjv2fQzlXog0Qgeyz6vpH+iRSOAqPfB2d\r\nTVdl/YXbbX+mb37bxxY791xKLHM1BK/O0zw7fCmVRj7aQuyorAhGzz50ASB+\r\nOp9lfJ/QCgmHMF75EFCnYRf+zHGo9ZFvCwM=\r\n=wFrF\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.5.2_1671890564030_0.9667496566650406"},"_hasShrinkwrap":false},"0.5.3":{"name":"ts3d-hc-collabserver","version":"0.5.3","description":"*  Support for mesh creation & instancing (beta)\r *  Support for Desyncing camera and user avatars\r *  Support for persistent room data","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"756a201919dbfea6336069ae233d91ec4b527cd9","_id":"ts3d-hc-collabserver@0.5.3","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-jbOtXa22Ot0EprZx6ZXW8TvDHDvB5CUyzcgb/icgF1Sv5pZvDVXO+izfBG+gVN1sKmAufX/R+o7ecvWCl6kx2w==","shasum":"fcb2a78cf3ba1808848a83431ca3426f94152f08","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.5.3.tgz","fileCount":13,"unpackedSize":104804,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG4uQfL4cqX/8WQ7f4RJzP5LTC5NQntOl4v9vkwyVVkyAiAz6KJ2TDae2cFHaSqmU9kML8VBQ3K98e5ydU/wfGr2Gg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjpyDJACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrnChAAmlVlLguVuI8YRjl2y96eLKmW0Nmje8AECGIz8jWeYtHrDdn+\r\n6I06qQlp7fDh1+QNNPmJmj5RQBgbciXDXgsIUckfpsn+p+yzzn4NI7OrFiNc\r\n+bW0EomVaWMXwm4UChZgjrBFK5pjlLHeFteWEKqsKwmMbqVlsvid6W+SSfI1\r\nlLssxiCbLhfSgR8KsWfco4d6tkTc1+P83BzjvLyy4iOvKS7yfRftsiGJ9Nwo\r\nHoTLutgKctzQjEusFzyqvREEsImAmqIaHxeXU7/OWmuNdXplH+gwxARAOZHO\r\nwZ8H83oc51V+81LRfiQHmMRGa+MlA7ZE0iiUbFw0xXFdMLY5YYy7b0OGNGcj\r\n+zBGy8up3nBlTaiSYVHiGE5hWrPJY0bgL2WWIMvwhuffzBAWhm7DVGE/hVQd\r\ntretyswuJfEuSJ8n/vLk70guEtyjVd3Pf2DjMuf58eAoNX1xpgMIW33Kfa9r\r\nUyx/hWvvCo2o0H+IYj7mCHRuAWjrALahwZhRGVlwxxodEZSeUsQz6W1552R4\r\nUt8hQhBwhMZsteP+md2ERFrmf8vcIxFdtafDOjw7kJNix/4ZzDqMUsgYhw74\r\naKVdtxtzlnqG66ranEG0zXqNu6MPSnUJRlICllaF+pU/OnXK2xFK7AVX15mk\r\n7kLXw5l7rokqhQpDuKIfCokFa8EKoZGMgYE=\r\n=8Hnf\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.5.3_1671897289436_0.6851726724391094"},"_hasShrinkwrap":false},"0.6.0":{"name":"ts3d-hc-collabserver","version":"0.6.0","description":"*  Support for mesh creation & instancing (beta)\r *  Support for Desyncing camera and user avatars\r *  Support for persistent room data","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"0be0f9005570859e83ebc3abca04b1bf22baf030","_id":"ts3d-hc-collabserver@0.6.0","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-C6j9PX2LGEr2CPIURyLvyCeooyUdw7/Vo8bvh6Kz97WLi42oPuf8TXCmBREPxSZj7DHsOyXBNASC7KP4gH99sQ==","shasum":"327d6535f23b409ae6db4816fa82a7d17cab3bfe","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.6.0.tgz","fileCount":13,"unpackedSize":66028,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC39ArkDL6v6e6r6Yg/bYSjY/PmxmUGf7Zhw4lCJsv+QwIgQy9XNj2h1Mt1ySPkBiPPaTGBi2xBPGcc0uLdOlvRGjs="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjqcDbACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqyFw/+IlTY+dAFoL8ZQjz8nQve/uQySmINpIuvCmRywGssgS/Tyq77\r\nQe4S0AzZjWcQXpMTUZduNBHWKijP8PHT5bULkBpCQLEKY0OHugLQNWD1EoDL\r\nl1S6Eaq5FOhdHGwo70Y/70qUrs+2L0gwx0RHcq1gZyB7ULe5sVVuH0MBiyfA\r\noQgr0JU+NuFo4/RiIelca7lha6XZ91umnel4S2xdmfkUAPr9Bqk3yZocsfkE\r\ndPtdswjWjnxHqi28va58oeO7v0G/kpOBRxilOHuOH4UZgoiFShPE4AfGgzsi\r\nZWmkfFXSGAO5zPZY7faBg6cEyl48bC4d86Mxe9SLzRzJfS5jrxdF/qzmR2ff\r\nm44JArxrICPnTBktfY/LofXZcyt1tH6ZDz0n791XZQ5H8YBgwmf4Q2NgvBt6\r\nnin+ddHoLjq83kGC89P2o2KA4oZRCsqgxinJPSQDMTpQsAyCEh+RPTEqM1JB\r\nlaoT8EL6AQMbQyWdxvnLZZl5+2DI4r/MkUMriZr0w6tOFUuewWoFS2BHQGSO\r\nlGYNIyRGwwXbVcYbPkFr+FJarIFC0L8CkuaU5yeKmxrRPTV5CsHN6Fi/QVzP\r\nR2jV3sfccgqZcBh4DKN4HoF7MYBTfDizjU7Zsw2aHBd5tOUCCKWOZ451IVfI\r\naQaAvCk8NIjx2WaBFwtPAdBx+7lJfF1hfeE=\r\n=GzP+\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.6.0_1672069339259_0.3874626750244705"},"_hasShrinkwrap":false},"0.6.1":{"name":"ts3d-hc-collabserver","version":"0.6.1","description":"* Better Suport for plugins \r     * (``setMessageReceivedCallback`` changed to ``registerMessageReceivedCallback``)\r     * Ability to retrieve internal suspend state\r     * Ability to retrieve user info by id\r * Camera and [Textbox](https://forum.techsoft","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"88f15bfa0a016149b2f21ffed77356b6a9d4c2a0","_id":"ts3d-hc-collabserver@0.6.1","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-s6RKSuv1GGQY67ymuKpOWK3K3+bhiMqUXlEKhuSLEI60hlc1Bew9XdxU/gCNLxEjcSQe1z8iyi/8ZP5bwjzPFg==","shasum":"f4334598c81cb830876f8dbb1c6aae43abee1974","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.6.1.tgz","fileCount":13,"unpackedSize":67103,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCFWZtc8x19JVGzus8GCHIxg2Otg07aXAv6fFhIIfkLiAIgLCoZgAwB9uT8wxBLzzbPmsBcDynR8wLBhPBtKXGSazU="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjrwpDACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmprFRAAhK73fUl0tC3bDMxRWOfjWUGcIxH+mOgEv94Aqv9kpZdMXarj\r\nsZtt9sTTyvbRlG5S0ZVJHNMOQ4BZKABnp70G8xjJTkH6AUozhWZoFyyWRNzb\r\nxUk/giM3h3iIgKEU9Q2alAsIUU/ASw2TzpmmoECtRQLicYGRLra/FaUugP4W\r\nc6u6ogJ/ZL6qFBWp1N41q5f7XSMiiJNOnrPTUFFb6F9LqAn0eUAIMff76uC5\r\neZG7JkxAS8sxEAuXjZN9pbQRMHnHbXWy2iAuEF4hMLBG7o7PDKRwV+cf31FI\r\nli3UIONaXf9cr9t8M9fYkhMaZbUQtJcNO0H0Fbt77gDWrkFsVdJox1d+XO+M\r\nw9PONpq3BF34xO0sbIh8XWB6lefiNlflJ38DrZYgK5wTScCee5Za+8lQUfUW\r\neACrMy9drWbrrOPfz33oYfsmcxPF5dNHk8A3DVjNewfNHVhREkWLMk34Kh5P\r\nt7OFBctP8pUDKU33FK8/Zo762MTMwwQ28TTrAnsxA8sCr4F9lalP0MW4ZHAe\r\n0bLVOcSXlbujjoESgLcyCv7BBV9U7fUn389ndRK2NG42Ch8cBaOfG47wuUMF\r\nZZvP4i+SgdGPGbQcN9eJjjJ6M+2Vh04eiq+RI9ni/djEN7lyHWQQTVKJvqwC\r\n9UwIR8KBmcK3pRrIRCi6/ArMwRjN9+5abjY=\r\n=wiI9\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.6.1_1672415811547_0.7035245684249285"},"_hasShrinkwrap":false},"0.6.2":{"name":"ts3d-hc-collabserver","version":"0.6.2","description":"* Better Suport for plugins \r     * (``setMessageReceivedCallback`` changed to ``registerMessageReceivedCallback``)\r     * Ability to retrieve internal suspend state\r     * Ability to retrieve user info by id\r * Camera and [Textbox](https://forum.techsoft","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"5d71ca84867051749a1318a94768b6d381f41e24","_id":"ts3d-hc-collabserver@0.6.2","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-Ao7jq06bn1d27HqRVdgonhvO6lX1tQ/ttwG+DstdC5a2NnW9V8jTjZTRiUK9KNksd/IL3XD+o6kH7dYbuDqBRQ==","shasum":"36f62152f7bd7c99d4396767dc2ecfc8009e8ca7","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.6.2.tgz","fileCount":13,"unpackedSize":67938,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD2+EXqQM9WUJhDyuvNQmVHSb2KlbXszxfcnPbk5HDM3QIhAMDkMXE3MhI+juFH2JONy7kYhDr8lAzbFnQj2Vk8D4/F"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjrw3vACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrTKA//Z9475M1j5r9zfdvfeoYtmvNCvU4WgJz/ffgQDTXQr2dIhZ5B\r\nQPvPTo/O3YyvyNWq0Q3PQd2gv2wiPJP+N+I2WcyJKLuaWACtGbyi4fW0gl6M\r\n78EB1nxSv1Vq8SKNa9+zwTp83Bx9Q8rgRcn6V7HdE34ahSXWZH/tAYCmJXVg\r\nJpoDnEmaVNw6AYOABk8BKJz0ebU+59aCmeQFZfnE45M3pPGtPPUJN+z8yAjQ\r\naSHkcMG0IQBdwBydRlIc7eO654WnE1u0560n/eVXbvisIteqpgqCYIpk1Vcb\r\n66ugntO9RDF2L5SDLK7QMTo3cn7+JfkdYYjxb/C6IPI/kkKTUdIk60zvnHOS\r\ncUUjjdsV4FC+0f4cV530b9rWLBM4G60KtJ1IWlj3xhSc7urL6RfcCQv+LhUv\r\ncLxFDfLA/0IfDPlBsBSSOGZkCk4Bq97w9rn91mv/X+IwDeXfLmwVDMMv7qaj\r\nSSr25ZP2D+IdBFfY2DTeGQvY1yggK6TDDjqw1da3B5oSi3N24CkjDle9PU9g\r\nFe1uNAKlcJIbzAyulebIQ/VY/O3RVk/AEbCkmQeGC9Y24uP2lma3d/UMJNUL\r\nzRJ9TeGQwOucMeDXwyEcVeV6kPbEAMXpLKM7BkbyhRbxjhyvxD9POfTVmMTL\r\nlQ1JbwM0r0SsWBlMxbRF9pxaXKcSsskL/b8=\r\n=HCn5\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.6.2_1672416751336_0.3148643156986879"},"_hasShrinkwrap":false},"0.6.3":{"name":"ts3d-hc-collabserver","version":"0.6.3","description":"* Better Suport for plugins \r     * (``setMessageReceivedCallback`` changed to ``registerMessageReceivedCallback``)\r     * Ability to retrieve internal suspend state\r     * Ability to retrieve user info by id\r * Camera and [Textbox](https://forum.techsoft","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"7122c01566c2a4a679908129593007a1c80f14fb","_id":"ts3d-hc-collabserver@0.6.3","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-O7qQJwmece7f2JaPB307DbbQfyslpLBi2PJbkChRVH2knOkKaIjUN+Q3aOQv4l1mEhRShywtyLHuUF2G7n+goQ==","shasum":"66a6ef5b6cefad349f24df6b4339c7e6025c9b59","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.6.3.tgz","fileCount":13,"unpackedSize":67338,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCgE32bRXI9hUEeh2n2bXSHnwPvVn/qd7tJVEMOW7AYdgIhAP0qOtKRUakLQVYKusfrPMy3wOkOT18h5B7r25j/soN5"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjwCSRACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrm4g/6AmJq4ufhPbwVUbMqnt8nsHUvtKcHFmogaSEsvX1vxV5n2MRA\r\nKXSMEYzHrG+Caz2gM3sJh6clLFkC48qJUFnZkifsPSOJwezTCJC/v/PpYLlF\r\nF047vUlN3qK/qaOIQ3g2XsrMh+NLjDkwtKtgltlo1LO1DPIA/pqknpmVwR7V\r\nn9GdAeI5GTbgbsCqnhKYFBR9iQ9iBIsiBAQMbwJwcgN5yPgH1g0NGNLEBrcq\r\nA/SPozseNCmy1paB+UHfixiuH4/1mCEpq86KAFK39q4rgAJgxGAEdCeX28Yt\r\nbyOCZPnJ6MXytIzUzfGC4PdXpN4ogjPlgeufMsNGKFaivcFzywYhff1dLPL9\r\n3ldQVlAkvZWbI3T+yzkjZx+Md3QBGmcLlpQWJPcB/+jW8BBypoaSfEGtVmgl\r\nkY+b26EKx1twMA99OPCQ3ta/4UFyc+KawdX3AD+J3Q4O7DJJ3DOHH04cQB04\r\nUccobHcc6UxTqW64zsARiE2/kBn06y7m2fSE271VgUKstCHq/Ia5y14H9jO1\r\nzi/H+q2Vykm1ZfK6QZobD18BiJVJr/xs1Zj1L4RoibkbMnOFxhD+HOmz77xu\r\n8q8YFQPpITXUgZYCTz4wNjIalxUnind56hMmr0MnmBJzOaizYzes7TgFYFHd\r\nG+fXMihCLB8AlEVzJVE7pDJPYQSAcUIe2FY=\r\n=GUhH\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.6.3_1673536657171_0.664154810970881"},"_hasShrinkwrap":false},"0.6.4":{"name":"ts3d-hc-collabserver","version":"0.6.4","description":"* Better Suport for plugins \r     * (``setMessageReceivedCallback`` changed to ``registerMessageReceivedCallback``)\r     * Ability to retrieve internal suspend state\r     * Ability to retrieve user info by id\r * Camera and [Textbox](https://forum.techsoft","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"842d4e41c06f023b38a2582099e18ea736412d42","_id":"ts3d-hc-collabserver@0.6.4","_nodeVersion":"18.13.0","_npmVersion":"8.19.3","dist":{"integrity":"sha512-fYDnTdE6nvq0uGjxjn43vDKIeO+TYkkC7k8PjuYoKFA90xyIB5NsDYEvLmDjxHLYfPzZLwayFwktqRXso9KnjA==","shasum":"3886a87340750b1310204ac65ce0b4f446d24923","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.6.4.tgz","fileCount":13,"unpackedSize":67338,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIASlstFUaPt1MZnt/elRF2AS4lnIviBj/H5jnTDTNsx3AiEA3o/cbiuhw476db7hSgFe0I7h4OcOMyM5FvXKUsVbgE4="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjwcurACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoN2A//cl1+VRZtT1Iph6+YmK7i0HR7eoIdkzanlmWfvVecM++YRsZh\r\n0CYjFOG+dOnyW/dc1ARU9dDQdnL8omtAFZf7oCui5Uuuf3wBXRjO4gDVmgvQ\r\n9IwEbSguIDBFZkvPoA0B5CbaTIlNfwszqGh+qLeAXw/s17kchBARZg+YMDmN\r\nRfhJgb7T6wYoshJLojSvOpQAH9zADgWJY1FPlt05+Zz/yloDvQSo34Y+newE\r\nS2kl73ABYx1mUNeyQdaBFlsLas8sTHRbsQDBNdN4llrzqv+4jNfNzMvdHvlt\r\nU8GurJU6KtlOqmUgJJF5n96fAx+Pje3XlB4QK9jhBqwkFIzTNsZEdcWShG2I\r\n4lzi9uA07b8Heh+Oy31JAmHczMZV0eRjT9qJ3SzUCJbQTxDaZ3EFS1XIuprC\r\nk3r7Z/0VoebGKgjOtfNpjjFF3mSWDRw0taNRs8RkyR1UtSF4cWbpIcjUj5w0\r\nsaqUGd3cIDXZD7ligHS7WZVGHKpTRqaHNUo892byYNJojsCbabMAozFf1zIA\r\ntNqlFN1Lgp1pyUICWrW306tSySjrHwWzw8MiFvVJvTXf9EkbGAU6X7IBPqoF\r\nn2lW+l+BtCGRkcGbsT17kY1yvfPOOkT71jR1ELoXTabs3oikRNUSpIwWPUXT\r\nYjCZ4solXY5DBsmv/+lE6+oLIvCbB7L+5dk=\r\n=9TWR\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.6.4_1673644970950_0.3357567802722021"},"_hasShrinkwrap":false},"0.6.5":{"name":"ts3d-hc-collabserver","version":"0.6.5","description":"* Better Suport for plugins \r     * (``setMessageReceivedCallback`` changed to ``registerMessageReceivedCallback``)\r     * Ability to retrieve internal suspend state\r     * Ability to retrieve user info by id\r * Camera and [Textbox](https://forum.techsoft","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"cd3d9ce657dcb838375dac3d980057d6bf926c09","_id":"ts3d-hc-collabserver@0.6.5","_nodeVersion":"18.13.0","_npmVersion":"8.19.3","dist":{"integrity":"sha512-a2V/2sPyKIzBHdWlYFGeJQFsGoI/N1CH135pk1gCPi4ND5gT6Jj5shBt+eK8bWkqMofprbyNXQ2Warc3NY/Ocg==","shasum":"e4f034637a4d174bafb153cdf6b8e7cece5db225","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.6.5.tgz","fileCount":13,"unpackedSize":67412,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBjbW7qufYVm/f7a+5/kpOawhtKCb7SC1qLl0iBTW1zaAiA6y0U/6Nygvn9HqPPplyfZoJeSqUSkjNASt8oOYCDkrA=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj1ScwACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoYBg//eO9BEyPo9adJNK7/Lw1/P9N1i7QC6huba6Yv91nSwl03lzwl\r\nVDaEBPx3H/d9l6AS6cZ18YtqB+33gNrhDSDupN+RyTXqQjIrvkw3pY5bFBAM\r\n88iOYZkJ/sFPFTf5XW8rPvyEv9yIzOF3Byz599v6/SoSeLt/fkD/iDCiih8q\r\ni7qRd0QwaJYgWnrkHuvWKj0BYH4R4x4+47/SySuY0m9ge3PGa3nrvKk4Ink+\r\n1AoqKiSVFnRZt6Xvh9k/HdrcQZkg2EkLGlXxL8ikpv/8ycNEwp3tL/JrUOLt\r\np3qUgl810u6vTPv0flfHUEeoL4iSMFiKCyEC04Cog2GCVJCL6W5QhK7oxtlJ\r\ndxS7rNUk4oRd9O2mqe0yxvWeCNgI+ivfSbrUhmU07Vd7HrqHKd08GamR0zgV\r\n3DKe453XJjf9sxY0II4toczH4qzcdIxvz+ngholoDbxR4cLwTp/kDGIcRtBX\r\n6I/fHI3J1QIf01gn2cX8joicigoZPc0vcYxkEA0fMlwAfoF4rjYJBH0DvxAd\r\nTq3s7IMVmd1tUv4FKfQ2VcrPMjltkACXQaDqhGFpUsYlxfvTqu4JBAwO2BWU\r\nHDYdjnCSs+J1u2YDWBLAa+GayT3cA5g9X/fToulFrfDC1q4oWnRcIYmeWXjB\r\nC7yX0Gm6hvvI+WMO0lMhkNov3Nm8ceHuPvE=\r\n=ClrB\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.6.5_1674913584605_0.6960547394073422"},"_hasShrinkwrap":false},"0.6.6":{"name":"ts3d-hc-collabserver","version":"0.6.6","description":"* Better Suport for plugins \r     * (``setMessageReceivedCallback`` changed to ``registerMessageReceivedCallback``)\r     * Ability to retrieve internal suspend state\r     * Ability to retrieve user info by id\r * Camera and [Textbox](https://forum.techsoft","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"688919d41265a322eb79050a7af0dc100b4a4f55","_id":"ts3d-hc-collabserver@0.6.6","_nodeVersion":"18.13.0","_npmVersion":"8.19.3","dist":{"integrity":"sha512-ljmznl7Qxak6UUbsHf5bFkZbgwRvXbHGdyIBZ8n5gjl4Di2vLVXzE2jKewlL1DTiGw6BWmSG7x9n8gJnkFzy3w==","shasum":"14652f8c6310c58dc3a16a63c764e8bc620e7965","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.6.6.tgz","fileCount":13,"unpackedSize":67384,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHdy1aZvoODOPXGyJgdihUOuKNRDXy8x0lR6huimPb5mAiB0yJPwWgN0L/31UYEB1lu4BiIMiSUI3NnzRRZVt1EFtg=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj1TAZACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqQsg//UaWhRUiJheNATnBYq0LSnhIYIJgB+nKFgNAjetuFA6Vt48wT\r\n9BPZFNiwrAASFtEHkTgmi3hY2e4N87RX1AffJ0Svbkmf4fesQExlQMriEz5P\r\n/bchQUGI0bz7gDkJtWQUzAJVv/L2tgsoxd59eAZovDtjLlvbPdmBRdkUj6p1\r\nShhDT2Sn302ypL7Pw/ENztNL/lW7b/lAQo5XVRTDih/OwTOHa3gp3OBvaomU\r\nomI1b+Ab/6jcop5N6awF9pvoS13tkLDQMaNdKD5otakewoCMrCqo9wlmtdpM\r\nj/30JVWdOqQJwmwr6mwu34RJyl5N4gSscySP2Czz90u2wj7fXAaZoFjjuu0C\r\nHUlN490VxejTzr4jWjLU0rByS9Wq/191gCwlr/gQUJxjgyt+i5RoaiwuAF58\r\n+DxXxOLUeEENyWSIBFA4Km5y40B29KyJTTnwExBwZ8S56ujneGR/W5GBfA2T\r\nceWdb/xlLVD4M6ucCM5e47Hp3S0A9jnQvi93bEgIr1rr565uD21N8x8W0Uur\r\nCeVNgv9Q9gGWXYR34vAQK2pWY+Dv9d1F82ezqOhQbEdy3/cMVlqrTImVmd21\r\nGvTsDlK8Uvt3QM+obojLL0HtifbIcX43CdVsPWy3jrekWxlICyt3V7ZILRsa\r\nN5XYd9zqoD2sNSj7PV5XuBlLU56+poZ3FdA=\r\n=pAoK\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.6.6_1674915865302_0.953332435465698"},"_hasShrinkwrap":false},"0.6.7":{"name":"ts3d-hc-collabserver","version":"0.6.7","description":"* Better Suport for plugins \r     * (``setMessageReceivedCallback`` changed to ``registerMessageReceivedCallback``)\r     * Ability to retrieve internal suspend state\r     * Ability to retrieve user info by id\r * Camera and [Textbox](https://forum.techsoft","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"53f410959d9a93fea5e476ca146d5019cf3f85dc","_id":"ts3d-hc-collabserver@0.6.7","_nodeVersion":"18.13.0","_npmVersion":"8.19.3","dist":{"integrity":"sha512-XwlrAt8b1kxdrBw3AXoUA13J2D3LItTTEYb0STpvnHZvfEs8wPYh+spbVdOfzpkv90O43bSqN11pj44op0YAhw==","shasum":"f13806d6a8cce8b9cf9aabe77c4e1f8d9c97ca76","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.6.7.tgz","fileCount":13,"unpackedSize":69495,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD3TE7ZWFiEUrk8JTIv/Ce/I23ySiXgKcm5hD2ZYfRbDwIgSOaD1EazlxOAb2rLnpne/cg/GiZW0y7ftTta8t2YFU4="}]},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.6.7_1685881307293_0.14743592532067762"},"_hasShrinkwrap":false},"0.6.8":{"name":"ts3d-hc-collabserver","version":"0.6.8","description":"* Textbox plugin updated","main":"server/app.js","scripts":{"startdemo":"nodemon server/demo.js","start":"nodemon server/standalone.js"},"author":{"name":"Guido Hoffmann"},"license":"","devDependencies":{"nodemon":"^1.18.3","webpack-cli":"^4.10.0"},"dependencies":{"body-parser":"^1.18.3","cors":"^2.8.5","express":"^4.16.3","socket.io":"^4.5.2"},"gitHead":"911a2fca4c66a172f2866e32044bf2fa3d3f33df","_id":"ts3d-hc-collabserver@0.6.8","_nodeVersion":"18.13.0","_npmVersion":"8.19.3","dist":{"integrity":"sha512-flgKOJsljzfQyLfjvfWlePfiHmUCyLsiS7P/QZ6CobxjrUdf6QIAOjw8VKH3DMuw3pvGn2lKpttLTvF/hutuvw==","shasum":"074021a92c9f1e0b56cf68763a8eab9fff234405","tarball":"https://registry.npmjs.org/ts3d-hc-collabserver/-/ts3d-hc-collabserver-0.6.8.tgz","fileCount":13,"unpackedSize":69655,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCc5XWi4S8e870GTncwuvU0jpk/PGjMK4rSdJrC/cxligIhAKKfpUVBGUGCeSka6M1LhkJajBcojICAxOPBzsMug6wk"}]},"_npmUser":{"name":"eric5544","email":"eric5544@gmail.com"},"directories":{},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/ts3d-hc-collabserver_0.6.8_1686486905706_0.5748816380405479"},"_hasShrinkwrap":false}},"time":{"created":"2022-10-28T13:50:32.218Z","0.1.5":"2022-10-28T13:50:32.478Z","modified":"2023-06-11T12:35:06.000Z","0.1.6":"2022-10-28T13:59:00.571Z","0.1.7":"2022-10-28T18:16:00.962Z","0.1.8":"2022-10-28T19:45:47.720Z","0.1.9":"2022-10-29T14:28:06.842Z","0.1.10":"2022-10-29T14:43:15.061Z","0.1.11":"2022-10-29T14:54:59.982Z","0.1.12":"2022-10-30T12:55:45.659Z","0.1.13":"2022-10-30T13:05:06.623Z","0.2.0":"2022-12-04T17:02:36.778Z","0.2.1":"2022-12-05T20:47:42.492Z","0.2.2":"2022-12-05T21:20:21.347Z","0.2.3":"2022-12-06T00:17:40.069Z","0.2.4":"2022-12-06T14:08:38.925Z","0.2.5":"2022-12-06T14:23:36.381Z","0.2.6":"2022-12-06T15:14:00.886Z","0.2.7":"2022-12-06T16:43:55.906Z","0.2.8":"2022-12-06T18:09:24.347Z","0.3.0":"2022-12-07T14:52:14.920Z","0.3.1":"2022-12-07T23:45:15.910Z","0.3.2":"2022-12-07T23:55:19.730Z","0.3.3":"2022-12-08T13:34:55.785Z","0.3.4":"2022-12-11T14:24:17.734Z","0.3.5":"2022-12-12T22:46:44.637Z","0.4.0":"2022-12-13T14:51:45.670Z","0.4.1":"2022-12-13T16:44:24.133Z","0.4.2":"2022-12-13T18:04:16.959Z","0.5.0":"2022-12-23T15:30:03.626Z","0.5.1":"2022-12-23T20:39:33.355Z","0.5.2":"2022-12-24T14:02:44.250Z","0.5.3":"2022-12-24T15:54:49.590Z","0.6.0":"2022-12-26T15:42:19.430Z","0.6.1":"2022-12-30T15:56:51.763Z","0.6.2":"2022-12-30T16:12:31.512Z","0.6.3":"2023-01-12T15:17:37.373Z","0.6.4":"2023-01-13T21:22:51.218Z","0.6.5":"2023-01-28T13:46:24.759Z","0.6.6":"2023-01-28T14:24:25.464Z","0.6.7":"2023-06-04T12:21:47.502Z","0.6.8":"2023-06-11T12:35:05.895Z"},"maintainers":[{"name":"eric5544","email":"eric5544@gmail.com"}],"description":"* Textbox plugin updated","author":{"name":"Guido Hoffmann"},"readme":"# ts3d-hc-collabserver [![NPM version](https://badge.fury.io/js/ts3d-hc-collabserver.svg)]\r\n\r\n\r\n## Version Update (0.6.8) \r\n* Textbox plugin updated\r\n\r\n## Version Update (0.6.7) \r\n* Line support for mesh creation & color\r\n* Increased max message size\r\n\r\n## Version Update (0.6.3) \r\n* Better Suport for plugins \r\n    * (``setMessageReceivedCallback`` changed to ``registerMessageReceivedCallback``)\r\n    * Ability to retrieve internal suspend state\r\n    * Ability to retrieve user info by id\r\n* Camera and [Textbox](https://forum.techsoft3d.com/t/new-textbox-markup-released/1276) plugins added\r\n* Various bug fixes\r\n\r\n## Version Update (0.4.0) \r\n*  Support for mesh creation & instancing (beta)\r\n*  Support for Desyncing camera and user avatars\r\n*  Support for persistent room data\r\n\r\n\r\n## Overview\r\nThis library adds real-time collaboration support to any HOOPS Communicator based application by synchronizing a subset of the HOOPS Communicator API calls between multiple clients. This includes camera interaction, selection, markup & measurement, as well as cutting planes and various model attributes (visibility, color, matrices, etc.). \r\n\r\nFor questions/feedback please send an email to guido@techsoft3d.com or post in our [forum](https://forum.techsoft3d.com/). For a 60 day trial of the HOOPS Web Platform go to [Web Platform](https://www.techsoft3d.com/products/hoops/web-platform).\r\n\r\n\r\n\r\n## GitHub Project\r\n\r\nThe public github project can be found here:  \r\nhttps://github.com/techsoft3d/ts3d-hc-collabServer\r\n\r\n\r\n## Install\r\n\r\n### Via GitHub\r\n\r\n* Clone above GitHub project and run `npm install` in the root folder. This will install all dependencies.\r\n* Client-side libraries can be found in the ./dist folder\r\n\r\n\r\n### Via NPM\r\n\r\n* Install the server-side library into your existing node project: `npm install ts3d-hc-collabserver`\r\n* Client-side libraries can be found in the ./dist folder of the installed module\r\n\r\n  \r\nAdd client-side collaboration library as well as socket.io to your project with a script tag or use module version of library:\r\n```\r\n<script src=\"https://cdnjs.cloudflare.com/ajax/libs/socket.io/4.4.1/socket.io.js\" integrity=\"sha512-MgkNs0gNdrnOM7k+0L+wgiRc5aLgl74sJQKbIWegVIMvVGPc1+gc1L2oK9Wf/D9pq58eqIJAxOonYPVE5UwUFA==\" crossorigin=\"anonymous\" referrerpolicy=\"no-referrer\"></script>\r\n\r\n<script src=\"./js/hcCollab.min.js\"></script>\r\n```\r\n\r\n## Usage - Server Side\r\n\r\n### Standalone\r\nStart server with `npm start`. This will start the standalone collaboration server on port 3001. All websocket communication with the client will happen via this port. In this scenario you will either have to provide the url/port in the client during initialization or proxy the websocket connection from your webserver to the collaboration server.\r\n\r\n### As a module\r\nWhen running the server from your own node project, simply include this module and pass your server object to it:\r\n\r\n```\r\nconst collab = require('ts3d-hc-collabserver');\r\n\r\nvar server;\r\nserver = http.createServer(app);  \r\ncollab.start(server, {allowUserRooms: true});\r\nserver.listen(3000);\r\n\r\n```\r\nSee server/standalone.js for an example on how to use the server as a module in your own node project.\r\n\r\n\r\n## Usage - Client Side\r\n\r\n* After including the client-side library in your project, a gloabl hcCollab object will be available. \r\n* You should call `hcCollab.init()` to initialize the library as soon as the modelStructureReady callback has triggered in the viewer. The parameter to this call are the webviewer object as well as optionally the default UI object.\r\n* An optional callback can be provided that gets triggered when a new collaboration message has been received. \r\n* Finally to establish the connection to the collaboration server call `hcCollab.connect()`. This call takes the name of the room you want to connect to, the username of the client as well as an optional room password.\r\n\r\nBelow is the minimum code required to establish a connection to the collaboration server. After this block of code is executed the local viewer is synced with all other clients that have connected to the same room.\r\n\r\n```\r\nhcCollab.initialize(hwv, ui);\r\nhcCollab.registerMessageReceivedCallback(hcCollabMessageReceived);\r\nhcCollab.connect(\"default\", \"User\" + Math.floor(Math.random() * 9999));\r\n```\r\n\r\n## Limitations\r\nCurrently, this library does not sync ALL webviewer API calls. While mesh and mesh instance creation is partially supported, support is not complete and many other API calls are also not handled. Also, if a new user joins only the camera is synced automatically, though you can provide your own code to sync other client states. Finally, the default HOOPS Communicator UI in some cases manages its own state that might not reflect the state of the webviewer. For now, it is recommended to use your own, custom UI for the collaboration server to avoid those inconsistencies.\r\n\r\n\r\nPlease let us know if you run into any problems or require support for specific functionality with regard to syncing. You can also of course add support yourself, either by using the custom message mechanism of the library or forking the project.\r\n\r\n## Demo\r\n\r\nFor a live demo of the this library please check out the [HOOPS Communicator 3D Sandbox](https://3dsandbox.techsoft3d.com). Its collaboration feature has been developed with this library. There is also a demo available as part of this project you can run with `npm run startdemo`. You can access the demo in the browser at http://localhost:3000/viewer.html. As soon as the demo runs, it will establish a connection to the collaboration server and you can open another browser window to connect another user.  Running and looking through the code of this demo will help you understand how to build a UI around this library and some of its more advanced concepts like passing custom messages and using plugins.\r\n\r\nThe client side code for the demo can be found in the dev/public folder of this project. Please note that this demo is using the development version of the collboration library. If you want to use the library in your own project you should use the minified version, which can be found in the dist folder of this project.\r\n\r\n## Advanced Concepts\r\n\r\n### Sending your own custom messages\r\nBy default the collaboration library will automatically syncronize webviewer calls across clients. However, in some cases you want to send more high level messages to other users. For example, in the 3D Sandbox when running the code in the editor, this is handled as a single custom message, not as a series of individual webviewer calls. In this scenario you most likely want to temporary suppress any webviewer messages from also getting synchronized. This can be done by calling `hcCollab.setSuspendSend(true)` before sending your custom message and then calling `hcCollab.setSuspendSend(false)` after your message has been sent. You have to make sure that all clients also call suspendSend when they receive your message.  \r\nBelow is an example on how custom messages are handled in the callback. In the demo we are syncing interactions with the [KinematicsToolkit](https://labs.techsoft3d.com/project/kinematics-toolkit) with other clients. As the calls into those library trigger additional webviewer calls we need to suspend those messages when we send (the code for that can be found in componentMove.js) or receive our custom message. \r\n\r\n\r\n```\r\ncase \"custommessage\":\r\n  {\r\n      switch (msg.customType) {\r\n          case \"test\": {\r\n              alert(\"User \" + msg.user + \" says \" + msg.text);\r\n          }\r\n              break;\r\n          case \"componentSet\": {\r\n              hcCollab.setSuspendSend(true);\r\n              let hierachy = KT.KinematicsManager.getHierachyByIndex(msg.hierachyIndex);\r\n              let component = hierachy.getComponentById(msg.componentId);                   \r\n              await component.set(msg.value);\r\n              componentSetHash[msg.hierachyindex + \"@\" + msg.componentId] = msg.value;       \r\n              await component.getHierachy().updateComponents();\r\n              hcCollab.setSuspendSend(false);\r\n          }\r\n              break;\r\n      }\r\n\r\n  }\r\n  break;\r\n```\r\n\r\nIn addition to sending custom messages, it is also possible to suppress certain standard message types by checking the type and selectively returning `false` at the end of the message callback.  \r\n\r\n### Synchronizing initial server state\r\nCurrently, the library only synchronizes the current camera automatically when a new user connects to a session. However, you are free to synchronize additional data on connection with other clients. This can be done by adding additional values to the the message objects when a sendInitialState message has been received. This message will be send by the server to only one of the already connected clients.  \r\nSee below for how the demo synchronizes the state of the KinematicsToolkit in that case:\r\n\r\n```\r\n    switch (msg.type) {    \r\n        case \"initialState\": {\r\n            if (msg.kmValues) {\r\n                hcCollab.setSuspendSend(true);\r\n                for (let i=0;i<msg.kmValues.length;i++) {\r\n                    let kmValue = msg.kmValues[i];\r\n                    let hierachy = KT.KinematicsManager.getHierachyByIndex(kmValue.hierachyIndex);\r\n                    let component = hierachy.getComponentById(kmValue.componentId);                   \r\n                    await component.set(kmValue.value);               \r\n                    componentSetHash[kmValue.hierachyIndex + \"@\" + kmValue.componentId] = kmValue.value;       \r\n                    await component.getHierachy().updateComponents();     \r\n                }\r\n                hcCollab.setSuspendSend(false);              \r\n            }\r\n        }\r\n            break;            \r\n        case \"sendInitialState\": {\r\n                let values = [];\r\n            for (let key in componentSetHash) {\r\n                let split = key.split(\"@\");\r\n                values.push({ hierachyIndex:parseInt(split[0]),componentId: parseInt(split[1]), value: componentSetHash[key]});\r\n\r\n             }\r\n             msg.kmValues = values;\r\n         }      \r\n         break;      \r\n```\r\n\r\n\r\n### Handling Session Locking\r\nIt is possible for a user to lock a session with the `lockSession()` command. This will prevent any other clients from sending collaboration messages to the server. However, it does not actually prevent interacting with the webviewer. If you want to disable any interaction for locked clients you have to do this when the lock/unlock message is received. In the demo this is done by simply disabling pointer events on the webviewer div:\r\n\r\n```\r\n    switch (msg.type) {    \r\n        case \"lockSession\":\r\n            {\r\n                $(\"#content\").css(\"pointer-events\", \"none\");\r\n                $(\"#collabLockButton\").prop(\"disabled\", true);\r\n\r\n            }\r\n            break;\r\n        case \"unlockSession\":\r\n            {\r\n                $(\"#content\").css(\"pointer-events\", \"all\");\r\n                $(\"#collabLockButton\").prop(\"disabled\", false);\r\n            }\r\n            break;\r\n```\r\n\r\n\r\n\r\n### Updating Room State\r\nEach Room has its own persistant state object which can be modified and queried by each connected client which makes it easy to synchronize state not directly related to the webviewer specific functionality (and without the use of custom messages). Below is a simple example that keeps a set of variables in sync between clients.\r\n\r\n\r\n```\r\n\r\n   var data = {posx:0, posy:0};             //reset initial state on startup\r\n  \r\n    if (hcCollab.getActive()) {\r\n        await hcCollab.updateRoomData(data);    \r\n    }\r\n\r\n\r\n    function createCube() {\r\n   \r\n        if (hcCollab.getActive()) {\r\n            data = await hcCollab.getRoomData(); //get current state of room\r\n        }\r\n    \r\n        //create the cube\r\n        //...    \r\n\r\n        data.posx+=50;                    //update local state\r\n\r\n        if (data.posx > 500) {\r\n            data.posx = 0;\r\n            data.posy += 50;\r\n        }\r\n\r\n        if (hcCollab.getActive()) {\r\n            await hcCollab.updateRoomData(data);   //update room state with local states\r\n        }\r\n    }\r\n   \r\n```\r\n\r\n### Camera and Selection Syncing\r\nBy default the webviewer camera is automatically synced across clients. This can be turned off with `hcCollab.setSyncCamera(false)`. It is also possible to disable syncing of the selections with `hcCollab.setSyncSelection(false)`.\r\n\r\n### Handling Collaboration UI\r\nThe demo project shows how to populate a list of user as well as handle chat messages by specifiying a callback function to the `hcCollab.registerMessageReceivedCallback()` function. Using this callback you can detect if a new user has joined the room, an existing user has disconnected or a new text message has been received.  \r\nSee below for an example on how to handle those messages:\r\n\r\n\r\n```\r\nasync function hcCollabMessageReceived(msg) {\r\n\r\n    switch (msg.type) {\r\n        case \"userlist\":\r\n            {\r\n                collaboratorTable.clearData();\r\n                let users = msg.roomusers;\r\n                for (let i = 0; i < users.length; i++) {\r\n                    var prop;\r\n                    if (hcCollab.getLocalUser().id == users[i].id)\r\n                        prop = { name: users[i].username + \" (You)\", id: users[i].id };\r\n                    else\r\n                        prop = { name: users[i].username, id: users[i].id };\r\n                    collaboratorTable.addData([prop], false);\r\n                }\r\n            }\r\n            break;\r\n        case \"chatmessage\":\r\n            {\r\n                let text = \"\";\r\n                text += '<div><span style=\"color:green;\">' + msg.user + '</span>: ' + msg.message + '</div>';\r\n                $(\"#chatmessages\").append(text);\r\n                $(\"#chatmessages\").scrollTop($(\"#chatmessages\").height() + 100);\r\n\r\n            }\r\n            break;\r\n    }\r\n   \r\n```\r\n\r\n### Proxy Considerations and running on Port 80/443\r\nIt is straightforward to proxy the websocket traffic of the collaboration server to a different port/url if you are running the server standalone and all your traffic has to go through a standard port. However, if you are using our streaming server or have another websocket-based service running on that same standard port, it will not be straightforward to differentiate the traffic and one of those services will most likely fail. In that case, you should either run the collaboration server on different port or on a different IP address altogether. If you are running the collaboration server on a different ip address/port from your webserver you need to specify its URL in the client during initialization.\r\n\r\n### Using Plugins\r\nPlugins are simply classes or a collection of functions that extend the functionality of the collaboration library. Two plugins are already part of this project, one for displaying camera widgets if cameras are not synchronized, and the other for synchronizing the new TextBox markup type, recently released [here](https://forum.techsoft3d.com/t/new-textbox-markup-released/1276). You can find those plugins in the dev/public/js/collabPlugins folder of this project. They are both integrated with the demo application.  \r\nTo write a plugin you have to register a callback with registerMessageReceivedCallback() and then handle your own custom types, including synchronizing startup state, etc. Looking through the code of the demo and the two existing plugins for cameraWidgets and Textbox markup (which can be found in the collabPlugins directory) should give you a good idea of how to do this.\r\n\r\n\r\n## Disclaimer\r\n**This library is not an officially supported part of HOOPS Communicator and provided as-is.**\r\n\r\n## Acknowledgments\r\n### Library:\r\n* [Socket.IO](https://socket.io/)\r\n\r\n### Demo:\r\n* [GoldenLayout](https://golden-layout.com/)\r\n* [Tabulator](http://tabulator.info/)\r\n\r\n\r\n----\r\n\r\n\r\n# API \r\n\r\n## Server\r\n\r\n\r\n### **start** \r\n\r\n#### *Description*\r\nStarts the collabration server\r\n\r\n\r\n#### *Parameters*\r\n* **server** - The server object.\r\n* **config** - A Configuration object. (optional)\r\n\r\n#### *Return Value*\r\nthe socket.io server object\r\n\r\n\r\n#### *Example*\r\n```\r\nconst http = require('http');\r\nconst collab = require('ts3d-hc-collabserver');\r\n\r\nconst app = express();\r\n\r\nvar server;\r\nserver = http.createServer(app);  \r\nlet io =  collab.start(server, {allowUserRooms: true});\r\nserver.listen(3001);\r\n\r\n```\r\nYou can provide an http or https server object to the start function. If you need additional authentication you can leverage the socket.io server object returned by this function to run additional middleware. Please see [this page](https://socket.io/docs/v3/middlewares/) for more information on how to do this.  \r\nThe second parameter to this function is the JSON configuration object. Currently it only supports the \"allowUserRooms\" property. If set to true, users can create their own rooms from the client. If set to false, only rooms that have been created by the server admin will be available. The default value is true.\r\n\r\n\r\n\r\n### **createRoom** \r\n\r\n#### *Description*\r\nCreates a new room on the server.\r\n\r\n#### *Parameters*\r\n* **name** - The name of the room\r\n* **password** - The password for the room. (optional)\r\n\r\n#### *Return Value*\r\nNone\r\n\r\n#### *Example*\r\n```\r\ncollab.createRoom(\"default\", \"1234\");\r\n```\r\nRooms created on the server are permanent and will be available until deleted by the server, while rooms created from the client will be deleted when no clients are connected.\r\n\r\n\r\n\r\n### **deleteRoom** \r\n\r\n#### *Description*\r\nDeletes an existing room on the server.\r\n\r\n#### *Parameters*\r\n* **name** - The name of the room\r\n\r\n#### *Return Value*\r\nNone\r\n\r\n#### *Example*\r\n```\r\ncollab.deleteRoom(\"default\");\r\n```\r\n\r\n## Client\r\n\r\n\r\n### **initialize** \r\n\r\n#### *Description*\r\nInitializes the collaboration library. This function should be called only once as soon as the modelStructureReady callback has triggered in the viewer.\r\n\r\n#### *Parameters*\r\n* **viewer** - The webviewer object.\r\n* **ui** - The standard webviewer ui object (optional).\r\n* **url** - The url to the collab server (only needed if the collab server is not running on the same host as the client). (optional)\r\n\r\n#### *Return Value*\r\nNone\r\n\r\n#### *Example*\r\n```\r\n\r\nasync function modelStructureReady() {\r\n    hcCollab.initialize(hwv, ui);\r\n}\r\n\r\n```\r\nIf you provide the  UI object, the collaboration library will sync opening and closing the model browser with other clients. More UI specific syncing might be added in a future version of the library.\r\n\r\n\r\n### **connect** \r\n\r\n#### *Description*\r\nConnects the local client to the collaboration server.\r\n\r\n#### *Parameters*\r\n* **roomname** - The name of the room to connect to. If the room does not exist and client-side room creation is allowed it will be created.\r\n* **username** - The name of the connecting user.\r\n* **password** - The password to the room if necessary (optional).\r\n\r\n#### *Return Value*\r\nNone\r\n\r\n#### *Example*\r\n```\r\n  hcCollab.connect(\"default\", \"User\", \"1234\");\r\n```\r\n\r\n\r\n### **disconnect** \r\n\r\n#### *Description*\r\nDisconnects the local client from the collaboration server.\r\n\r\n#### *Parameters*\r\nNone\r\n#### *Return Value*\r\nNone\r\n\r\n#### *Example*\r\n```\r\n  hcCollab.disconnect();\r\n```\r\n\r\n\r\n### **registerMessageReceivedCallback** \r\n\r\n#### *Description*\r\nRegisters a callback function that will be executed when a new collaboration message has been received.\r\n\r\n#### *Parameters*\r\n* **callback** - Callback function that receives collaboration messages\r\n\r\n#### *Return Value*\r\nNone\r\n\r\n#### *Example*\r\n```\r\n  hcCollab.registerMessageReceivedCallback(function msgReceived(msg) {\r\n    console.log(msg);\r\n  });\r\n```\r\n\r\n\r\n### **getActive** \r\n\r\n#### *Description*\r\nReturns if the local user is currently connected to the collaboration server.\r\n\r\n#### *Parameters*\r\nNone\r\n\r\n#### *Return Value*\r\nTrue if the local user is connected to the collaboration server, false otherwise.\r\n\r\n\r\n\r\n### **getLocalUser** \r\n\r\n#### *Description*\r\nReturns the name, id and color of the local user.\r\n\r\n#### *Parameters*\r\nNone\r\n\r\n#### *Return Value*\r\nLocal User Object\r\n\r\n#### *Example*\r\n```\r\n  let localUser = hcCollab.getLocalUser();\r\n  console.log(localUser.id + \":\" + localUser.name);\r\n```\r\n\r\n\r\n\r\n\r\n### **getUserInfo** \r\n\r\n#### *Description*\r\nReturns information about a connected user\r\n\r\n#### *Parameters*\r\n* **id** - Id of connected user\r\n\r\n#### *Return Value*\r\nUser Object\r\n\r\n\r\n\r\n### **getUsers** \r\n\r\n#### *Description*\r\nReturns an array with information about all users\r\n\r\n#### *Parameters*\r\nNone\r\n\r\n#### *Return Value*\r\nArray of User Info\r\n\r\n\r\n\r\n### **lockSession** \r\n\r\n#### *Description*\r\nLocks a session (if not already locked) and prevents other users from interacting with the model\r\n\r\n#### *Parameters*\r\n\r\n#### *Return Value*\r\nNone\r\n\r\n\r\n### **unlockSession** \r\n\r\n#### *Description*\r\nUnlocks a session (if not already unlocked and locked by the local user) and allows other users to interact with the model\r\n\r\n#### *Parameters*\r\n\r\n#### *Return Value*\r\nNone\r\n\r\n\r\n\r\n### **getLockedMaster** \r\n\r\n#### *Description*\r\nReturns true if the local user has locked the session.\r\n\r\n#### *Parameters*\r\nNone\r\n\r\n#### *Return Value*\r\nTrue if the local user has locked the session, false otherwise.  \r\n\r\n### **getLockedClient** \r\n\r\n#### *Description*\r\nReturns true if the session has been locked by another user.\r\n\r\n#### *Parameters*\r\nNone\r\n\r\n#### *Return Value*\r\nTrue if the session has been locked by another user, false otherwise.\r\n\r\n\r\n### **submitChat** \r\n\r\n#### *Description*\r\nSubmits a chat message to the collaboration server.\r\n\r\n#### *Parameters*\r\n* **text** - The text to send to other connected clients.\r\n\r\n#### *Return Value*\r\nNone\r\n\r\n#### *Example*\r\n```\r\n  hcCollab.submitChat(\"Hello World\");\r\n```\r\n\r\n\r\n### **sendCustomMessage** \r\n\r\n#### *Description*\r\nSends a custom message to the collaboration server.\r\n\r\n#### *Parameters*\r\n* **message** - The message to send to other connected clients.\r\n\r\n#### *Return Value*\r\nNone\r\n\r\n#### *Example*\r\n```\r\n hcCollab.sendCustomMessage({ customType: \"test\",text: \"Hello\" });\r\n```\r\nThe content of the custom messags is completely arbitrary, any valid JSON object that can be stringified is allowed. Just make sure that you don't define `type` and `user` which will both be set by the library before the message is send. In the above example, `customType` and `text` are just examples.\r\n\r\n\r\n\r\n### **setSuspendSend** \r\n\r\n#### *Description*\r\nSuspend or unsuspends sending of webviewer collaboration messages to the collaboration server. \r\n\r\n#### *Parameters*\r\n* **enable** - True to suspend sending, false to unsuspend.\r\n\r\n#### *Return Value*\r\nNone\r\n\r\n\r\n\r\n### **getSuspendSend** \r\n\r\n#### *Description*\r\nReturns true if sending of webviewer collaboration messages to the collaboration server is currently suspended.\r\n\r\n#### *Parameters*\r\nNone\r\n\r\n#### *Return Value*\r\nTrue if sending of webviewer collaboration messages to the collaboration server is currently suspended, false otherwise.\r\n\r\n\r\n\r\n\r\n### **getInternalSuspend** \r\n\r\n#### *Description*\r\nReturns true if the internal suspend state is set\r\n\r\n#### *Parameters*\r\nNone\r\n\r\n#### *Return Value*\r\nTrue, if the internal suspend state is set, false otherwise.\r\n\r\n\r\n### **getRoomData** \r\n\r\n#### *Description*\r\nReturns the room data JSON object\r\n\r\n#### *Parameters*\r\nNone\r\n\r\n#### *Return Value*\r\nRoom Data JSON Object\r\n\r\n\r\n### **updateRoomData** \r\n\r\n#### *Description*\r\nSets individiual room data properties. Only the specified properties will be replaced.\r\n\r\n#### *Parameters*\r\nThe room data JSON object.\r\n\r\n#### *Return Value*\r\nNone\r\n\r\n\r\n### **setSyncCamera** \r\n\r\n#### *Description*\r\nEnables/disables camera syncing between clients.\r\n\r\n#### *Parameters*\r\n* **enable** - True to enable camera syncing, false to disable.\r\n\r\n#### *Return Value*\r\nNone\r\n\r\n### **getSyncCamera** \r\n\r\n#### *Description*\r\nReturns true if camera syncing is enabled.\r\n\r\n#### *Parameters*\r\nNone\r\n\r\n#### *Return Value*\r\nTrue if camera syncing is enabled, false otherwise.\r\n\r\n### **setSyncSelection** \r\n\r\n#### *Description*\r\nEnables/disables selection syncing between clients.\r\n\r\n#### *Parameters*\r\n* **enable** - True to enable selection syncing, false to disable.\r\n\r\n#### *Return Value*\r\nNone\r\n\r\n\r\n### **getSyncSelection** \r\n\r\n#### *Description*\r\nReturns true if selection syncing is enabled.\r\n\r\n#### *Parameters*\r\nNone\r\n\r\n#### *Return Value*\r\nTrue if selection syncing is enabled, false otherwise.\r\n","readmeFilename":"README.md"}