@planara/core 2.8.0 → 3.1.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 (283) hide show
  1. package/README.md +5 -0
  2. package/dist/api/modules/controls-state-api.d.ts +23 -0
  3. package/dist/api/modules/controls-state-api.d.ts.map +1 -0
  4. package/dist/api/modules/index.d.ts +5 -0
  5. package/dist/api/modules/index.d.ts.map +1 -0
  6. package/dist/api/modules/mesh-api.d.ts +30 -0
  7. package/dist/api/modules/mesh-api.d.ts.map +1 -0
  8. package/dist/api/modules/raycast-api.d.ts +28 -0
  9. package/dist/api/modules/raycast-api.d.ts.map +1 -0
  10. package/dist/api/modules/transform-api.d.ts +33 -0
  11. package/dist/api/modules/transform-api.d.ts.map +1 -0
  12. package/dist/api/renderer/camera-api.d.ts +26 -0
  13. package/dist/api/renderer/camera-api.d.ts.map +1 -0
  14. package/dist/api/renderer/dom-api.d.ts +24 -0
  15. package/dist/api/renderer/dom-api.d.ts.map +1 -0
  16. package/dist/api/renderer/index.d.ts +4 -0
  17. package/dist/api/renderer/index.d.ts.map +1 -0
  18. package/dist/api/renderer/scene-api.d.ts +26 -0
  19. package/dist/api/renderer/scene-api.d.ts.map +1 -0
  20. package/dist/constants/colors.d.ts +12 -0
  21. package/dist/constants/colors.d.ts.map +1 -1
  22. package/dist/constants/figure-geometries.d.ts +55 -4
  23. package/dist/constants/figure-geometries.d.ts.map +1 -1
  24. package/dist/constants/index.d.ts +6 -0
  25. package/dist/constants/index.d.ts.map +1 -0
  26. package/dist/constants/layers.d.ts +12 -0
  27. package/dist/constants/layers.d.ts.map +1 -1
  28. package/dist/constants/messages.d.ts +18 -0
  29. package/dist/constants/messages.d.ts.map +1 -0
  30. package/dist/constants/threshold.d.ts +42 -2
  31. package/dist/constants/threshold.d.ts.map +1 -1
  32. package/dist/controllers/index.d.ts +2 -0
  33. package/dist/controllers/index.d.ts.map +1 -0
  34. package/dist/controllers/renderer-controller.d.ts +72 -0
  35. package/dist/controllers/renderer-controller.d.ts.map +1 -0
  36. package/dist/core/index.d.ts +2 -0
  37. package/dist/core/index.d.ts.map +1 -0
  38. package/dist/core/renderer.d.ts +105 -78
  39. package/dist/core/renderer.d.ts.map +1 -1
  40. package/dist/decorators/index.d.ts +3 -0
  41. package/dist/decorators/index.d.ts.map +1 -0
  42. package/dist/decorators/use-policy.d.ts +5 -0
  43. package/dist/decorators/use-policy.d.ts.map +1 -0
  44. package/dist/decorators/use-validator.d.ts +5 -0
  45. package/dist/decorators/use-validator.d.ts.map +1 -0
  46. package/dist/errors/index.d.ts +3 -0
  47. package/dist/errors/index.d.ts.map +1 -0
  48. package/dist/errors/policy-error.d.ts +9 -0
  49. package/dist/errors/policy-error.d.ts.map +1 -0
  50. package/dist/errors/validation-error.d.ts +9 -0
  51. package/dist/errors/validation-error.d.ts.map +1 -0
  52. package/dist/events/editor-events.d.ts +3 -7
  53. package/dist/events/editor-events.d.ts.map +1 -1
  54. package/dist/events/event-bus.d.ts +103 -6
  55. package/dist/events/event-bus.d.ts.map +1 -1
  56. package/dist/events/event-topics.d.ts +3 -3
  57. package/dist/events/event-topics.d.ts.map +1 -1
  58. package/dist/events/index.d.ts +4 -0
  59. package/dist/events/index.d.ts.map +1 -0
  60. package/dist/handlers/display/index.d.ts +2 -0
  61. package/dist/handlers/display/index.d.ts.map +1 -0
  62. package/dist/handlers/display/wireframe-handler.d.ts +4 -2
  63. package/dist/handlers/display/wireframe-handler.d.ts.map +1 -1
  64. package/dist/handlers/scene/add-figure-scene-handler.d.ts +4 -2
  65. package/dist/handlers/scene/add-figure-scene-handler.d.ts.map +1 -1
  66. package/dist/handlers/scene/delete-figure-scene-handler.d.ts +4 -4
  67. package/dist/handlers/scene/delete-figure-scene-handler.d.ts.map +1 -1
  68. package/dist/handlers/scene/export-scene-handler.d.ts +23 -0
  69. package/dist/handlers/scene/export-scene-handler.d.ts.map +1 -0
  70. package/dist/handlers/scene/index.d.ts +6 -0
  71. package/dist/handlers/scene/index.d.ts.map +1 -0
  72. package/dist/handlers/scene/load-figure-scene-handler.d.ts +23 -0
  73. package/dist/handlers/scene/load-figure-scene-handler.d.ts.map +1 -0
  74. package/dist/handlers/scene/load-scene-handler.d.ts +23 -0
  75. package/dist/handlers/scene/load-scene-handler.d.ts.map +1 -0
  76. package/dist/handlers/select/edge-select-handler.d.ts +11 -8
  77. package/dist/handlers/select/edge-select-handler.d.ts.map +1 -1
  78. package/dist/handlers/select/face-select-handler.d.ts +11 -8
  79. package/dist/handlers/select/face-select-handler.d.ts.map +1 -1
  80. package/dist/handlers/select/index.d.ts +5 -0
  81. package/dist/handlers/select/index.d.ts.map +1 -0
  82. package/dist/handlers/select/mesh-select-handler.d.ts +8 -7
  83. package/dist/handlers/select/mesh-select-handler.d.ts.map +1 -1
  84. package/dist/handlers/select/vertex-select-handler.d.ts +11 -8
  85. package/dist/handlers/select/vertex-select-handler.d.ts.map +1 -1
  86. package/dist/handlers/tool/base-tool-handler.d.ts +10 -7
  87. package/dist/handlers/tool/base-tool-handler.d.ts.map +1 -1
  88. package/dist/handlers/tool/index.d.ts +4 -0
  89. package/dist/handlers/tool/index.d.ts.map +1 -0
  90. package/dist/handlers/tool/rotate-tool-handler.d.ts +4 -3
  91. package/dist/handlers/tool/rotate-tool-handler.d.ts.map +1 -1
  92. package/dist/handlers/tool/scale-tool-handler.d.ts +4 -3
  93. package/dist/handlers/tool/scale-tool-handler.d.ts.map +1 -1
  94. package/dist/handlers/tool/translate-tool-handler.d.ts +4 -3
  95. package/dist/handlers/tool/translate-tool-handler.d.ts.map +1 -1
  96. package/dist/hub/editor-hub.d.ts +26 -18
  97. package/dist/hub/editor-hub.d.ts.map +1 -1
  98. package/dist/hub/index.d.ts +26 -0
  99. package/dist/hub/index.d.ts.map +1 -0
  100. package/dist/hub/viewer-hub.d.ts +30 -0
  101. package/dist/hub/viewer-hub.d.ts.map +1 -0
  102. package/dist/index.cjs.js +20 -2
  103. package/dist/index.d.ts +16 -9
  104. package/dist/index.d.ts.map +1 -1
  105. package/dist/index.es.js +2615 -1627
  106. package/dist/index.full.d.ts +650 -245
  107. package/dist/index.public.d.ts +665 -160
  108. package/dist/index.umd.js +20 -2
  109. package/dist/interfaces/api/camera-api.d.ts +64 -0
  110. package/dist/interfaces/api/camera-api.d.ts.map +1 -0
  111. package/dist/interfaces/api/controls-state-api.d.ts +63 -0
  112. package/dist/interfaces/api/controls-state-api.d.ts.map +1 -0
  113. package/dist/interfaces/api/dom-api.d.ts +49 -0
  114. package/dist/interfaces/api/dom-api.d.ts.map +1 -0
  115. package/dist/interfaces/api/index.d.ts +9 -0
  116. package/dist/interfaces/api/index.d.ts.map +1 -0
  117. package/dist/interfaces/api/mesh-api.d.ts +93 -12
  118. package/dist/interfaces/api/mesh-api.d.ts.map +1 -1
  119. package/dist/interfaces/api/raycast-api.d.ts +6 -1
  120. package/dist/interfaces/api/raycast-api.d.ts.map +1 -1
  121. package/dist/interfaces/api/renderer/index.d.ts +6 -0
  122. package/dist/interfaces/api/renderer/index.d.ts.map +1 -0
  123. package/dist/interfaces/api/renderer/renderable.d.ts +45 -0
  124. package/dist/interfaces/api/renderer/renderable.d.ts.map +1 -0
  125. package/dist/interfaces/api/renderer/renderer-access.d.ts +34 -0
  126. package/dist/interfaces/api/renderer/renderer-access.d.ts.map +1 -0
  127. package/dist/interfaces/api/renderer/renderer-camera-access.d.ts +37 -0
  128. package/dist/interfaces/api/renderer/renderer-camera-access.d.ts.map +1 -0
  129. package/dist/interfaces/api/renderer/renderer-dom-access.d.ts +51 -0
  130. package/dist/interfaces/api/renderer/renderer-dom-access.d.ts.map +1 -0
  131. package/dist/interfaces/api/renderer/renderer-scene-access.d.ts +45 -0
  132. package/dist/interfaces/api/renderer/renderer-scene-access.d.ts.map +1 -0
  133. package/dist/interfaces/api/renderer-api.d.ts +35 -0
  134. package/dist/interfaces/api/renderer-api.d.ts.map +1 -0
  135. package/dist/interfaces/api/scene-api.d.ts +66 -26
  136. package/dist/interfaces/api/scene-api.d.ts.map +1 -1
  137. package/dist/interfaces/api/transform-api.d.ts +120 -0
  138. package/dist/interfaces/api/transform-api.d.ts.map +1 -0
  139. package/dist/interfaces/command/index.d.ts +9 -0
  140. package/dist/interfaces/command/index.d.ts.map +1 -0
  141. package/dist/interfaces/controller/index.d.ts +38 -0
  142. package/dist/interfaces/controller/index.d.ts.map +1 -0
  143. package/dist/interfaces/handler/display-handler.d.ts +9 -1
  144. package/dist/interfaces/handler/display-handler.d.ts.map +1 -1
  145. package/dist/interfaces/handler/handler.d.ts +2 -0
  146. package/dist/interfaces/handler/handler.d.ts.map +1 -1
  147. package/dist/interfaces/handler/index.d.ts +6 -0
  148. package/dist/interfaces/handler/index.d.ts.map +1 -0
  149. package/dist/interfaces/handler/scene-handler.d.ts +1 -0
  150. package/dist/interfaces/handler/scene-handler.d.ts.map +1 -1
  151. package/dist/interfaces/handler/select-handler.d.ts +1 -0
  152. package/dist/interfaces/handler/select-handler.d.ts.map +1 -1
  153. package/dist/interfaces/handler/tool-handler.d.ts +1 -0
  154. package/dist/interfaces/handler/tool-handler.d.ts.map +1 -1
  155. package/dist/interfaces/manager/display-manager.d.ts +3 -1
  156. package/dist/interfaces/manager/display-manager.d.ts.map +1 -1
  157. package/dist/interfaces/manager/index.d.ts +6 -0
  158. package/dist/interfaces/manager/index.d.ts.map +1 -0
  159. package/dist/interfaces/manager/manager.d.ts +12 -1
  160. package/dist/interfaces/manager/manager.d.ts.map +1 -1
  161. package/dist/interfaces/manager/scene-manager.d.ts +3 -1
  162. package/dist/interfaces/manager/scene-manager.d.ts.map +1 -1
  163. package/dist/interfaces/manager/select-manager.d.ts +3 -1
  164. package/dist/interfaces/manager/select-manager.d.ts.map +1 -1
  165. package/dist/interfaces/manager/tool-manager.d.ts +3 -1
  166. package/dist/interfaces/manager/tool-manager.d.ts.map +1 -1
  167. package/dist/interfaces/mediator/index.d.ts +51 -0
  168. package/dist/interfaces/mediator/index.d.ts.map +1 -0
  169. package/dist/interfaces/middleware/index.d.ts +50 -0
  170. package/dist/interfaces/middleware/index.d.ts.map +1 -0
  171. package/dist/interfaces/module/index.d.ts +4 -0
  172. package/dist/interfaces/module/index.d.ts.map +1 -0
  173. package/dist/interfaces/module/renderable-module.d.ts +27 -0
  174. package/dist/interfaces/module/renderable-module.d.ts.map +1 -0
  175. package/dist/interfaces/module/runtime-module.d.ts +54 -0
  176. package/dist/interfaces/module/runtime-module.d.ts.map +1 -0
  177. package/dist/interfaces/module/updatable-module.d.ts +48 -0
  178. package/dist/interfaces/module/updatable-module.d.ts.map +1 -0
  179. package/dist/interfaces/policy/index.d.ts +21 -0
  180. package/dist/interfaces/policy/index.d.ts.map +1 -0
  181. package/dist/interfaces/store/display-store.d.ts +21 -0
  182. package/dist/interfaces/store/display-store.d.ts.map +1 -0
  183. package/dist/interfaces/store/export-store.d.ts +8 -0
  184. package/dist/interfaces/store/export-store.d.ts.map +1 -0
  185. package/dist/interfaces/store/index.d.ts +6 -0
  186. package/dist/interfaces/store/index.d.ts.map +1 -0
  187. package/dist/interfaces/store/select-store.d.ts +44 -0
  188. package/dist/interfaces/store/select-store.d.ts.map +1 -0
  189. package/dist/interfaces/store/tool-store.d.ts +27 -0
  190. package/dist/interfaces/store/tool-store.d.ts.map +1 -0
  191. package/dist/interfaces/store/transform-store.d.ts +11 -0
  192. package/dist/interfaces/store/transform-store.d.ts.map +1 -0
  193. package/dist/interfaces/validator/index.d.ts +21 -0
  194. package/dist/interfaces/validator/index.d.ts.map +1 -0
  195. package/dist/ioc/container.d.ts +3 -1
  196. package/dist/ioc/container.d.ts.map +1 -1
  197. package/dist/managers/display/display-manager.d.ts +7 -4
  198. package/dist/managers/display/display-manager.d.ts.map +1 -1
  199. package/dist/managers/display/index.d.ts +2 -0
  200. package/dist/managers/display/index.d.ts.map +1 -0
  201. package/dist/managers/index.d.ts +5 -0
  202. package/dist/managers/index.d.ts.map +1 -0
  203. package/dist/managers/scene/index.d.ts +2 -0
  204. package/dist/managers/scene/index.d.ts.map +1 -0
  205. package/dist/managers/scene/scene-manager.d.ts +7 -4
  206. package/dist/managers/scene/scene-manager.d.ts.map +1 -1
  207. package/dist/managers/select/index.d.ts +2 -0
  208. package/dist/managers/select/index.d.ts.map +1 -0
  209. package/dist/managers/select/select-manager.d.ts +8 -5
  210. package/dist/managers/select/select-manager.d.ts.map +1 -1
  211. package/dist/managers/tool/index.d.ts +2 -0
  212. package/dist/managers/tool/index.d.ts.map +1 -0
  213. package/dist/managers/tool/tool-manager.d.ts +9 -6
  214. package/dist/managers/tool/tool-manager.d.ts.map +1 -1
  215. package/dist/mediator/index.d.ts +14 -0
  216. package/dist/mediator/index.d.ts.map +1 -0
  217. package/dist/middlewares/exception-middleware.d.ts +12 -0
  218. package/dist/middlewares/exception-middleware.d.ts.map +1 -0
  219. package/dist/middlewares/index.d.ts +2 -0
  220. package/dist/middlewares/index.d.ts.map +1 -0
  221. package/dist/modules/controls-module.d.ts +60 -0
  222. package/dist/modules/controls-module.d.ts.map +1 -0
  223. package/dist/modules/gizmo-module.d.ts +32 -0
  224. package/dist/modules/gizmo-module.d.ts.map +1 -0
  225. package/dist/modules/index.d.ts +6 -0
  226. package/dist/modules/index.d.ts.map +1 -0
  227. package/dist/modules/raycast-module.d.ts +87 -0
  228. package/dist/modules/raycast-module.d.ts.map +1 -0
  229. package/dist/modules/scene-module.d.ts +31 -0
  230. package/dist/modules/scene-module.d.ts.map +1 -0
  231. package/dist/modules/scene-preview-module.d.ts +26 -0
  232. package/dist/modules/scene-preview-module.d.ts.map +1 -0
  233. package/dist/policy/index.d.ts +2 -0
  234. package/dist/policy/index.d.ts.map +1 -0
  235. package/dist/policy/tool-policy.d.ts +18 -0
  236. package/dist/policy/tool-policy.d.ts.map +1 -0
  237. package/dist/store/editor-store.d.ts +33 -0
  238. package/dist/store/editor-store.d.ts.map +1 -0
  239. package/dist/store/export-store.d.ts +12 -0
  240. package/dist/store/export-store.d.ts.map +1 -0
  241. package/dist/store/index.d.ts +2 -45
  242. package/dist/store/index.d.ts.map +1 -1
  243. package/dist/types/camera/index.d.ts +2 -0
  244. package/dist/types/camera/index.d.ts.map +1 -0
  245. package/dist/types/event/index.d.ts +2 -0
  246. package/dist/types/event/index.d.ts.map +1 -0
  247. package/dist/types/feature/feature-type.d.ts +16 -0
  248. package/dist/types/feature/feature-type.d.ts.map +1 -0
  249. package/dist/types/feature/index.d.ts +2 -0
  250. package/dist/types/feature/index.d.ts.map +1 -0
  251. package/dist/types/listener/index.d.ts +3 -0
  252. package/dist/types/listener/index.d.ts.map +1 -0
  253. package/dist/types/select/index.d.ts +2 -0
  254. package/dist/types/select/index.d.ts.map +1 -0
  255. package/dist/utils/default-renderer-config.d.ts +9 -0
  256. package/dist/utils/default-renderer-config.d.ts.map +1 -0
  257. package/dist/utils/helpers.d.ts +14 -1
  258. package/dist/utils/helpers.d.ts.map +1 -1
  259. package/dist/utils/index.d.ts +3 -0
  260. package/dist/utils/index.d.ts.map +1 -0
  261. package/dist/validators/index.d.ts +2 -0
  262. package/dist/validators/index.d.ts.map +1 -0
  263. package/dist/validators/obj-validator.d.ts +12 -0
  264. package/dist/validators/obj-validator.d.ts.map +1 -0
  265. package/package.json +2 -2
  266. package/dist/core/editor-renderer.d.ts +0 -89
  267. package/dist/core/editor-renderer.d.ts.map +0 -1
  268. package/dist/core/preview-renderer.d.ts +0 -16
  269. package/dist/core/preview-renderer.d.ts.map +0 -1
  270. package/dist/hub/app-hub.d.ts +0 -13
  271. package/dist/hub/app-hub.d.ts.map +0 -1
  272. package/dist/interfaces/api/transform-helpers-api.d.ts +0 -26
  273. package/dist/interfaces/api/transform-helpers-api.d.ts.map +0 -1
  274. package/dist/interfaces/policy/tool-availability-policy.d.ts +0 -12
  275. package/dist/interfaces/policy/tool-availability-policy.d.ts.map +0 -1
  276. package/dist/interfaces/store/editor-store.d.ts +0 -52
  277. package/dist/interfaces/store/editor-store.d.ts.map +0 -1
  278. package/dist/policy/tool-availability-policy.d.ts +0 -13
  279. package/dist/policy/tool-availability-policy.d.ts.map +0 -1
  280. package/dist/types/api/editor-api.d.ts +0 -4
  281. package/dist/types/api/editor-api.d.ts.map +0 -1
  282. package/dist/utils/renderer-api.d.ts +0 -43
  283. package/dist/utils/renderer-api.d.ts.map +0 -1
@@ -0,0 +1,23 @@
1
+ import { SceneMode } from '@planara/types';
2
+ import { ISceneHandler } from '../../interfaces/handler';
3
+ import { IMeshApi } from '../../interfaces/api';
4
+ import { IValidator } from '../../interfaces/validator';
5
+ /**
6
+ * Хендлер для загрузки фигуры из файла.
7
+ *
8
+ * @internal
9
+ * @class
10
+ */
11
+ export declare class LoadFigureSceneHandler implements ISceneHandler {
12
+ private _api;
13
+ private _validator;
14
+ /** Режим редактирования сцены */
15
+ readonly mode: SceneMode;
16
+ constructor(_api: IMeshApi, _validator: IValidator);
17
+ /** Добавление фигур на сцену из файла. */
18
+ handle(content: string): void;
19
+ rollback(): void;
20
+ /** Освобождает ресурсы хендлера. */
21
+ dispose(): Promise<void> | void;
22
+ }
23
+ //# sourceMappingURL=load-figure-scene-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"load-figure-scene-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/scene/load-figure-scene-handler.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAMzD;;;;;GAKG;AACH,qBACa,sBAAuB,YAAW,aAAa;IAKpC,OAAO,CAAC,IAAI;IACR,OAAO,CAAC,UAAU;IAL5C,iCAAiC;IACjC,SAAgB,IAAI,EAAE,SAAS,CAAwB;gBAGzB,IAAI,EAAE,QAAQ,EACV,UAAU,EAAE,UAAU;IAGxD,0CAA0C;IAEnC,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAM7B,QAAQ,IAAI,IAAI;IAEvB,oCAAoC;IAC7B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;CACvC"}
@@ -0,0 +1,23 @@
1
+ import { SceneMode } from '@planara/types';
2
+ import { ISceneHandler } from '../../interfaces/handler';
3
+ import { IMeshApi } from '../../interfaces/api';
4
+ import { IValidator } from '../../interfaces/validator';
5
+ /**
6
+ * Хендлер для загрузки сцены из файла.
7
+ *
8
+ * @internal
9
+ * @class
10
+ */
11
+ export declare class LoadSceneHandler implements ISceneHandler {
12
+ private _api;
13
+ private _validator;
14
+ /** Режим редактирования сцены */
15
+ readonly mode: SceneMode;
16
+ constructor(_api: IMeshApi, _validator: IValidator);
17
+ /** Загрузка всей сцены из файла. */
18
+ handle(content: string): void;
19
+ rollback(): void;
20
+ /** Освобождает ресурсы хендлера. */
21
+ dispose(): Promise<void> | void;
22
+ }
23
+ //# sourceMappingURL=load-scene-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"load-scene-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/scene/load-scene-handler.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAMzD;;;;;GAKG;AACH,qBACa,gBAAiB,YAAW,aAAa;IAK9B,OAAO,CAAC,IAAI;IACR,OAAO,CAAC,UAAU;IAL5C,iCAAiC;IACjC,SAAgB,IAAI,EAAE,SAAS,CAAkB;gBAGnB,IAAI,EAAE,QAAQ,EACV,UAAU,EAAE,UAAU;IAGxD,oCAAoC;IAE7B,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAU7B,QAAQ,IAAI,IAAI;IAEvB,oCAAoC;IAC7B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;CACvC"}
@@ -1,19 +1,22 @@
1
- import { IEditorApi } from '../../types/api/editor-api';
2
- import { ISelectHandler } from '../../interfaces/handler/select-handler';
3
- import { IEditorStore } from '../../interfaces/store/editor-store';
1
+ import { ISelectHandler } from '../../interfaces/handler';
2
+ import { ISelectStore } from '../../interfaces/store';
3
+ import { ISceneApi, ICameraApi, IRaycastApi } from '../../interfaces/api';
4
4
  import { SelectMode } from '@planara/types';
5
- import { EditorEvents } from '../../events/editor-events';
6
- import { EventTopics } from '../../events/event-topics';
7
- import { SelectEventType } from '../../types/event/select-event-type';
5
+ import { SelectEventType } from '../../types/event';
6
+ import { EditorEvents, EventTopics } from '../../events';
8
7
  /**
9
8
  * Хендлер для выборки ребер.
10
9
  * Управляет сценой через payload события рендерера.
11
10
  * Обрабатывает hover и click.
12
11
  * Меняет цвет грани конкретной модели из payload, в случае null возвращает исходное состояние.
12
+ *
13
13
  * @internal
14
+ * @class
14
15
  */
15
16
  export declare class EdgeSelectHandler implements ISelectHandler {
16
- private _api;
17
+ private _sceneApi;
18
+ private _cameraApi;
19
+ private _raycastApi;
17
20
  private _store;
18
21
  /** Режим, которым управляет хендлер, нужен только менеджеру */
19
22
  readonly mode: SelectMode;
@@ -29,7 +32,7 @@ export declare class EdgeSelectHandler implements ISelectHandler {
29
32
  private readonly _hoverColor;
30
33
  /** Цвет выделенного ребра */
31
34
  private readonly _selectColor;
32
- constructor(_api: IEditorApi, _store: IEditorStore);
35
+ constructor(_sceneApi: ISceneApi, _cameraApi: ICameraApi, _raycastApi: IRaycastApi, _store: ISelectStore);
33
36
  /** Обработка текущего режима выборки. */
34
37
  handle(payload: EditorEvents[EventTopics.SelectHover] | EditorEvents[EventTopics.SelectClick], type: SelectEventType): void;
35
38
  /** Откат текущего режима выборки */
@@ -1 +1 @@
1
- {"version":3,"file":"edge-select-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/select/edge-select-handler.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAC9E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAExE,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAOtE;;;;;;GAMG;AACH,qBACa,iBAAkB,YAAW,cAAc;IAqB7B,OAAO,CAAC,IAAI;IACX,OAAO,CAAC,MAAM;IArBxC,+DAA+D;IAC/D,SAAgB,IAAI,EAAE,UAAU,CAAmB;IAEnD,gCAAgC;IAChC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;IACxC,+BAA+B;IAC/B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAa;IAEzC,iEAAiE;IACjE,OAAO,CAAC,QAAQ,CAA2D;IAC3E,gEAAgE;IAChE,OAAO,CAAC,SAAS,CAA2D;IAG5E,sCAAsC;IACtC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAe;IAC3C,6BAA6B;IAC7B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAgB;gBAGZ,IAAI,EAAE,UAAU,EACf,MAAM,EAAE,YAAY;IActD,yCAAyC;IAClC,MAAM,CACX,OAAO,EAAE,YAAY,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,YAAY,CAAC,WAAW,CAAC,WAAW,CAAC,EACtF,IAAI,EAAE,eAAe,GACpB,IAAI;IAoEP,oCAAoC;IAC7B,QAAQ,IAAI,IAAI;IAUvB,mFAAmF;IAC5E,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IActC;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAyBxB,2EAA2E;IAC3E,OAAO,CAAC,kBAAkB;IAkB1B,OAAO,CAAC,KAAK;IAOb,qEAAqE;IACrE,OAAO,CAAC,6BAA6B;IAsCrC,wEAAwE;IACxE,OAAO,CAAC,oBAAoB;CA2E7B"}
1
+ {"version":3,"file":"edge-select-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/select/edge-select-handler.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE3E,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhD,OAAO,EAAE,KAAK,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAM1D;;;;;;;;GAQG;AACH,qBACa,iBAAkB,YAAW,cAAc;IAqB/B,OAAO,CAAC,SAAS;IAChB,OAAO,CAAC,UAAU;IACjB,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,MAAM;IAvBvC,+DAA+D;IAC/D,SAAgB,IAAI,EAAE,UAAU,CAAmB;IAEnD,gCAAgC;IAChC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;IACxC,+BAA+B;IAC/B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAa;IAEzC,iEAAiE;IACjE,OAAO,CAAC,QAAQ,CAA2D;IAC3E,gEAAgE;IAChE,OAAO,CAAC,SAAS,CAA2D;IAG5E,sCAAsC;IACtC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAe;IAC3C,6BAA6B;IAC7B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAgB;gBAGd,SAAS,EAAE,SAAS,EACnB,UAAU,EAAE,UAAU,EACrB,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,YAAY;IAcrD,yCAAyC;IAClC,MAAM,CACX,OAAO,EAAE,YAAY,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,YAAY,CAAC,WAAW,CAAC,WAAW,CAAC,EACtF,IAAI,EAAE,eAAe,GACpB,IAAI;IAoEP,oCAAoC;IAC7B,QAAQ,IAAI,IAAI;IAUvB,mFAAmF;IAC5E,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IActC;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAyBxB,2EAA2E;IAC3E,OAAO,CAAC,kBAAkB;IAkB1B,OAAO,CAAC,KAAK;IAOb,qEAAqE;IACrE,OAAO,CAAC,6BAA6B;IAsCrC,wEAAwE;IACxE,OAAO,CAAC,oBAAoB;CA2E7B"}
@@ -1,19 +1,22 @@
1
- import { ISelectHandler } from '../../interfaces/handler/select-handler';
2
- import { IEditorStore } from '../../interfaces/store/editor-store';
3
- import { IEditorApi } from '../../types/api/editor-api';
1
+ import { ISelectHandler } from '../../interfaces/handler';
2
+ import { ISelectStore } from '../../interfaces/store';
3
+ import { ICameraApi, ISceneApi, IRaycastApi } from '../../interfaces/api';
4
4
  import { SelectMode } from '@planara/types';
5
- import { EditorEvents } from '../../events/editor-events';
6
- import { EventTopics } from '../../events/event-topics';
7
- import { SelectEventType } from '../../types/event/select-event-type';
5
+ import { SelectEventType } from '../../types/event';
6
+ import { EditorEvents, EventTopics } from '../../events';
8
7
  /**
9
8
  * Хендлер для выборки граней (faces/triangles).
10
9
  * Управляет сценой через payload события рендерера.
11
10
  * Обрабатывает hover и click.
12
11
  * Меняет цвет грани конкретной модели из payload, в случае null возвращает исходное состояние.
12
+ *
13
13
  * @internal
14
+ * @class
14
15
  */
15
16
  export declare class FaceSelectHandler implements ISelectHandler {
16
- private _api;
17
+ private _cameraApi;
18
+ private _sceneApi;
19
+ private _raycastApi;
17
20
  private _store;
18
21
  /** Режим, которым управляет хендлер, нужен только менеджеру */
19
22
  readonly mode: SelectMode;
@@ -33,7 +36,7 @@ export declare class FaceSelectHandler implements ISelectHandler {
33
36
  private readonly _normalEps;
34
37
  /** Погрешность на принадлежность одной плоскости */
35
38
  private readonly _planeEps;
36
- constructor(_api: IEditorApi, _store: IEditorStore);
39
+ constructor(_cameraApi: ICameraApi, _sceneApi: ISceneApi, _raycastApi: IRaycastApi, _store: ISelectStore);
37
40
  /** Обработка текущего режима выборки. */
38
41
  handle(payload: EditorEvents[EventTopics.SelectHover] | EditorEvents[EventTopics.SelectClick], type: SelectEventType): void;
39
42
  /** Откат текущего режима выборки */
@@ -1 +1 @@
1
- {"version":3,"file":"face-select-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/select/face-select-handler.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAC9E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAE7D,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAG5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAyBtE;;;;;;GAMG;AACH,qBACa,iBAAkB,YAAW,cAAc;IA+B7B,OAAO,CAAC,IAAI;IACX,OAAO,CAAC,MAAM;IA/BxC,+DAA+D;IAC/D,SAAgB,IAAI,EAAE,UAAU,CAAmB;IAEnD,+BAA+B;IAC/B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;IACxC,8BAA8B;IAC9B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAa;IAMzC,wDAAwD;IACxD,OAAO,CAAC,QAAQ,CAA0B;IAC1C,uDAAuD;IACvD,OAAO,CAAC,SAAS,CAA0B;IAG3C,sCAAsC;IACtC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAe;IAC3C,6BAA6B;IAC7B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAgB;IAG7C,wCAAwC;IACxC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAQ;IACnC,oDAAoD;IACpD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAQ;gBAGD,IAAI,EAAE,UAAU,EACf,MAAM,EAAE,YAAY;IActD,yCAAyC;IAClC,MAAM,CACX,OAAO,EAAE,YAAY,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,YAAY,CAAC,WAAW,CAAC,WAAW,CAAC,EACtF,IAAI,EAAE,eAAe,GACpB,IAAI;IAyEP,oCAAoC;IAC7B,QAAQ,IAAI,IAAI;IAWvB,mFAAmF;IAC5E,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAatC;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IA0BxB;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAuGzB,6EAA6E;IAC7E,OAAO,CAAC,oBAAoB;IA8C5B,uCAAuC;IACvC,OAAO,CAAC,KAAK;IAUb,6DAA6D;IAC7D,OAAO,CAAC,oBAAoB;IAgB5B;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IA8BxB,iDAAiD;IACjD,OAAO,CAAC,SAAS;IAQjB,0DAA0D;IAC1D,OAAO,CAAC,uBAAuB;IA6C/B,kDAAkD;IAClD,OAAO,CAAC,mBAAmB;IAO3B,+DAA+D;IAC/D,OAAO,CAAC,WAAW;IAInB,0CAA0C;IAC1C,OAAO,CAAC,UAAU;IAOlB;;;;OAIG;IACH,OAAO,CAAC,aAAa;IA0BrB,wCAAwC;IACxC,OAAO,CAAC,wBAAwB;IAOhC,OAAO,CAAC,sBAAsB;IAqE9B,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,sBAAsB;CAiC/B"}
1
+ {"version":3,"file":"face-select-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/select/face-select-handler.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE3E,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhD,OAAO,EAAE,KAAK,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAY1D;;;;;;;;GAQG;AACH,qBACa,iBAAkB,YAAW,cAAc;IA+B9B,OAAO,CAAC,UAAU;IACnB,OAAO,CAAC,SAAS;IACf,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,MAAM;IAjCvC,+DAA+D;IAC/D,SAAgB,IAAI,EAAE,UAAU,CAAmB;IAEnD,+BAA+B;IAC/B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAa;IACxC,8BAA8B;IAC9B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAa;IAMzC,wDAAwD;IACxD,OAAO,CAAC,QAAQ,CAA0B;IAC1C,uDAAuD;IACvD,OAAO,CAAC,SAAS,CAA0B;IAG3C,sCAAsC;IACtC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAe;IAC3C,6BAA6B;IAC7B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAgB;IAG7C,wCAAwC;IACxC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAQ;IACnC,oDAAoD;IACpD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAQ;gBAGF,UAAU,EAAE,UAAU,EACvB,SAAS,EAAE,SAAS,EAClB,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,YAAY;IAcrD,yCAAyC;IAClC,MAAM,CACX,OAAO,EAAE,YAAY,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,YAAY,CAAC,WAAW,CAAC,WAAW,CAAC,EACtF,IAAI,EAAE,eAAe,GACpB,IAAI;IAyEP,oCAAoC;IAC7B,QAAQ,IAAI,IAAI;IAWvB,mFAAmF;IAC5E,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAatC;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;IA0BxB;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAuGzB,6EAA6E;IAC7E,OAAO,CAAC,oBAAoB;IA8C5B,uCAAuC;IACvC,OAAO,CAAC,KAAK;IAUb,6DAA6D;IAC7D,OAAO,CAAC,oBAAoB;IAgB5B;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IA8BxB,iDAAiD;IACjD,OAAO,CAAC,SAAS;IAQjB,0DAA0D;IAC1D,OAAO,CAAC,uBAAuB;IA6C/B,kDAAkD;IAClD,OAAO,CAAC,mBAAmB;IAO3B,+DAA+D;IAC/D,OAAO,CAAC,WAAW;IAInB,0CAA0C;IAC1C,OAAO,CAAC,UAAU;IAOlB;;;;OAIG;IACH,OAAO,CAAC,aAAa;IA0BrB,wCAAwC;IACxC,OAAO,CAAC,wBAAwB;IAOhC,OAAO,CAAC,sBAAsB;IAqE9B,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,sBAAsB;CAiC/B"}
@@ -0,0 +1,5 @@
1
+ export * from './edge-select-handler';
2
+ export * from './face-select-handler';
3
+ export * from './mesh-select-handler';
4
+ export * from './vertex-select-handler';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/handlers/select/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,uBAAuB,CAAC;AACtC,cAAc,yBAAyB,CAAC"}
@@ -1,16 +1,17 @@
1
- import { ISelectHandler } from '../../interfaces/handler/select-handler';
2
- import { IEditorStore } from '../../interfaces/store/editor-store';
3
- import { IRaycastAPI } from '../../interfaces/api/raycast-api';
1
+ import { ISelectHandler } from '../../interfaces/handler';
2
+ import { ISelectStore } from '../../interfaces/store';
3
+ import { IRaycastApi } from '../../interfaces/api';
4
4
  import { SelectMode } from '@planara/types';
5
- import { EditorEvents } from '../../events/editor-events';
6
- import { EventTopics } from '../../events/event-topics';
7
- import { SelectEventType } from '../../types/event/select-event-type';
5
+ import { SelectEventType } from '../../types/event';
6
+ import { EditorEvents, EventTopics } from '../../events';
8
7
  /**
9
8
  * Хендлер для выборки моделей.
10
9
  * Управляет сценой через payload события рендерера.
11
10
  * Обрабатывает hover и click.
12
11
  * Меняет цвет ребер конкретной модели из payload, в случае null возвращает исходное состояние.
12
+ *
13
13
  * @internal
14
+ * @class
14
15
  */
15
16
  export declare class MeshSelectHandler implements ISelectHandler {
16
17
  private _api;
@@ -27,7 +28,7 @@ export declare class MeshSelectHandler implements ISelectHandler {
27
28
  private readonly _selectColor;
28
29
  /** Исходные цвета материалов линий для отката */
29
30
  private readonly _origLineColors;
30
- constructor(_api: IRaycastAPI, _store: IEditorStore);
31
+ constructor(_api: IRaycastApi, _store: ISelectStore);
31
32
  handle(payload: EditorEvents[EventTopics.SelectHover] | EditorEvents[EventTopics.SelectClick], type: SelectEventType): void;
32
33
  rollback(): void;
33
34
  /** Освобождает ресурсы хендлера, удаляет слушатели и очищает внутренние данные. */
@@ -1 +1 @@
1
- {"version":3,"file":"mesh-select-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/select/mesh-select-handler.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAC9E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAEpE,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAItE;;;;;;GAMG;AACH,qBACa,iBAAkB,YAAW,cAAc;IAkB7B,OAAO,CAAC,IAAI;IACX,OAAO,CAAC,MAAM;IAlBxC,+DAA+D;IAC/D,SAAgB,IAAI,EAAE,UAAU,CAAmB;IAEnD,kDAAkD;IAClD,OAAO,CAAC,YAAY,CAA2B;IAC/C,8CAA8C;IAC9C,OAAO,CAAC,aAAa,CAA2B;IAGhD,iDAAiD;IACjD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAe;IAC3C,uCAAuC;IACvC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAgB;IAC7C,iDAAiD;IACjD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkD;gBAGjD,IAAI,EAAE,WAAW,EAChB,MAAM,EAAE,YAAY;IAG/C,MAAM,CACX,OAAO,EAAE,YAAY,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,YAAY,CAAC,WAAW,CAAC,WAAW,CAAC,EACtF,IAAI,EAAE,eAAe,GACpB,IAAI;IAuDA,QAAQ,IAAI,IAAI;IAUvB,mFAAmF;IAC5E,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAItC;;OAEG;IACH,OAAO,CAAC,WAAW;IAenB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;CAa3B"}
1
+ {"version":3,"file":"mesh-select-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/select/mesh-select-handler.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhD,OAAO,EAAE,KAAK,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAI1D;;;;;;;;GAQG;AACH,qBACa,iBAAkB,YAAW,cAAc;IAkB7B,OAAO,CAAC,IAAI;IACZ,OAAO,CAAC,MAAM;IAlBvC,+DAA+D;IAC/D,SAAgB,IAAI,EAAE,UAAU,CAAmB;IAEnD,kDAAkD;IAClD,OAAO,CAAC,YAAY,CAA2B;IAC/C,8CAA8C;IAC9C,OAAO,CAAC,aAAa,CAA2B;IAGhD,iDAAiD;IACjD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAe;IAC3C,uCAAuC;IACvC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAgB;IAC7C,iDAAiD;IACjD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkD;gBAGjD,IAAI,EAAE,WAAW,EACjB,MAAM,EAAE,YAAY;IAG9C,MAAM,CACX,OAAO,EAAE,YAAY,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,YAAY,CAAC,WAAW,CAAC,WAAW,CAAC,EACtF,IAAI,EAAE,eAAe,GACpB,IAAI;IAuDA,QAAQ,IAAI,IAAI;IAUvB,mFAAmF;IAC5E,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAItC;;OAEG;IACH,OAAO,CAAC,WAAW;IAenB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;CAa3B"}
@@ -1,19 +1,22 @@
1
- import { IEditorApi } from '../../types/api/editor-api';
2
- import { ISelectHandler } from '../../interfaces/handler/select-handler';
3
- import { IEditorStore } from '../../interfaces/store/editor-store';
1
+ import { ISelectHandler } from '../../interfaces/handler';
2
+ import { ISelectStore } from '../../interfaces/store';
3
+ import { ICameraApi, ISceneApi, IRaycastApi } from '../../interfaces/api';
4
4
  import { SelectMode } from '@planara/types';
5
- import { EditorEvents } from '../../events/editor-events';
6
- import { EventTopics } from '../../events/event-topics';
7
- import { SelectEventType } from '../../types/event/select-event-type';
5
+ import { SelectEventType } from '../../types/event';
6
+ import { EditorEvents, EventTopics } from '../../events';
8
7
  /**
9
8
  * Хендлер для выборки вершин.
10
9
  * Управляет сценой через payload события рендерера.
11
10
  * Обрабатывает hover и click.
12
11
  * Меняет цвет вершины конкретной модели из payload, в случае null возвращает исходное состояние.
12
+ *
13
13
  * @internal
14
+ * @class
14
15
  */
15
16
  export declare class VertexSelectHandler implements ISelectHandler {
16
- private _api;
17
+ private _cameraApi;
18
+ private _sceneApi;
19
+ private _raycastApi;
17
20
  private _store;
18
21
  /** Режим, которым управляет хендлер, нужен только менеджеру */
19
22
  readonly mode: SelectMode;
@@ -27,7 +30,7 @@ export declare class VertexSelectHandler implements ISelectHandler {
27
30
  private readonly _hoverColor;
28
31
  /** Цвет выделенного ребра */
29
32
  private readonly _selectColor;
30
- constructor(_api: IEditorApi, _store: IEditorStore);
33
+ constructor(_cameraApi: ICameraApi, _sceneApi: ISceneApi, _raycastApi: IRaycastApi, _store: ISelectStore);
31
34
  handle(payload: EditorEvents[EventTopics.SelectHover] | EditorEvents[EventTopics.SelectClick], type: SelectEventType): void;
32
35
  rollback(): void;
33
36
  dispose(): Promise<void> | void;
@@ -1 +1 @@
1
- {"version":3,"file":"vertex-select-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/select/vertex-select-handler.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AAC9E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAExE,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAQtE;;;;;;GAMG;AACH,qBACa,mBAAoB,YAAW,cAAc;IAmB/B,OAAO,CAAC,IAAI;IACX,OAAO,CAAC,MAAM;IAnBxC,+DAA+D;IAC/D,SAAgB,IAAI,EAAE,UAAU,CAAqB;IAErD,OAAO,CAAC,QAAQ,CAAwD;IACxE,OAAO,CAAC,SAAS,CAAwD;IAEzE,kCAAkC;IAClC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAC5C,iCAAiC;IACjC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAe;IAG7C,sCAAsC;IACtC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAe;IAC3C,6BAA6B;IAC7B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAgB;gBAGZ,IAAI,EAAE,UAAU,EACf,MAAM,EAAE,YAAY;IAc/C,MAAM,CACX,OAAO,EAAE,YAAY,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,YAAY,CAAC,WAAW,CAAC,WAAW,CAAC,EACtF,IAAI,EAAE,eAAe,GACpB,IAAI;IAqEA,QAAQ,IAAI,IAAI;IAUhB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAetC,OAAO,CAAC,kBAAkB;IA2B1B,iFAAiF;IACjF,OAAO,CAAC,iBAAiB;IAczB,OAAO,CAAC,KAAK;IAOb,mFAAmF;IACnF,OAAO,CAAC,sBAAsB;IAuE9B,iDAAiD;IACjD,OAAO,CAAC,oBAAoB;CA2B7B"}
1
+ {"version":3,"file":"vertex-select-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/select/vertex-select-handler.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE3E,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhD,OAAO,EAAE,KAAK,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAM1D;;;;;;;;GAQG;AACH,qBACa,mBAAoB,YAAW,cAAc;IAmBhC,OAAO,CAAC,UAAU;IACnB,OAAO,CAAC,SAAS;IACf,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,MAAM;IArBvC,+DAA+D;IAC/D,SAAgB,IAAI,EAAE,UAAU,CAAqB;IAErD,OAAO,CAAC,QAAQ,CAAwD;IACxE,OAAO,CAAC,SAAS,CAAwD;IAEzE,kCAAkC;IAClC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAC5C,iCAAiC;IACjC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAe;IAG7C,sCAAsC;IACtC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAe;IAC3C,6BAA6B;IAC7B,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAgB;gBAGb,UAAU,EAAE,UAAU,EACvB,SAAS,EAAE,SAAS,EAClB,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,YAAY;IAc9C,MAAM,CACX,OAAO,EAAE,YAAY,CAAC,WAAW,CAAC,WAAW,CAAC,GAAG,YAAY,CAAC,WAAW,CAAC,WAAW,CAAC,EACtF,IAAI,EAAE,eAAe,GACpB,IAAI;IAqEA,QAAQ,IAAI,IAAI;IAUhB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAetC,OAAO,CAAC,kBAAkB;IA2B1B,iFAAiF;IACjF,OAAO,CAAC,iBAAiB;IAczB,OAAO,CAAC,KAAK;IAOb,mFAAmF;IACnF,OAAO,CAAC,sBAAsB;IAuE9B,iDAAiD;IACjD,OAAO,CAAC,oBAAoB;CA2B7B"}
@@ -1,17 +1,20 @@
1
1
  import { ToolType } from '@planara/types';
2
- import { ITransformHelpersApi } from '../../interfaces/api/transform-helpers-api';
3
- import { IToolHandler } from '../../interfaces/handler/tool-handler';
4
- import { IEditorStore } from '../../interfaces/store/editor-store';
2
+ import { ITransformApi } from '../../interfaces/api';
3
+ import { IToolHandler } from '../../interfaces/handler';
4
+ import { ITransformStore } from '../../interfaces/store';
5
5
  /**
6
6
  * Базовый класс для инструментов
7
+ *
7
8
  * @internal
9
+ * @class
10
+ * @abstract
8
11
  */
9
12
  export declare abstract class BaseToolHandler implements IToolHandler {
10
- protected api: ITransformHelpersApi;
11
- protected store: IEditorStore;
13
+ protected api: ITransformApi;
14
+ protected store: ITransformStore;
12
15
  abstract readonly mode: ToolType;
13
- private _unsubscribeTransform;
14
- protected constructor(api: ITransformHelpersApi, store: IEditorStore);
16
+ private readonly _unsubscribeTransform;
17
+ protected constructor(api: ITransformApi, store: ITransformStore);
15
18
  /**
16
19
  * Обновляет состояние инструмента под текущее выделение.
17
20
  */
@@ -1 +1 @@
1
- {"version":3,"file":"base-tool-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/tool/base-tool-handler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AACvF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAExE;;;GAGG;AACH,8BAAsB,eAAgB,YAAW,YAAY;IAMzD,SAAS,CAAC,GAAG,EAAE,oBAAoB;IACnC,SAAS,CAAC,KAAK,EAAE,YAAY;IAN/B,kBAAyB,IAAI,EAAE,QAAQ,CAAC;IAExC,OAAO,CAAC,qBAAqB,CAAa;IAE1C,SAAS,aACG,GAAG,EAAE,oBAAoB,EACzB,KAAK,EAAE,YAAY;IAU/B;;OAEG;IACI,MAAM,IAAI,IAAI;IAarB;;;;OAIG;IACI,QAAQ,IAAI,IAAI;IAIvB,sCAAsC;IAC/B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;CAOvC"}
1
+ {"version":3,"file":"base-tool-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/tool/base-tool-handler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE1D;;;;;;GAMG;AACH,8BAAsB,eAAgB,YAAW,YAAY;IAMzD,SAAS,CAAC,GAAG,EAAE,aAAa;IAC5B,SAAS,CAAC,KAAK,EAAE,eAAe;IANlC,kBAAyB,IAAI,EAAE,QAAQ,CAAC;IAExC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAa;IAEnD,SAAS,aACG,GAAG,EAAE,aAAa,EAClB,KAAK,EAAE,eAAe;IAUlC;;OAEG;IACI,MAAM,IAAI,IAAI;IAarB;;;;OAIG;IACI,QAAQ,IAAI,IAAI;IAIvB,sCAAsC;IAC/B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;CAOvC"}
@@ -0,0 +1,4 @@
1
+ export * from './rotate-tool-handler';
2
+ export * from './scale-tool-handler';
3
+ export * from './translate-tool-handler';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/handlers/tool/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { BaseToolHandler } from './base-tool-handler';
2
- import { ITransformHelpersApi } from '../../interfaces/api/transform-helpers-api';
3
- import { IEditorStore } from '../../interfaces/store/editor-store';
2
+ import { ITransformApi } from '../../interfaces/api';
3
+ import { ITransformStore } from '../../interfaces/store';
4
4
  import { ToolType } from '@planara/types';
5
5
  /**
6
6
  * Хендлер инструмента «вращение».
@@ -10,11 +10,12 @@ import { ToolType } from '@planara/types';
10
10
  * - прикрепляет к текущему объекту или отцепляет его.
11
11
  *
12
12
  * @internal
13
+ * @class
13
14
  * @extends BaseToolHandler
14
15
  */
15
16
  export declare class RotateToolHandler extends BaseToolHandler {
16
17
  /** Инструмент, которым управляет хендлер, нужен только менеджеру */
17
18
  readonly mode: ToolType;
18
- constructor(api: ITransformHelpersApi, store: IEditorStore);
19
+ constructor(api: ITransformApi, store: ITransformStore);
19
20
  }
20
21
  //# sourceMappingURL=rotate-tool-handler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"rotate-tool-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/tool/rotate-tool-handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AACvF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAExE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAI1C;;;;;;;;;GASG;AACH,qBACa,iBAAkB,SAAQ,eAAe;IACpD,oEAAoE;IACpE,SAAgB,IAAI,EAAE,QAAQ,CAAmB;gBAGxB,GAAG,EAAE,oBAAoB,EACxB,KAAK,EAAE,YAAY;CAI9C"}
1
+ {"version":3,"file":"rotate-tool-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/tool/rotate-tool-handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE1D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAI1C;;;;;;;;;;GAUG;AACH,qBACa,iBAAkB,SAAQ,eAAe;IACpD,oEAAoE;IACpE,SAAgB,IAAI,EAAE,QAAQ,CAAmB;gBAGtB,GAAG,EAAE,aAAa,EACpB,KAAK,EAAE,eAAe;CAIhD"}
@@ -1,6 +1,6 @@
1
1
  import { BaseToolHandler } from './base-tool-handler';
2
- import { ITransformHelpersApi } from '../../interfaces/api/transform-helpers-api';
3
- import { IEditorStore } from '../../interfaces/store/editor-store';
2
+ import { ITransformApi } from '../../interfaces/api';
3
+ import { ITransformStore } from '../../interfaces/store';
4
4
  import { ToolType } from '@planara/types';
5
5
  /**
6
6
  * Хендлер инструмента «масштабирование».
@@ -10,11 +10,12 @@ import { ToolType } from '@planara/types';
10
10
  * - прикрепляет к текущему объекту или отцепляет его.
11
11
  *
12
12
  * @internal
13
+ * @class
13
14
  * @extends BaseToolHandler
14
15
  */
15
16
  export declare class ScaleToolHandler extends BaseToolHandler {
16
17
  /** Инструмент, которым управляет хендлер, нужен только менеджеру */
17
18
  readonly mode: ToolType;
18
- constructor(api: ITransformHelpersApi, store: IEditorStore);
19
+ constructor(api: ITransformApi, store: ITransformStore);
19
20
  }
20
21
  //# sourceMappingURL=scale-tool-handler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scale-tool-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/tool/scale-tool-handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AACvF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAExE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAI1C;;;;;;;;;GASG;AACH,qBACa,gBAAiB,SAAQ,eAAe;IACnD,oEAAoE;IACpE,SAAgB,IAAI,EAAE,QAAQ,CAAkB;gBAGvB,GAAG,EAAE,oBAAoB,EACxB,KAAK,EAAE,YAAY;CAI9C"}
1
+ {"version":3,"file":"scale-tool-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/tool/scale-tool-handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE1D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAI1C;;;;;;;;;;GAUG;AACH,qBACa,gBAAiB,SAAQ,eAAe;IACnD,oEAAoE;IACpE,SAAgB,IAAI,EAAE,QAAQ,CAAkB;gBAGrB,GAAG,EAAE,aAAa,EACpB,KAAK,EAAE,eAAe;CAIhD"}
@@ -1,6 +1,6 @@
1
1
  import { BaseToolHandler } from './base-tool-handler';
2
- import { ITransformHelpersApi } from '../../interfaces/api/transform-helpers-api';
3
- import { IEditorStore } from '../../interfaces/store/editor-store';
2
+ import { ITransformApi } from '../../interfaces/api';
3
+ import { ITransformStore } from '../../interfaces/store';
4
4
  import { ToolType } from '@planara/types';
5
5
  /**
6
6
  * Хендлер инструмента «перемещение».
@@ -10,11 +10,12 @@ import { ToolType } from '@planara/types';
10
10
  * - прикрепляет к текущему объекту или отцепляет его.
11
11
  *
12
12
  * @internal
13
+ * @class
13
14
  * @extends BaseToolHandler
14
15
  */
15
16
  export declare class TranslateToolHandler extends BaseToolHandler {
16
17
  /** Инструмент, которым управляет хендлер, нужен только менеджеру */
17
18
  readonly mode: ToolType;
18
- constructor(api: ITransformHelpersApi, store: IEditorStore);
19
+ constructor(api: ITransformApi, store: ITransformStore);
19
20
  }
20
21
  //# sourceMappingURL=translate-tool-handler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"translate-tool-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/tool/translate-tool-handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AACvF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAExE,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAI1C;;;;;;;;;GASG;AACH,qBACa,oBAAqB,SAAQ,eAAe;IACvD,oEAAoE;IACpE,SAAgB,IAAI,EAAE,QAAQ,CAAsB;gBAG3B,GAAG,EAAE,oBAAoB,EACxB,KAAK,EAAE,YAAY;CAI9C"}
1
+ {"version":3,"file":"translate-tool-handler.d.ts","sourceRoot":"","sources":["../../../src/handlers/tool/translate-tool-handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE1D,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAI1C;;;;;;;;;;GAUG;AACH,qBACa,oBAAqB,SAAQ,eAAe;IACvD,oEAAoE;IACpE,SAAgB,IAAI,EAAE,QAAQ,CAAsB;gBAGzB,GAAG,EAAE,aAAa,EACpB,KAAK,EAAE,eAAe;CAIhD"}
@@ -1,30 +1,38 @@
1
+ import { Renderer } from '../core';
1
2
  import { Disposable } from 'tsyringe';
2
- import { DisplayMode, FigureTransform, FigureType, SceneMode, SelectMode, ToolType } from '@planara/types';
3
- import { IDisplayManager } from '../interfaces/manager/display-manager';
4
- import { ISelectManager } from '../interfaces/manager/select-manager';
5
- import { EditorRenderer } from '../core/editor-renderer';
6
- import { IToolManager } from '../interfaces/manager/tool-manager';
7
- import { ISceneManager } from '../interfaces/manager/scene-manager';
8
- import { IEditorStore } from '../interfaces/store/editor-store';
3
+ import { DisplayMode, FigureTransform, FigureType, SelectMode, ToolType, IResponse, ExportSceneResult } from '@planara/types';
4
+ import { IController } from '../interfaces/controller';
5
+ import { IExportStore, ITransformStore } from '../interfaces/store';
6
+ import { IMediator } from '../interfaces/mediator';
9
7
  /**
10
8
  * Хаб для управления редактированием
11
9
  * @public
12
10
  */
13
11
  export declare class EditorHub implements Disposable {
14
- private _displayManager;
15
- private _selectManager;
16
- private _toolManager;
17
- private _sceneManager;
18
12
  private _renderer;
13
+ private _mediator;
19
14
  private _store;
20
- constructor(_displayManager: IDisplayManager, _selectManager: ISelectManager, _toolManager: IToolManager, _sceneManager: ISceneManager, _renderer: EditorRenderer, _store: IEditorStore);
21
- setDisplayMode(mode: DisplayMode): void;
22
- setSceneMode(sceneMode: SceneMode): void;
23
- setSelectMode(mode: SelectMode): void;
24
- setToolMode(mode: ToolType): void;
15
+ private _exportStore;
16
+ private _controller;
17
+ constructor(_renderer: Renderer, _mediator: IMediator, _store: ITransformStore, _exportStore: IExportStore, _controller: IController);
18
+ setDisplayMode(mode: DisplayMode): IResponse | null;
19
+ setSelectMode(mode: SelectMode): IResponse | null;
20
+ setToolMode(mode: ToolType): IResponse | null;
21
+ addFigure(figure: FigureType): IResponse | null;
22
+ deleteFigure(): IResponse | null;
23
+ loadFigure(content: string): IResponse | null;
24
+ loadScene(content: string): IResponse | null;
25
+ exportScene(): ExportSceneResult;
25
26
  resizeRenderer(): void;
26
- updateRenderer(): void;
27
- addFigure(mode: SceneMode, figure: FigureType): void;
27
+ /**
28
+ * Запускает редактор.
29
+ * Вызывается после создания хаба.
30
+ */
31
+ start(): void;
32
+ /**
33
+ * Останавливает редактор.
34
+ */
35
+ stop(): void;
28
36
  getSelectionStats(): FigureTransform | null;
29
37
  onSelectionStatsChange(listener: () => void): () => void;
30
38
  dispose(): Promise<void> | void;
@@ -1 +1 @@
1
- {"version":3,"file":"editor-hub.d.ts","sourceRoot":"","sources":["../../src/hub/editor-hub.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,UAAU,EAAsB,MAAM,UAAU,CAAC;AAE/D,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,UAAU,EACf,SAAS,EACT,UAAU,EACV,QAAQ,EACT,MAAM,gBAAgB,CAAC;AAExB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAErE;;;GAGG;AACH,qBACa,SAAU,YAAW,UAAU;IAEb,OAAO,CAAC,eAAe;IACxB,OAAO,CAAC,cAAc;IACxB,OAAO,CAAC,YAAY;IACnB,OAAO,CAAC,aAAa;IACpB,OAAO,CAAC,SAAS;IACnB,OAAO,CAAC,MAAM;gBALH,eAAe,EAAE,eAAe,EACjC,cAAc,EAAE,cAAc,EAChC,YAAY,EAAE,YAAY,EACzB,aAAa,EAAE,aAAa,EAC3B,SAAS,EAAE,cAAc,EAC3B,MAAM,EAAE,YAAY;IAM/C,cAAc,CAAC,IAAI,EAAE,WAAW;IAIhC,YAAY,CAAC,SAAS,EAAE,SAAS;IAIjC,aAAa,CAAC,IAAI,EAAE,UAAU;IAI9B,WAAW,CAAC,IAAI,EAAE,QAAQ;IAI1B,cAAc;IAId,cAAc;IAId,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU;IAI7C,iBAAiB,IAAI,eAAe,GAAG,IAAI;IAI3C,sBAAsB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAexD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;CAKvC"}
1
+ {"version":3,"file":"editor-hub.d.ts","sourceRoot":"","sources":["../../src/hub/editor-hub.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAEvC,OAAO,EAAE,KAAK,UAAU,EAAsB,MAAM,UAAU,CAAC;AAE/D,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,UAAU,EAEf,UAAU,EACV,QAAQ,EACR,KAAK,SAAS,EACd,KAAK,iBAAiB,EACvB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACxE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD;;;GAGG;AACH,qBACa,SAAU,YAAW,UAAU;IAEpB,OAAO,CAAC,SAAS;IAChB,OAAO,CAAC,SAAS;IACf,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,YAAY;IACpB,OAAO,CAAC,WAAW;gBAJd,SAAS,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,EAClB,MAAM,EAAE,eAAe,EACvB,YAAY,EAAE,YAAY,EAC1B,WAAW,EAAE,WAAW;IAMlD,cAAc,CAAC,IAAI,EAAE,WAAW,GAAG,SAAS,GAAG,IAAI;IAOnD,aAAa,CAAC,IAAI,EAAE,UAAU,GAAG,SAAS,GAAG,IAAI;IAOjD,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,IAAI;IAO7C,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,IAAI;IAO/C,YAAY,IAAI,SAAS,GAAG,IAAI;IAOhC,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAO7C,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAO5C,WAAW,IAAI,iBAAiB;IAchC,cAAc;IAIrB;;;OAGG;IACI,KAAK,IAAI,IAAI;IAIpB;;OAEG;IACI,IAAI,IAAI,IAAI;IAIZ,iBAAiB,IAAI,eAAe,GAAG,IAAI;IAI3C,sBAAsB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAexD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;CAGvC"}
@@ -0,0 +1,26 @@
1
+ import { EditorHub } from './editor-hub';
2
+ import { ViewerHub } from './viewer-hub';
3
+ import { RendererConfigInput } from '@planara/types';
4
+ /**
5
+ * Инициализирует редактор и возвращает хаб.
6
+ * Вызывать один раз при старте (когда есть canvas).
7
+ * @public
8
+ */
9
+ export declare const createEditorHub: (canvas: HTMLCanvasElement, rendererConfig?: RendererConfigInput) => EditorHub;
10
+ /**
11
+ * Возвращает уже созданный хаб, если редактор инициализирован.
12
+ * @public
13
+ */
14
+ export declare const getEditorHub: () => EditorHub;
15
+ /**
16
+ * Инициализирует вьювер и возвращает хаб.
17
+ * Вызывать один раз при старте (когда есть canvas).
18
+ * @public
19
+ */
20
+ export declare const createViewerHub: (canvas: HTMLCanvasElement, rendererConfig?: RendererConfigInput) => ViewerHub;
21
+ /**
22
+ * Возвращает уже созданный хаб, если редактор инициализирован.
23
+ * @public
24
+ */
25
+ export declare const getViewerHub: () => ViewerHub;
26
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hub/index.ts"],"names":[],"mappings":"AACA,OAAO,kBAAkB,CAAC;AAI1B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAK1D;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAC1B,QAAQ,iBAAiB,EACzB,iBAAiB,mBAAmB,KACnC,SAOF,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,YAAY,QAAO,SAM/B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAC1B,QAAQ,iBAAiB,EACzB,iBAAiB,mBAAmB,KACnC,SAOF,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,YAAY,QAAO,SAM/B,CAAC"}
@@ -0,0 +1,30 @@
1
+ import { Renderer } from '../core';
2
+ import { Disposable } from 'tsyringe';
3
+ import { FigureType, IResponse } from '@planara/types';
4
+ import { IController } from '../interfaces/controller';
5
+ import { IMediator } from '../interfaces/mediator';
6
+ /**
7
+ * Хаб для управления вьювером
8
+ * @public
9
+ */
10
+ export declare class ViewerHub implements Disposable {
11
+ private _renderer;
12
+ private _mediator;
13
+ private _controller;
14
+ constructor(_renderer: Renderer, _mediator: IMediator, _controller: IController);
15
+ addFigure(figure: FigureType): IResponse | null;
16
+ loadFigure(content: string): IResponse | null;
17
+ loadScene(content: string): IResponse | null;
18
+ resizeRenderer(): void;
19
+ /**
20
+ * Запускает вьювер.
21
+ * Вызывается после создания хаба.
22
+ */
23
+ start(): void;
24
+ /**
25
+ * Останавливает вьювер.
26
+ */
27
+ stop(): void;
28
+ dispose(): Promise<void> | void;
29
+ }
30
+ //# sourceMappingURL=viewer-hub.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viewer-hub.d.ts","sourceRoot":"","sources":["../../src/hub/viewer-hub.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAEvC,OAAO,EAAE,KAAK,UAAU,EAAsB,MAAM,UAAU,CAAC;AAE/D,OAAO,EAAE,KAAK,UAAU,EAAa,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAG5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD;;;GAGG;AACH,qBACa,SAAU,YAAW,UAAU;IAEpB,OAAO,CAAC,SAAS;IAChB,OAAO,CAAC,SAAS;IACf,OAAO,CAAC,WAAW;gBAFd,SAAS,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,EAClB,WAAW,EAAE,WAAW;IAGlD,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,IAAI;IAO/C,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAO7C,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAO5C,cAAc;IAIrB;;;OAGG;IACI,KAAK,IAAI,IAAI;IAIpB;;OAEG;IACI,IAAI,IAAI,IAAI;IAIZ,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;CAGvC"}