@needle-tools/engine 5.1.0-canary.fbdfce3 → 5.1.0-experimental.03e8105

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 (311) hide show
  1. package/CHANGELOG.md +86 -0
  2. package/SKILL.md +4 -1
  3. package/components.needle.json +1 -1
  4. package/dist/{needle-engine.bundle-BFSj2Fz8.js → needle-engine.bundle-BNqUjnSQ.js} +19180 -18386
  5. package/dist/needle-engine.bundle-Bt8ULD7E.umd.cjs +1733 -0
  6. package/dist/needle-engine.bundle-DF6ovbwD.min.js +1733 -0
  7. package/dist/needle-engine.d.ts +1487 -356
  8. package/dist/needle-engine.js +544 -542
  9. package/dist/needle-engine.min.js +1 -1
  10. package/dist/needle-engine.umd.cjs +1 -1
  11. package/dist/three.js +1 -0
  12. package/dist/three.min.js +21 -21
  13. package/dist/three.umd.cjs +16 -16
  14. package/lib/engine/api.d.ts +8 -1
  15. package/lib/engine/api.js +7 -1
  16. package/lib/engine/api.js.map +1 -1
  17. package/lib/engine/codegen/register_types.js +10 -18
  18. package/lib/engine/codegen/register_types.js.map +1 -1
  19. package/lib/engine/engine_audio.d.ts +68 -0
  20. package/lib/engine/engine_audio.js +172 -0
  21. package/lib/engine/engine_audio.js.map +1 -1
  22. package/lib/engine/engine_camera.fit.js +16 -4
  23. package/lib/engine/engine_camera.fit.js.map +1 -1
  24. package/lib/engine/engine_components.js +1 -1
  25. package/lib/engine/engine_components.js.map +1 -1
  26. package/lib/engine/engine_context.d.ts +21 -8
  27. package/lib/engine/engine_context.js +32 -16
  28. package/lib/engine/engine_context.js.map +1 -1
  29. package/lib/engine/engine_context_eventbus.d.ts +47 -0
  30. package/lib/engine/engine_context_eventbus.js +47 -0
  31. package/lib/engine/engine_context_eventbus.js.map +1 -0
  32. package/lib/engine/engine_disposable.d.ts +172 -0
  33. package/lib/engine/engine_disposable.js +136 -0
  34. package/lib/engine/engine_disposable.js.map +1 -0
  35. package/lib/engine/engine_gameobject.d.ts +1 -10
  36. package/lib/engine/engine_gameobject.js +22 -120
  37. package/lib/engine/engine_gameobject.js.map +1 -1
  38. package/lib/engine/engine_gltf_builtin_components.js +7 -69
  39. package/lib/engine/engine_gltf_builtin_components.js.map +1 -1
  40. package/lib/engine/engine_init.js +7 -7
  41. package/lib/engine/engine_init.js.map +1 -1
  42. package/lib/engine/engine_input.d.ts +24 -5
  43. package/lib/engine/engine_input.js +3 -2
  44. package/lib/engine/engine_input.js.map +1 -1
  45. package/lib/engine/engine_instantiate_resolve.d.ts +42 -0
  46. package/lib/engine/engine_instantiate_resolve.js +372 -0
  47. package/lib/engine/engine_instantiate_resolve.js.map +1 -0
  48. package/lib/engine/engine_license.d.ts +7 -7
  49. package/lib/engine/engine_license.js +183 -57
  50. package/lib/engine/engine_license.js.map +1 -1
  51. package/lib/engine/engine_mainloop_utils.js +7 -4
  52. package/lib/engine/engine_mainloop_utils.js.map +1 -1
  53. package/lib/engine/engine_networking.d.ts +51 -37
  54. package/lib/engine/engine_networking.js +132 -82
  55. package/lib/engine/engine_networking.js.map +1 -1
  56. package/lib/engine/engine_networking.transport.websocket.d.ts +15 -0
  57. package/lib/engine/engine_networking.transport.websocket.js +38 -0
  58. package/lib/engine/engine_networking.transport.websocket.js.map +1 -0
  59. package/lib/engine/engine_networking_blob.js +4 -4
  60. package/lib/engine/engine_networking_blob.js.map +1 -1
  61. package/lib/engine/engine_networking_instantiate.js +2 -2
  62. package/lib/engine/engine_networking_instantiate.js.map +1 -1
  63. package/lib/engine/engine_networking_types.d.ts +39 -1
  64. package/lib/engine/engine_networking_types.js +7 -0
  65. package/lib/engine/engine_networking_types.js.map +1 -1
  66. package/lib/engine/engine_physics_rapier.d.ts +21 -3
  67. package/lib/engine/engine_physics_rapier.js +94 -25
  68. package/lib/engine/engine_physics_rapier.js.map +1 -1
  69. package/lib/engine/engine_scenedata.js +2 -2
  70. package/lib/engine/engine_scenedata.js.map +1 -1
  71. package/lib/engine/engine_serialization_builtin_serializer.js +28 -5
  72. package/lib/engine/engine_serialization_builtin_serializer.js.map +1 -1
  73. package/lib/engine/engine_serialization_core.d.ts +1 -0
  74. package/lib/engine/engine_serialization_core.js +7 -0
  75. package/lib/engine/engine_serialization_core.js.map +1 -1
  76. package/lib/engine/engine_types.d.ts +29 -11
  77. package/lib/engine/engine_types.js +1 -1
  78. package/lib/engine/engine_types.js.map +1 -1
  79. package/lib/engine/engine_util_decorator.js +7 -2
  80. package/lib/engine/engine_util_decorator.js.map +1 -1
  81. package/lib/engine/engine_utils.d.ts +1 -1
  82. package/lib/engine/engine_utils.js +19 -5
  83. package/lib/engine/engine_utils.js.map +1 -1
  84. package/lib/engine/engine_utils_qrcode.js +2 -2
  85. package/lib/engine/engine_utils_qrcode.js.map +1 -1
  86. package/lib/engine/physics/workers/mesh-bvh/GenerateMeshBVHWorker.js +1 -1
  87. package/lib/engine/physics/workers/mesh-bvh/GenerateMeshBVHWorker.js.map +1 -1
  88. package/lib/engine/webcomponents/needle menu/needle-menu-spatial.js +2 -2
  89. package/lib/engine/webcomponents/needle menu/needle-menu-spatial.js.map +1 -1
  90. package/lib/engine/webcomponents/needle menu/needle-menu.d.ts +1 -1
  91. package/lib/engine/webcomponents/needle menu/needle-menu.js +6 -6
  92. package/lib/engine/webcomponents/needle menu/needle-menu.js.map +1 -1
  93. package/lib/engine/webcomponents/needle-engine.d.ts +10 -4
  94. package/lib/engine/webcomponents/needle-engine.js +3 -3
  95. package/lib/engine/webcomponents/needle-engine.js.map +1 -1
  96. package/lib/engine/webcomponents/needle-engine.loading.js +2 -2
  97. package/lib/engine/webcomponents/needle-engine.loading.js.map +1 -1
  98. package/lib/engine/xr/NeedleXRSession.d.ts +3 -2
  99. package/lib/engine/xr/NeedleXRSession.js +50 -14
  100. package/lib/engine/xr/NeedleXRSession.js.map +1 -1
  101. package/lib/engine/xr/TempXRContext.js +2 -2
  102. package/lib/engine/xr/TempXRContext.js.map +1 -1
  103. package/lib/engine/xr/events.d.ts +1 -1
  104. package/lib/engine/xr/events.js.map +1 -1
  105. package/lib/engine-components/Animation.js +17 -16
  106. package/lib/engine-components/Animation.js.map +1 -1
  107. package/lib/engine-components/AnimationBuilder.d.ts +158 -0
  108. package/lib/engine-components/AnimationBuilder.js +305 -0
  109. package/lib/engine-components/AnimationBuilder.js.map +1 -0
  110. package/lib/engine-components/Animator.d.ts +6 -0
  111. package/lib/engine-components/Animator.js +23 -13
  112. package/lib/engine-components/Animator.js.map +1 -1
  113. package/lib/engine-components/AnimatorController.builder.d.ts +191 -0
  114. package/lib/engine-components/AnimatorController.builder.js +263 -0
  115. package/lib/engine-components/AnimatorController.builder.js.map +1 -0
  116. package/lib/engine-components/AnimatorController.d.ts +2 -119
  117. package/lib/engine-components/AnimatorController.js +33 -232
  118. package/lib/engine-components/AnimatorController.js.map +1 -1
  119. package/lib/engine-components/AudioSource.d.ts +19 -3
  120. package/lib/engine-components/AudioSource.js +121 -68
  121. package/lib/engine-components/AudioSource.js.map +1 -1
  122. package/lib/engine-components/Collider.d.ts +18 -9
  123. package/lib/engine-components/Collider.js +61 -14
  124. package/lib/engine-components/Collider.js.map +1 -1
  125. package/lib/engine-components/Component.d.ts +72 -9
  126. package/lib/engine-components/Component.js +114 -10
  127. package/lib/engine-components/Component.js.map +1 -1
  128. package/lib/engine-components/ContactShadows.d.ts +1 -0
  129. package/lib/engine-components/ContactShadows.js +14 -1
  130. package/lib/engine-components/ContactShadows.js.map +1 -1
  131. package/lib/engine-components/DragControls.d.ts +7 -0
  132. package/lib/engine-components/DragControls.js +19 -7
  133. package/lib/engine-components/DragControls.js.map +1 -1
  134. package/lib/engine-components/DropListener.js +3 -0
  135. package/lib/engine-components/DropListener.js.map +1 -1
  136. package/lib/engine-components/EventList.d.ts +31 -9
  137. package/lib/engine-components/EventList.js +37 -76
  138. package/lib/engine-components/EventList.js.map +1 -1
  139. package/lib/engine-components/Joints.d.ts +4 -2
  140. package/lib/engine-components/Joints.js +19 -3
  141. package/lib/engine-components/Joints.js.map +1 -1
  142. package/lib/engine-components/Light.js +9 -1
  143. package/lib/engine-components/Light.js.map +1 -1
  144. package/lib/engine-components/Networking.d.ts +1 -1
  145. package/lib/engine-components/Networking.js +1 -1
  146. package/lib/engine-components/OrbitControls.d.ts +0 -2
  147. package/lib/engine-components/OrbitControls.js +30 -12
  148. package/lib/engine-components/OrbitControls.js.map +1 -1
  149. package/lib/engine-components/RigidBody.d.ts +12 -4
  150. package/lib/engine-components/RigidBody.js +18 -4
  151. package/lib/engine-components/RigidBody.js.map +1 -1
  152. package/lib/engine-components/SceneSwitcher.js +3 -0
  153. package/lib/engine-components/SceneSwitcher.js.map +1 -1
  154. package/lib/engine-components/SeeThrough.js +2 -2
  155. package/lib/engine-components/SeeThrough.js.map +1 -1
  156. package/lib/engine-components/api.d.ts +2 -1
  157. package/lib/engine-components/api.js +2 -1
  158. package/lib/engine-components/api.js.map +1 -1
  159. package/lib/engine-components/codegen/components.d.ts +7 -13
  160. package/lib/engine-components/codegen/components.js +7 -13
  161. package/lib/engine-components/codegen/components.js.map +1 -1
  162. package/lib/engine-components/export/usdz/USDZExporter.js +4 -4
  163. package/lib/engine-components/export/usdz/USDZExporter.js.map +1 -1
  164. package/lib/engine-components/postprocessing/Effects/Tonemapping.utils.d.ts +1 -1
  165. package/lib/engine-components/timeline/PlayableDirector.d.ts +21 -11
  166. package/lib/engine-components/timeline/PlayableDirector.js +75 -67
  167. package/lib/engine-components/timeline/PlayableDirector.js.map +1 -1
  168. package/lib/engine-components/timeline/SignalAsset.d.ts +3 -1
  169. package/lib/engine-components/timeline/SignalAsset.js +1 -0
  170. package/lib/engine-components/timeline/SignalAsset.js.map +1 -1
  171. package/lib/engine-components/timeline/TimelineBuilder.d.ts +413 -0
  172. package/lib/engine-components/timeline/TimelineBuilder.js +506 -0
  173. package/lib/engine-components/timeline/TimelineBuilder.js.map +1 -0
  174. package/lib/engine-components/timeline/TimelineModels.d.ts +2 -1
  175. package/lib/engine-components/timeline/TimelineModels.js +3 -0
  176. package/lib/engine-components/timeline/TimelineModels.js.map +1 -1
  177. package/lib/engine-components/timeline/TimelineTracks.d.ts +37 -6
  178. package/lib/engine-components/timeline/TimelineTracks.js +92 -26
  179. package/lib/engine-components/timeline/TimelineTracks.js.map +1 -1
  180. package/lib/engine-components/timeline/index.d.ts +2 -1
  181. package/lib/engine-components/timeline/index.js +2 -0
  182. package/lib/engine-components/timeline/index.js.map +1 -1
  183. package/lib/engine-components/ui/Canvas.d.ts +1 -1
  184. package/lib/engine-components/ui/Canvas.js +2 -8
  185. package/lib/engine-components/ui/Canvas.js.map +1 -1
  186. package/lib/engine-components/ui/Text.d.ts +1 -0
  187. package/lib/engine-components/ui/Text.js +10 -7
  188. package/lib/engine-components/ui/Text.js.map +1 -1
  189. package/lib/engine-components/web/CursorFollow.d.ts +0 -1
  190. package/lib/engine-components/web/CursorFollow.js +21 -13
  191. package/lib/engine-components/web/CursorFollow.js.map +1 -1
  192. package/lib/engine-components/webxr/WebXRImageTracking.js +4 -0
  193. package/lib/engine-components/webxr/WebXRImageTracking.js.map +1 -1
  194. package/package.json +2 -83
  195. package/plugins/common/cloud.js +6 -1
  196. package/plugins/common/license.js +31 -10
  197. package/plugins/common/worker.js +9 -4
  198. package/plugins/vite/asap.js +17 -8
  199. package/plugins/vite/dependencies.js +29 -10
  200. package/plugins/vite/dependency-watcher.js +2 -2
  201. package/plugins/vite/editor-connection.js +3 -3
  202. package/plugins/vite/license.js +46 -7
  203. package/plugins/vite/local-files-core.js +3 -3
  204. package/plugins/vite/local-files-utils.d.ts +3 -1
  205. package/plugins/vite/local-files-utils.js +29 -5
  206. package/plugins/vite/reload.js +1 -1
  207. package/plugins/vite/server.js +2 -1
  208. package/src/engine/api.ts +11 -1
  209. package/src/engine/codegen/register_types.ts +10 -18
  210. package/src/engine/engine_audio.ts +184 -0
  211. package/src/engine/engine_camera.fit.ts +15 -4
  212. package/src/engine/engine_components.ts +1 -1
  213. package/src/engine/engine_context.ts +34 -18
  214. package/src/engine/engine_context_eventbus.ts +73 -0
  215. package/src/engine/engine_disposable.ts +214 -0
  216. package/src/engine/engine_gameobject.ts +54 -159
  217. package/src/engine/engine_gltf_builtin_components.ts +7 -76
  218. package/src/engine/engine_init.ts +7 -7
  219. package/src/engine/engine_input.ts +28 -7
  220. package/src/engine/engine_instantiate_resolve.ts +407 -0
  221. package/src/engine/engine_license.ts +197 -55
  222. package/src/engine/engine_mainloop_utils.ts +7 -4
  223. package/src/engine/engine_networking.transport.websocket.ts +45 -0
  224. package/src/engine/engine_networking.ts +161 -137
  225. package/src/engine/engine_networking_blob.ts +4 -4
  226. package/src/engine/engine_networking_instantiate.ts +2 -2
  227. package/src/engine/engine_networking_types.ts +41 -1
  228. package/src/engine/engine_physics_rapier.ts +102 -33
  229. package/src/engine/engine_scenedata.ts +3 -3
  230. package/src/engine/engine_serialization_builtin_serializer.ts +32 -9
  231. package/src/engine/engine_serialization_core.ts +9 -0
  232. package/src/engine/engine_types.ts +46 -27
  233. package/src/engine/engine_util_decorator.ts +7 -2
  234. package/src/engine/engine_utils.ts +16 -5
  235. package/src/engine/engine_utils_qrcode.ts +2 -2
  236. package/src/engine/physics/workers/mesh-bvh/GenerateMeshBVHWorker.js +1 -1
  237. package/src/engine/webcomponents/needle menu/needle-menu-spatial.ts +2 -2
  238. package/src/engine/webcomponents/needle menu/needle-menu.ts +6 -6
  239. package/src/engine/webcomponents/needle-engine.loading.ts +6 -6
  240. package/src/engine/webcomponents/needle-engine.ts +12 -6
  241. package/src/engine/xr/NeedleXRSession.ts +48 -13
  242. package/src/engine/xr/TempXRContext.ts +2 -2
  243. package/src/engine/xr/events.ts +1 -1
  244. package/src/engine-components/Animation.ts +19 -16
  245. package/src/engine-components/AnimationBuilder.ts +472 -0
  246. package/src/engine-components/Animator.ts +24 -12
  247. package/src/engine-components/AnimatorController.builder.ts +387 -0
  248. package/src/engine-components/AnimatorController.ts +20 -291
  249. package/src/engine-components/AudioSource.ts +130 -79
  250. package/src/engine-components/Collider.ts +66 -18
  251. package/src/engine-components/Component.ts +118 -20
  252. package/src/engine-components/ContactShadows.ts +15 -1
  253. package/src/engine-components/DragControls.ts +18 -11
  254. package/src/engine-components/DropListener.ts +3 -0
  255. package/src/engine-components/EventList.ts +45 -83
  256. package/src/engine-components/Joints.ts +20 -4
  257. package/src/engine-components/Light.ts +10 -2
  258. package/src/engine-components/Networking.ts +1 -1
  259. package/src/engine-components/OrbitControls.ts +34 -14
  260. package/src/engine-components/RigidBody.ts +18 -4
  261. package/src/engine-components/SceneSwitcher.ts +3 -0
  262. package/src/engine-components/SeeThrough.ts +2 -2
  263. package/src/engine-components/api.ts +2 -1
  264. package/src/engine-components/codegen/components.ts +7 -13
  265. package/src/engine-components/export/usdz/USDZExporter.ts +4 -4
  266. package/src/engine-components/timeline/PlayableDirector.ts +83 -81
  267. package/src/engine-components/timeline/SignalAsset.ts +4 -1
  268. package/src/engine-components/timeline/TimelineBuilder.ts +824 -0
  269. package/src/engine-components/timeline/TimelineModels.ts +5 -1
  270. package/src/engine-components/timeline/TimelineTracks.ts +96 -27
  271. package/src/engine-components/timeline/index.ts +2 -1
  272. package/src/engine-components/ui/Canvas.ts +2 -8
  273. package/src/engine-components/ui/Text.ts +12 -8
  274. package/src/engine-components/web/CursorFollow.ts +21 -14
  275. package/src/engine-components/webxr/WebXRImageTracking.ts +2 -0
  276. package/dist/needle-engine.bundle-CmxIO5uH.min.js +0 -1732
  277. package/dist/needle-engine.bundle-tJIZukCz.umd.cjs +0 -1732
  278. package/lib/engine-components/AvatarLoader.d.ts +0 -80
  279. package/lib/engine-components/AvatarLoader.js +0 -232
  280. package/lib/engine-components/AvatarLoader.js.map +0 -1
  281. package/lib/engine-components/avatar/AvatarBlink_Simple.d.ts +0 -11
  282. package/lib/engine-components/avatar/AvatarBlink_Simple.js +0 -77
  283. package/lib/engine-components/avatar/AvatarBlink_Simple.js.map +0 -1
  284. package/lib/engine-components/avatar/AvatarEyeLook_Rotation.d.ts +0 -14
  285. package/lib/engine-components/avatar/AvatarEyeLook_Rotation.js +0 -69
  286. package/lib/engine-components/avatar/AvatarEyeLook_Rotation.js.map +0 -1
  287. package/lib/engine-components/avatar/Avatar_Brain_LookAt.d.ts +0 -29
  288. package/lib/engine-components/avatar/Avatar_Brain_LookAt.js +0 -122
  289. package/lib/engine-components/avatar/Avatar_Brain_LookAt.js.map +0 -1
  290. package/lib/engine-components/avatar/Avatar_MouthShapes.d.ts +0 -15
  291. package/lib/engine-components/avatar/Avatar_MouthShapes.js +0 -80
  292. package/lib/engine-components/avatar/Avatar_MouthShapes.js.map +0 -1
  293. package/lib/engine-components/avatar/Avatar_MustacheShake.d.ts +0 -9
  294. package/lib/engine-components/avatar/Avatar_MustacheShake.js +0 -30
  295. package/lib/engine-components/avatar/Avatar_MustacheShake.js.map +0 -1
  296. package/plugins/dts-generator/dts.codegen.js +0 -334
  297. package/plugins/dts-generator/dts.scan.js +0 -99
  298. package/plugins/dts-generator/dts.writer.js +0 -59
  299. package/plugins/dts-generator/glb.discovery.js +0 -279
  300. package/plugins/dts-generator/glb.extractor.js +0 -215
  301. package/plugins/dts-generator/glb.reader.js +0 -167
  302. package/plugins/dts-generator/index.js +0 -36
  303. package/plugins/dts-generator/manifest.types.js +0 -174
  304. package/plugins/gltf-packer.mjs +0 -1
  305. package/src/engine-components/AvatarLoader.ts +0 -264
  306. package/src/engine-components/avatar/AvatarBlink_Simple.ts +0 -70
  307. package/src/engine-components/avatar/AvatarEyeLook_Rotation.ts +0 -64
  308. package/src/engine-components/avatar/Avatar_Brain_LookAt.ts +0 -140
  309. package/src/engine-components/avatar/Avatar_MouthShapes.ts +0 -84
  310. package/src/engine-components/avatar/Avatar_MustacheShake.ts +0 -32
  311. package/src/vite-env.d.ts +0 -16
@@ -3,18 +3,34 @@ import { ContextEvent, ContextRegistry } from "./engine_context_registry.js";
3
3
  import { onInitialized } from "./engine_lifecycle_api.js";
4
4
  import { isLocalNetwork } from "./engine_networking_utils.js";
5
5
  import { Context } from "./engine_setup.js";
6
- import { getParam } from "./engine_utils.js";
7
6
  import { SSR } from "./engine_ssr.js";
8
- const debug = getParam("debuglicense");
9
- const _licenseCheckResultChangedCallbacks = [];
10
- // This is modified by a bundler (e.g. vite)
7
+ import { getParam } from "./engine_utils.js";
8
+ const debug = getParam("__debuglic__");
9
+ const dXgxU = [];
10
+ // These are modified by a bundler (e.g. vite)
11
11
  // Do not edit manually
12
- let NEEDLE_ENGINE_LICENSE_TYPE = "basic";
13
- if (debug)
14
- console.log("License Type: " + NEEDLE_ENGINE_LICENSE_TYPE);
12
+ let _PQYikbj = "basic";
13
+ // eslint-disable-next-line prefer-const -- value is replaced by the bundler at build time
14
+ let _$QHon = "";
15
+ if (debug) {
16
+ console.log("License Type: " + _PQYikbj);
17
+ if (_$QHon) {
18
+ console.log("License JWT: " + _$QHon);
19
+ try {
20
+ const payload = JSON.parse(atob(_$QHon.split(".")[1].replace(/-/g, '+').replace(/_/g, '/')));
21
+ console.log("License JWT payload:", payload);
22
+ }
23
+ catch {
24
+ console.log("License JWT payload: (failed to decode)");
25
+ }
26
+ }
27
+ else {
28
+ console.log("License JWT: (none)");
29
+ }
30
+ }
15
31
  /** @internal */
16
- export function hasProLicense() {
17
- switch (NEEDLE_ENGINE_LICENSE_TYPE) {
32
+ export function UFadk() {
33
+ switch (_PQYikbj) {
18
34
  case "pro":
19
35
  case "enterprise":
20
36
  return true;
@@ -23,33 +39,33 @@ export function hasProLicense() {
23
39
  return false;
24
40
  }
25
41
  /** @internal */
26
- export function hasIndieLicense() {
27
- switch (NEEDLE_ENGINE_LICENSE_TYPE) {
42
+ export function __tFkl() {
43
+ switch (_PQYikbj) {
28
44
  case "indie":
29
45
  return true;
30
46
  }
31
47
  return false;
32
48
  }
33
49
  /** @internal */
34
- export function hasEduLicense() {
35
- switch (NEEDLE_ENGINE_LICENSE_TYPE) {
50
+ export function rxRjHuj() {
51
+ switch (_PQYikbj) {
36
52
  case "edu":
37
53
  return true;
38
54
  }
39
55
  return false;
40
56
  }
41
57
  /** @internal */
42
- export function hasCommercialLicense() {
43
- return hasProLicense() || hasIndieLicense() || hasEduLicense();
58
+ export function _BGpnKD() {
59
+ return UFadk() || __tFkl() || rxRjHuj();
44
60
  }
45
61
  /** @internal */
46
- export function onLicenseCheckResultChanged(cb) {
47
- if (hasProLicense() || hasIndieLicense() || hasEduLicense())
62
+ export function __pLOnb(cb) {
63
+ if (UFadk() || __tFkl() || rxRjHuj())
48
64
  return cb(true);
49
- _licenseCheckResultChangedCallbacks.push(cb);
65
+ dXgxU.push(cb);
50
66
  }
51
- function invokeLicenseCheckResultChanged(result) {
52
- for (const cb of _licenseCheckResultChangedCallbacks) {
67
+ function _csklVr(result) {
68
+ for (const cb of dXgxU) {
53
69
  try {
54
70
  cb(result);
55
71
  }
@@ -58,6 +74,110 @@ function invokeLicenseCheckResultChanged(result) {
58
74
  }
59
75
  }
60
76
  }
77
+ // #region JWT License Verification
78
+ // ECDSA P-256 public key for verifying license JWTs (verification-only, safe to ship)
79
+ /* eslint-disable no-secrets/no-secrets -- public key, not a secret */
80
+ const _$OYBbo = {
81
+ kty: "EC",
82
+ crv: "P-256",
83
+ x: "A34nyKMjhQYVgzeE4tyLUYdx34TAKogDa7v7PRaO9Lg",
84
+ y: "JZI9IQavGCpGjEG_-pa0J-MHQYWJYINUM-MnvSu0TmE",
85
+ };
86
+ /* eslint-enable no-secrets/no-secrets */
87
+ /** Base64url decode (RFC 7515) */
88
+ function base64urlDecode(str) {
89
+ const base64 = str.replace(/-/g, '+').replace(/_/g, '/');
90
+ const padded = base64 + '='.repeat((4 - base64.length % 4) % 4);
91
+ const binary = atob(padded);
92
+ const bytes = new Uint8Array(binary.length);
93
+ for (let i = 0; i < binary.length; i++) {
94
+ bytes[i] = binary.charCodeAt(i);
95
+ }
96
+ return bytes;
97
+ }
98
+ /**
99
+ * Verify a JWT license token and return the `type` claim if valid.
100
+ * Returns null if the JWT is missing, malformed, or has an invalid signature.
101
+ */
102
+ async function GTeeZaHi(jwt) {
103
+ if (!jwt)
104
+ return null;
105
+ try {
106
+ const parts = jwt.split(".");
107
+ if (parts.length !== 3)
108
+ return null;
109
+ const [headerB64, payloadB64, signatureB64] = parts;
110
+ const key = await crypto.subtle.importKey("jwk", _$OYBbo, { name: "ECDSA", namedCurve: "P-256" }, false, ["verify"]);
111
+ const signingInput = new TextEncoder().encode(`${headerB64}.${payloadB64}`);
112
+ const signature = base64urlDecode(signatureB64);
113
+ const valid = await crypto.subtle.verify({ name: "ECDSA", hash: "SHA-256" }, key, signature.buffer, signingInput);
114
+ if (!valid) {
115
+ if (debug)
116
+ console.warn("JWT: signature verification failed");
117
+ return null;
118
+ }
119
+ const payloadStr = new TextDecoder().decode(base64urlDecode(payloadB64));
120
+ const payload = JSON.parse(payloadStr);
121
+ if (typeof payload.type !== "string" || payload.type.length === 0) {
122
+ if (debug)
123
+ console.warn("JWT: missing or invalid 'type' claim");
124
+ return null;
125
+ }
126
+ // Optional: check expiration if present (future-proof — server doesn't set this yet)
127
+ if (typeof payload.exp === "number") {
128
+ const nowSeconds = Math.floor(Date.now() / 1000);
129
+ if (nowSeconds > payload.exp) {
130
+ if (debug)
131
+ console.warn("JWT: token has expired (exp=" + payload.exp + ", now=" + nowSeconds + ")");
132
+ return null;
133
+ }
134
+ }
135
+ // Optional: check audience/domain if present (future-proof — server doesn't set this yet)
136
+ if (payload.aud) {
137
+ const currentHost = typeof window !== "undefined" ? window.location.hostname : undefined;
138
+ if (currentHost) {
139
+ const allowed = Array.isArray(payload.aud) ? payload.aud : [payload.aud];
140
+ if (!allowed.some((a) => currentHost === a || currentHost.endsWith("." + a))) {
141
+ if (debug)
142
+ console.warn("JWT: domain '" + currentHost + "' not in allowed audience: " + allowed.join(", "));
143
+ return null;
144
+ }
145
+ }
146
+ }
147
+ if (debug)
148
+ console.log("JWT: verified license type: " + payload.type);
149
+ return payload.type;
150
+ }
151
+ catch (err) {
152
+ if (debug)
153
+ console.error("JWT: verification error", err);
154
+ return null;
155
+ }
156
+ }
157
+ /** Verify the injected JWT and update the license type if valid.
158
+ * The engine ONLY trusts the JWT — the plain _PQYikbj string is ignored. */
159
+ let _jwtVerificationPromise = undefined;
160
+ async function $sATIKYrT() {
161
+ if (!_$QHon) {
162
+ // No JWT present: license stays "basic" regardless of what _PQYikbj says
163
+ _PQYikbj = "basic";
164
+ return;
165
+ }
166
+ const verifiedType = await GTeeZaHi(_$QHon);
167
+ if (verifiedType) {
168
+ _PQYikbj = verifiedType;
169
+ if (debug)
170
+ console.log("License type set from verified JWT: " + verifiedType);
171
+ _csklVr(_BGpnKD());
172
+ }
173
+ else {
174
+ // JWT present but invalid: reset to basic
175
+ _PQYikbj = "basic";
176
+ if (debug)
177
+ console.warn("JWT verification failed — license reset to basic");
178
+ }
179
+ }
180
+ // #endregion JWT License Verification
61
181
  // #region Telemetry
62
182
  export var Telemetry;
63
183
  (function (Telemetry) {
@@ -123,7 +243,7 @@ export var Telemetry;
123
243
  return false;
124
244
  const attribute = domElement?.getAttribute("no-telemetry");
125
245
  if (attribute === "" || attribute === "true" || attribute === "1") {
126
- if (NEEDLE_ENGINE_LICENSE_TYPE === "pro" || NEEDLE_ENGINE_LICENSE_TYPE === "enterprise") {
246
+ if (_PQYikbj === "pro" || _PQYikbj === "enterprise") {
127
247
  if (debug)
128
248
  console.debug("Telemetry is disabled via no-telemetry attribute");
129
249
  return false;
@@ -220,22 +340,28 @@ export var Telemetry;
220
340
  return Promise.resolve();
221
341
  }
222
342
  })(Telemetry || (Telemetry = {}));
223
- export function initLicense() {
343
+ export function rFPJwMWf() {
344
+ // Start JWT verification — must be here (not top-level) to avoid tree-shaking
345
+ _jwtVerificationPromise = $sATIKYrT();
224
346
  Telemetry.init();
225
347
  ContextRegistry.registerCallback(ContextEvent.ContextRegistered, evt => {
226
- showLicenseInfo(evt.context);
227
- handleForbidden(evt.context);
228
- setTimeout(() => sendUsageMessageToAnalyticsBackend(evt.context), 2000);
348
+ __loEAQjNJ(evt.context);
349
+ __msk(evt.context);
350
+ setTimeout(() => $tlH(evt.context), 2000);
229
351
  });
230
352
  }
231
- export let runtimeLicenseCheckPromise = undefined;
353
+ export let _$YsQVksF = undefined;
232
354
  let applicationIsForbidden = false;
233
355
  let applicationForbiddenText = "";
234
- async function checkLicense() {
356
+ async function _fYB() {
235
357
  // Only perform the runtime license check once
236
- if (runtimeLicenseCheckPromise)
237
- return runtimeLicenseCheckPromise;
238
- if (NEEDLE_ENGINE_LICENSE_TYPE === "basic") {
358
+ if (_$YsQVksF)
359
+ return _$YsQVksF;
360
+ // Wait for JWT verification to complete first (if running)
361
+ if (_jwtVerificationPromise) {
362
+ await _jwtVerificationPromise;
363
+ }
364
+ if (_PQYikbj === "basic") {
239
365
  try {
240
366
  const licenseUrl = "https://needle.tools/api/v1/needle-engine/check?location=" + encodeURIComponent(window.location.href) + "&version=" + VERSION + "&generator=" + encodeURIComponent(GENERATOR);
241
367
  const res = await fetch(licenseUrl, {
@@ -249,31 +375,31 @@ async function checkLicense() {
249
375
  applicationIsForbidden = false;
250
376
  if (debug)
251
377
  console.log("License check succeeded");
252
- NEEDLE_ENGINE_LICENSE_TYPE = "pro";
253
- invokeLicenseCheckResultChanged(true);
378
+ _PQYikbj = "pro";
379
+ _csklVr(true);
254
380
  }
255
381
  else if (res?.status === 403) {
256
- invokeLicenseCheckResultChanged(false);
382
+ _csklVr(false);
257
383
  applicationIsForbidden = true;
258
384
  applicationForbiddenText = await res.text();
259
385
  }
260
386
  else {
261
- invokeLicenseCheckResultChanged(false);
387
+ _csklVr(false);
262
388
  if (debug)
263
389
  console.log("License check failed with status " + res?.status);
264
390
  }
265
391
  }
266
392
  catch (err) {
267
- invokeLicenseCheckResultChanged(false);
393
+ _csklVr(false);
268
394
  if (debug)
269
395
  console.error("License check failed", err);
270
396
  }
271
397
  }
272
398
  else if (debug)
273
- console.log("Runtime license check is skipped because license is already applied as \"" + NEEDLE_ENGINE_LICENSE_TYPE + "\"");
399
+ console.log("Runtime license check is skipped because license is already applied as \"" + _PQYikbj + "\"");
274
400
  }
275
- runtimeLicenseCheckPromise = checkLicense();
276
- async function handleForbidden(ctx) {
401
+ _$YsQVksF = _fYB();
402
+ async function __msk(ctx) {
277
403
  function createForbiddenElement() {
278
404
  const div = document.createElement("div");
279
405
  div.className = "needle-forbidden";
@@ -341,43 +467,43 @@ async function handleForbidden(ctx) {
341
467
  }
342
468
  }, 500);
343
469
  }
344
- async function showLicenseInfo(ctx) {
470
+ async function __loEAQjNJ(ctx) {
345
471
  try {
346
- if (!hasProLicense() && !hasIndieLicense()) {
347
- return onNonCommercialVersionDetected(ctx);
472
+ if (!UFadk() && !__tFkl()) {
473
+ return __pJSUSLs(ctx);
348
474
  }
349
475
  }
350
476
  catch (err) {
351
477
  if (debug)
352
478
  console.log("License check failed", err);
353
- return onNonCommercialVersionDetected(ctx);
479
+ return __pJSUSLs(ctx);
354
480
  }
355
481
  if (debug)
356
- onNonCommercialVersionDetected(ctx);
482
+ __pJSUSLs(ctx);
357
483
  }
358
- async function onNonCommercialVersionDetected(ctx) {
484
+ async function __pJSUSLs(ctx) {
359
485
  // if the engine loads faster than the license check, we need to capture the ready event here
360
486
  let isReady = false;
361
487
  ctx.domElement.addEventListener("ready", () => isReady = true);
362
- await runtimeLicenseCheckPromise?.catch(() => { });
363
- if (hasProLicense() || hasIndieLicense())
488
+ await _$YsQVksF?.catch(() => { });
489
+ if (UFadk() || __tFkl())
364
490
  return;
365
- if (hasCommercialLicense() === false)
366
- logNonCommercialUse();
491
+ if (_BGpnKD() === false)
492
+ _ArTbiTUU();
367
493
  // check if the engine is already ready (meaning has finished loading)
368
494
  if (isReady) {
369
- insertNonCommercialUseHint(ctx);
495
+ _$gRXdD(ctx);
370
496
  }
371
497
  else {
372
498
  ctx.domElement.addEventListener("ready", () => {
373
- insertNonCommercialUseHint(ctx);
499
+ _$gRXdD(ctx);
374
500
  });
375
501
  }
376
502
  }
377
503
  // const licenseElementIdentifier = "needle-license-element";
378
504
  // const licenseDuration = 10000;
379
505
  // const licenseDelay = 1200;
380
- function insertNonCommercialUseHint(ctx) {
506
+ function _$gRXdD(ctx) {
381
507
  const style = `
382
508
  position: relative;
383
509
  display: block;
@@ -389,7 +515,7 @@ function insertNonCommercialUseHint(ctx) {
389
515
  padding: 10px;
390
516
  padding-left: 30px;
391
517
  `;
392
- if (NEEDLE_ENGINE_LICENSE_TYPE === "edu") {
518
+ if (_PQYikbj === "edu") {
393
519
  if (navigator.webdriver) {
394
520
  console.log("This project is supported by Needle for Education – https://needle.tools");
395
521
  }
@@ -443,7 +569,7 @@ function insertNonCommercialUseHint(ctx) {
443
569
  expectedBannerStyle = banner.style.cssText;
444
570
  }
445
571
  }, 1000);
446
- if (hasEduLicense()) {
572
+ if (rxRjHuj()) {
447
573
  const removeDelay = 20_000;
448
574
  setTimeout(() => {
449
575
  clearInterval(interval);
@@ -452,14 +578,14 @@ function insertNonCommercialUseHint(ctx) {
452
578
  const intervalInMinutes = 5;
453
579
  setTimeout(() => {
454
580
  if (ctx.domElement.parentNode)
455
- insertNonCommercialUseHint(ctx);
581
+ _$gRXdD(ctx);
456
582
  }, 1000 * 60 * intervalInMinutes);
457
583
  }, removeDelay);
458
584
  }
459
585
  }
460
586
  const base64Logo = "data:image/webp;base64,UklGRrABAABXRUJQVlA4WAoAAAAQAAAAHwAAHwAAQUxQSKEAAAARN6CmbSM4WR7vdARON11EBDq3fLiNbVtVzpMCPlKAEzsx0Y/x+Ovuv4dn0EFE/ydAvz6YggXzgh5sVgXM/zOC/4sii7qgGvB5N7hmuQYwkvazWAu1JPW41FXSHq6pnaQWvqYH18Fc0j1hO/BFTtIeSBlJi5w6qIIO7IOrwhFsB2Yxukif0FTRLpXswHR8MxbslKe9VZsn/Ub5C7YFOpqSTABWUDgg6AAAAFAGAJ0BKiAAIAA+7VyoTqmkpCI3+qgBMB2JbACdMt69DwMIQBLhkTO6XwY00UEDK6cNIDnuNibPf0EgAP7Y1myuiQHLDsF/0h5unrGh6WAbv7aegg2ZMd3uRKfT/3SJztcaujYfTvMXspfCTmYcoO6a+vhC3ss4M8uM58t4siiu59I4aOl59e9Sr6xoxYlHf2v+NnBNpJYeJf8jABQAId/PXuBkLEFkiCucgSGEcfhvajql/j3reCGl0M5/9gQWy7ayNPs+wlvIxFnNfSlfuND4CZOCyxOHhRqOmHN4ULHo3tCSrUNvgAA=";
461
587
  let lastLogTime = 0;
462
- async function logNonCommercialUse(_logo) {
588
+ async function _ArTbiTUU(_logo) {
463
589
  const now = Date.now();
464
590
  if (now - lastLogTime < 2000)
465
591
  return;
@@ -491,7 +617,7 @@ async function logNonCommercialUse(_logo) {
491
617
  console.log("%c " + licenseText, style);
492
618
  }
493
619
  }
494
- async function sendUsageMessageToAnalyticsBackend(context) {
620
+ async function $tlH(context) {
495
621
  // We can't send beacons from cross-origin isolated pages
496
622
  if (window.crossOriginIsolated)
497
623
  return;
@@ -505,7 +631,7 @@ async function sendUsageMessageToAnalyticsBackend(context) {
505
631
  if (analyticsUrl) {
506
632
  // current url without query parameters
507
633
  const currentUrl = window.location.href.split("?")[0];
508
- const license = NEEDLE_ENGINE_LICENSE_TYPE;
634
+ const license = _PQYikbj;
509
635
  const beaconData = {
510
636
  license,
511
637
  url: currentUrl,
@@ -1 +1 @@
1
- {"version":3,"file":"engine_license.js","sourceRoot":"","sources":["../../src/engine/engine_license.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine_license.js","sourceRoot":"","sources":["../../src/engine/engine_license.ts"],"names":[],"mappings":"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"}
@@ -331,8 +331,11 @@ function updateIsActiveInHierarchyRecursiveRuntime(go, activeInHierarchy, allowE
331
331
  if (allowEventCall) {
332
332
  const components = go.userData?.components;
333
333
  if (components) {
334
- for (let ci = components.length - 1, cl = -1; ci > cl; ci--) {
335
- const comp = components[ci];
334
+ // We need to iterate on components in the original order right now to work-around UI related initialization bugs where RectTransform must be initialized before e.g. Graphic components. https://linear.app/needle/issue/NE-6986
335
+ // In the future we can reverse iterate this once the UI system has been replaced (that being said it's probably expected that component enable in the order in which they're added to an object)
336
+ const componentsCopy = [...components];
337
+ for (let ci = 0; ci < componentsCopy.length; ci++) {
338
+ const comp = componentsCopy[ci];
336
339
  if (activeInHierarchy) {
337
340
  if (comp?.enabled) {
338
341
  try {
@@ -348,8 +351,8 @@ function updateIsActiveInHierarchyRecursiveRuntime(go, activeInHierarchy, allowE
348
351
  }
349
352
  else if (comp) {
350
353
  if (comp["__didAwake"] && comp.enabled) {
351
- comp["__didEnable"] = false;
352
- comp.onDisable();
354
+ // autoCleanup uses __internalDisable; isRemovingFromScene=true preserves __isEnabled
355
+ comp.__internalDisable(true);
353
356
  }
354
357
  }
355
358
  }
@@ -1 +1 @@
1
- {"version":3,"file":"engine_mainloop_utils.js","sourceRoot":"","sources":["../../src/engine/engine_mainloop_utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine_mainloop_utils.js","sourceRoot":"","sources":["../../src/engine/engine_mainloop_utils.ts"],"names":[],"mappings":"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"}