@caspertech/node-metaverse 0.7.40 → 0.7.51

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (459) hide show
  1. package/dist/examples/Camera/Camera.js +3 -14
  2. package/dist/examples/Camera/Camera.js.map +1 -1
  3. package/dist/examples/ExampleBot.js +66 -87
  4. package/dist/examples/ExampleBot.js.map +1 -1
  5. package/dist/examples/Friends/Friends.js +29 -44
  6. package/dist/examples/Friends/Friends.js.map +1 -1
  7. package/dist/examples/Grid/Name2Key.js +25 -36
  8. package/dist/examples/Grid/Name2Key.js.map +1 -1
  9. package/dist/examples/Groups/Group.js +42 -55
  10. package/dist/examples/Groups/Group.js.map +1 -1
  11. package/dist/examples/Groups/GroupChat.js +55 -68
  12. package/dist/examples/Groups/GroupChat.js.map +1 -1
  13. package/dist/examples/InstantMessages/InstantMessages.js +8 -21
  14. package/dist/examples/InstantMessages/InstantMessages.js.map +1 -1
  15. package/dist/examples/Inventory/Inventory.js +80 -97
  16. package/dist/examples/Inventory/Inventory.js.map +1 -1
  17. package/dist/examples/MFA/MFA.js +24 -40
  18. package/dist/examples/MFA/MFA.js.map +1 -1
  19. package/dist/examples/Money/Money.js +28 -41
  20. package/dist/examples/Money/Money.js.map +1 -1
  21. package/dist/examples/Objects/TaskInventory.js +13 -24
  22. package/dist/examples/Objects/TaskInventory.js.map +1 -1
  23. package/dist/examples/Region/Agents.js +6 -17
  24. package/dist/examples/Region/Agents.js.map +1 -1
  25. package/dist/examples/Region/Estate.js +9 -20
  26. package/dist/examples/Region/Estate.js.map +1 -1
  27. package/dist/examples/Region/Parcels.js +12 -23
  28. package/dist/examples/Region/Parcels.js.map +1 -1
  29. package/dist/examples/Region/Region.js +2 -13
  30. package/dist/examples/Region/Region.js.map +1 -1
  31. package/dist/examples/Region/Settings.js +15 -0
  32. package/dist/examples/Region/Settings.js.map +1 -0
  33. package/dist/examples/Teleports/Teleports.js +22 -35
  34. package/dist/examples/Teleports/Teleports.js.map +1 -1
  35. package/dist/lib/Bot.d.ts +14 -14
  36. package/dist/lib/Bot.js +217 -231
  37. package/dist/lib/Bot.js.map +1 -1
  38. package/dist/lib/LoginHandler.d.ts +3 -3
  39. package/dist/lib/LoginHandler.js +106 -116
  40. package/dist/lib/LoginHandler.js.map +1 -1
  41. package/dist/lib/classes/Agent.d.ts +23 -35
  42. package/dist/lib/classes/Agent.js +96 -108
  43. package/dist/lib/classes/Agent.js.map +1 -1
  44. package/dist/lib/classes/AssetMap.d.ts +18 -95
  45. package/dist/lib/classes/AssetMap.js +86 -16
  46. package/dist/lib/classes/AssetMap.js.map +1 -1
  47. package/dist/lib/classes/AssetRegistry.d.ts +31 -0
  48. package/dist/lib/classes/AssetRegistry.js +26 -0
  49. package/dist/lib/classes/AssetRegistry.js.map +1 -0
  50. package/dist/lib/classes/AssetTypeRegistry.d.ts +21 -0
  51. package/dist/lib/classes/AssetTypeRegistry.js +81 -0
  52. package/dist/lib/classes/AssetTypeRegistry.js.map +1 -0
  53. package/dist/lib/classes/BVH.js.map +1 -1
  54. package/dist/lib/classes/BVHJoint.js.map +1 -1
  55. package/dist/lib/classes/BVHJointKeyframe.d.ts +1 -1
  56. package/dist/lib/classes/BatchQueue.d.ts +2 -2
  57. package/dist/lib/classes/BatchQueue.js +66 -80
  58. package/dist/lib/classes/BatchQueue.js.map +1 -1
  59. package/dist/lib/classes/BatchQueue.spec.js +17 -26
  60. package/dist/lib/classes/BatchQueue.spec.js.map +1 -1
  61. package/dist/lib/classes/BinaryReader.d.ts +66 -0
  62. package/dist/lib/classes/BinaryReader.js +304 -0
  63. package/dist/lib/classes/BinaryReader.js.map +1 -0
  64. package/dist/lib/classes/BinaryReader.spec.d.ts +1 -0
  65. package/dist/lib/classes/BinaryReader.spec.js +241 -0
  66. package/dist/lib/classes/BinaryReader.spec.js.map +1 -0
  67. package/dist/lib/classes/BinaryWriter.d.ts +34 -0
  68. package/dist/lib/classes/BinaryWriter.js +192 -0
  69. package/dist/lib/classes/BinaryWriter.js.map +1 -0
  70. package/dist/lib/classes/BinaryWriter.spec.d.ts +1 -0
  71. package/dist/lib/classes/BinaryWriter.spec.js +328 -0
  72. package/dist/lib/classes/BinaryWriter.spec.js.map +1 -0
  73. package/dist/lib/classes/BitPack.d.ts +2 -2
  74. package/dist/lib/classes/BitPack.js +1 -1
  75. package/dist/lib/classes/BitPack.js.map +1 -1
  76. package/dist/lib/classes/BuildMap.d.ts +6 -6
  77. package/dist/lib/classes/BuildMap.js.map +1 -1
  78. package/dist/lib/classes/Caps.d.ts +18 -24
  79. package/dist/lib/classes/Caps.js +278 -297
  80. package/dist/lib/classes/Caps.js.map +1 -1
  81. package/dist/lib/classes/Circuit.d.ts +20 -28
  82. package/dist/lib/classes/Circuit.js +104 -91
  83. package/dist/lib/classes/Circuit.js.map +1 -1
  84. package/dist/lib/classes/ClientCommands.d.ts +3 -3
  85. package/dist/lib/classes/ClientCommands.js.map +1 -1
  86. package/dist/lib/classes/ClientEvents.d.ts +41 -32
  87. package/dist/lib/classes/ClientEvents.js +65 -0
  88. package/dist/lib/classes/ClientEvents.js.map +1 -1
  89. package/dist/lib/classes/CoalescedGameObject.d.ts +2 -2
  90. package/dist/lib/classes/CoalescedGameObject.js +37 -49
  91. package/dist/lib/classes/CoalescedGameObject.js.map +1 -1
  92. package/dist/lib/classes/Color4.d.ts +2 -2
  93. package/dist/lib/classes/Color4.js +42 -42
  94. package/dist/lib/classes/Color4.js.map +1 -1
  95. package/dist/lib/classes/Comms.d.ts +3 -3
  96. package/dist/lib/classes/Comms.js +236 -236
  97. package/dist/lib/classes/Comms.js.map +1 -1
  98. package/dist/lib/classes/ConcurrentQueue.d.ts +3 -3
  99. package/dist/lib/classes/ConcurrentQueue.js +16 -11
  100. package/dist/lib/classes/ConcurrentQueue.js.map +1 -1
  101. package/dist/lib/classes/EventQueueClient.d.ts +6 -6
  102. package/dist/lib/classes/EventQueueClient.js +189 -201
  103. package/dist/lib/classes/EventQueueClient.js.map +1 -1
  104. package/dist/lib/classes/GroupBan.d.ts +3 -3
  105. package/dist/lib/classes/GroupBan.js.map +1 -1
  106. package/dist/lib/classes/GroupMember.d.ts +2 -2
  107. package/dist/lib/classes/GroupRole.d.ts +2 -2
  108. package/dist/lib/classes/IPAddress.d.ts +3 -2
  109. package/dist/lib/classes/IPAddress.js +14 -13
  110. package/dist/lib/classes/IPAddress.js.map +1 -1
  111. package/dist/lib/classes/Inventory.d.ts +7 -15
  112. package/dist/lib/classes/Inventory.js +69 -80
  113. package/dist/lib/classes/Inventory.js.map +1 -1
  114. package/dist/lib/classes/InventoryFolder.d.ts +11 -11
  115. package/dist/lib/classes/InventoryFolder.js +544 -626
  116. package/dist/lib/classes/InventoryFolder.js.map +1 -1
  117. package/dist/lib/classes/InventoryItem.d.ts +15 -11
  118. package/dist/lib/classes/InventoryItem.js +494 -486
  119. package/dist/lib/classes/InventoryItem.js.map +1 -1
  120. package/dist/lib/classes/InventoryTypeRegistry.d.ts +19 -0
  121. package/dist/lib/classes/InventoryTypeRegistry.js +69 -0
  122. package/dist/lib/classes/InventoryTypeRegistry.js.map +1 -0
  123. package/dist/lib/classes/LLGLTFMaterial.d.ts +1 -1
  124. package/dist/lib/classes/LLGLTFMaterial.js +2 -2
  125. package/dist/lib/classes/LLGLTFMaterial.js.map +1 -1
  126. package/dist/lib/classes/LLGLTFMaterial.spec.js +17 -18
  127. package/dist/lib/classes/LLGLTFMaterial.spec.js.map +1 -1
  128. package/dist/lib/classes/LLGLTFMaterialOverride.d.ts +1 -1
  129. package/dist/lib/classes/LLGLTFMaterialOverride.js +119 -118
  130. package/dist/lib/classes/LLGLTFMaterialOverride.js.map +1 -1
  131. package/dist/lib/classes/LLGLTFMaterialOverride.spec.js +70 -71
  132. package/dist/lib/classes/LLGLTFMaterialOverride.spec.js.map +1 -1
  133. package/dist/lib/classes/LLGesture.d.ts +1 -1
  134. package/dist/lib/classes/LLGesture.js +1 -1
  135. package/dist/lib/classes/LLGesture.js.map +1 -1
  136. package/dist/lib/classes/LLGestureAnimationStep.d.ts +1 -1
  137. package/dist/lib/classes/LLGestureAnimationStep.js.map +1 -1
  138. package/dist/lib/classes/LLGestureChatStep.js.map +1 -1
  139. package/dist/lib/classes/LLGestureSoundStep.d.ts +1 -1
  140. package/dist/lib/classes/LLGestureSoundStep.js.map +1 -1
  141. package/dist/lib/classes/LLGestureStep.d.ts +1 -1
  142. package/dist/lib/classes/LLGestureWaitStep.js.map +1 -1
  143. package/dist/lib/classes/LLLindenText.d.ts +2 -4
  144. package/dist/lib/classes/LLLindenText.js +12 -8
  145. package/dist/lib/classes/LLLindenText.js.map +1 -1
  146. package/dist/lib/classes/LLSettings.d.ts +98 -83
  147. package/dist/lib/classes/LLSettings.js +240 -83
  148. package/dist/lib/classes/LLSettings.js.map +1 -1
  149. package/dist/lib/classes/LLSettings.spec.d.ts +1 -0
  150. package/dist/lib/classes/LLSettings.spec.js +27 -0
  151. package/dist/lib/classes/LLSettings.spec.js.map +1 -0
  152. package/dist/lib/classes/LLWearable.d.ts +4 -8
  153. package/dist/lib/classes/LLWearable.js +1 -1
  154. package/dist/lib/classes/LLWearable.js.map +1 -1
  155. package/dist/lib/classes/Logger.d.ts +3 -3
  156. package/dist/lib/classes/Logger.js +1 -1
  157. package/dist/lib/classes/Logger.js.map +1 -1
  158. package/dist/lib/classes/LoginParameters.js.map +1 -1
  159. package/dist/lib/classes/LoginResponse.d.ts +4 -9
  160. package/dist/lib/classes/LoginResponse.js +120 -113
  161. package/dist/lib/classes/LoginResponse.js.map +1 -1
  162. package/dist/lib/classes/MapBlock.d.ts +2 -2
  163. package/dist/lib/classes/MessageBase.d.ts +5 -5
  164. package/dist/lib/classes/MessageClasses.js.map +1 -1
  165. package/dist/lib/classes/ObjectResolver.d.ts +6 -6
  166. package/dist/lib/classes/ObjectResolver.js +127 -152
  167. package/dist/lib/classes/ObjectResolver.js.map +1 -1
  168. package/dist/lib/classes/ObjectStoreFull.d.ts +9 -9
  169. package/dist/lib/classes/ObjectStoreFull.js +176 -192
  170. package/dist/lib/classes/ObjectStoreFull.js.map +1 -1
  171. package/dist/lib/classes/ObjectStoreLite.d.ts +29 -31
  172. package/dist/lib/classes/ObjectStoreLite.js +485 -494
  173. package/dist/lib/classes/ObjectStoreLite.js.map +1 -1
  174. package/dist/lib/classes/Packet.d.ts +2 -2
  175. package/dist/lib/classes/Packet.js +2 -2
  176. package/dist/lib/classes/Packet.js.map +1 -1
  177. package/dist/lib/classes/ParticleSystem.js +1 -1
  178. package/dist/lib/classes/ParticleSystem.js.map +1 -1
  179. package/dist/lib/classes/PrimFacesHelper.d.ts +14 -0
  180. package/dist/lib/classes/PrimFacesHelper.js +75 -0
  181. package/dist/lib/classes/PrimFacesHelper.js.map +1 -0
  182. package/dist/lib/classes/Quaternion.d.ts +31 -6
  183. package/dist/lib/classes/Quaternion.js +236 -48
  184. package/dist/lib/classes/Quaternion.js.map +1 -1
  185. package/dist/lib/classes/Region.d.ts +23 -22
  186. package/dist/lib/classes/Region.js +453 -515
  187. package/dist/lib/classes/Region.js.map +1 -1
  188. package/dist/lib/classes/TarArchive.d.ts +1 -1
  189. package/dist/lib/classes/TarArchive.js.map +1 -1
  190. package/dist/lib/classes/TarFile.js +1 -1
  191. package/dist/lib/classes/TarFile.js.map +1 -1
  192. package/dist/lib/classes/TarReader.d.ts +1 -2
  193. package/dist/lib/classes/TarReader.js +15 -17
  194. package/dist/lib/classes/TarReader.js.map +1 -1
  195. package/dist/lib/classes/TarWriter.d.ts +1 -1
  196. package/dist/lib/classes/TarWriter.js +51 -68
  197. package/dist/lib/classes/TarWriter.js.map +1 -1
  198. package/dist/lib/classes/TextureEntry.d.ts +2 -3
  199. package/dist/lib/classes/TextureEntry.js +12 -12
  200. package/dist/lib/classes/TextureEntry.js.map +1 -1
  201. package/dist/lib/classes/TextureEntryFace.d.ts +4 -4
  202. package/dist/lib/classes/TextureEntryFace.js.map +1 -1
  203. package/dist/lib/classes/UUID.d.ts +2 -2
  204. package/dist/lib/classes/UUID.js +28 -28
  205. package/dist/lib/classes/UUID.js.map +1 -1
  206. package/dist/lib/classes/Utils.d.ts +2 -11
  207. package/dist/lib/classes/Utils.js +72 -328
  208. package/dist/lib/classes/Utils.js.map +1 -1
  209. package/dist/lib/classes/Vector2.d.ts +35 -6
  210. package/dist/lib/classes/Vector2.js +192 -28
  211. package/dist/lib/classes/Vector2.js.map +1 -1
  212. package/dist/lib/classes/Vector3.d.ts +38 -6
  213. package/dist/lib/classes/Vector3.js +229 -48
  214. package/dist/lib/classes/Vector3.js.map +1 -1
  215. package/dist/lib/classes/Vector4.d.ts +36 -6
  216. package/dist/lib/classes/Vector4.js +225 -21
  217. package/dist/lib/classes/Vector4.js.map +1 -1
  218. package/dist/lib/classes/Wearable.d.ts +1 -1
  219. package/dist/lib/classes/Zerocoder.js +2 -2
  220. package/dist/lib/classes/Zerocoder.js.map +1 -1
  221. package/dist/lib/classes/commands/AgentCommands.d.ts +7 -5
  222. package/dist/lib/classes/commands/AgentCommands.js +60 -76
  223. package/dist/lib/classes/commands/AgentCommands.js.map +1 -1
  224. package/dist/lib/classes/commands/AssetCommands.d.ts +5 -10
  225. package/dist/lib/classes/commands/AssetCommands.js +176 -179
  226. package/dist/lib/classes/commands/AssetCommands.js.map +1 -1
  227. package/dist/lib/classes/commands/CommandsBase.d.ts +4 -4
  228. package/dist/lib/classes/commands/CommandsBase.js.map +1 -1
  229. package/dist/lib/classes/commands/CommunicationsCommands.d.ts +3 -3
  230. package/dist/lib/classes/commands/CommunicationsCommands.js +350 -426
  231. package/dist/lib/classes/commands/CommunicationsCommands.js.map +1 -1
  232. package/dist/lib/classes/commands/FriendCommands.d.ts +9 -10
  233. package/dist/lib/classes/commands/FriendCommands.js +238 -236
  234. package/dist/lib/classes/commands/FriendCommands.js.map +1 -1
  235. package/dist/lib/classes/commands/GridCommands.d.ts +3 -3
  236. package/dist/lib/classes/commands/GridCommands.js +299 -336
  237. package/dist/lib/classes/commands/GridCommands.js.map +1 -1
  238. package/dist/lib/classes/commands/GroupCommands.d.ts +2 -2
  239. package/dist/lib/classes/commands/GroupCommands.js +293 -336
  240. package/dist/lib/classes/commands/GroupCommands.js.map +1 -1
  241. package/dist/lib/classes/commands/InventoryCommands.d.ts +4 -4
  242. package/dist/lib/classes/commands/InventoryCommands.js +54 -69
  243. package/dist/lib/classes/commands/InventoryCommands.js.map +1 -1
  244. package/dist/lib/classes/commands/MovementCommands.d.ts +2 -2
  245. package/dist/lib/classes/commands/MovementCommands.js +23 -38
  246. package/dist/lib/classes/commands/MovementCommands.js.map +1 -1
  247. package/dist/lib/classes/commands/NetworkCommands.js +35 -46
  248. package/dist/lib/classes/commands/NetworkCommands.js.map +1 -1
  249. package/dist/lib/classes/commands/ParcelCommands.d.ts +4 -4
  250. package/dist/lib/classes/commands/ParcelCommands.js +64 -77
  251. package/dist/lib/classes/commands/ParcelCommands.js.map +1 -1
  252. package/dist/lib/classes/commands/RegionCommands.d.ts +11 -10
  253. package/dist/lib/classes/commands/RegionCommands.js +1126 -1211
  254. package/dist/lib/classes/commands/RegionCommands.js.map +1 -1
  255. package/dist/lib/classes/commands/TeleportCommands.d.ts +8 -8
  256. package/dist/lib/classes/commands/TeleportCommands.js +58 -58
  257. package/dist/lib/classes/commands/TeleportCommands.js.map +1 -1
  258. package/dist/lib/classes/interfaces/IGameObjectData.d.ts +18 -20
  259. package/dist/lib/classes/interfaces/ILandBlock.d.ts +2 -2
  260. package/dist/lib/classes/interfaces/IObjectStore.d.ts +12 -12
  261. package/dist/lib/classes/interfaces/IResolveJob.d.ts +2 -2
  262. package/dist/lib/classes/interfaces/ITreeBoundingBox.d.ts +2 -2
  263. package/dist/lib/classes/llsd/LLSD.d.ts +12 -0
  264. package/dist/lib/classes/llsd/LLSD.js +128 -0
  265. package/dist/lib/classes/llsd/LLSD.js.map +1 -0
  266. package/dist/lib/classes/llsd/LLSD.spec.d.ts +1 -0
  267. package/dist/lib/classes/llsd/LLSD.spec.js +249 -0
  268. package/dist/lib/classes/llsd/LLSD.spec.js.map +1 -0
  269. package/dist/lib/classes/llsd/LLSDArray.d.ts +26 -3
  270. package/dist/lib/classes/llsd/LLSDArray.js +182 -6
  271. package/dist/lib/classes/llsd/LLSDArray.js.map +1 -1
  272. package/dist/lib/classes/llsd/LLSDBinary.d.ts +7 -0
  273. package/dist/lib/classes/llsd/LLSDBinary.js +114 -0
  274. package/dist/lib/classes/llsd/LLSDBinary.js.map +1 -0
  275. package/dist/lib/classes/llsd/LLSDInteger.d.ts +9 -0
  276. package/dist/lib/classes/llsd/LLSDInteger.js +25 -0
  277. package/dist/lib/classes/llsd/LLSDInteger.js.map +1 -0
  278. package/dist/lib/classes/llsd/LLSDMap.d.ts +16 -5
  279. package/dist/lib/classes/llsd/LLSDMap.js +197 -16
  280. package/dist/lib/classes/llsd/LLSDMap.js.map +1 -1
  281. package/dist/lib/classes/llsd/LLSDNotation.d.ts +11 -0
  282. package/dist/lib/classes/llsd/LLSDNotation.js +271 -0
  283. package/dist/lib/classes/llsd/LLSDNotation.js.map +1 -0
  284. package/dist/lib/classes/llsd/LLSDReal.d.ts +10 -0
  285. package/dist/lib/classes/llsd/LLSDReal.js +71 -0
  286. package/dist/lib/classes/llsd/LLSDReal.js.map +1 -0
  287. package/dist/lib/classes/llsd/LLSDToken.d.ts +1 -1
  288. package/dist/lib/classes/llsd/LLSDTokenContainer.d.ts +2 -2
  289. package/dist/lib/classes/llsd/LLSDTokenGenerator.d.ts +1 -1
  290. package/dist/lib/classes/llsd/LLSDTokenSpec.d.ts +1 -1
  291. package/dist/lib/classes/llsd/LLSDTokenType.d.ts +18 -18
  292. package/dist/lib/classes/llsd/LLSDTokenType.js +18 -18
  293. package/dist/lib/classes/llsd/LLSDTokenType.js.map +1 -1
  294. package/dist/lib/classes/llsd/LLSDType.d.ts +6 -3
  295. package/dist/lib/classes/llsd/LLSDURI.d.ts +7 -0
  296. package/dist/lib/classes/llsd/LLSDURI.js +19 -0
  297. package/dist/lib/classes/llsd/LLSDURI.js.map +1 -0
  298. package/dist/lib/classes/llsd/LLSDXML.d.ts +5 -0
  299. package/dist/lib/classes/llsd/LLSDXML.js +245 -0
  300. package/dist/lib/classes/llsd/LLSDXML.js.map +1 -0
  301. package/dist/lib/classes/messages/ObjectUpdate.d.ts +4 -5
  302. package/dist/lib/classes/messages/ObjectUpdate.js +115 -115
  303. package/dist/lib/classes/messages/ObjectUpdate.js.map +1 -1
  304. package/dist/lib/classes/messages/SimStats.d.ts +3 -2
  305. package/dist/lib/classes/messages/SimStats.js +17 -17
  306. package/dist/lib/classes/messages/SimStats.js.map +1 -1
  307. package/dist/lib/classes/public/Avatar.d.ts +4 -4
  308. package/dist/lib/classes/public/Avatar.js +39 -33
  309. package/dist/lib/classes/public/Avatar.js.map +1 -1
  310. package/dist/lib/classes/public/AvatarQueryResult.d.ts +4 -4
  311. package/dist/lib/classes/public/AvatarQueryResult.js.map +1 -1
  312. package/dist/lib/classes/public/ExtendedMeshData.d.ts +1 -1
  313. package/dist/lib/classes/public/ExtendedMeshData.js.map +1 -1
  314. package/dist/lib/classes/public/ExtraParams.d.ts +6 -6
  315. package/dist/lib/classes/public/ExtraParams.js +36 -39
  316. package/dist/lib/classes/public/ExtraParams.js.map +1 -1
  317. package/dist/lib/classes/public/ExtraParams.spec.js +2 -11
  318. package/dist/lib/classes/public/ExtraParams.spec.js.map +1 -1
  319. package/dist/lib/classes/public/FlexibleData.js.map +1 -1
  320. package/dist/lib/classes/public/Friend.js.map +1 -1
  321. package/dist/lib/classes/public/GameObject.d.ts +23 -21
  322. package/dist/lib/classes/public/GameObject.js +1294 -1306
  323. package/dist/lib/classes/public/GameObject.js.map +1 -1
  324. package/dist/lib/classes/public/GameObject.spec.js +8 -18
  325. package/dist/lib/classes/public/GameObject.spec.js.map +1 -1
  326. package/dist/lib/classes/public/LLMesh.d.ts +5 -7
  327. package/dist/lib/classes/public/LLMesh.js +194 -216
  328. package/dist/lib/classes/public/LLMesh.js.map +1 -1
  329. package/dist/lib/classes/public/LightData.js.map +1 -1
  330. package/dist/lib/classes/public/LightImageData.js.map +1 -1
  331. package/dist/lib/classes/public/Material.js +45 -56
  332. package/dist/lib/classes/public/Material.js.map +1 -1
  333. package/dist/lib/classes/public/MeshData.js.map +1 -1
  334. package/dist/lib/classes/public/Parcel.d.ts +4 -4
  335. package/dist/lib/classes/public/Parcel.js +1 -2
  336. package/dist/lib/classes/public/Parcel.js.map +1 -1
  337. package/dist/lib/classes/public/ReflectionProbeData.d.ts +1 -1
  338. package/dist/lib/classes/public/ReflectionProbeData.js.map +1 -1
  339. package/dist/lib/classes/public/RegionEnvironment.d.ts +14 -13
  340. package/dist/lib/classes/public/RegionEnvironment.js +94 -53
  341. package/dist/lib/classes/public/RegionEnvironment.js.map +1 -1
  342. package/dist/lib/classes/public/RegionEnvironmentSky.d.ts +2 -0
  343. package/dist/lib/classes/public/RegionEnvironmentSky.js +7 -0
  344. package/dist/lib/classes/public/RegionEnvironmentSky.js.map +1 -0
  345. package/dist/lib/classes/public/RegionEnvironmentWater.d.ts +2 -0
  346. package/dist/lib/classes/public/RegionEnvironmentWater.js +7 -0
  347. package/dist/lib/classes/public/RegionEnvironmentWater.js.map +1 -0
  348. package/dist/lib/classes/public/RenderMaterialData.js.map +1 -1
  349. package/dist/lib/classes/public/RenderMaterialParam.d.ts +1 -1
  350. package/dist/lib/classes/public/SculptData.js.map +1 -1
  351. package/dist/lib/classes/public/TextureAnim.js +2 -1
  352. package/dist/lib/classes/public/TextureAnim.js.map +1 -1
  353. package/dist/lib/classes/public/interfaces/GlobalPosition.d.ts +1 -1
  354. package/dist/lib/classes/public/interfaces/LLPhysicsConvex.d.ts +1 -1
  355. package/dist/lib/classes/public/interfaces/LLSkin.d.ts +1 -1
  356. package/dist/lib/classes/public/interfaces/LLSubMesh.d.ts +3 -5
  357. package/dist/lib/classes/public/interfaces/MapLocation.d.ts +3 -3
  358. package/dist/lib/classes/public/interfaces/RegionEnvironmentSkyLLSD.d.ts +26 -0
  359. package/dist/lib/classes/public/interfaces/RegionEnvironmentSkyLLSD.js +3 -0
  360. package/dist/lib/classes/public/interfaces/RegionEnvironmentSkyLLSD.js.map +1 -0
  361. package/dist/lib/classes/public/interfaces/RegionEnvironmentWaterLLSD.d.ts +15 -0
  362. package/dist/lib/classes/public/interfaces/RegionEnvironmentWaterLLSD.js +3 -0
  363. package/dist/lib/classes/public/interfaces/RegionEnvironmentWaterLLSD.js.map +1 -0
  364. package/dist/lib/classes/public/interfaces/SkyPreset.d.ts +3 -3
  365. package/dist/lib/classes/public/interfaces/WaterPreset.d.ts +4 -4
  366. package/dist/lib/deviceToken.json +1 -0
  367. package/dist/lib/enums/AssetType.d.ts +6 -4
  368. package/dist/lib/enums/AssetType.js +5 -3
  369. package/dist/lib/enums/AssetType.js.map +1 -1
  370. package/dist/lib/enums/AttachmentPoint.d.ts +0 -1
  371. package/dist/lib/enums/AttachmentPoint.js +0 -1
  372. package/dist/lib/enums/AttachmentPoint.js.map +1 -1
  373. package/dist/lib/enums/InventoryType.d.ts +3 -5
  374. package/dist/lib/enums/InventoryType.js +2 -4
  375. package/dist/lib/enums/InventoryType.js.map +1 -1
  376. package/dist/lib/enums/LayerType.d.ts +1 -1
  377. package/dist/lib/enums/LayerType.js +1 -1
  378. package/dist/lib/events/AvatarPropertiesReplyEvent.d.ts +1 -1
  379. package/dist/lib/events/BalanceUpdatedEvent.d.ts +2 -2
  380. package/dist/lib/events/BulkUpdateInventoryEvent.d.ts +2 -2
  381. package/dist/lib/events/BulkUpdateInventoryEvent.js.map +1 -1
  382. package/dist/lib/events/ChatEvent.d.ts +5 -5
  383. package/dist/lib/events/FriendOnlineEvent.d.ts +1 -1
  384. package/dist/lib/events/FriendRemovedEvent.d.ts +1 -1
  385. package/dist/lib/events/FriendRequestEvent.d.ts +1 -1
  386. package/dist/lib/events/FriendResponseEvent.d.ts +1 -1
  387. package/dist/lib/events/FriendRightsEvent.d.ts +2 -2
  388. package/dist/lib/events/GroupChatClosedEvent.d.ts +1 -1
  389. package/dist/lib/events/GroupChatEvent.d.ts +1 -1
  390. package/dist/lib/events/GroupChatSessionAgentListEvent.d.ts +1 -1
  391. package/dist/lib/events/GroupChatSessionJoinEvent.d.ts +1 -1
  392. package/dist/lib/events/GroupInviteEvent.d.ts +1 -1
  393. package/dist/lib/events/GroupNoticeEvent.d.ts +1 -1
  394. package/dist/lib/events/GroupProfileReplyEvent.d.ts +2 -2
  395. package/dist/lib/events/InstantMessageEvent.d.ts +3 -3
  396. package/dist/lib/events/InventoryOfferedEvent.d.ts +3 -3
  397. package/dist/lib/events/InventoryResponseEvent.d.ts +1 -1
  398. package/dist/lib/events/LandStatsEvent.d.ts +4 -4
  399. package/dist/lib/events/LandStatsEvent.js.map +1 -1
  400. package/dist/lib/events/LureEvent.d.ts +2 -2
  401. package/dist/lib/events/MapInfoRangeReplyEvent.d.ts +1 -1
  402. package/dist/lib/events/MapInfoReplyEvent.d.ts +2 -2
  403. package/dist/lib/events/NewObjectEvent.d.ts +2 -2
  404. package/dist/lib/events/ObjectKilledEvent.d.ts +2 -2
  405. package/dist/lib/events/ObjectPhysicsDataEvent.d.ts +1 -1
  406. package/dist/lib/events/ObjectResolvedEvent.d.ts +1 -1
  407. package/dist/lib/events/ObjectUpdatedEvent.d.ts +2 -2
  408. package/dist/lib/events/ParcelInfoReplyEvent.d.ts +3 -3
  409. package/dist/lib/events/ParcelPropertiesEvent.d.ts +3 -3
  410. package/dist/lib/events/RegionInfoReplyEvent.d.ts +2 -2
  411. package/dist/lib/events/ScriptDialogEvent.d.ts +1 -1
  412. package/dist/lib/events/SelectedObjectEvent.d.ts +1 -1
  413. package/dist/lib/events/TeleportEvent.d.ts +1 -1
  414. package/dist/lib/index.d.ts +6 -8
  415. package/dist/lib/index.js +4 -7
  416. package/dist/lib/index.js.map +1 -1
  417. package/dist/lib/tsm/common.d.ts +1 -1
  418. package/dist/lib/tsm/common.js +3 -1
  419. package/dist/lib/tsm/common.js.map +1 -1
  420. package/dist/lib/tsm/mat2.d.ts +8 -8
  421. package/dist/lib/tsm/mat2.js +8 -7
  422. package/dist/lib/tsm/mat2.js.map +1 -1
  423. package/dist/lib/tsm/mat3.d.ts +7 -7
  424. package/dist/lib/tsm/mat3.js +8 -7
  425. package/dist/lib/tsm/mat3.js.map +1 -1
  426. package/dist/lib/tsm/mat4.d.ts +9 -9
  427. package/dist/lib/tsm/mat4.js +8 -7
  428. package/dist/lib/tsm/mat4.js.map +1 -1
  429. package/dist/lib/tsm/quat.d.ts +19 -19
  430. package/dist/lib/tsm/quat.js +69 -68
  431. package/dist/lib/tsm/quat.js.map +1 -1
  432. package/dist/lib/tsm/vec2.d.ts +13 -13
  433. package/dist/lib/tsm/vec2.js +30 -29
  434. package/dist/lib/tsm/vec2.js.map +1 -1
  435. package/dist/lib/tsm/vec3.d.ts +16 -16
  436. package/dist/lib/tsm/vec3.js +48 -47
  437. package/dist/lib/tsm/vec3.js.map +1 -1
  438. package/dist/lib/tsm/vec4.d.ts +22 -22
  439. package/dist/lib/tsm/vec4.js +94 -93
  440. package/dist/lib/tsm/vec4.js.map +1 -1
  441. package/eslint.config.mjs +104 -0
  442. package/examples/Inventory/Inventory.ts +4 -2
  443. package/examples/Money/Money.ts +6 -6
  444. package/examples/Objects/TaskInventory.ts +4 -3
  445. package/examples/Region/Settings.ts +19 -0
  446. package/package.json +10 -9
  447. package/.eslintrc +0 -224
  448. package/dist/lib/classes/llsd/LLSDNotationParser.d.ts +0 -9
  449. package/dist/lib/classes/llsd/LLSDNotationParser.js +0 -177
  450. package/dist/lib/classes/llsd/LLSDNotationParser.js.map +0 -1
  451. package/dist/lib/classes/llsd/LLSDNotationParser.spec.js +0 -167
  452. package/dist/lib/classes/llsd/LLSDNotationParser.spec.js.map +0 -1
  453. package/dist/lib/enums/AssetTypeLL.d.ts +0 -27
  454. package/dist/lib/enums/AssetTypeLL.js +0 -32
  455. package/dist/lib/enums/AssetTypeLL.js.map +0 -1
  456. package/dist/lib/enums/HTTPAssets.d.ts +0 -24
  457. package/dist/lib/enums/HTTPAssets.js +0 -29
  458. package/dist/lib/enums/HTTPAssets.js.map +0 -1
  459. /package/dist/{lib/classes/llsd/LLSDNotationParser.spec.d.ts → examples/Region/Settings.d.ts} +0 -0
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.LLMesh = void 0;
13
4
  const LLSD = require("@caspertech/llsd");
@@ -20,87 +11,82 @@ class LLMesh {
20
11
  constructor() {
21
12
  this.lodLevels = {};
22
13
  }
23
- static from(buf) {
24
- return __awaiter(this, void 0, void 0, function* () {
25
- const llmesh = new LLMesh();
26
- const binData = new LLSD.Binary(Array.from(buf), 'BASE64');
27
- let obj = LLSD.LLSD.parseBinary(binData);
28
- if (obj['result'] === undefined) {
29
- throw new Error('Failed to decode header');
30
- }
31
- if (obj['position'] === undefined) {
32
- throw new Error('Position not reported');
33
- }
34
- const startPos = parseInt(obj['position'], 10);
35
- obj = obj['result'];
36
- if (!obj['version']) {
37
- throw new Error('No version found');
38
- }
39
- if (!obj['creator']) {
40
- throw new Error('Creator UUID not found');
41
- }
42
- if (obj['date'] === undefined) {
43
- throw new Error('Date not found');
44
- }
45
- llmesh.creatorID = new UUID_1.UUID(obj['creator'].toString());
46
- llmesh.date = obj['date'];
47
- llmesh.version = parseInt(obj['version'], 10);
48
- for (const key of Object.keys(obj)) {
49
- const o = obj[key];
50
- if (typeof o === 'object' && o !== null && o['offset'] !== undefined) {
51
- const bufFrom = startPos + parseInt(o['offset'], 10);
52
- const bufTo = startPos + parseInt(o['offset'], 10) + parseInt(o['size'], 10);
53
- const partBuf = buf.slice(bufFrom, bufTo);
54
- const deflated = yield Utils_1.Utils.inflate(partBuf);
55
- const mesh = LLSD.LLSD.parseBinary(new LLSD.Binary(Array.from(deflated), 'BASE64'));
56
- if (mesh['result'] === undefined) {
57
- throw new Error('Failed to parse compressed submesh data');
58
- }
59
- if (key === 'physics_convex') {
60
- llmesh.physicsConvex = this.parsePhysicsConvex(mesh['result']);
61
- }
62
- else if (key === 'skin') {
63
- llmesh.skin = this.parseSkin(mesh['result']);
64
- }
65
- else if (key === 'physics_havok' || key === 'physics_cost_data') {
66
- }
67
- else {
68
- llmesh.lodLevels[key] = this.parseLODLevel(mesh['result']);
69
- }
14
+ static async from(buf) {
15
+ const llmesh = new LLMesh();
16
+ const binData = new LLSD.Binary(Array.from(buf), 'BASE64');
17
+ let obj = LLSD.LLSD.parseBinary(binData);
18
+ if (obj.result === undefined) {
19
+ throw new Error('Failed to decode header');
20
+ }
21
+ if (obj.position === undefined) {
22
+ throw new Error('Position not reported');
23
+ }
24
+ const startPos = parseInt(obj.position, 10);
25
+ obj = obj.result;
26
+ if (obj.creator !== undefined) {
27
+ llmesh.creatorID = new UUID_1.UUID(obj.creator.toString());
28
+ }
29
+ if (obj.date !== undefined) {
30
+ llmesh.date = obj.date;
31
+ }
32
+ if (obj.version !== undefined) {
33
+ llmesh.version = parseInt(obj.version, 10);
34
+ }
35
+ for (const key of Object.keys(obj)) {
36
+ const o = obj[key];
37
+ if (typeof o === 'object' && o !== null && o.offset !== undefined) {
38
+ const bufFrom = startPos + parseInt(o.offset, 10);
39
+ const bufTo = startPos + parseInt(o.offset, 10) + parseInt(o.size, 10);
40
+ const partBuf = buf.subarray(bufFrom, bufTo);
41
+ const deflated = await Utils_1.Utils.inflate(partBuf);
42
+ const mesh = LLSD.LLSD.parseBinary(new LLSD.Binary(Array.from(deflated), 'BASE64'));
43
+ if (mesh.result === undefined) {
44
+ throw new Error('Failed to parse compressed submesh data');
45
+ }
46
+ if (key === 'physics_convex') {
47
+ llmesh.physicsConvex = this.parsePhysicsConvex(mesh.result);
48
+ }
49
+ else if (key === 'skin') {
50
+ llmesh.skin = this.parseSkin(mesh.result);
51
+ }
52
+ else if (key === 'physics_havok' || key === 'physics_cost_data') {
53
+ }
54
+ else {
55
+ llmesh.lodLevels[key] = this.parseLODLevel(mesh.result);
70
56
  }
71
57
  }
72
- return llmesh;
73
- });
58
+ }
59
+ return llmesh;
74
60
  }
75
61
  static parseSkin(mesh) {
76
- if (!mesh['joint_names']) {
62
+ if (mesh.joint_names === undefined) {
77
63
  throw new Error('Joint names missing from skin');
78
64
  }
79
- if (!mesh['bind_shape_matrix']) {
65
+ if (mesh.bind_shape_matrix === undefined) {
80
66
  throw new Error('Bind shape matrix missing from skin');
81
67
  }
82
- if (!mesh['inverse_bind_matrix']) {
68
+ if (mesh.inverse_bind_matrix === undefined) {
83
69
  throw new Error('Inverse bind matrix missing from skin');
84
70
  }
85
71
  const skin = {
86
- jointNames: mesh['joint_names'],
87
- bindShapeMatrix: new mat4_1.TSMMat4(mesh['bind_shape_matrix']),
72
+ jointNames: mesh.joint_names,
73
+ bindShapeMatrix: new mat4_1.TSMMat4(mesh.bind_shape_matrix),
88
74
  inverseBindMatrix: []
89
75
  };
90
- if (mesh['inverse_bind_matrix']) {
76
+ if (mesh.inverse_bind_matrix !== undefined) {
91
77
  skin.inverseBindMatrix = [];
92
- for (const inv of mesh['inverse_bind_matrix']) {
78
+ for (const inv of mesh.inverse_bind_matrix) {
93
79
  skin.inverseBindMatrix.push(new mat4_1.TSMMat4(inv));
94
80
  }
95
81
  }
96
- if (mesh['alt_inverse_bind_matrix']) {
82
+ if (mesh.alt_inverse_bind_matrix !== undefined) {
97
83
  skin.altInverseBindMatrix = [];
98
- for (const inv of mesh['alt_inverse_bind_matrix']) {
84
+ for (const inv of mesh.alt_inverse_bind_matrix) {
99
85
  skin.altInverseBindMatrix.push(new mat4_1.TSMMat4(inv));
100
86
  }
101
87
  }
102
- if (mesh['pelvis_offset']) {
103
- skin.pelvisOffset = new mat4_1.TSMMat4(mesh['pelvis_offset']);
88
+ if (mesh.pelvis_offset !== undefined) {
89
+ skin.pelvisOffset = new mat4_1.TSMMat4(mesh.pelvis_offset);
104
90
  }
105
91
  return skin;
106
92
  }
@@ -122,22 +108,22 @@ class LLMesh {
122
108
  max: new Vector3_1.Vector3([0.5, 0.5, 0.5])
123
109
  }
124
110
  };
125
- if (mesh['Min']) {
126
- conv.domain.min.x = mesh['Min'][0];
127
- conv.domain.min.y = mesh['Min'][1];
128
- conv.domain.min.z = mesh['Min'][2];
129
- }
130
- if (mesh['Max']) {
131
- conv.domain.max.x = mesh['Max'][0];
132
- conv.domain.max.y = mesh['Max'][1];
133
- conv.domain.max.z = mesh['Max'][2];
134
- }
135
- if (mesh['HullList']) {
136
- if (!mesh['Positions']) {
111
+ if (mesh.Min !== undefined) {
112
+ conv.domain.min.x = mesh.Min[0];
113
+ conv.domain.min.y = mesh.Min[1];
114
+ conv.domain.min.z = mesh.Min[2];
115
+ }
116
+ if (mesh.Max !== undefined) {
117
+ conv.domain.max.x = mesh.Max[0];
118
+ conv.domain.max.y = mesh.Max[1];
119
+ conv.domain.max.z = mesh.Max[2];
120
+ }
121
+ if (mesh.HullList !== undefined) {
122
+ if (mesh.Positions === undefined) {
137
123
  throw new Error('Positions must be supplied if hull list is present');
138
124
  }
139
- conv.positions = this.decodeByteDomain3(mesh['Positions'].toArray(), conv.domain.min, conv.domain.max);
140
- conv.hullList = mesh['HullList'].toArray();
125
+ conv.positions = this.decodeByteDomain3(mesh.Positions.toArray(), conv.domain.min, conv.domain.max);
126
+ conv.hullList = mesh.HullList.toArray();
141
127
  if (conv.hullList === undefined) {
142
128
  throw new Error('HullList undefined');
143
129
  }
@@ -151,10 +137,10 @@ class LLMesh {
151
137
  }
152
138
  }
153
139
  }
154
- if (!mesh['BoundingVerts']) {
140
+ if (mesh.BoundingVerts === undefined) {
155
141
  throw new Error('BoundingVerts is required');
156
142
  }
157
- conv.boundingVerts = this.decodeByteDomain3(mesh['BoundingVerts'].toArray(), conv.domain.min, conv.domain.max);
143
+ conv.boundingVerts = this.decodeByteDomain3(mesh.BoundingVerts.toArray(), conv.domain.min, conv.domain.max);
158
144
  return conv;
159
145
  }
160
146
  static parseLODLevel(mesh) {
@@ -166,51 +152,51 @@ class LLMesh {
166
152
  max: new Vector3_1.Vector3([0.5, 0.5, 0.5])
167
153
  }
168
154
  };
169
- if (submesh['NoGeometry']) {
155
+ if (submesh.NoGeometry) {
170
156
  decoded.noGeometry = true;
171
157
  list.push(decoded);
172
158
  }
173
159
  else {
174
160
  decoded.position = [];
175
- if (!submesh['Position']) {
161
+ if (!submesh.Position) {
176
162
  throw new Error('Submesh does not contain position data');
177
163
  }
178
164
  if (decoded.positionDomain !== undefined) {
179
- if (submesh['PositionDomain']) {
180
- if (submesh['PositionDomain']['Max'] !== undefined) {
181
- const dom = submesh['PositionDomain']['Max'];
165
+ if (submesh.PositionDomain) {
166
+ if (submesh.PositionDomain.Max !== undefined) {
167
+ const dom = submesh.PositionDomain.Max;
182
168
  decoded.positionDomain.max.x = dom[0];
183
169
  decoded.positionDomain.max.y = dom[1];
184
170
  decoded.positionDomain.max.z = dom[2];
185
171
  }
186
- if (submesh['PositionDomain']['Min'] !== undefined) {
187
- const dom = submesh['PositionDomain']['Min'];
172
+ if (submesh.PositionDomain.Min !== undefined) {
173
+ const dom = submesh.PositionDomain.Min;
188
174
  decoded.positionDomain.min.x = dom[0];
189
175
  decoded.positionDomain.min.y = dom[1];
190
176
  decoded.positionDomain.min.z = dom[2];
191
177
  }
192
178
  }
193
- decoded.position = this.decodeByteDomain3(submesh['Position'].toArray(), decoded.positionDomain.min, decoded.positionDomain.max);
179
+ decoded.position = this.decodeByteDomain3(submesh.Position.toArray(), decoded.positionDomain.min, decoded.positionDomain.max);
194
180
  }
195
- if (submesh['Normal']) {
196
- decoded.normal = this.decodeByteDomain3(submesh['Normal'].toArray(), new Vector3_1.Vector3([-1.0, -1.0, -1.0]), new Vector3_1.Vector3([1.0, 1.0, 1.0]));
181
+ if (submesh.Normal) {
182
+ decoded.normal = this.decodeByteDomain3(submesh.Normal.toArray(), new Vector3_1.Vector3([-1.0, -1.0, -1.0]), new Vector3_1.Vector3([1.0, 1.0, 1.0]));
197
183
  if (decoded.normal.length !== decoded.position.length) {
198
184
  throw new Error('Normal length does not match vertex position length');
199
185
  }
200
186
  }
201
- if (submesh['TexCoord0']) {
187
+ if (submesh.TexCoord0) {
202
188
  decoded.texCoord0Domain = {
203
189
  min: new Vector2_1.Vector2([-0.5, -0.5]),
204
190
  max: new Vector2_1.Vector2([0.5, 0.5])
205
191
  };
206
- if (submesh['TexCoord0Domain']) {
207
- if (submesh['TexCoord0Domain']['Max'] !== undefined) {
208
- const dom = submesh['TexCoord0Domain']['Max'];
192
+ if (submesh.TexCoord0Domain) {
193
+ if (submesh.TexCoord0Domain.Max !== undefined) {
194
+ const dom = submesh.TexCoord0Domain.Max;
209
195
  decoded.texCoord0Domain.max.x = dom[0];
210
196
  decoded.texCoord0Domain.max.y = dom[1];
211
197
  }
212
- if (submesh['TexCoord0Domain']['Min'] !== undefined) {
213
- const dom = submesh['TexCoord0Domain']['Min'];
198
+ if (submesh.TexCoord0Domain.Min !== undefined) {
199
+ const dom = submesh.TexCoord0Domain.Min;
214
200
  decoded.texCoord0Domain.min.x = dom[0];
215
201
  decoded.texCoord0Domain.min.y = dom[1];
216
202
  }
@@ -218,12 +204,12 @@ class LLMesh {
218
204
  else {
219
205
  throw new Error('TexCoord0Domain is required if Texcoord0 is present');
220
206
  }
221
- decoded.texCoord0 = this.decodeByteDomain2(submesh['TexCoord0'].toArray(), decoded.texCoord0Domain.min, decoded.texCoord0Domain.max);
207
+ decoded.texCoord0 = this.decodeByteDomain2(submesh.TexCoord0.toArray(), decoded.texCoord0Domain.min, decoded.texCoord0Domain.max);
222
208
  }
223
- if (!submesh['TriangleList']) {
209
+ if (!submesh.TriangleList) {
224
210
  throw new Error('TriangleList is required');
225
211
  }
226
- const indexBuf = Buffer.from(submesh['TriangleList'].toArray());
212
+ const indexBuf = Buffer.from(submesh.TriangleList.toArray());
227
213
  decoded.triangleList = [];
228
214
  for (let pos = 0; pos < indexBuf.length; pos = pos + 2) {
229
215
  const vertIndex = indexBuf.readUInt16LE(pos);
@@ -232,8 +218,8 @@ class LLMesh {
232
218
  }
233
219
  decoded.triangleList.push(vertIndex);
234
220
  }
235
- if (submesh['Weights']) {
236
- const skinBuf = Buffer.from(submesh['Weights'].toArray());
221
+ if (submesh.Weights) {
222
+ const skinBuf = Buffer.from(submesh.Weights.toArray());
237
223
  decoded.weights = [];
238
224
  let pos = 0;
239
225
  while (pos < skinBuf.length) {
@@ -282,6 +268,44 @@ class LLMesh {
282
268
  static normalizeDomain(value, min, max) {
283
269
  return ((value / 65535) * (max - min)) + min;
284
270
  }
271
+ async toAsset() {
272
+ const llsd = {
273
+ 'creator': new LLSD.UUID(this.creatorID.toString()),
274
+ 'version': this.version,
275
+ 'date': null
276
+ };
277
+ let offset = 0;
278
+ const bufs = [];
279
+ for (const lod of Object.keys(this.lodLevels)) {
280
+ const lodBlob = await this.encodeLODLevel(lod, this.lodLevels[lod]);
281
+ llsd[lod] = {
282
+ 'offset': offset,
283
+ 'size': lodBlob.length
284
+ };
285
+ offset += lodBlob.length;
286
+ bufs.push(lodBlob);
287
+ }
288
+ if (this.physicsConvex) {
289
+ const physBlob = await this.encodePhysicsConvex(this.physicsConvex);
290
+ llsd.physics_convex = {
291
+ 'offset': offset,
292
+ 'size': physBlob.length
293
+ };
294
+ offset += physBlob.length;
295
+ bufs.push(physBlob);
296
+ }
297
+ if (this.skin) {
298
+ const skinBlob = await this.encodeSkin(this.skin);
299
+ llsd.skin = {
300
+ 'offset': offset,
301
+ 'size': skinBlob.length
302
+ };
303
+ offset += skinBlob.length;
304
+ bufs.push(skinBlob);
305
+ }
306
+ bufs.unshift(Buffer.from(LLSD.LLSD.formatBinary(llsd).toArray()));
307
+ return Buffer.concat(bufs);
308
+ }
285
309
  encodeSubMesh(mesh) {
286
310
  const data = {};
287
311
  if (mesh.noGeometry === true) {
@@ -311,8 +335,8 @@ class LLMesh {
311
335
  if (mesh.triangleList) {
312
336
  const triangles = Buffer.allocUnsafe(mesh.triangleList.length * 2);
313
337
  let pos = 0;
314
- for (let x = 0; x < mesh.triangleList.length; x++) {
315
- triangles.writeUInt16LE(mesh.triangleList[x], pos);
338
+ for (const triangle of mesh.triangleList) {
339
+ triangles.writeUInt16LE(triangle, pos);
316
340
  pos = pos + 2;
317
341
  }
318
342
  data.triangleList = new LLSD.Binary(Array.from(triangles));
@@ -372,120 +396,74 @@ class LLMesh {
372
396
  }
373
397
  return buf;
374
398
  }
375
- encodeLODLevel(_, submeshes) {
376
- return __awaiter(this, void 0, void 0, function* () {
377
- const smList = [];
378
- for (const sub of submeshes) {
379
- smList.push(this.encodeSubMesh(sub));
380
- }
381
- const mesh = LLSD.LLSD.formatBinary(smList);
382
- return Utils_1.Utils.deflate(Buffer.from(mesh.toArray()));
383
- });
384
- }
385
- encodePhysicsConvex(conv) {
386
- return __awaiter(this, void 0, void 0, function* () {
387
- const llsd = {
388
- Min: LLMesh.fixReal(conv.domain.min.toArray()),
389
- Max: LLMesh.fixReal(conv.domain.max.toArray())
390
- };
391
- const sizeX = conv.domain.max.x - conv.domain.min.x;
392
- const sizeY = conv.domain.max.y - conv.domain.min.y;
393
- const sizeZ = conv.domain.max.z - conv.domain.min.z;
394
- if (conv.hullList) {
395
- if (!conv.positions) {
396
- throw new Error('Positions must be present if hullList is set.');
397
- }
398
- llsd.HullList = new LLSD.Binary(conv.hullList);
399
- const buf = Buffer.allocUnsafe(conv.positions.length * 6);
400
- let pos = 0;
401
- for (const vec of conv.positions) {
402
- buf.writeUInt16LE(Math.round(((vec.x - conv.domain.min.x) / sizeX) * 65535), pos);
403
- pos = pos + 2;
404
- buf.writeUInt16LE(Math.round(((vec.y - conv.domain.min.y) / sizeY) * 65535), pos);
405
- pos = pos + 2;
406
- buf.writeUInt16LE(Math.round(((vec.z - conv.domain.min.z) / sizeZ) * 65535), pos);
407
- pos = pos + 2;
408
- }
409
- llsd.Positions = new LLSD.Binary(Array.from(buf));
410
- }
411
- {
412
- const buf = Buffer.allocUnsafe(conv.boundingVerts.length * 6);
413
- let pos = 0;
414
- for (const vec of conv.boundingVerts) {
415
- buf.writeUInt16LE(Math.round(((vec.x - conv.domain.min.x) / sizeX)) * 65535, pos);
416
- pos = pos + 2;
417
- buf.writeUInt16LE(Math.round(((vec.y - conv.domain.min.y) / sizeY)) * 65535, pos);
418
- pos = pos + 2;
419
- buf.writeUInt16LE(Math.round(((vec.z - conv.domain.min.z) / sizeZ)) * 65535, pos);
420
- pos = pos + 2;
421
- }
422
- llsd.BoundingVerts = new LLSD.Binary(Array.from(buf));
423
- }
424
- const mesh = LLSD.LLSD.formatBinary(llsd);
425
- return yield Utils_1.Utils.deflate(Buffer.from(mesh.toArray()));
426
- });
399
+ async encodeLODLevel(_, submeshes) {
400
+ const smList = [];
401
+ for (const sub of submeshes) {
402
+ smList.push(this.encodeSubMesh(sub));
403
+ }
404
+ const mesh = LLSD.LLSD.formatBinary(smList);
405
+ return Utils_1.Utils.deflate(Buffer.from(mesh.toArray()));
427
406
  }
428
- encodeSkin(skin) {
429
- return __awaiter(this, void 0, void 0, function* () {
430
- const llsd = {};
431
- llsd['joint_names'] = skin.jointNames;
432
- llsd['bind_shape_matrix'] = skin.bindShapeMatrix.toArray();
433
- llsd['inverse_bind_matrix'] = [];
434
- for (const matrix of skin.inverseBindMatrix) {
435
- llsd['inverse_bind_matrix'].push(matrix.toArray());
407
+ async encodePhysicsConvex(conv) {
408
+ const llsd = {
409
+ Min: LLMesh.fixReal(conv.domain.min.toArray()),
410
+ Max: LLMesh.fixReal(conv.domain.max.toArray())
411
+ };
412
+ const sizeX = conv.domain.max.x - conv.domain.min.x;
413
+ const sizeY = conv.domain.max.y - conv.domain.min.y;
414
+ const sizeZ = conv.domain.max.z - conv.domain.min.z;
415
+ if (conv.hullList) {
416
+ if (!conv.positions) {
417
+ throw new Error('Positions must be present if hullList is set.');
436
418
  }
437
- if (skin.altInverseBindMatrix) {
438
- llsd['alt_inverse_bind_matrix'] = [];
439
- for (const matrix of skin.altInverseBindMatrix) {
440
- llsd['alt_inverse_bind_matrix'].push(matrix.toArray());
441
- }
419
+ llsd.HullList = new LLSD.Binary(conv.hullList);
420
+ const buf = Buffer.allocUnsafe(conv.positions.length * 6);
421
+ let pos = 0;
422
+ for (const vec of conv.positions) {
423
+ buf.writeUInt16LE(Math.round(((vec.x - conv.domain.min.x) / sizeX) * 65535), pos);
424
+ pos = pos + 2;
425
+ buf.writeUInt16LE(Math.round(((vec.y - conv.domain.min.y) / sizeY) * 65535), pos);
426
+ pos = pos + 2;
427
+ buf.writeUInt16LE(Math.round(((vec.z - conv.domain.min.z) / sizeZ) * 65535), pos);
428
+ pos = pos + 2;
442
429
  }
443
- if (skin.pelvisOffset) {
444
- llsd['pelvis_offset'] = skin.pelvisOffset.toArray();
430
+ llsd.Positions = new LLSD.Binary(Array.from(buf));
431
+ }
432
+ {
433
+ const buf = Buffer.allocUnsafe(conv.boundingVerts.length * 6);
434
+ let pos = 0;
435
+ for (const vec of conv.boundingVerts) {
436
+ buf.writeUInt16LE(Math.round(((vec.x - conv.domain.min.x) / sizeX)) * 65535, pos);
437
+ pos = pos + 2;
438
+ buf.writeUInt16LE(Math.round(((vec.y - conv.domain.min.y) / sizeY)) * 65535, pos);
439
+ pos = pos + 2;
440
+ buf.writeUInt16LE(Math.round(((vec.z - conv.domain.min.z) / sizeZ)) * 65535, pos);
441
+ pos = pos + 2;
445
442
  }
446
- const mesh = LLSD.LLSD.formatBinary(llsd);
447
- return yield Utils_1.Utils.deflate(Buffer.from(mesh.toArray()));
448
- });
443
+ llsd.BoundingVerts = new LLSD.Binary(Array.from(buf));
444
+ }
445
+ const mesh = LLSD.LLSD.formatBinary(llsd);
446
+ return Utils_1.Utils.deflate(Buffer.from(mesh.toArray()));
449
447
  }
450
- toAsset() {
451
- return __awaiter(this, void 0, void 0, function* () {
452
- const llsd = {
453
- 'creator': new LLSD.UUID(this.creatorID.toString()),
454
- 'version': this.version,
455
- 'date': null
456
- };
457
- let offset = 0;
458
- const bufs = [];
459
- for (const lod of Object.keys(this.lodLevels)) {
460
- const lodBlob = yield this.encodeLODLevel(lod, this.lodLevels[lod]);
461
- llsd[lod] = {
462
- 'offset': offset,
463
- 'size': lodBlob.length
464
- };
465
- offset += lodBlob.length;
466
- bufs.push(lodBlob);
467
- }
468
- if (this.physicsConvex) {
469
- const physBlob = yield this.encodePhysicsConvex(this.physicsConvex);
470
- llsd['physics_convex'] = {
471
- 'offset': offset,
472
- 'size': physBlob.length
473
- };
474
- offset += physBlob.length;
475
- bufs.push(physBlob);
476
- }
477
- if (this.skin) {
478
- const skinBlob = yield this.encodeSkin(this.skin);
479
- llsd['skin'] = {
480
- 'offset': offset,
481
- 'size': skinBlob.length
482
- };
483
- offset += skinBlob.length;
484
- bufs.push(skinBlob);
448
+ async encodeSkin(skin) {
449
+ const llsd = {};
450
+ llsd.joint_names = skin.jointNames;
451
+ llsd.bind_shape_matrix = skin.bindShapeMatrix.toArray();
452
+ llsd.inverse_bind_matrix = [];
453
+ for (const matrix of skin.inverseBindMatrix) {
454
+ llsd.inverse_bind_matrix.push(matrix.toArray());
455
+ }
456
+ if (skin.altInverseBindMatrix) {
457
+ llsd.alt_inverse_bind_matrix = [];
458
+ for (const matrix of skin.altInverseBindMatrix) {
459
+ llsd.alt_inverse_bind_matrix.push(matrix.toArray());
485
460
  }
486
- bufs.unshift(Buffer.from(LLSD.LLSD.formatBinary(llsd).toArray()));
487
- return Buffer.concat(bufs);
488
- });
461
+ }
462
+ if (skin.pelvisOffset) {
463
+ llsd.pelvis_offset = skin.pelvisOffset.toArray();
464
+ }
465
+ const mesh = LLSD.LLSD.formatBinary(llsd);
466
+ return Utils_1.Utils.deflate(Buffer.from(mesh.toArray()));
489
467
  }
490
468
  }
491
469
  exports.LLMesh = LLMesh;