@caspertech/node-metaverse 0.7.50 → 0.7.52

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