@planara/core 3.0.0 → 3.2.0

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 (302) hide show
  1. package/dist/core/index.d.ts +2 -0
  2. package/dist/core/index.d.ts.map +1 -0
  3. package/dist/core/renderer.d.ts +15 -18
  4. package/dist/core/renderer.d.ts.map +1 -1
  5. package/dist/handlers/benchmark/base-benchmark-handler.d.ts +81 -0
  6. package/dist/handlers/benchmark/base-benchmark-handler.d.ts.map +1 -0
  7. package/dist/handlers/benchmark/heavy-benchmark-handler.d.ts +33 -0
  8. package/dist/handlers/benchmark/heavy-benchmark-handler.d.ts.map +1 -0
  9. package/dist/handlers/benchmark/index.d.ts +6 -0
  10. package/dist/handlers/benchmark/index.d.ts.map +1 -0
  11. package/dist/handlers/benchmark/light-benchmark-handler.d.ts +33 -0
  12. package/dist/handlers/benchmark/light-benchmark-handler.d.ts.map +1 -0
  13. package/dist/handlers/benchmark/medium-benchmark-handler.d.ts +33 -0
  14. package/dist/handlers/benchmark/medium-benchmark-handler.d.ts.map +1 -0
  15. package/dist/handlers/benchmark/mixed-benchmark-handler.d.ts +37 -0
  16. package/dist/handlers/benchmark/mixed-benchmark-handler.d.ts.map +1 -0
  17. package/dist/handlers/display/index.d.ts +2 -0
  18. package/dist/handlers/display/index.d.ts.map +1 -0
  19. package/dist/handlers/display/wireframe-handler.d.ts +2 -2
  20. package/dist/handlers/display/wireframe-handler.d.ts.map +1 -1
  21. package/dist/handlers/scene/add-figure-scene-handler.d.ts +2 -2
  22. package/dist/handlers/scene/add-figure-scene-handler.d.ts.map +1 -1
  23. package/dist/handlers/scene/delete-figure-scene-handler.d.ts +3 -3
  24. package/dist/handlers/scene/delete-figure-scene-handler.d.ts.map +1 -1
  25. package/dist/handlers/scene/export-scene-handler.d.ts +23 -0
  26. package/dist/handlers/scene/export-scene-handler.d.ts.map +1 -0
  27. package/dist/handlers/scene/index.d.ts +6 -0
  28. package/dist/handlers/scene/index.d.ts.map +1 -0
  29. package/dist/handlers/scene/load-figure-scene-handler.d.ts +23 -0
  30. package/dist/handlers/scene/load-figure-scene-handler.d.ts.map +1 -0
  31. package/dist/handlers/scene/load-scene-handler.d.ts +23 -0
  32. package/dist/handlers/scene/load-scene-handler.d.ts.map +1 -0
  33. package/dist/handlers/select/edge-select-handler.d.ts +5 -8
  34. package/dist/handlers/select/edge-select-handler.d.ts.map +1 -1
  35. package/dist/handlers/select/face-select-handler.d.ts +5 -8
  36. package/dist/handlers/select/face-select-handler.d.ts.map +1 -1
  37. package/dist/handlers/select/index.d.ts +5 -0
  38. package/dist/handlers/select/index.d.ts.map +1 -0
  39. package/dist/handlers/select/mesh-select-handler.d.ts +5 -6
  40. package/dist/handlers/select/mesh-select-handler.d.ts.map +1 -1
  41. package/dist/handlers/select/vertex-select-handler.d.ts +5 -8
  42. package/dist/handlers/select/vertex-select-handler.d.ts.map +1 -1
  43. package/dist/handlers/tool/base-tool-handler.d.ts +3 -3
  44. package/dist/handlers/tool/base-tool-handler.d.ts.map +1 -1
  45. package/dist/handlers/tool/index.d.ts +4 -0
  46. package/dist/handlers/tool/index.d.ts.map +1 -0
  47. package/dist/handlers/tool/rotate-tool-handler.d.ts +2 -2
  48. package/dist/handlers/tool/rotate-tool-handler.d.ts.map +1 -1
  49. package/dist/handlers/tool/scale-tool-handler.d.ts +2 -2
  50. package/dist/handlers/tool/scale-tool-handler.d.ts.map +1 -1
  51. package/dist/handlers/tool/translate-tool-handler.d.ts +2 -2
  52. package/dist/handlers/tool/translate-tool-handler.d.ts.map +1 -1
  53. package/dist/hub/benchmark-hub.d.ts +65 -0
  54. package/dist/hub/benchmark-hub.d.ts.map +1 -0
  55. package/dist/hub/editor-hub.d.ts +12 -9
  56. package/dist/hub/editor-hub.d.ts.map +1 -1
  57. package/dist/hub/index.d.ts +38 -0
  58. package/dist/hub/index.d.ts.map +1 -0
  59. package/dist/hub/viewer-hub.d.ts +30 -0
  60. package/dist/hub/viewer-hub.d.ts.map +1 -0
  61. package/dist/index.cjs.js +20 -2
  62. package/dist/index.d.ts +15 -22
  63. package/dist/index.d.ts.map +1 -1
  64. package/dist/index.es.js +2838 -1041
  65. package/dist/index.full.d.ts +275 -97
  66. package/dist/index.public.d.ts +275 -97
  67. package/dist/index.umd.js +20 -2
  68. package/dist/interfaces/api/index.d.ts +12 -0
  69. package/dist/interfaces/api/index.d.ts.map +1 -0
  70. package/dist/interfaces/api/interaction-api.d.ts +26 -0
  71. package/dist/interfaces/api/interaction-api.d.ts.map +1 -0
  72. package/dist/interfaces/api/metrics-api.d.ts +49 -0
  73. package/dist/interfaces/api/metrics-api.d.ts.map +1 -0
  74. package/dist/interfaces/api/renderer/index.d.ts +7 -0
  75. package/dist/interfaces/api/renderer/index.d.ts.map +1 -0
  76. package/dist/interfaces/api/renderer/renderer-info-access.d.ts +20 -0
  77. package/dist/interfaces/api/renderer/renderer-info-access.d.ts.map +1 -0
  78. package/dist/interfaces/api/renderer-info-api.d.ts +19 -0
  79. package/dist/interfaces/api/renderer-info-api.d.ts.map +1 -0
  80. package/dist/interfaces/api/scene-api.d.ts +2 -1
  81. package/dist/interfaces/api/scene-api.d.ts.map +1 -1
  82. package/dist/interfaces/api/transform-api.d.ts +1 -1
  83. package/dist/interfaces/api/transform-api.d.ts.map +1 -1
  84. package/dist/interfaces/command/index.d.ts +1 -1
  85. package/dist/interfaces/command/index.d.ts.map +1 -1
  86. package/dist/interfaces/handler/benchmark-handler.d.ts +22 -0
  87. package/dist/interfaces/handler/benchmark-handler.d.ts.map +1 -0
  88. package/dist/interfaces/handler/index.d.ts +7 -0
  89. package/dist/interfaces/handler/index.d.ts.map +1 -0
  90. package/dist/interfaces/manager/benchmark-manager.d.ts +10 -0
  91. package/dist/interfaces/manager/benchmark-manager.d.ts.map +1 -0
  92. package/dist/interfaces/manager/display-manager.d.ts.map +1 -1
  93. package/dist/interfaces/manager/index.d.ts +7 -0
  94. package/dist/interfaces/manager/index.d.ts.map +1 -0
  95. package/dist/interfaces/manager/manager.d.ts +1 -1
  96. package/dist/interfaces/manager/manager.d.ts.map +1 -1
  97. package/dist/interfaces/manager/select-manager.d.ts.map +1 -1
  98. package/dist/interfaces/manager/tool-manager.d.ts.map +1 -1
  99. package/dist/interfaces/mediator/index.d.ts +1 -1
  100. package/dist/interfaces/mediator/index.d.ts.map +1 -1
  101. package/dist/interfaces/middleware/index.d.ts +1 -1
  102. package/dist/interfaces/middleware/index.d.ts.map +1 -1
  103. package/dist/interfaces/module/index.d.ts +6 -0
  104. package/dist/interfaces/module/index.d.ts.map +1 -0
  105. package/dist/interfaces/module/interactive-module.d.ts +32 -0
  106. package/dist/interfaces/module/interactive-module.d.ts.map +1 -0
  107. package/dist/interfaces/module/observer-module.d.ts +27 -0
  108. package/dist/interfaces/module/observer-module.d.ts.map +1 -0
  109. package/dist/interfaces/module/renderable-module.d.ts +1 -1
  110. package/dist/interfaces/module/renderable-module.d.ts.map +1 -1
  111. package/dist/interfaces/store/export-store.d.ts +8 -0
  112. package/dist/interfaces/store/export-store.d.ts.map +1 -0
  113. package/dist/interfaces/store/index.d.ts +7 -0
  114. package/dist/interfaces/store/index.d.ts.map +1 -0
  115. package/dist/interfaces/store/metrics-store.d.ts +60 -0
  116. package/dist/interfaces/store/metrics-store.d.ts.map +1 -0
  117. package/dist/interfaces/store/select-store.d.ts +1 -1
  118. package/dist/interfaces/store/select-store.d.ts.map +1 -1
  119. package/dist/interfaces/store/tool-store.d.ts +1 -1
  120. package/dist/interfaces/store/tool-store.d.ts.map +1 -1
  121. package/dist/interfaces/validator/index.d.ts +21 -0
  122. package/dist/interfaces/validator/index.d.ts.map +1 -0
  123. package/dist/interfaces/{controller/controller.d.ts → worker/index.d.ts} +5 -5
  124. package/dist/interfaces/worker/index.d.ts.map +1 -0
  125. package/dist/managers/benchmark/benchmark-manager.d.ts +27 -0
  126. package/dist/managers/benchmark/benchmark-manager.d.ts.map +1 -0
  127. package/dist/managers/benchmark/index.d.ts +2 -0
  128. package/dist/managers/benchmark/index.d.ts.map +1 -0
  129. package/dist/managers/display/display-manager.d.ts +4 -4
  130. package/dist/managers/display/display-manager.d.ts.map +1 -1
  131. package/dist/managers/display/index.d.ts +2 -0
  132. package/dist/managers/display/index.d.ts.map +1 -0
  133. package/dist/managers/index.d.ts +6 -0
  134. package/dist/managers/index.d.ts.map +1 -0
  135. package/dist/managers/scene/index.d.ts +2 -0
  136. package/dist/managers/scene/index.d.ts.map +1 -0
  137. package/dist/managers/scene/scene-manager.d.ts +5 -5
  138. package/dist/managers/scene/scene-manager.d.ts.map +1 -1
  139. package/dist/managers/select/index.d.ts +2 -0
  140. package/dist/managers/select/index.d.ts.map +1 -0
  141. package/dist/managers/select/select-manager.d.ts +5 -5
  142. package/dist/managers/select/select-manager.d.ts.map +1 -1
  143. package/dist/managers/tool/index.d.ts +2 -0
  144. package/dist/managers/tool/index.d.ts.map +1 -0
  145. package/dist/managers/tool/tool-manager.d.ts +4 -4
  146. package/dist/managers/tool/tool-manager.d.ts.map +1 -1
  147. package/dist/mediator/index.d.ts +2 -2
  148. package/dist/mediator/index.d.ts.map +1 -1
  149. package/dist/middlewares/exception-middleware.d.ts +7 -2
  150. package/dist/middlewares/exception-middleware.d.ts.map +1 -1
  151. package/dist/middlewares/index.d.ts +2 -0
  152. package/dist/middlewares/index.d.ts.map +1 -0
  153. package/dist/modules/controls-module.d.ts +40 -13
  154. package/dist/modules/controls-module.d.ts.map +1 -1
  155. package/dist/modules/gizmo-module.d.ts +18 -6
  156. package/dist/modules/gizmo-module.d.ts.map +1 -1
  157. package/dist/modules/index.d.ts +7 -0
  158. package/dist/modules/index.d.ts.map +1 -0
  159. package/dist/modules/metrics-module.d.ts +156 -0
  160. package/dist/modules/metrics-module.d.ts.map +1 -0
  161. package/dist/modules/raycast-module.d.ts +23 -10
  162. package/dist/modules/raycast-module.d.ts.map +1 -1
  163. package/dist/modules/scene-module.d.ts +2 -3
  164. package/dist/modules/scene-module.d.ts.map +1 -1
  165. package/dist/modules/scene-preview-module.d.ts +26 -0
  166. package/dist/modules/scene-preview-module.d.ts.map +1 -0
  167. package/dist/{api → shared/api}/modules/controls-state-api.d.ts +1 -1
  168. package/dist/shared/api/modules/controls-state-api.d.ts.map +1 -0
  169. package/dist/shared/api/modules/index.d.ts +6 -0
  170. package/dist/shared/api/modules/index.d.ts.map +1 -0
  171. package/dist/shared/api/modules/interaction-api.d.ts +21 -0
  172. package/dist/shared/api/modules/interaction-api.d.ts.map +1 -0
  173. package/dist/{api → shared/api}/modules/mesh-api.d.ts +1 -1
  174. package/dist/shared/api/modules/mesh-api.d.ts.map +1 -0
  175. package/dist/{api → shared/api}/modules/raycast-api.d.ts +1 -1
  176. package/dist/shared/api/modules/raycast-api.d.ts.map +1 -0
  177. package/dist/{api → shared/api}/modules/transform-api.d.ts +2 -2
  178. package/dist/shared/api/modules/transform-api.d.ts.map +1 -0
  179. package/dist/{api → shared/api}/renderer/camera-api.d.ts +2 -2
  180. package/dist/shared/api/renderer/camera-api.d.ts.map +1 -0
  181. package/dist/{api → shared/api}/renderer/dom-api.d.ts +2 -2
  182. package/dist/shared/api/renderer/dom-api.d.ts.map +1 -0
  183. package/dist/shared/api/renderer/index.d.ts +5 -0
  184. package/dist/shared/api/renderer/index.d.ts.map +1 -0
  185. package/dist/shared/api/renderer/renderer-info-api.d.ts +25 -0
  186. package/dist/shared/api/renderer/renderer-info-api.d.ts.map +1 -0
  187. package/dist/{api → shared/api}/renderer/scene-api.d.ts +21 -3
  188. package/dist/shared/api/renderer/scene-api.d.ts.map +1 -0
  189. package/dist/shared/constants/benchmark.d.ts +5 -0
  190. package/dist/shared/constants/benchmark.d.ts.map +1 -0
  191. package/dist/shared/constants/colors.d.ts.map +1 -0
  192. package/dist/shared/constants/figure-geometries.d.ts.map +1 -0
  193. package/dist/shared/constants/index.d.ts +7 -0
  194. package/dist/shared/constants/index.d.ts.map +1 -0
  195. package/dist/shared/constants/layers.d.ts.map +1 -0
  196. package/dist/shared/constants/messages.d.ts.map +1 -0
  197. package/dist/shared/constants/threshold.d.ts.map +1 -0
  198. package/dist/shared/decorators/index.d.ts +3 -0
  199. package/dist/shared/decorators/index.d.ts.map +1 -0
  200. package/dist/{decorators → shared/decorators}/use-policy.d.ts +1 -1
  201. package/dist/shared/decorators/use-policy.d.ts.map +1 -0
  202. package/dist/shared/decorators/use-validator.d.ts +5 -0
  203. package/dist/shared/decorators/use-validator.d.ts.map +1 -0
  204. package/dist/shared/errors/index.d.ts +3 -0
  205. package/dist/shared/errors/index.d.ts.map +1 -0
  206. package/dist/{errors → shared/errors}/policy-error.d.ts +1 -1
  207. package/dist/shared/errors/policy-error.d.ts.map +1 -0
  208. package/dist/shared/errors/validation-error.d.ts +9 -0
  209. package/dist/shared/errors/validation-error.d.ts.map +1 -0
  210. package/dist/{events → shared/events}/editor-events.d.ts +1 -1
  211. package/dist/shared/events/editor-events.d.ts.map +1 -0
  212. package/dist/{events → shared/events}/event-bus.d.ts +1 -1
  213. package/dist/shared/events/event-bus.d.ts.map +1 -0
  214. package/dist/shared/events/event-topics.d.ts.map +1 -0
  215. package/dist/shared/events/index.d.ts +4 -0
  216. package/dist/shared/events/index.d.ts.map +1 -0
  217. package/dist/shared/ioc/container.d.ts +10 -0
  218. package/dist/shared/ioc/container.d.ts.map +1 -0
  219. package/dist/shared/loaders/obj-loader.d.ts.map +1 -0
  220. package/dist/shared/policy/index.d.ts +2 -0
  221. package/dist/shared/policy/index.d.ts.map +1 -0
  222. package/dist/{policy → shared/policy}/tool-policy.d.ts +2 -2
  223. package/dist/shared/policy/tool-policy.d.ts.map +1 -0
  224. package/dist/shared/utils/default-renderer-config.d.ts +9 -0
  225. package/dist/shared/utils/default-renderer-config.d.ts.map +1 -0
  226. package/dist/shared/utils/helpers.d.ts +26 -0
  227. package/dist/shared/utils/helpers.d.ts.map +1 -0
  228. package/dist/shared/utils/index.d.ts +3 -0
  229. package/dist/shared/utils/index.d.ts.map +1 -0
  230. package/dist/shared/validators/index.d.ts +2 -0
  231. package/dist/shared/validators/index.d.ts.map +1 -0
  232. package/dist/shared/validators/obj-validator.d.ts +12 -0
  233. package/dist/shared/validators/obj-validator.d.ts.map +1 -0
  234. package/dist/store/editor-store.d.ts +33 -0
  235. package/dist/store/editor-store.d.ts.map +1 -0
  236. package/dist/store/export-store.d.ts +12 -0
  237. package/dist/store/export-store.d.ts.map +1 -0
  238. package/dist/store/index.d.ts +3 -35
  239. package/dist/store/index.d.ts.map +1 -1
  240. package/dist/store/metrics-store.d.ts +32 -0
  241. package/dist/store/metrics-store.d.ts.map +1 -0
  242. package/dist/types/camera/index.d.ts +2 -0
  243. package/dist/types/camera/index.d.ts.map +1 -0
  244. package/dist/types/event/index.d.ts +2 -0
  245. package/dist/types/event/index.d.ts.map +1 -0
  246. package/dist/types/feature/feature-type.d.ts +3 -1
  247. package/dist/types/feature/feature-type.d.ts.map +1 -1
  248. package/dist/types/feature/index.d.ts +2 -0
  249. package/dist/types/feature/index.d.ts.map +1 -0
  250. package/dist/types/listener/index.d.ts +4 -0
  251. package/dist/types/listener/index.d.ts.map +1 -0
  252. package/dist/types/listener/metrics-listener.d.ts +4 -0
  253. package/dist/types/listener/metrics-listener.d.ts.map +1 -0
  254. package/dist/types/renderer/index.d.ts +2 -0
  255. package/dist/types/renderer/index.d.ts.map +1 -0
  256. package/dist/types/renderer/renderer-info-metrics.d.ts +8 -0
  257. package/dist/types/renderer/renderer-info-metrics.d.ts.map +1 -0
  258. package/dist/types/select/index.d.ts +2 -0
  259. package/dist/types/select/index.d.ts.map +1 -0
  260. package/dist/workers/index.d.ts +2 -0
  261. package/dist/workers/index.d.ts.map +1 -0
  262. package/dist/{controllers/renderer-controller.d.ts → workers/renderer-worker.d.ts} +15 -14
  263. package/dist/workers/renderer-worker.d.ts.map +1 -0
  264. package/package.json +3 -3
  265. package/dist/api/modules/controls-state-api.d.ts.map +0 -1
  266. package/dist/api/modules/mesh-api.d.ts.map +0 -1
  267. package/dist/api/modules/raycast-api.d.ts.map +0 -1
  268. package/dist/api/modules/transform-api.d.ts.map +0 -1
  269. package/dist/api/renderer/camera-api.d.ts.map +0 -1
  270. package/dist/api/renderer/dom-api.d.ts.map +0 -1
  271. package/dist/api/renderer/scene-api.d.ts.map +0 -1
  272. package/dist/constants/colors.d.ts.map +0 -1
  273. package/dist/constants/figure-geometries.d.ts.map +0 -1
  274. package/dist/constants/layers.d.ts.map +0 -1
  275. package/dist/constants/messages.d.ts.map +0 -1
  276. package/dist/constants/threshold.d.ts.map +0 -1
  277. package/dist/controllers/renderer-controller.d.ts.map +0 -1
  278. package/dist/decorators/use-policy.d.ts.map +0 -1
  279. package/dist/errors/policy-error.d.ts.map +0 -1
  280. package/dist/events/editor-events.d.ts.map +0 -1
  281. package/dist/events/event-bus.d.ts.map +0 -1
  282. package/dist/events/event-topics.d.ts.map +0 -1
  283. package/dist/hub/app-hub.d.ts +0 -13
  284. package/dist/hub/app-hub.d.ts.map +0 -1
  285. package/dist/interfaces/controller/controller.d.ts.map +0 -1
  286. package/dist/interfaces/response/index.d.ts +0 -22
  287. package/dist/interfaces/response/index.d.ts.map +0 -1
  288. package/dist/ioc/container.d.ts +0 -5
  289. package/dist/ioc/container.d.ts.map +0 -1
  290. package/dist/loaders/obj-loader.d.ts.map +0 -1
  291. package/dist/policy/tool-policy.d.ts.map +0 -1
  292. package/dist/types/response/response-type.d.ts +0 -19
  293. package/dist/types/response/response-type.d.ts.map +0 -1
  294. package/dist/utils/helpers.d.ts +0 -13
  295. package/dist/utils/helpers.d.ts.map +0 -1
  296. /package/dist/{constants → shared/constants}/colors.d.ts +0 -0
  297. /package/dist/{constants → shared/constants}/figure-geometries.d.ts +0 -0
  298. /package/dist/{constants → shared/constants}/layers.d.ts +0 -0
  299. /package/dist/{constants → shared/constants}/messages.d.ts +0 -0
  300. /package/dist/{constants → shared/constants}/threshold.d.ts +0 -0
  301. /package/dist/{events → shared/events}/event-topics.d.ts +0 -0
  302. /package/dist/{loaders → shared/loaders}/obj-loader.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"exception-middleware.d.ts","sourceRoot":"","sources":["../../src/middlewares/exception-middleware.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAK5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAExD,MAAM;AACN,qBACa,mBAAoB,YAAW,WAAW;IAC9C,MAAM,CAAC,IAAI,EAAE,MAAM,SAAS,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI;CA8B9D"}
1
+ {"version":3,"file":"exception-middleware.d.ts","sourceRoot":"","sources":["../../src/middlewares/exception-middleware.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAI3D,OAAO,EAAE,KAAK,SAAS,EAAgB,MAAM,gBAAgB,CAAC;AAE9D;;;;;GAKG;AACH,qBACa,mBAAoB,YAAW,WAAW;IAC9C,MAAM,CAAC,IAAI,EAAE,MAAM,SAAS,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI;CAuC9D"}
@@ -0,0 +1,2 @@
1
+ export * from './exception-middleware';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/middlewares/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC"}
@@ -1,11 +1,7 @@
1
- import { ITransformApi } from '../interfaces/api/transform-api';
2
- import { IControlsStateApi } from '../interfaces/api/controls-state-api';
3
- import { ISceneApi } from '../interfaces/api/scene-api';
4
- import { IDomApi } from '../interfaces/api/dom-api';
5
- import { ICameraApi } from '../interfaces/api/camera-api';
6
- import { IUpdatableModule } from '../interfaces/module/updatable-module';
1
+ import { ITransformApi, IControlsStateApi, ISceneApi, IDomApi, ICameraApi } from '../interfaces/api';
2
+ import { IUpdatableModule, IInteractiveModule } from '../interfaces/module';
7
3
  import { ToolType } from '@planara/types';
8
- import { TransformListener } from '../types/listener/transform-listener';
4
+ import { TransformListener } from '../types/listener';
9
5
  import * as THREE from 'three';
10
6
  /**
11
7
  * Модуль управления камерой и трансформацией объектов.
@@ -17,6 +13,7 @@ import * as THREE from 'three';
17
13
  *
18
14
  * Модуль реализует:
19
15
  * - `IRuntimeModule` — жизненный цикл (init/dispose)
16
+ * - `IInteractiveModule` — управление пользовательским вводом
20
17
  * - `IUpdatableModule` — обновление состояния каждый кадр (update)
21
18
  * - `IControlsApi` — публичное API для управления контролами
22
19
  * - `IControlsStateApi` — публичное API для получения состояния контролов
@@ -29,18 +26,40 @@ import * as THREE from 'three';
29
26
  * @internal
30
27
  * @class
31
28
  */
32
- export declare class ControlsModule implements IUpdatableModule, ITransformApi, IControlsStateApi {
29
+ export declare class ControlsModule implements IUpdatableModule, IInteractiveModule, ITransformApi, IControlsStateApi {
33
30
  private _cameraApi;
34
31
  private _domApi;
35
32
  private _sceneApi;
36
- /** Orbit-контроллер для управления камерой */
33
+ /**
34
+ * Orbit-контроллер для управления камерой
35
+ *
36
+ * @private
37
+ * @member
38
+ */
37
39
  private _orbit;
38
- /** Transform-контроллер для редактирования */
40
+ /**
41
+ * Transform-контроллер для редактирования
42
+ *
43
+ * @private
44
+ * @member
45
+ */
39
46
  private _transform;
40
47
  private _transformHelper;
41
48
  private _transformListeners;
42
- /** Были ли инициализированы обработчики событий (hover/click) */
49
+ /**
50
+ * Были ли инициализированы обработчики событий (hover/click)
51
+ *
52
+ * @private
53
+ * @member
54
+ */
43
55
  private _isEventListenersAdded;
56
+ /**
57
+ * Доступно ли пользовательское взаимодействие с контроллерами
58
+ *
59
+ * @private
60
+ * @member
61
+ */
62
+ private _isInteractionEnabled;
44
63
  constructor(_cameraApi: ICameraApi, _domApi: IDomApi, _sceneApi: ISceneApi);
45
64
  init(): void;
46
65
  attachTransform(object: THREE.Object3D): void;
@@ -50,9 +69,17 @@ export declare class ControlsModule implements IUpdatableModule, ITransformApi,
50
69
  onTransformChange(callback: TransformListener): () => void;
51
70
  isOrbitInteracting(): boolean;
52
71
  isTransformDragging(): boolean;
53
- /** Освобождает ресурсы модуля */
54
- dispose(): Promise<void> | void;
72
+ setInteractionEnabled(enabled: boolean): void;
73
+ isInteractionEnabled(): boolean;
74
+ private readonly _handlePointerDown;
75
+ private readonly _handlePointerMove;
76
+ private readonly _handlePointerUp;
77
+ private readonly _handlePointerLeave;
78
+ private readonly _handleDraggingChanged;
79
+ private readonly _handleObjectChange;
55
80
  /** Инициализация обработчиков событий на hover/click */
56
81
  private _initMouseListeners;
82
+ /** Освобождает ресурсы модуля */
83
+ dispose(): Promise<void> | void;
57
84
  }
58
85
  //# sourceMappingURL=controls-module.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"controls-module.d.ts","sourceRoot":"","sources":["../../src/modules/controls-module.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AAE9E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAI9E;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,qBACa,cAAe,YAAW,gBAAgB,EAAE,aAAa,EAAE,iBAAiB;IAa/D,OAAO,CAAC,UAAU;IACrB,OAAO,CAAC,OAAO;IACb,OAAO,CAAC,SAAS;IAdxC,8CAA8C;IAC9C,OAAO,CAAC,MAAM,CAA+B;IAE7C,8CAA8C;IAC9C,OAAO,CAAC,UAAU,CAA0C;IAC5D,OAAO,CAAC,gBAAgB,CAA+B;IACvD,OAAO,CAAC,mBAAmB,CAAgC;IAE3D,iEAAiE;IACjE,OAAO,CAAC,sBAAsB,CAAS;gBAGP,UAAU,EAAE,UAAU,EACzB,OAAO,EAAE,OAAO,EACd,SAAS,EAAE,SAAS;IAG5C,IAAI,IAAI,IAAI;IAkBZ,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,GAAG,IAAI;IAI7C,eAAe,IAAI,IAAI;IAIvB,MAAM,IAAI,IAAI;IAId,gBAAgB,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;IAItC,iBAAiB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,IAAI;IAK1D,kBAAkB,IAAI,OAAO;IAI7B,mBAAmB,IAAI,OAAO;IAIrC,iCAAiC;IAC1B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAkCtC,wDAAwD;IACxD,OAAO,CAAC,mBAAmB;CAqB5B"}
1
+ {"version":3,"file":"controls-module.d.ts","sourceRoot":"","sources":["../../src/modules/controls-module.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EACV,aAAa,EACb,iBAAiB,EACjB,SAAS,EACT,OAAO,EACP,UAAU,EACX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAEhF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAM1D;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,qBACa,cACX,YAAW,gBAAgB,EAAE,kBAAkB,EAAE,aAAa,EAAE,iBAAiB;IAqCzD,OAAO,CAAC,UAAU;IACrB,OAAO,CAAC,OAAO;IACb,OAAO,CAAC,SAAS;IArCxC;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAA+B;IAE7C;;;;;OAKG;IACH,OAAO,CAAC,UAAU,CAA0C;IAC5D,OAAO,CAAC,gBAAgB,CAA+B;IACvD,OAAO,CAAC,mBAAmB,CAAgC;IAE3D;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB,CAAS;IAEvC;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB,CAAQ;gBAGL,UAAU,EAAE,UAAU,EACzB,OAAO,EAAE,OAAO,EACd,SAAS,EAAE,SAAS;IAG5C,IAAI,IAAI,IAAI;IAkBZ,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,GAAG,IAAI;IAI7C,eAAe,IAAI,IAAI;IAIvB,MAAM,IAAI,IAAI;IAId,gBAAgB,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;IAItC,iBAAiB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,IAAI;IAK1D,kBAAkB,IAAI,OAAO;IAI7B,mBAAmB,IAAI,OAAO;IAI9B,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAkB7C,oBAAoB,IAAI,OAAO;IAItC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAIjC;IAEF,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAIjC;IAEF,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAI/B;IAEF,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAIlC;IAEF,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAMrC;IAEF,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAIlC;IAEF,wDAAwD;IACxD,OAAO,CAAC,mBAAmB;IAiB3B,iCAAiC;IAC1B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;CAiCvC"}
@@ -1,7 +1,5 @@
1
- import { IRenderableModule } from '../interfaces/module/renderable-module';
2
- import { ICameraApi } from '../interfaces/api/camera-api';
3
- import { IDomApi } from '../interfaces/api/dom-api';
4
- import { IRendererApi } from '../interfaces/api/renderer-api';
1
+ import { IInteractiveModule, IRenderableModule } from '../interfaces/module';
2
+ import { ICameraApi, IDomApi, IRendererApi } from '../interfaces/api';
5
3
  /**
6
4
  * Модуль для отображения вспомогательных гизмо (осей, ориентации камеры и т.д.).
7
5
  *
@@ -19,13 +17,27 @@ import { IRendererApi } from '../interfaces/api/renderer-api';
19
17
  * @internal
20
18
  * @class
21
19
  */
22
- export declare class GizmoModule implements IRenderableModule {
20
+ export declare class GizmoModule implements IRenderableModule, IInteractiveModule {
23
21
  private _cameraApi;
24
22
  private _domApi;
25
23
  private _rendererApi;
26
- /** Gizmo для управления отображением perspective camera */
24
+ /**
25
+ * Gizmo для управления отображением perspective camera
26
+ *
27
+ * @private
28
+ * @member
29
+ */
27
30
  private _cameraGizmo;
31
+ /**
32
+ * Доступно ли пользовательское взаимодействие с контроллерами
33
+ *
34
+ * @private
35
+ * @member
36
+ */
37
+ private _isInteractionEnabled;
28
38
  constructor(_cameraApi: ICameraApi, _domApi: IDomApi, _rendererApi: IRendererApi);
39
+ setInteractionEnabled(enabled: boolean): void;
40
+ isInteractionEnabled(): boolean;
29
41
  init(): void;
30
42
  render(): void;
31
43
  /** Освобождение ресурсов модуля */
@@ -1 +1 @@
1
- {"version":3,"file":"gizmo-module.d.ts","sourceRoot":"","sources":["../../src/modules/gizmo-module.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAInE;;;;;;;;;;;;;;;;GAgBG;AACH,qBACa,WAAY,YAAW,iBAAiB;IAK3B,OAAO,CAAC,UAAU;IACrB,OAAO,CAAC,OAAO;IACP,OAAO,CAAC,YAAY;IANjD,2DAA2D;IAC3D,OAAO,CAAC,YAAY,CAAgC;gBAGpB,UAAU,EAAE,UAAU,EACzB,OAAO,EAAE,OAAO,EACR,YAAY,EAAE,YAAY;IAGxD,IAAI,IAAI,IAAI;IAaZ,MAAM,IAAI,IAAI;IAOrB,mCAAmC;IAC5B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;CAIvC"}
1
+ {"version":3,"file":"gizmo-module.d.ts","sourceRoot":"","sources":["../../src/modules/gizmo-module.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAI1E;;;;;;;;;;;;;;;;GAgBG;AACH,qBACa,WAAY,YAAW,iBAAiB,EAAE,kBAAkB;IAkB/C,OAAO,CAAC,UAAU;IACrB,OAAO,CAAC,OAAO;IACP,OAAO,CAAC,YAAY;IAnBjD;;;;;OAKG;IACH,OAAO,CAAC,YAAY,CAAgC;IAEpD;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB,CAAQ;gBAGL,UAAU,EAAE,UAAU,EACzB,OAAO,EAAE,OAAO,EACR,YAAY,EAAE,YAAY;IAGxD,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAK7C,oBAAoB,IAAI,OAAO;IAI/B,IAAI,IAAI,IAAI;IAaZ,MAAM,IAAI,IAAI;IASrB,mCAAmC;IAC5B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;CAIvC"}
@@ -0,0 +1,7 @@
1
+ export * from './controls-module';
2
+ export * from './gizmo-module';
3
+ export * from './raycast-module';
4
+ export * from './scene-module';
5
+ export * from './scene-preview-module';
6
+ export * from './metrics-module';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/modules/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,156 @@
1
+ import { BenchmarkMetrics } from '@planara/types';
2
+ import { MetricsListener } from '../types/listener';
3
+ import { IObserverModule } from '../interfaces/module';
4
+ import { IMetricsApi, IRendererInfoApi } from '../interfaces/api';
5
+ /**
6
+ * Модуль сбора метрик производительности runtime.
7
+ *
8
+ * @remarks
9
+ * Модуль вызывается в фазе наблюдения основного цикла приложения.
10
+ * Он не изменяет сцену и не выполняет рендеринг, а только собирает
11
+ * показатели производительности текущего прогона.
12
+ *
13
+ * @internal
14
+ * @class
15
+ */
16
+ export declare class MetricsModule implements IObserverModule, IMetricsApi {
17
+ private readonly _rendererInfoApi;
18
+ /** Выполняется ли сбор метрик */
19
+ private _isRunning;
20
+ /** Время запуска сбора метрик */
21
+ private _startedAt;
22
+ /** Время остановки сбора метрик */
23
+ private _stoppedAt;
24
+ /** Время предыдущего кадра */
25
+ private _lastFrameAt;
26
+ /** Количество обработанных кадров */
27
+ private _frames;
28
+ /** Суммарное время кадров */
29
+ private _frameTimeSum;
30
+ /** Максимальное время кадра */
31
+ private _maxFrameTime;
32
+ /** Количество объектов в тестовой сцене */
33
+ private _objectsCount;
34
+ /** Максимальное количество draw calls за время измерения */
35
+ private _drawCalls;
36
+ /** Максимальное количество треугольников за время измерения */
37
+ private _triangles;
38
+ /** Максимальное количество геометрий в памяти рендерера */
39
+ private _geometries;
40
+ /** Максимальное количество текстур в памяти рендерера */
41
+ private _textures;
42
+ /** Используемый объем памяти в мегабайтах */
43
+ private _memoryUsedMb;
44
+ /** Слушатели обновления метрик */
45
+ private readonly _listeners;
46
+ /** Время последнего уведомления слушателей */
47
+ private _lastNotifyAt;
48
+ /** Минимальный интервал уведомлений слушателей */
49
+ private readonly _notifyIntervalMs;
50
+ /**
51
+ * Конструктор модуля метрик.
52
+ *
53
+ * @param _rendererInfoApi - доступ к информации рендерера за кадр
54
+ *
55
+ * @internal
56
+ * @constructor
57
+ */
58
+ constructor(_rendererInfoApi: IRendererInfoApi);
59
+ /**
60
+ * Инициализирует модуль.
61
+ *
62
+ * @internal
63
+ * @method
64
+ */
65
+ init(): void;
66
+ /**
67
+ * Запускает сбор метрик.
68
+ *
69
+ * @param objectsCount - количество объектов, участвующих в текущем тесте
70
+ *
71
+ * @internal
72
+ * @method
73
+ */
74
+ start(objectsCount?: number): void;
75
+ /**
76
+ * Останавливает сбор метрик.
77
+ *
78
+ * @internal
79
+ * @method
80
+ */
81
+ stop(): void;
82
+ /**
83
+ * Сбрасывает накопленные метрики.
84
+ *
85
+ * @internal
86
+ * @method
87
+ */
88
+ reset(): void;
89
+ /**
90
+ * Выполняет наблюдение за текущим состоянием runtime.
91
+ *
92
+ * @remarks
93
+ * Метод вызывается каждый кадр в отдельной фазе render loop.
94
+ *
95
+ * @internal
96
+ * @method
97
+ */
98
+ observe(): void;
99
+ /**
100
+ * Возвращает текущие или последние собранные метрики.
101
+ *
102
+ * @returns Метрики производительности
103
+ *
104
+ * @internal
105
+ * @method
106
+ */
107
+ getMetrics(): BenchmarkMetrics;
108
+ /**
109
+ * Регистрирует слушатель изменения метрик.
110
+ *
111
+ * @param listener - обработчик обновления метрик
112
+ *
113
+ * @returns Функция отписки
114
+ *
115
+ * @internal
116
+ */
117
+ subscribe(listener: MetricsListener): () => void;
118
+ /**
119
+ * Освобождает ресурсы модуля.
120
+ *
121
+ * @internal
122
+ * @method
123
+ */
124
+ dispose(): Promise<void> | void;
125
+ /**
126
+ * Возвращает фактическую длительность сбора метрик.
127
+ *
128
+ * @returns Длительность измерения в миллисекундах
129
+ *
130
+ * @private
131
+ * @method
132
+ */
133
+ private _getDurationMs;
134
+ /**
135
+ * Сохраняет статистику WebGL-рендерера.
136
+ *
137
+ * @private
138
+ * @method
139
+ */
140
+ private _captureRendererInfo;
141
+ /**
142
+ * Сохраняет информацию об используемой памяти, если она доступна.
143
+ *
144
+ * @private
145
+ * @method
146
+ */
147
+ private _captureMemoryInfo;
148
+ /**
149
+ * Уведомляет слушателей об обновлении метрик.
150
+ *
151
+ * @private
152
+ * @method
153
+ */
154
+ private _notify;
155
+ }
156
+ //# sourceMappingURL=metrics-module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metrics-module.d.ts","sourceRoot":"","sources":["../../src/modules/metrics-module.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAExD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEtE;;;;;;;;;;GAUG;AACH,qBACa,aAAc,YAAW,eAAe,EAAE,WAAW;IA0DlC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IAzD/D,iCAAiC;IACjC,OAAO,CAAC,UAAU,CAAS;IAE3B,iCAAiC;IACjC,OAAO,CAAC,UAAU,CAAK;IAEvB,mCAAmC;IACnC,OAAO,CAAC,UAAU,CAAK;IAEvB,8BAA8B;IAC9B,OAAO,CAAC,YAAY,CAAK;IAEzB,qCAAqC;IACrC,OAAO,CAAC,OAAO,CAAK;IAEpB,6BAA6B;IAC7B,OAAO,CAAC,aAAa,CAAK;IAE1B,+BAA+B;IAC/B,OAAO,CAAC,aAAa,CAAK;IAE1B,2CAA2C;IAC3C,OAAO,CAAC,aAAa,CAAK;IAE1B,4DAA4D;IAC5D,OAAO,CAAC,UAAU,CAAK;IAEvB,+DAA+D;IAC/D,OAAO,CAAC,UAAU,CAAK;IAEvB,2DAA2D;IAC3D,OAAO,CAAC,WAAW,CAAK;IAExB,yDAAyD;IACzD,OAAO,CAAC,SAAS,CAAK;IAEtB,6CAA6C;IAC7C,OAAO,CAAC,aAAa,CAAiC;IAEtD,kCAAkC;IAClC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA8B;IAEzD,8CAA8C;IAC9C,OAAO,CAAC,aAAa,CAAK;IAE1B,kDAAkD;IAClD,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAO;IAEzC;;;;;;;OAOG;gBAE4C,gBAAgB,EAAE,gBAAgB;IAGjF;;;;;OAKG;IACI,IAAI,IAAI,IAAI;IAInB;;;;;;;OAOG;IACI,KAAK,CAAC,YAAY,SAAI,GAAG,IAAI;IAWpC;;;;;OAKG;IACI,IAAI,IAAI,IAAI;IAUnB;;;;;OAKG;IACI,KAAK,IAAI,IAAI;IAoBpB;;;;;;;;OAQG;IACI,OAAO,IAAI,IAAI;IAmBtB;;;;;;;OAOG;IACI,UAAU,IAAI,gBAAgB;IA4BrC;;;;;;;;OAQG;IACI,SAAS,CAAC,QAAQ,EAAE,eAAe,GAAG,MAAM,IAAI;IAQvD;;;;;OAKG;IACI,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAItC;;;;;;;OAOG;IACH,OAAO,CAAC,cAAc;IAQtB;;;;;OAKG;IACH,OAAO,CAAC,oBAAoB;IAS5B;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IAc1B;;;;;OAKG;IACH,OAAO,CAAC,OAAO;CAahB"}
@@ -1,11 +1,7 @@
1
- import { EventBus } from '../events/event-bus';
1
+ import { EventBus } from '../shared/events';
2
2
  import { SelectMode } from '@planara/types';
3
- import { IRuntimeModule } from '../interfaces/module/runtime-module';
4
- import { IRaycastApi } from '../interfaces/api/raycast-api';
5
- import { IDomApi } from '../interfaces/api/dom-api';
6
- import { ICameraApi } from '../interfaces/api/camera-api';
7
- import { IMeshApi } from '../interfaces/api/mesh-api';
8
- import { IControlsStateApi } from '../interfaces/api/controls-state-api';
3
+ import { IRuntimeModule, IInteractiveModule } from '../interfaces/module';
4
+ import { IRaycastApi, IDomApi, ICameraApi, IMeshApi, IControlsStateApi } from '../interfaces/api';
9
5
  /**
10
6
  * Runtime-модуль raycast-взаимодействия.
11
7
  *
@@ -18,7 +14,7 @@ import { IControlsStateApi } from '../interfaces/api/controls-state-api';
18
14
  * @internal
19
15
  * @class
20
16
  */
21
- export declare class RaycastModule implements IRuntimeModule, IRaycastApi {
17
+ export declare class RaycastModule implements IRuntimeModule, IInteractiveModule, IRaycastApi {
22
18
  private _domApi;
23
19
  private _cameraApi;
24
20
  private _meshApi;
@@ -47,7 +43,7 @@ export declare class RaycastModule implements IRuntimeModule, IRaycastApi {
47
43
  */
48
44
  private _lastHoverKey;
49
45
  /**
50
- * Текуший режим для raycaster
46
+ * Текущий режим для raycaster
51
47
  *
52
48
  * @private
53
49
  * @member
@@ -60,16 +56,33 @@ export declare class RaycastModule implements IRuntimeModule, IRaycastApi {
60
56
  * @member
61
57
  */
62
58
  private _isEventListenersAdded;
59
+ /**
60
+ * Доступно ли пользовательское взаимодействие через raycast.
61
+ *
62
+ * @private
63
+ * @member
64
+ */
65
+ private _isInteractionEnabled;
63
66
  constructor(_domApi: IDomApi, _cameraApi: ICameraApi, _meshApi: IMeshApi, _controlsState: IControlsStateApi, _bus: EventBus);
64
67
  init(): void;
65
68
  setRaycastMode(mode: SelectMode): void;
69
+ setInteractionEnabled(enabled: boolean): void;
70
+ isInteractionEnabled(): boolean;
71
+ /**
72
+ * Сбрасывает текущее состояние
73
+ *
74
+ * @private
75
+ * @method
76
+ */
77
+ private _clearState;
66
78
  /** Применяет параметры raycaster в зависимости от текущего режима */
67
79
  private _applyRaycastParamsByMode;
68
80
  /** Возвращает ближайшее пересечение по текущему положению курсора */
69
81
  private _getHitIntersection;
70
82
  /** Вспомогательный метод для получения модели, которую выбрали и отправки события в event bus */
71
83
  private _processRaycastEvent;
72
- /** Поиск видимой части меша
84
+ /**
85
+ * Поиск видимой части меша
73
86
  * необходимо это для того, чтобы отправлять только видимые элементы модели, а не все попадания
74
87
  */
75
88
  private _getVisibleHit;
@@ -1 +1 @@
1
- {"version":3,"file":"raycast-module.d.ts","sourceRoot":"","sources":["../../src/modules/raycast-module.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAIpD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAG5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAK9E;;;;;;;;;;;GAWG;AACH,qBACa,aAAc,YAAW,cAAc,EAAE,WAAW;IA2C1C,OAAO,CAAC,OAAO;IACZ,OAAO,CAAC,UAAU;IACpB,OAAO,CAAC,QAAQ;IACP,OAAO,CAAC,cAAc;IAC/B,OAAO,CAAC,IAAI;IA9ClC;;;;;OAKG;IACH,OAAO,CAAC,UAAU,CAAmB;IAErC;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAiB;IAE/B;;;;;;OAMG;IACH,OAAO,CAAC,aAAa,CAAuB;IAE5C;;;;;OAKG;IACH,OAAO,CAAC,mBAAmB,CAA+B;IAE1D;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB,CAAS;gBAGV,OAAO,EAAE,OAAO,EACb,UAAU,EAAE,UAAU,EACxB,QAAQ,EAAE,QAAQ,EACT,cAAc,EAAE,iBAAiB,EAC1C,IAAI,EAAE,QAAQ;IAGrC,IAAI,IAAI,IAAI;IAYZ,cAAc,CAAC,IAAI,EAAE,UAAU;IAatC,qEAAqE;IACrE,OAAO,CAAC,yBAAyB;IAwBjC,qEAAqE;IACrE,OAAO,CAAC,mBAAmB;IA4C3B,iGAAiG;IACjG,OAAO,CAAC,oBAAoB;IA0C5B;;OAEG;IACH,OAAO,CAAC,cAAc;IAWtB,qEAAqE;IACrE,OAAO,CAAC,aAAa;IAqBrB,mCAAmC;IACnC,OAAO,CAAC,gBAAgB,CAEtB;IAEF,kCAAkC;IAClC,OAAO,CAAC,iBAAiB,CAEvB;IAEF,gCAAgC;IAChC,OAAO,CAAC,kBAAkB,CAQxB;IAEF,wCAAwC;IACxC,OAAO,CAAC,iBAAiB,CAGvB;IAEF,wDAAwD;IACxD,OAAO,CAAC,mBAAmB;IAY3B,OAAO,CAAC,qBAAqB;IAStB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;CAKvC"}
1
+ {"version":3,"file":"raycast-module.d.ts","sourceRoot":"","sources":["../../src/modules/raycast-module.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,QAAQ,EAAe,MAAM,iBAAiB,CAAC;AAI7D,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9E,OAAO,KAAK,EACV,WAAW,EACX,OAAO,EACP,UAAU,EACV,QAAQ,EACR,iBAAiB,EAClB,MAAM,kBAAkB,CAAC;AAU1B;;;;;;;;;;;GAWG;AACH,qBACa,aAAc,YAAW,cAAc,EAAE,kBAAkB,EAAE,WAAW;IAmD9D,OAAO,CAAC,OAAO;IACZ,OAAO,CAAC,UAAU;IACpB,OAAO,CAAC,QAAQ;IACP,OAAO,CAAC,cAAc;IAC/B,OAAO,CAAC,IAAI;IAtDlC;;;;;OAKG;IACH,OAAO,CAAC,UAAU,CAAmB;IAErC;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAiB;IAE/B;;;;;;OAMG;IACH,OAAO,CAAC,aAAa,CAAuB;IAE5C;;;;;OAKG;IACH,OAAO,CAAC,mBAAmB,CAA+B;IAE1D;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB,CAAS;IAEvC;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB,CAAQ;gBAGR,OAAO,EAAE,OAAO,EACb,UAAU,EAAE,UAAU,EACxB,QAAQ,EAAE,QAAQ,EACT,cAAc,EAAE,iBAAiB,EAC1C,IAAI,EAAE,QAAQ;IAGrC,IAAI,IAAI,IAAI;IAYZ,cAAc,CAAC,IAAI,EAAE,UAAU;IAa/B,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAQ7C,oBAAoB,IAAI,OAAO;IAItC;;;;;OAKG;IACH,OAAO,CAAC,WAAW;IAYnB,qEAAqE;IACrE,OAAO,CAAC,yBAAyB;IAwBjC,qEAAqE;IACrE,OAAO,CAAC,mBAAmB;IA4C3B,iGAAiG;IACjG,OAAO,CAAC,oBAAoB;IA0C5B;;;OAGG;IACH,OAAO,CAAC,cAAc;IAWtB,qEAAqE;IACrE,OAAO,CAAC,aAAa;IAqBrB,mCAAmC;IACnC,OAAO,CAAC,gBAAgB,CAItB;IAEF,kCAAkC;IAClC,OAAO,CAAC,iBAAiB,CAIvB;IAEF,gCAAgC;IAChC,OAAO,CAAC,kBAAkB,CAUxB;IAEF,wCAAwC;IACxC,OAAO,CAAC,iBAAiB,CAKvB;IAEF,wDAAwD;IACxD,OAAO,CAAC,mBAAmB;IAY3B,OAAO,CAAC,qBAAqB;IAStB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;CAMvC"}
@@ -1,6 +1,5 @@
1
- import { IRuntimeModule } from '../interfaces/module/runtime-module';
2
- import { ISceneApi } from '../interfaces/api/scene-api';
3
- import { IMeshApi } from '../interfaces/api/mesh-api';
1
+ import { IRuntimeModule } from '../interfaces/module';
2
+ import { ISceneApi, IMeshApi } from '../interfaces/api';
4
3
  import * as THREE from 'three';
5
4
  /**
6
5
  * Модуль управления сценой, используется для добавления/удаления фигур,
@@ -1 +1 @@
1
- {"version":3,"file":"scene-module.d.ts","sourceRoot":"","sources":["../../src/modules/scene-module.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AAE3D;;;;;;GAMG;AACH,qBACa,WAAY,YAAW,cAAc,EAAE,QAAQ;IAalB,OAAO,CAAC,IAAI;IAZpD,gEAAgE;IAChE,OAAO,CAAC,OAAO,CAAoB;IAEnC,kBAAkB;IAClB,OAAO,CAAC,KAAK,CAAiC;IAE9C,gBAAgB;IAChB,OAAO,CAAC,KAAK,CAA+B;IAE5C,yBAAyB;IACzB,OAAO,CAAC,MAAM,CAAsC;gBAEJ,IAAI,EAAE,SAAS;IAExD,IAAI,IAAI,IAAI;IAeZ,SAAS,IAAI,KAAK,CAAC,IAAI,EAAE;IAIzB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,GAAG,IAAI;IAQ/B,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,GAAG,IAAI;IASlC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,GAAG,IAAI;IAMrC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,GAAG,IAAI;IAM/C,iCAAiC;IAC1B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;CA2BvC"}
1
+ {"version":3,"file":"scene-module.d.ts","sourceRoot":"","sources":["../../src/modules/scene-module.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5D;;;;;;GAMG;AACH,qBACa,WAAY,YAAW,cAAc,EAAE,QAAQ;IAalB,OAAO,CAAC,IAAI;IAZpD,gEAAgE;IAChE,OAAO,CAAC,OAAO,CAAoB;IAEnC,kBAAkB;IAClB,OAAO,CAAC,KAAK,CAAiC;IAE9C,gBAAgB;IAChB,OAAO,CAAC,KAAK,CAA+B;IAE5C,yBAAyB;IACzB,OAAO,CAAC,MAAM,CAAsC;gBAEJ,IAAI,EAAE,SAAS;IAExD,IAAI,IAAI,IAAI;IAeZ,SAAS,IAAI,KAAK,CAAC,IAAI,EAAE;IAIzB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,GAAG,IAAI;IAQ/B,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,GAAG,IAAI;IAUlC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,GAAG,IAAI;IAMrC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,GAAG,IAAI;IAM/C,iCAAiC;IAC1B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;CA2BvC"}
@@ -0,0 +1,26 @@
1
+ import { IRuntimeModule } from '../interfaces/module';
2
+ import { ISceneApi, IMeshApi } from '../interfaces/api';
3
+ import * as THREE from 'three';
4
+ /**
5
+ * Модуль управления сценой, используется для добавления/удаления фигур
6
+ *
7
+ * @internal
8
+ * @class
9
+ */
10
+ export declare class ScenePreviewModule implements IRuntimeModule, IMeshApi {
11
+ private _api;
12
+ /** Объекты вьювера */
13
+ private _meshes;
14
+ /** Базовый свет сцены */
15
+ private _light;
16
+ constructor(_api: ISceneApi);
17
+ init(): void;
18
+ getMeshes(): THREE.Mesh[];
19
+ addMesh(mesh: THREE.Mesh): void;
20
+ removeMesh(mesh: THREE.Mesh): void;
21
+ addMeshes(meshes: THREE.Mesh[]): void;
22
+ removeMeshes(meshes: THREE.Mesh[]): void;
23
+ /** Освобождает ресурсы модуля */
24
+ dispose(): Promise<void> | void;
25
+ }
26
+ //# sourceMappingURL=scene-preview-module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scene-preview-module.d.ts","sourceRoot":"","sources":["../../src/modules/scene-preview-module.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5D;;;;;GAKG;AACH,qBACa,kBAAmB,YAAW,cAAc,EAAE,QAAQ;IAOzB,OAAO,CAAC,IAAI;IANpD,sBAAsB;IACtB,OAAO,CAAC,OAAO,CAAoB;IAEnC,yBAAyB;IACzB,OAAO,CAAC,MAAM,CAAsC;gBAEJ,IAAI,EAAE,SAAS;IAExD,IAAI,IAAI,IAAI;IAMZ,SAAS,IAAI,KAAK,CAAC,IAAI,EAAE;IAIzB,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,GAAG,IAAI;IAQ/B,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,GAAG,IAAI;IAUlC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,GAAG,IAAI;IAMrC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,GAAG,IAAI;IAM/C,iCAAiC;IAC1B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;CAavC"}
@@ -1,4 +1,4 @@
1
- import { IControlsStateApi } from '../../interfaces/api/controls-state-api';
1
+ import { IControlsStateApi } from '../../../interfaces/api';
2
2
  /**
3
3
  * API для получения состояния элементов управления сценой.
4
4
  *
@@ -0,0 +1 @@
1
+ {"version":3,"file":"controls-state-api.d.ts","sourceRoot":"","sources":["../../../../src/shared/api/modules/controls-state-api.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAE1D;;;;;;;;;;;;;GAaG;AACH,qBACa,gBAAiB,YAAW,iBAAiB;IAG5B,OAAO,CAAC,QAAQ,CAAC,eAAe;IAF5D,mBAAmB;gBAE0B,eAAe,EAAE,iBAAiB;IAGxE,kBAAkB,IAAI,OAAO;IAI7B,mBAAmB,IAAI,OAAO;CAGtC"}
@@ -0,0 +1,6 @@
1
+ export * from './controls-state-api';
2
+ export * from './mesh-api';
3
+ export * from './raycast-api';
4
+ export * from './transform-api';
5
+ export * from './interaction-api';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/shared/api/modules/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { IInteractiveModule } from '../../../interfaces/module';
2
+ import { IInteractionApi } from '../../../interfaces/api';
3
+ /**
4
+ * API управления пользовательским взаимодействием.
5
+ *
6
+ * @remarks
7
+ * Позволяет включать или отключать интерактивную логику всех модулей,
8
+ * поддерживающих {@link IInteractiveModule}. API не освобождает ресурсы
9
+ * модулей и не удаляет обработчики событий, а только управляет доступностью
10
+ * пользовательского ввода.
11
+ *
12
+ * @internal
13
+ * @class
14
+ */
15
+ export declare class InteractionApi implements IInteractionApi {
16
+ private readonly _interactive;
17
+ constructor(_interactive: IInteractiveModule[]);
18
+ isInteractionEnabled(): boolean;
19
+ setInteractionEnabled(enabled: boolean): void;
20
+ }
21
+ //# sourceMappingURL=interaction-api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interaction-api.d.ts","sourceRoot":"","sources":["../../../../src/shared/api/modules/interaction-api.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAExD;;;;;;;;;;;GAWG;AACH,qBACa,cAAe,YAAW,eAAe;IAGlD,OAAO,CAAC,QAAQ,CAAC,YAAY;gBAAZ,YAAY,EAAE,kBAAkB,EAAE;IAG9C,oBAAoB,IAAI,OAAO;IAI/B,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;CAGrD"}
@@ -1,4 +1,4 @@
1
- import { IMeshApi } from '../../interfaces/api/mesh-api';
1
+ import { IMeshApi } from '../../../interfaces/api';
2
2
  import * as THREE from 'three';
3
3
  /**
4
4
  * API для управления мешами (фигурами) на сцене.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mesh-api.d.ts","sourceRoot":"","sources":["../../../../src/shared/api/modules/mesh-api.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEjD;;;;;;;;;;;;;;;;GAgBG;AACH,qBACa,OAAQ,YAAW,QAAQ;IAEI,OAAO,CAAC,QAAQ,CAAC,YAAY;IADvE,mBAAmB;gBACwC,YAAY,EAAE,QAAQ;IAE1E,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,GAAG,IAAI;IAI/B,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,GAAG,IAAI;IAIrC,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,GAAG,IAAI;IAIlC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,GAAG,IAAI;IAIxC,SAAS,IAAI,KAAK,CAAC,IAAI,EAAE;CAGjC"}
@@ -1,5 +1,5 @@
1
1
  import { SelectMode } from '@planara/types';
2
- import { IRaycastApi } from '../../interfaces/api/raycast-api';
2
+ import { IRaycastApi } from '../../../interfaces/api';
3
3
  /**
4
4
  * API для управления raycast (выделением геометрии).
5
5
  *
@@ -0,0 +1 @@
1
+ {"version":3,"file":"raycast-api.d.ts","sourceRoot":"","sources":["../../../../src/shared/api/modules/raycast-api.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBACa,UAAW,YAAW,WAAW;IAEA,OAAO,CAAC,QAAQ,CAAC,cAAc;IAD3E,mBAAmB;gBAC0C,cAAc,EAAE,WAAW;IAEjF,cAAc,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI;CAG9C"}
@@ -1,6 +1,6 @@
1
1
  import { ToolType } from '@planara/types';
2
- import { TransformListener } from '../../types/listener/transform-listener';
3
- import { ITransformApi } from '../../interfaces/api/transform-api';
2
+ import { TransformListener } from '../../../types/listener';
3
+ import { ITransformApi } from '../../../interfaces/api';
4
4
  import * as THREE from 'three';
5
5
  /**
6
6
  * API для управления трансформацией объектов (гизмо).
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transform-api.d.ts","sourceRoot":"","sources":["../../../../src/shared/api/modules/transform-api.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAI1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBACa,YAAa,YAAW,aAAa;IAEH,OAAO,CAAC,QAAQ,CAAC,eAAe;IAD7E,mBAAmB;gBAC2C,eAAe,EAAE,aAAa;IAErF,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,GAAG,IAAI;IAI7C,eAAe,IAAI,IAAI;IAIvB,gBAAgB,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;IAItC,iBAAiB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,IAAI;CAGlE"}
@@ -1,5 +1,5 @@
1
- import { ICameraApi } from '../../interfaces/api/camera-api';
2
- import { IRendererCameraAccess } from '../../interfaces/api/renderer/renderer-camera-access';
1
+ import { ICameraApi } from '../../../interfaces/api';
2
+ import { IRendererCameraAccess } from '../../../interfaces/api/renderer';
3
3
  import * as THREE from 'three';
4
4
  /**
5
5
  * Реализация API для управления камерой.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"camera-api.d.ts","sourceRoot":"","sources":["../../../../src/shared/api/renderer/camera-api.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAEvE;;;;;;;;;;;;;;GAcG;AACH,qBACa,SAAU,YAAW,UAAU;IAEP,OAAO,CAAC,gBAAgB;gBAAhB,gBAAgB,EAAE,qBAAqB;IAG3E,SAAS,IAAI,KAAK,CAAC,MAAM;IAIzB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAItC,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;CAG/C"}
@@ -1,5 +1,5 @@
1
- import { IDomApi } from '../../interfaces/api/dom-api';
2
- import { IRendererDomAccess } from '../../interfaces/api/renderer/renderer-dom-access';
1
+ import { IDomApi } from '../../../interfaces/api';
2
+ import { IRendererDomAccess } from '../../../interfaces/api/renderer';
3
3
  /**
4
4
  * Реализация API для доступа к DOM-элементам рендерера.
5
5
  *
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dom-api.d.ts","sourceRoot":"","sources":["../../../../src/shared/api/renderer/dom-api.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAEpE;;;;;;;;;;;;;;GAcG;AACH,qBACa,MAAO,YAAW,OAAO;IACa,OAAO,CAAC,aAAa;gBAAb,aAAa,EAAE,kBAAkB;IAEnF,SAAS,IAAI,iBAAiB;IAI9B,aAAa,IAAI,WAAW;CAGpC"}
@@ -0,0 +1,5 @@
1
+ export * from './camera-api';
2
+ export * from './dom-api';
3
+ export * from './scene-api';
4
+ export * from './renderer-info-api';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/shared/api/renderer/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC"}
@@ -0,0 +1,25 @@
1
+ import { RendererInfoMetrics } from '../../../types/renderer';
2
+ import { IRendererInfoAccess } from '../../../interfaces/api/renderer';
3
+ import { IRendererInfoApi } from '../../../interfaces/api';
4
+ /**
5
+ * API доступа к статистике WebGL-рендерера.
6
+ *
7
+ * @internal
8
+ * @class
9
+ */
10
+ export declare class RendererInfoApi implements IRendererInfoApi {
11
+ private readonly _rendererInfoAccess;
12
+ /**
13
+ * Конструктор API статистики рендерера.
14
+ *
15
+ * @param _rendererInfoAccess - внутренний доступ к информации о рендерере
16
+ */
17
+ constructor(_rendererInfoAccess: IRendererInfoAccess);
18
+ /**
19
+ * Возвращает текущую статистику рендерера.
20
+ *
21
+ * @returns Метрики WebGL-рендера за текущий кадр
22
+ */
23
+ getRendererInfo(): RendererInfoMetrics;
24
+ }
25
+ //# sourceMappingURL=renderer-info-api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"renderer-info-api.d.ts","sourceRoot":"","sources":["../../../../src/shared/api/renderer/renderer-info-api.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAE5D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzD;;;;;GAKG;AACH,qBACa,eAAgB,YAAW,gBAAgB;IAOrB,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IANrE;;;;OAIG;gBAE+C,mBAAmB,EAAE,mBAAmB;IAG1F;;;;OAIG;IACI,eAAe,IAAI,mBAAmB;CAG9C"}