@crystaldesign/diva-web-planner-react 26.10.0-beta.2 → 26.10.0-beta.21

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 (333) hide show
  1. package/build/esm/{Planner2DGrid-94bb7225.js → Planner2DGrid-8f66a5dd.js} +1 -1
  2. package/build/esm/Planner3DImage-adf0d848.js +360 -0
  3. package/build/esm/{UnlockCard-a3186e35.js → UnlockCard-e4fccd2a.js} +1 -1
  4. package/build/esm/{index-a420eb0e.js → index-0059578b.js} +1 -1
  5. package/build/esm/{index-9927f996.js → index-00cc6880.js} +2 -2
  6. package/build/esm/{index-102c92f8.js → index-0188bfbf.js} +3 -3
  7. package/build/esm/{index-4d007181.js → index-0243efdb.js} +1 -1
  8. package/build/esm/{index-4e8a3899.js → index-0272fd14.js} +8 -8
  9. package/build/esm/{index-7e1a9f09.js → index-02dafc6e.js} +5 -5
  10. package/build/esm/{index-546efe95.js → index-02e8d187.js} +1 -1
  11. package/build/esm/{index-df3eebf2.js → index-03446888.js} +68 -68
  12. package/build/esm/{index-123c404d.js → index-04ebda40.js} +1 -1
  13. package/build/esm/{index-a7fdaa54.js → index-05fe55d4.js} +2 -2
  14. package/build/esm/{index-eefa1006.js → index-06517f51.js} +65 -65
  15. package/build/esm/{index-ccdd9628.js → index-076b2113.js} +90 -90
  16. package/build/esm/{index-b54eeaab.js → index-07bb97cb.js} +1 -1
  17. package/build/esm/{index-51bbb400.js → index-081bab8c.js} +1 -1
  18. package/build/esm/{index-4b710ab5.js → index-0efa0dc0.js} +1 -1
  19. package/build/esm/{index-7861693f.js → index-11f21d6c.js} +1 -1
  20. package/build/esm/{index-5ba7e6af.js → index-123f2ac9.js} +2 -2
  21. package/build/esm/{index-9277445c.js → index-134ada0e.js} +1 -1
  22. package/build/esm/{index-11e697e3.js → index-13cdc262.js} +2 -2
  23. package/build/esm/{index-c4b10fb0.js → index-161a6570.js} +73 -73
  24. package/build/esm/{index-d0a5b8ba.js → index-17572538.js} +2 -2
  25. package/build/esm/{index-88ffc65e.js → index-185c3e6f.js} +1 -1
  26. package/build/esm/{index-116bed5e.js → index-1a30dd59.js} +1 -1
  27. package/build/esm/{index-3302d9a1.js → index-1b704bb4.js} +2 -2
  28. package/build/esm/{index-73de38f7.js → index-1c4b34a5.js} +1 -1
  29. package/build/esm/{index-b8c9c331.js → index-210097e1.js} +3 -3
  30. package/build/esm/{index-36edba26.js → index-21b9e394.js} +1 -1
  31. package/build/esm/{index-6c63b3e6.js → index-229dea2f.js} +1 -1
  32. package/build/esm/{index-734c6b50.js → index-24c0bb29.js} +3 -3
  33. package/build/esm/{index-f12ce71a.js → index-252217ac.js} +3 -3
  34. package/build/esm/{index-4d9f0027.js → index-264134d0.js} +1 -1
  35. package/build/esm/{index-3fd99b90.js → index-26e71ad3.js} +19 -26
  36. package/build/esm/{index-263bf224.js → index-27b99a91.js} +18 -18
  37. package/build/esm/{index-d88d6e9c.js → index-28e9c534.js} +3 -3
  38. package/build/esm/{index-dea7c1f9.js → index-2901885f.js} +1 -1
  39. package/build/esm/{index-7e3f39c1.js → index-2a5aa2b8.js} +1 -1
  40. package/build/esm/{index-04890c9e.js → index-2bb282af.js} +3 -3
  41. package/build/esm/{index-a3e6338e.js → index-2e1f823f.js} +1 -1
  42. package/build/esm/{index-b9ff37df.js → index-2f900eac.js} +1 -1
  43. package/build/esm/{index-8e468bed.js → index-2fb02387.js} +1 -1
  44. package/build/esm/{index-9083df15.js → index-31540fe9.js} +1 -1
  45. package/build/esm/{index-be9f85be.js → index-31812a17.js} +3 -3
  46. package/build/esm/{index-97e19f8e.js → index-3236afeb.js} +6 -6
  47. package/build/esm/{index-1abdcdfb.js → index-36b54cb5.js} +14 -29
  48. package/build/esm/{index-a51bb7f4.js → index-3720b609.js} +1 -1
  49. package/build/esm/{index-4abf2dba.js → index-38412543.js} +1 -1
  50. package/build/esm/{index-bc3b6780.js → index-394a947f.js} +1 -1
  51. package/build/esm/{index-db2291c6.js → index-3b5aa9f6.js} +70 -70
  52. package/build/esm/{index-47a6f3e0.js → index-3b5ec60c.js} +3 -3
  53. package/build/esm/{index-feb108b0.js → index-3edc2342.js} +4 -4
  54. package/build/esm/{index-c8b67de2.js → index-426861c4.js} +1 -1
  55. package/build/esm/{index-045f192f.js → index-4272910a.js} +84 -84
  56. package/build/esm/{index-307f14cc.js → index-43df6ae2.js} +19 -21
  57. package/build/esm/{index-3d4f9377.js → index-45b8edcd.js} +1 -1
  58. package/build/esm/{index-b235647c.js → index-4681efe9.js} +18 -25
  59. package/build/esm/{index-ff1caecc.js → index-486efed3.js} +15 -18
  60. package/build/esm/{index-8c80f848.js → index-487a8e90.js} +65 -65
  61. package/build/esm/{index-44ed5fac.js → index-488b0e29.js} +1 -1
  62. package/build/esm/{index-cf5d0a8c.js → index-49b236d7.js} +1 -1
  63. package/build/esm/{index-dc4d9d68.js → index-4a9cd73f.js} +1 -1
  64. package/build/esm/{index-2d780cb6.js → index-4b8e411f.js} +33 -35
  65. package/build/esm/{index-6cb1ee7c.js → index-4cfdc044.js} +1 -1
  66. package/build/esm/{index-b6302c1e.js → index-4d24da1a.js} +1 -1
  67. package/build/esm/{index-1f817c39.js → index-4d684b28.js} +22 -22
  68. package/build/esm/{index-7b5a2379.js → index-4ea9e863.js} +100 -102
  69. package/build/esm/{index-d8e88aaf.js → index-5107b964.js} +2 -2
  70. package/build/esm/{index-4e1e0451.js → index-51e17adc.js} +66 -66
  71. package/build/esm/{index-cf8bd5c0.js → index-5226286b.js} +2 -2
  72. package/build/esm/{index-d122b150.js → index-5ae13c71.js} +1 -1
  73. package/build/esm/{index-46e613bd.js → index-5c847205.js} +4 -4
  74. package/build/esm/{index-7a0070cf.js → index-5dd0e132.js} +2 -2
  75. package/build/esm/{index-934df09f.js → index-5ed700d7.js} +70 -70
  76. package/build/esm/{index-bbf50d39.js → index-5f52b076.js} +1 -1
  77. package/build/esm/{index-4ba402ca.js → index-61d1e5ef.js} +1 -1
  78. package/build/esm/{index-1198d6d3.js → index-63b43058.js} +101 -103
  79. package/build/esm/{index-d075e049.js → index-655fbe18.js} +1 -1
  80. package/build/esm/{index-61a6bfa4.js → index-6742a52a.js} +1 -1
  81. package/build/esm/{index-d6b9e246.js → index-67a49f65.js} +3 -3
  82. package/build/esm/{index-bd489484.js → index-690e9834.js} +2 -2
  83. package/build/esm/{index-e0fd5c7f.js → index-69363726.js} +1 -1
  84. package/build/esm/{index-c3e3fbad.js → index-69ebd4af.js} +18 -20
  85. package/build/esm/{index-f73f47ef.js → index-6bf1f68e.js} +3 -3
  86. package/build/esm/{index-a1e30800.js → index-6c8d15fe.js} +1 -1
  87. package/build/esm/{index-6bacd79f.js → index-6ddd42fd.js} +2 -2
  88. package/build/esm/{index-7ca1efce.js → index-6e35b59d.js} +7 -7
  89. package/build/esm/{index-bd94452a.js → index-6ea07d4d.js} +2 -2
  90. package/build/esm/{index-a6565f4c.js → index-6ea44c7e.js} +3 -3
  91. package/build/esm/{index-e5d3cb19.js → index-6f5742e8.js} +2 -2
  92. package/build/esm/{index-c65475d9.js → index-70e659e2.js} +1 -1
  93. package/build/esm/{index-3e3c8fab.js → index-70f8b0b5.js} +1 -1
  94. package/build/esm/{index-b6fa17cf.js → index-7383d532.js} +1 -1
  95. package/build/esm/{index-d3200694.js → index-73eefcc4.js} +1 -1
  96. package/build/esm/{index-b882455f.js → index-73f20565.js} +1 -1
  97. package/build/esm/{index-91a3594c.js → index-74edaabe.js} +1 -1
  98. package/build/esm/{index-a8fd4e7f.js → index-75fe4874.js} +1 -1
  99. package/build/esm/{index-87b2bac7.js → index-763d069c.js} +1 -1
  100. package/build/esm/{index-44881d66.js → index-77bd2944.js} +66 -66
  101. package/build/esm/{index-5034735c.js → index-7950bd2c.js} +91 -91
  102. package/build/esm/{index-1f4fa0ba.js → index-79a7f1c1.js} +1 -1
  103. package/build/esm/{index-50b01eaf.js → index-79e517ec.js} +5 -5
  104. package/build/esm/{index-3f06170e.js → index-7a70f39a.js} +1 -1
  105. package/build/esm/{index-7e3a3f42.js → index-7b285b28.js} +69 -69
  106. package/build/esm/{index-37d177c3.js → index-7b743c8f.js} +1 -1
  107. package/build/esm/{index-9b3f584a.js → index-7fc266ad.js} +1 -1
  108. package/build/esm/{index-90badb5f.js → index-800406d6.js} +2 -2
  109. package/build/esm/{index-f0d75adc.js → index-8239dfe8.js} +1 -1
  110. package/build/esm/{index-63bf2407.js → index-8333dd6b.js} +6 -13
  111. package/build/esm/{index-45962958.js → index-8353df52.js} +1 -1
  112. package/build/esm/{index-129e477d.js → index-83bcdec0.js} +2 -2
  113. package/build/esm/{index-c2e40e42.js → index-83e650c0.js} +4 -4
  114. package/build/esm/{index-89ee1702.js → index-8573274e.js} +1 -1
  115. package/build/esm/{index-991b7c6c.js → index-86387f42.js} +6 -14
  116. package/build/esm/{index-625fe0c8.js → index-891851b1.js} +1 -1
  117. package/build/esm/{index-1b527938.js → index-892c801a.js} +8 -8
  118. package/build/esm/{index-5f6ab0fc.js → index-8bb74a88.js} +3 -3
  119. package/build/esm/{index-0106b297.js → index-8da68557.js} +1 -1
  120. package/build/esm/{index-96a32e81.js → index-8f25cd19.js} +1 -1
  121. package/build/esm/{index-8cd816ba.js → index-8f54a573.js} +2 -2
  122. package/build/esm/{index-fd5ccbd5.js → index-8f8bc123.js} +1 -1
  123. package/build/esm/{index-fd00469a.js → index-9055e044.js} +71 -71
  124. package/build/esm/{index-e5a99437.js → index-9065c3de.js} +25 -25
  125. package/build/esm/{index-ed2ef3ff.js → index-90f21b23.js} +1 -1
  126. package/build/esm/{index-5cfd1472.js → index-91785596.js} +5 -5
  127. package/build/esm/{index-dfa4943a.js → index-91b4d762.js} +89 -89
  128. package/build/esm/{index-ea8d9687.js → index-92952984.js} +1 -1
  129. package/build/esm/{index-85359ea1.js → index-93f410ba.js} +1 -1
  130. package/build/esm/{index-5dfe4845.js → index-942c1d3c.js} +1 -1
  131. package/build/esm/{index-0ef1a4e9.js → index-945fbbd8.js} +1 -1
  132. package/build/esm/{index-9b48d580.js → index-95258934.js} +3 -3
  133. package/build/esm/{index-e4000e28.js → index-95c5b1e1.js} +67 -67
  134. package/build/esm/{index-8074d518.js → index-994f2755.js} +1 -1
  135. package/build/esm/{index-22b02459.js → index-99925c80.js} +1 -1
  136. package/build/esm/{index-411581b4.js → index-99b6c759.js} +8 -8
  137. package/build/esm/{index-0d0b8533.js → index-9d243434.js} +3 -3
  138. package/build/esm/{index-6bc157de.js → index-9d70e22f.js} +1 -1
  139. package/build/esm/{index-1e15a742.js → index-9dc9eab4.js} +3 -3
  140. package/build/esm/{index-55112cec.js → index-9eeaa296.js} +1 -1
  141. package/build/esm/{index-72a799cf.js → index-a22af695.js} +1 -1
  142. package/build/esm/{index-34e20e32.js → index-a2dc102f.js} +7 -7
  143. package/build/esm/{index-52deb222.js → index-a3085f5b.js} +1 -1
  144. package/build/esm/{index-f1567809.js → index-a449b7b1.js} +2 -2
  145. package/build/esm/{index-bf894659.js → index-a8a5f168.js} +68 -68
  146. package/build/esm/{index-37f4b4c3.js → index-a9bf491a.js} +1 -1
  147. package/build/esm/{index-af6fe09b.js → index-aa9ca651.js} +3 -3
  148. package/build/esm/{index-61013dbc.js → index-ac8ad885.js} +1 -1
  149. package/build/esm/{index-78a5aaad.js → index-ae5af8a7.js} +1 -1
  150. package/build/esm/{index-686b5eb2.js → index-b0cdadb5.js} +2 -2
  151. package/build/esm/{index-c77260eb.js → index-b0f35804.js} +1 -1
  152. package/build/esm/{index-d0030489.js → index-b283d8e0.js} +1 -1
  153. package/build/esm/{index-b9554305.js → index-b3df72b3.js} +1 -1
  154. package/build/esm/{index-8a5764e0.js → index-b3df7962.js} +1 -1
  155. package/build/esm/{index-91206a0c.js → index-b46fd9a3.js} +1 -1
  156. package/build/esm/{index-58a037ba.js → index-b4dada9e.js} +2 -2
  157. package/build/esm/{index-a0dbdf7f.js → index-b7239c8a.js} +21 -21
  158. package/build/esm/{index-135bcd92.js → index-b7539fd0.js} +1 -1
  159. package/build/esm/{index-aa2f36a5.js → index-b7afaabd.js} +277 -398
  160. package/build/esm/{index-af681246.js → index-b8064141.js} +2 -2
  161. package/build/esm/{index-915c4a3a.js → index-b91fee64.js} +2 -2
  162. package/build/esm/{index-10f30d14.js → index-b959bd1a.js} +1 -1
  163. package/build/esm/{index-1555eee6.js → index-ba390b27.js} +1 -1
  164. package/build/esm/{index-8dbee4c8.js → index-bab998b9.js} +2 -2
  165. package/build/esm/{index-964e87de.js → index-baf708f3.js} +1 -1
  166. package/build/esm/{index-06487164.js → index-bb76505b.js} +2 -2
  167. package/build/esm/{index-bc22c4d2.js → index-bba2a5cb.js} +1 -1
  168. package/build/esm/{index-60b5bc50.js → index-bc2d70bb.js} +1 -1
  169. package/build/esm/{index-b25ff5ec.js → index-bff7e288.js} +1 -1
  170. package/build/esm/{index-a9b2bf20.js → index-c2500d78.js} +1 -1
  171. package/build/esm/{index-f9faf7ce.js → index-c2bb845e.js} +5 -5
  172. package/build/esm/{index.module-6105565d.js → index-c56ab3de.js} +34 -4
  173. package/build/esm/{index-cc566aac.js → index-c6ce7255.js} +2 -2
  174. package/build/esm/{index-f4d44fbd.js → index-c8452e6f.js} +5 -5
  175. package/build/esm/{index-0e978d1a.js → index-c8bce66a.js} +5 -5
  176. package/build/esm/{index-84639f69.js → index-c90a6110.js} +4 -4
  177. package/build/esm/{index-0aec55ce.js → index-cbf78acb.js} +1 -1
  178. package/build/esm/{index-a0895e5a.js → index-ce7cc749.js} +2 -2
  179. package/build/esm/{index-6cfdc5f0.js → index-d25b2428.js} +6 -6
  180. package/build/esm/{index-54715a0c.js → index-d2a55fdb.js} +3 -3
  181. package/build/esm/{index-402a11b3.js → index-d2d1dea2.js} +2 -2
  182. package/build/esm/{index-ba32d247.js → index-d2d2cd5a.js} +20 -20
  183. package/build/esm/{index-ee5d1252.js → index-d3f87806.js} +1 -1
  184. package/build/esm/{index-0dcb2f92.js → index-d565d74e.js} +1 -1
  185. package/build/esm/{index-39b069cb.js → index-d6e62507.js} +1 -1
  186. package/build/esm/{index-c3f5ec8f.js → index-d86a10d0.js} +1 -1
  187. package/build/esm/{index-e4bb7f5e.js → index-d8a0b784.js} +3 -3
  188. package/build/esm/{index-2febce90.js → index-d93714d0.js} +5 -5
  189. package/build/esm/{index-e6769f3f.js → index-d9637a30.js} +2 -2
  190. package/build/esm/{index-f59d9266.js → index-d964307b.js} +4 -4
  191. package/build/esm/{index-84d2a2d6.js → index-db43d153.js} +2 -2
  192. package/build/esm/{index-b8244686.js → index-dc34ee0d.js} +1 -1
  193. package/build/esm/{index-8eb83a26.js → index-dd7e9a17.js} +1 -1
  194. package/build/esm/{index-09e78d18.js → index-dfa2b209.js} +1 -1
  195. package/build/esm/{index-c6ba2591.js → index-e3a3da2f.js} +1 -1
  196. package/build/esm/{index-fc6e111b.js → index-e3d075e8.js} +1 -1
  197. package/build/esm/{index-59f3204b.js → index-e4485409.js} +3 -3
  198. package/build/esm/{index-3ade3e02.js → index-e48bbe09.js} +2 -2
  199. package/build/esm/{index-3447d778.js → index-e7330083.js} +1 -1
  200. package/build/esm/{index-c415295d.js → index-e8651b7e.js} +1 -1
  201. package/build/esm/{index-a9e450e8.js → index-e910fd92.js} +1 -1
  202. package/build/esm/{index-1a502f11.js → index-e9d10bfb.js} +85 -87
  203. package/build/esm/{index-00e14727.js → index-eb183291.js} +5 -5
  204. package/build/esm/{index-f83adca5.js → index-ede1694b.js} +76 -76
  205. package/build/esm/{index-62b91278.js → index-ee23f721.js} +2 -2
  206. package/build/esm/{index-4f648117.js → index-eeb09ae3.js} +1 -1
  207. package/build/esm/{index-63392c2a.js → index-eeb88aa7.js} +2 -2
  208. package/build/esm/{index-ea98d64f.js → index-f0313891.js} +5 -5
  209. package/build/esm/{index-8ea14a29.js → index-f34c7a64.js} +1 -1
  210. package/build/esm/{index-f5513761.js → index-f4aff264.js} +1 -1
  211. package/build/esm/{index-f3d9c38a.js → index-f4c119bb.js} +1 -1
  212. package/build/esm/{index-7a2b1d6c.js → index-f69b8167.js} +1 -1
  213. package/build/esm/{index-13e1fa9a.js → index-f7f16d97.js} +5 -5
  214. package/build/esm/{index-735e2cb0.js → index-f80a30dc.js} +5 -5
  215. package/build/esm/{index-a8be621e.js → index-f90dfdbb.js} +1 -1
  216. package/build/esm/{index-afb0a2b6.js → index-fd1cf781.js} +87 -89
  217. package/build/esm/{index-1c0955dd.js → index-fe7d16a7.js} +1 -1
  218. package/build/esm/{index-f90d7d85.js → index-ff297e49.js} +1 -1
  219. package/build/esm/{index-6c230b84.js → index-ff342d7c.js} +4 -4
  220. package/build/esm/{index-f5d79c4f.js → index-ffafa712.js} +2 -2
  221. package/build/esm/{index-e53c095c.js → index-ffd2d653.js} +90 -90
  222. package/build/esm/{index-5f8d0183.js → index-ffecf7ce.js} +73 -73
  223. package/build/esm/index.js +1 -1
  224. package/build/esm/{index.module-b825f617.js → index.module-4097c40e.js} +1 -1
  225. package/build/esm/{index.module-8d7e1692.js → index.module-4438ebfb.js} +1 -1
  226. package/build/esm/index.module-51b0a274.js +15 -0
  227. package/build/esm/{index.module-9c77bce4.js → index.module-7a954e99.js} +1 -1
  228. package/build/esm/{index.module-0b8a39fa.js → index.module-995b2a46.js} +1 -1
  229. package/build/esm/{index.module-9dce5a76.js → index.module-cb741b62.js} +1 -1
  230. package/build/esm/{index.module-237bec6d.js → index.module-ccf5b1c9.js} +1 -1
  231. package/build/esm/{index.module-9c6a165a.js → index.module-efd2e836.js} +1 -1
  232. package/build/esm/{useCustomDimensions-198036bd.js → useCustomDimensions-3f075e9e.js} +1 -1
  233. package/build/esm/{ussIsSticky-9ba25bde.js → ussIsSticky-428fbfbe.js} +1 -1
  234. package/build/types/web-planner-react/src/components/Product/ProductCenter/Planner3DImage/NavBar/gold/index.d.ts.map +1 -1
  235. package/build/types/web-planner-react/src/components/Product/ProductCenter/Planner3DImage/NavBar/standard/index.d.ts.map +1 -1
  236. package/build/types/web-planner-react/src/components/Product/ProductCenter/PlannerUI/ItemsContainer/index.d.ts.map +1 -1
  237. package/build/types/web-planner-react/src/components/Product/ProductCenter/PlannerUI/PlannerUIVariants/gold/index.d.ts.map +1 -1
  238. package/build/types/web-planner-react/src/components/Product/ProductCenter/PlannerUI/PlannerUIVariants/hidden/index.d.ts.map +1 -1
  239. package/build/types/web-planner-react/src/components/Product/ProductCenter/PlannerUI/PlannerUIVariants/standard/index.d.ts.map +1 -1
  240. package/build/types/web-planner-react/src/components/Product/ProductCenter/PlannerUI/index.d.ts +0 -4
  241. package/build/types/web-planner-react/src/components/Product/ProductCenter/PlannerUI/index.d.ts.map +1 -1
  242. package/build/types/web-planner-react/src/components/Product/ProductCenter/index.d.ts.map +1 -1
  243. package/build/types/web-planner-react/src/model/DivaViewHandler.d.ts.map +1 -1
  244. package/build/types/web-planner-react/src/model/Planner/UI/PlannerUI.d.ts +2 -5
  245. package/build/types/web-planner-react/src/model/Planner/UI/PlannerUI.d.ts.map +1 -1
  246. package/build/types/web-planner-react/src/model/Planner/ViewPlannerHandler.d.ts +1 -12
  247. package/build/types/web-planner-react/src/model/Planner/ViewPlannerHandler.d.ts.map +1 -1
  248. package/build/types/web-planner-react/src/model/Planner/Viewer/Interface/IViewPlanner3DImage.d.ts +4 -13
  249. package/build/types/web-planner-react/src/model/Planner/Viewer/Interface/IViewPlanner3DImage.d.ts.map +1 -1
  250. package/build/types/web-planner-react/src/model/Planner/Viewer/Planner3DImage.d.ts +7 -31
  251. package/build/types/web-planner-react/src/model/Planner/Viewer/Planner3DImage.d.ts.map +1 -1
  252. package/build/types/web-planner-react/src/model/States/UIState/Product/index.d.ts +2 -6
  253. package/build/types/web-planner-react/src/model/States/UIState/Product/index.d.ts.map +1 -1
  254. package/build/types/web-planner-react/src/model/States/UIState/Tabgroups/index.d.ts.map +1 -1
  255. package/build/types/web-planner-react/src/model/index.d.ts.map +1 -1
  256. package/build/types/web-planner-react/src/tests/AIState.businessEvents.test.d.ts +2 -0
  257. package/build/types/web-planner-react/src/tests/AIState.businessEvents.test.d.ts.map +1 -0
  258. package/build/types/web-planner-react/src/tests/ClickToCall.businessEvents.test.d.ts +2 -0
  259. package/build/types/web-planner-react/src/tests/ClickToCall.businessEvents.test.d.ts.map +1 -0
  260. package/build/types/web-planner-react/src/tests/ConfiguratorStructureHandler.businessEvents.test.d.ts +2 -0
  261. package/build/types/web-planner-react/src/tests/ConfiguratorStructureHandler.businessEvents.test.d.ts.map +1 -0
  262. package/build/types/web-planner-react/src/tests/ContentItemWrapper.businessEvents.test.d.ts +2 -0
  263. package/build/types/web-planner-react/src/tests/ContentItemWrapper.businessEvents.test.d.ts.map +1 -0
  264. package/build/types/web-planner-react/src/tests/PaletteViewHandler.businessEvents.test.d.ts +2 -0
  265. package/build/types/web-planner-react/src/tests/PaletteViewHandler.businessEvents.test.d.ts.map +1 -0
  266. package/build/types/web-planner-react/src/tests/ProductState.businessEvents.test.d.ts +2 -0
  267. package/build/types/web-planner-react/src/tests/ProductState.businessEvents.test.d.ts.map +1 -0
  268. package/build/types/web-planner-react/src/tests/SaveAndAppointment.businessEvents.test.d.ts +2 -0
  269. package/build/types/web-planner-react/src/tests/SaveAndAppointment.businessEvents.test.d.ts.map +1 -0
  270. package/build/types/web-planner-react/src/tests/ShareViaUrl.businessEvents.test.d.ts +2 -0
  271. package/build/types/web-planner-react/src/tests/ShareViaUrl.businessEvents.test.d.ts.map +1 -0
  272. package/build/types/web-planner-react/src/tests/TabGroupState.businessEvents.test.d.ts +2 -0
  273. package/build/types/web-planner-react/src/tests/TabGroupState.businessEvents.test.d.ts.map +1 -0
  274. package/build/types/web-planner-react/src/tests/checkoutActions.businessEvents.test.d.ts +2 -0
  275. package/build/types/web-planner-react/src/tests/checkoutActions.businessEvents.test.d.ts.map +1 -0
  276. package/build/types/web-planner-react/src/tests/spyLogger.d.ts +8 -0
  277. package/build/types/web-planner-react/src/tests/spyLogger.d.ts.map +1 -0
  278. package/build/umd/1912.diva-web-planner-react.umd.min.js +1 -1
  279. package/build/umd/2027.diva-web-planner-react.umd.min.js +1 -1
  280. package/build/umd/2568.diva-web-planner-react.umd.min.js +1 -1
  281. package/build/umd/3302.diva-web-planner-react.umd.min.js +1 -1
  282. package/build/umd/3373.diva-web-planner-react.umd.min.js +2 -0
  283. package/build/umd/3373.diva-web-planner-react.umd.min.js.LICENSE.txt +1 -0
  284. package/build/umd/344.diva-web-planner-react.umd.min.js +1 -1
  285. package/build/umd/3596.diva-web-planner-react.umd.min.js +1 -1
  286. package/build/umd/3879.diva-web-planner-react.umd.min.js +2 -0
  287. package/build/umd/3879.diva-web-planner-react.umd.min.js.LICENSE.txt +1 -0
  288. package/build/umd/5351.diva-web-planner-react.umd.min.js +2 -0
  289. package/build/umd/5351.diva-web-planner-react.umd.min.js.LICENSE.txt +1 -0
  290. package/build/umd/6871.diva-web-planner-react.umd.min.js +1 -1
  291. package/build/umd/7414.diva-web-planner-react.umd.min.js +1 -1
  292. package/build/umd/7529.diva-web-planner-react.umd.min.js +1 -1
  293. package/build/umd/858.diva-web-planner-react.umd.min.js +1 -1
  294. package/build/umd/9321.diva-web-planner-react.umd.min.js +1 -1
  295. package/build/umd/9355.diva-web-planner-react.umd.min.js +2 -0
  296. package/build/umd/9355.diva-web-planner-react.umd.min.js.LICENSE.txt +1 -0
  297. package/build/umd/9503.diva-web-planner-react.umd.min.js +1 -1
  298. package/build/umd/9715.diva-web-planner-react.umd.min.js +1 -1
  299. package/build/umd/diva-web-planner-react.umd.min.js +1 -1
  300. package/build/umd/report.html +1 -1
  301. package/package.json +9 -11
  302. package/build/esm/Planner3DImage-265419be.js +0 -959
  303. package/build/esm/index-78e001eb.js +0 -49
  304. package/build/esm/index-b47b77ab.js +0 -101
  305. package/build/esm/index-c2efe6f2.js +0 -100
  306. package/build/esm/index-e5354cf8.js +0 -37
  307. package/build/esm/index.module-bdbe254c.js +0 -25
  308. package/build/types/web-planner-react/src/components/Product/ProductCenter/Planner3DGrid/index.d.ts +0 -6
  309. package/build/types/web-planner-react/src/components/Product/ProductCenter/Planner3DGrid/index.d.ts.map +0 -1
  310. package/build/types/web-planner-react/src/components/Product/ProductCenter/PlannerUI/Items/Move3DGrid/index.d.ts +0 -10
  311. package/build/types/web-planner-react/src/components/Product/ProductCenter/PlannerUI/Items/Move3DGrid/index.d.ts.map +0 -1
  312. package/build/types/web-planner-react/src/components/Product/ProductCenter/PlannerUI/Items/Rotation/Rotation3DGrid/index.d.ts +0 -10
  313. package/build/types/web-planner-react/src/components/Product/ProductCenter/PlannerUI/Items/Rotation/Rotation3DGrid/index.d.ts.map +0 -1
  314. package/build/types/web-planner-react/src/model/Planner/Viewer/Planner3DGrid.d.ts +0 -146
  315. package/build/types/web-planner-react/src/model/Planner/Viewer/Planner3DGrid.d.ts.map +0 -1
  316. package/build/types/web-planner-react/src/model/Planner/shader/PlannerBlender2D3DShader.d.ts +0 -18
  317. package/build/types/web-planner-react/src/model/Planner/shader/PlannerBlender2D3DShader.d.ts.map +0 -1
  318. package/build/umd/241.diva-web-planner-react.umd.min.js +0 -2
  319. package/build/umd/241.diva-web-planner-react.umd.min.js.LICENSE.txt +0 -1
  320. package/build/umd/3401.diva-web-planner-react.umd.min.js +0 -2
  321. package/build/umd/3401.diva-web-planner-react.umd.min.js.LICENSE.txt +0 -1
  322. package/build/umd/4828.diva-web-planner-react.umd.min.js +0 -2
  323. package/build/umd/4828.diva-web-planner-react.umd.min.js.LICENSE.txt +0 -1
  324. package/build/umd/5111.diva-web-planner-react.umd.min.js +0 -2
  325. package/build/umd/5111.diva-web-planner-react.umd.min.js.LICENSE.txt +0 -1
  326. package/build/umd/5539.diva-web-planner-react.umd.min.js +0 -2
  327. package/build/umd/5539.diva-web-planner-react.umd.min.js.LICENSE.txt +0 -1
  328. package/build/umd/5552.diva-web-planner-react.umd.min.js +0 -2
  329. package/build/umd/5552.diva-web-planner-react.umd.min.js.LICENSE.txt +0 -7
  330. package/build/umd/6067.diva-web-planner-react.umd.min.js +0 -2
  331. package/build/umd/6067.diva-web-planner-react.umd.min.js.LICENSE.txt +0 -1
  332. package/build/umd/896.diva-web-planner-react.umd.min.js +0 -2
  333. package/build/umd/896.diva-web-planner-react.umd.min.js.LICENSE.txt +0 -1
@@ -1,959 +0,0 @@
1
- import _classCallCheck from '@babel/runtime/helpers/classCallCheck';
2
- import _createClass from '@babel/runtime/helpers/createClass';
3
- import _defineProperty from '@babel/runtime/helpers/defineProperty';
4
- import './index-aa2f36a5.js';
5
- import { Vector3, Vector2, Rendering } from '@crystaldesign/web-planner-logic';
6
- import { getLogger } from '@crystaldesign/diva-core';
7
- import * as THREE from 'three';
8
- import { EffectComposer } from 'three/examples/jsm/postprocessing/EffectComposer';
9
- import { RenderPass } from 'three/examples/jsm/postprocessing/RenderPass';
10
- import { ShaderPass } from 'three/examples/jsm/postprocessing/ShaderPass';
11
- import { Vector2 as Vector2$1 } from 'three/src/math/Vector2';
12
- import 'react';
13
- import 'react-dynamic-multi-render';
14
- import 'react/jsx-runtime';
15
- import 'mobx-react-lite';
16
- import '@babel/runtime/helpers/asyncToGenerator';
17
- import '@babel/runtime/helpers/slicedToArray';
18
- import '@babel/runtime/helpers/objectWithoutProperties';
19
- import '@babel/runtime/regenerator';
20
- import '@babel/runtime/helpers/toConsumableArray';
21
- import '@crystaldesign/diva-utils';
22
- import 'mobx';
23
- import 'classnames';
24
- import 'qrcode.react';
25
- import '@babel/runtime/helpers/typeof';
26
- import 'flat';
27
- import 'react-switch';
28
- import 'react-countup';
29
-
30
- var PlannerBlender2D3DShader = {
31
- uniforms: {
32
- tDiffuse: {
33
- value: null
34
- },
35
- opacity: {
36
- value: 1.0
37
- },
38
- backgroundImg: {
39
- value: null
40
- }
41
- },
42
- vertexShader: ['varying vec2 vUv;', 'void main() {', ' vUv = uv;', ' gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );', '}'].join('\n'),
43
- fragmentShader: ['uniform float opacity;', 'uniform sampler2D tDiffuse;', 'uniform sampler2D backgroundImg;', 'varying vec2 vUv;', 'void main() {', ' vec4 texelForground = texture2D( tDiffuse, vUv );', ' float brightness = 0.34 * texelForground.x + 0.5 *texelForground.y + 0.16 * texelForground.z; ', ' vec4 texelBackground = texture2D( backgroundImg, vUv );', ' if( texelForground.w < 0.001){', ' gl_FragColor = vec4(0, 0, 0, 0.0);', ' }', ' else if( texelBackground.x < 0.3 ){', ' gl_FragColor = vec4(brightness,brightness,brightness, texelForground.w)* 0.8;', ' }', ' else {', ' gl_FragColor = (1.0 - opacity) * vec4(brightness,brightness,brightness,texelForground.w);', ' }', '}'].join('\n')
44
- };
45
-
46
- var LOG = getLogger('Planner', 'Planner3DGrid');
47
- var Planner3DGrid = /*#__PURE__*/function () {
48
- function Planner3DGrid(getPlannerViewConfig, getAllPlannedElements) {
49
- var _this = this;
50
- _classCallCheck(this, Planner3DGrid);
51
- _defineProperty(this, "autoDockingDistance", 40);
52
- _defineProperty(this, "threeContainer", void 0);
53
- _defineProperty(this, "doShow3DGrid", false);
54
- _defineProperty(this, "updatePlannerTrans", void 0);
55
- _defineProperty(this, "clearSelectionFrom3DGrid", void 0);
56
- _defineProperty(this, "getAllPlannedElements", void 0);
57
- _defineProperty(this, "groundPlane", void 0);
58
- _defineProperty(this, "camera", void 0);
59
- _defineProperty(this, "renderer", void 0);
60
- _defineProperty(this, "scene", void 0);
61
- _defineProperty(this, "sceneTree", void 0);
62
- //speichert alle Renderings abhängig von Set und ElementId
63
- _defineProperty(this, "backgroundTex", void 0);
64
- _defineProperty(this, "backGroundTexChanged", false);
65
- _defineProperty(this, "canvasWidth", void 0);
66
- _defineProperty(this, "canvasHeight", void 0);
67
- _defineProperty(this, "moveIconPerspective", void 0);
68
- _defineProperty(this, "rotateIconPerspective", void 0);
69
- _defineProperty(this, "rotationCenter", void 0);
70
- _defineProperty(this, "isTransforming", false);
71
- _defineProperty(this, "transformWorldPosLastFrame", void 0);
72
- _defineProperty(this, "curSelectedElement", void 0);
73
- //Render Loop
74
- _defineProperty(this, "blenderPass", null);
75
- _defineProperty(this, "composer", null);
76
- /**
77
- * This function is called when the mouse is up - it clears the selection of the selected object
78
- * @param event
79
- */
80
- _defineProperty(this, "onMouseUpClearSelection", function (event) {
81
- _this.clearSelectionFrom3DGrid();
82
- _this.threeContainer.removeEventListener('mouseup', _this.onMouseUpClearSelection);
83
- });
84
- /**
85
- * When this function is called the system computes the intersection with the ground plane
86
- */
87
- _defineProperty(this, "getIntersectsGroundPlane", function (sceenPosX, screenPosY) {
88
- if (!_this.camera) return;
89
- // x = (x / window.innerWidth) * 2 - 1;
90
- // y = -(y / window.innerHeight) * 2 + 1;
91
- var raycaster = new THREE.Raycaster();
92
- var mouseVector = new THREE.Vector3();
93
- sceenPosX = sceenPosX / _this.canvasWidth * 2 - 1;
94
- screenPosY = -(screenPosY / _this.canvasHeight) * 2 + 1;
95
- //sceenPosX = sceenPosX / this.canvasWidth;
96
- //screenPosY = screenPosY / this.canvasHeight;
97
- mouseVector.set(sceenPosX, screenPosY, 0.5);
98
- raycaster.setFromCamera(new THREE.Vector2(mouseVector.x, mouseVector.y), _this.camera);
99
- return raycaster.intersectObject(_this.groundPlane, true);
100
- });
101
- /**
102
- * Called when the movement starts
103
- * @param elementId elementId of the current selected element
104
- */
105
- _defineProperty(this, "startMove", function (setId, elementId) {
106
- // if (!this.sceneTree.has(setId)) return;
107
- // if (!this.sceneTree.get(setId)!.has(elementId)) return;
108
- _this.isTransforming = true;
109
- // TODO hier das icon ausblenden this.moveIcon2DDiv.style.visibility = "hidden";
110
- //this.rotateIcon2DDiv.style.visibility = "hidden";
111
-
112
- var allElementsBySet = _this.getAllPlannedElements();
113
- if (!allElementsBySet.has(setId)) return;
114
- _this.clearSceneTree(); //Clear the scene if start Move is called previous updateScene
115
- allElementsBySet.forEach(function (elementsInSet, setId) {
116
- for (var i = 0; i < elementsInSet.length; i++) {
117
- _this.updatePlannerElement(elementsInSet[i]);
118
- }
119
- });
120
- LOG.debug('Start transforming', 'Planner3DGrid');
121
- _this.updatePlannerTrans(setId, elementId, new Vector3(0, 0, 0), 0, 5, 'START', _this.autoDockingDistance);
122
- });
123
- /**
124
- * Called when movement is stopped
125
- */
126
- _defineProperty(this, "stopMove", function (setId, elementId) {
127
- LOG.debug('Stop transforming', 'Planner3DGrid');
128
- _this.isTransforming = false;
129
- _this.transformWorldPosLastFrame = undefined;
130
- if (_this.curSelectedElement != undefined) _this.updatePlannerTrans(setId, elementId, new Vector3(0, 0, 0), 0, 5, 'END', _this.autoDockingDistance);
131
- });
132
- /**
133
- * Called when the rotation starts
134
- * @param elementId elementId of the current selected element
135
- */
136
- _defineProperty(this, "startRotation", function (setId, elementId) {
137
- _this.isTransforming = true;
138
- var allElementsBySet = _this.getAllPlannedElements();
139
- if (!allElementsBySet.has(setId)) return;
140
- _this.clearSceneTree();
141
- allElementsBySet.forEach(function (elementsInSet, setId) {
142
- for (var i = 0; i < elementsInSet.length; i++) {
143
- _this.updatePlannerElement(elementsInSet[i]);
144
- }
145
- });
146
- _this.rotationCenter = undefined;
147
- _this.updatePlannerTrans(setId, elementId, new Vector3(0, 0, 0), 0, 5, 'START', _this.autoDockingDistance);
148
- });
149
- /**
150
- * Called when rotation is stopped
151
- */
152
- _defineProperty(this, "stopRotation", function (setId, elementId) {
153
- _this.isTransforming = false;
154
- _this.rotationCenter = undefined;
155
- _this.updatePlannerTrans(setId, elementId, new Vector3(0, 0, 0), 0, 5, 'END', _this.autoDockingDistance);
156
- });
157
- /**
158
- * Handles the translation of the ThreeSVG on the ground
159
- * @param screenPosX
160
- * @param screenPosY
161
- */
162
- _defineProperty(this, "handleTranslation", function (setId, elementId, screenPos) {
163
- var intersects = _this.getIntersectsGroundPlane(screenPos.x, screenPos.y);
164
- if (intersects.length > 0) {
165
- var _this$sceneTree;
166
- var curWorldPos = new Vector2(intersects[0].point.x, intersects[0].point.z);
167
- LOG.debug('MOVE TO WORLD POS ' + curWorldPos.toString(), 'Planner3DGrid');
168
-
169
- //First frame for detecting collision
170
- if (!_this.transformWorldPosLastFrame) {
171
- _this.transformWorldPosLastFrame = curWorldPos;
172
- return;
173
- }
174
- var moveDir = new Vector2(curWorldPos.x - _this.transformWorldPosLastFrame.x, curWorldPos.y - _this.transformWorldPosLastFrame.y);
175
- var sceneElement = (_this$sceneTree = _this.sceneTree) === null || _this$sceneTree === void 0 ? void 0 : _this$sceneTree.get(setId).get(elementId);
176
- if (!sceneElement) return;
177
- sceneElement.position.x += moveDir.x;
178
- sceneElement.position.z += moveDir.y;
179
- if (_this.curSelectedElement != undefined) _this.updatePlannerTrans(_this.curSelectedElement.getSetId(), _this.curSelectedElement.getElementId(), new Vector3(moveDir.x * 100, 0, moveDir.y * 100), 0, 5, 'UPDATE', _this.autoDockingDistance);
180
- _this.transformWorldPosLastFrame = curWorldPos;
181
- }
182
- });
183
- /**
184
- * Handles the rotation of the ThreeSVG on the ground
185
- * @param screenPosX
186
- * @param screenPosY
187
- */
188
- _defineProperty(this, "handleRotation", function (setId, elementId, screenPos) {
189
- var intersects = _this.getIntersectsGroundPlane(screenPos.x, screenPos.y);
190
- if (intersects.length > 0) {
191
- var _this$sceneTree2;
192
- var sceneElement = (_this$sceneTree2 = _this.sceneTree) === null || _this$sceneTree2 === void 0 ? void 0 : _this$sceneTree2.get(setId).get(elementId);
193
- if (!sceneElement) return;
194
- var curWorldPos = new Vector2(intersects[0].point.x, intersects[0].point.z);
195
- if (_this.rotationCenter) {
196
- var rotDir = new Vector2(curWorldPos.x - sceneElement.position.x, curWorldPos.y - sceneElement.position.z);
197
- var refDir = new Vector2(0, 1);
198
- var angleRad = Vector2.angleRad(rotDir, refDir);
199
- if (curWorldPos.x < sceneElement.position.x) angleRad = 2 * Math.PI - angleRad;
200
- var deltaRotRad = sceneElement.rotation.z - angleRad;
201
- sceneElement.rotation.z = angleRad;
202
- if (_this.curSelectedElement != undefined) _this.updatePlannerTrans(_this.curSelectedElement.getSetId(), _this.curSelectedElement.getElementId(), new Vector3(0, 0, 0), deltaRotRad * 180 / Math.PI, 5, 'UPDATE', _this.autoDockingDistance);
203
- } else {
204
- _this.rotationCenter = curWorldPos;
205
- }
206
- }
207
- });
208
- /**
209
- * Render loop
210
- */
211
- _defineProperty(this, "run", function () {
212
- if (!_this.doShow3DGrid || _this.renderer == null) return;
213
- if (_this.backgroundTex == null) return;
214
- var that = _this;
215
- var timeout = _this.isTransforming ? 30 : 10;
216
- setTimeout(function () {
217
- var _requestAnimationFram;
218
- (_requestAnimationFram = requestAnimationFrame) === null || _requestAnimationFram === void 0 || _requestAnimationFram(that.run);
219
- }, 1000 / timeout);
220
- if (_this.backGroundTexChanged) {
221
- _this.backGroundTexChanged = false;
222
- _this.blenderPass.uniforms['backgroundImg'].value = _this.backgroundTex;
223
- }
224
- _this.composer.render();
225
- });
226
- this.getAllPlannedElements = getAllPlannedElements;
227
- this.sceneTree = new Map();
228
- this.curSelectedElement = undefined;
229
- this.threeContainer = null;
230
- }
231
- return _createClass(Planner3DGrid, [{
232
- key: "setCallbackMethods",
233
- value: function setCallbackMethods(updatePlannerTrans) {
234
- this.updatePlannerTrans = updatePlannerTrans;
235
- }
236
-
237
- /**
238
- * Initialize the 3D Grid
239
- * @param imageContainer The imageContainer where the canvas is rendered into
240
- * @param canvasWidth The width of the canvas
241
- * @param canvasHeight The height of the canvas
242
- */
243
- }, {
244
- key: "initialize",
245
- value: function initialize(canvasWidth, canvasHeight) {
246
- LOG.debug('Initialize Planner3D Grid! ', 'ViewPlanner3DGrid - initialize');
247
- this.canvasWidth = canvasWidth;
248
- this.canvasHeight = canvasHeight;
249
- this.threeContainer = document.getElementById('diva3dImg_3DGrid');
250
- if (!this.threeContainer) return;
251
- this.scene = new THREE.Scene();
252
- this.camera = new THREE.PerspectiveCamera(24, canvasWidth / canvasHeight, 0.1, 1000);
253
- this.renderer = new THREE.WebGLRenderer({
254
- alpha: true,
255
- antialias: true
256
- });
257
- this.renderer.setClearColor(0x000000, 0);
258
- this.renderer.setSize(canvasWidth, canvasHeight);
259
-
260
- //Init ground plane
261
- var groundPlaneGeo = new THREE.PlaneGeometry(100, 100);
262
- var groundMat = new THREE.MeshLambertMaterial({
263
- color: 0x0000ff,
264
- transparent: true,
265
- opacity: 0
266
- });
267
- this.groundPlane = new THREE.Mesh(groundPlaneGeo, groundMat);
268
- this.groundPlane.rotation.x = -Math.PI / 2;
269
- this.scene.add(this.groundPlane);
270
- this.camera.position.z = -3;
271
-
272
- //Init background.
273
-
274
- this.backgroundTex = new THREE.Texture();
275
- this.threeContainer.appendChild(this.renderer.domElement);
276
- this.doShow3DGrid = false;
277
- this.composer = new EffectComposer(this.renderer);
278
- this.composer.addPass(new RenderPass(this.scene, this.camera));
279
- this.blenderPass = new ShaderPass(PlannerBlender2D3DShader);
280
- this.blenderPass.uniforms['opacity'].value = 0.92;
281
- this.blenderPass.renderToScreen = true;
282
- this.composer.addPass(this.blenderPass);
283
- }
284
-
285
- /**
286
- * Destroy the whole Planner3D Grid and all three.js components
287
- */
288
- }, {
289
- key: "destroy",
290
- value: function destroy(plannerUIHandler) {
291
- var _this$threeContainer;
292
- if (!this.threeContainer) return;
293
- LOG.debug('Destroy Planner3D Grid! ', 'ViewPlanner3DGrid - destroy');
294
- this.hide3DGrid();
295
- plannerUIHandler.clear3DGridUI();
296
- this.clearSceneTree();
297
- this.hide3DGrid();
298
- this.scene = undefined;
299
- this.sceneTree.clear();
300
- //this.threeContainer.parentNode.removeChild(this.threeContainer);
301
- // if (this.threeContainer && this.threeContainer!.hasChildNodes)
302
- if ((_this$threeContainer = this.threeContainer) !== null && _this$threeContainer !== void 0 && _this$threeContainer.firstChild) this.threeContainer.removeChild(this.threeContainer.firstChild);
303
- this.backgroundTex = null;
304
- this.composer = null;
305
- this.blenderPass = null;
306
- this.camera = undefined;
307
- this.moveIconPerspective = null;
308
- this.rotateIconPerspective = null;
309
- this.groundPlane = null;
310
- this.renderer = undefined;
311
- }
312
- }, {
313
- key: "rotToThreeRot",
314
- value:
315
- /**
316
- * Converts the rotation from rendering information into the associated three rotation
317
- * @param unityQuat
318
- */
319
- function rotToThreeRot(rot) {
320
- var quat = new THREE.Quaternion();
321
- quat.setFromEuler(new THREE.Euler(rot.x * Math.PI / 180, rot.y * Math.PI / 180, rot.z * Math.PI / 180));
322
- quat.w *= -1;
323
- var v = new THREE.Euler();
324
- v.setFromQuaternion(quat);
325
- v.y += Math.PI; //Y is 180 degreee off
326
- v.z *= -1; //flip z
327
- return v;
328
- }
329
-
330
- /**
331
- * Converts the unity position into the three position
332
- * @param unityPos
333
- */
334
- }, {
335
- key: "posToThreePos",
336
- value: function posToThreePos(pos) {
337
- return new Vector3(pos.x / 100.0, pos.y / 100.0, pos.z / 100.0);
338
- }
339
-
340
- /**
341
- * This function clears all objects in the three.js scene.
342
- */
343
- }, {
344
- key: "clearSceneTree",
345
- value: function clearSceneTree() {
346
- var _this2 = this;
347
- this.sceneTree.forEach(function (elementsInTree, setId) {
348
- elementsInTree.forEach(function (sceneModel, elementId) {
349
- _this2.scene.remove(sceneModel);
350
- });
351
- });
352
- }
353
-
354
- /**
355
- * This function sets the camera transformation in the three.js scene the same like the camera in unity.
356
- * @param rendering The rendering coming from Unity - it holds all informations to the camera transformation
357
- */
358
- }, {
359
- key: "updateCamera",
360
- value: function updateCamera(rendering) {
361
- if (!this.camera) return;
362
- var unityCamInfo = rendering.getCamInfo();
363
- if (!unityCamInfo) return;
364
- var camPos = this.posToThreePos(unityCamInfo.pos);
365
- this.camera.rotation.copy(this.rotToThreeRot(unityCamInfo.rot));
366
- this.camera.position.x = camPos.x;
367
- this.camera.position.y = camPos.y;
368
- this.camera.position.z = camPos.z;
369
- this.camera.updateMatrixWorld();
370
- }
371
-
372
- /**
373
- * This function updates the interaction icons movement and rotation
374
- * @param plannerElement The planner element where the rotation and movement icon should be placed
375
- */
376
- }, {
377
- key: "updateInteractionIcons",
378
- value: function updateInteractionIcons(plannerUIHandler, plannerElement) {
379
- var offsetVecMove2D = new Vector2(-0.15, plannerElement.getHeightOLT() / 100.0 / 2.0 + 0.15);
380
- offsetVecMove2D = Vector2.rotateOrigin(offsetVecMove2D, plannerElement.getRotDeg());
381
- var moveIconWorldPos = new THREE.Vector3(plannerElement.getWorldPosCenter().x / 100 + offsetVecMove2D.x, 0, plannerElement.getWorldPosCenter().z / 100 + offsetVecMove2D.y);
382
- var screenPosMove = Vector2.convertToVector2(this.convertWorldPosToScreenPos(moveIconWorldPos));
383
- if (screenPosMove == undefined) return;
384
- var offsetVecRot2D = new Vector2(0.15, plannerElement.getHeightOLT() / 100.0 / 2.0 + 0.15);
385
- offsetVecRot2D = Vector2.rotateOrigin(offsetVecRot2D, plannerElement.getRotDeg());
386
- var rotIconWorldPos = new THREE.Vector3(plannerElement.getWorldPosCenter().x / 100 + offsetVecRot2D.x, 0, plannerElement.getWorldPosCenter().z / 100 + offsetVecRot2D.y);
387
- var screenPosRot = Vector2.convertToVector2(this.convertWorldPosToScreenPos(rotIconWorldPos));
388
- if (screenPosRot == undefined) return;
389
- //Calculate correct position so that they do not overlap
390
- var centerPointBetweenIcons = new Vector2((screenPosMove.x + (screenPosRot === null || screenPosRot === void 0 ? void 0 : screenPosRot.x)) / 2, (screenPosMove.y + screenPosRot.y) / 2);
391
- var dirCenterMove = Vector2.getDirection(screenPosMove, centerPointBetweenIcons);
392
- var dirCenterRot = Vector2.getDirection(screenPosRot, centerPointBetweenIcons);
393
- var finalPosMove = Vector2.add(Vector2.mulNum(Vector2.normalize(dirCenterMove), 25 + 7), centerPointBetweenIcons);
394
- finalPosMove.interpretation = 'pixel';
395
- var finalPosRot = Vector2.add(Vector2.mulNum(Vector2.normalize(dirCenterRot), 25 + 7), centerPointBetweenIcons);
396
- finalPosRot.interpretation = 'pixel';
397
- plannerUIHandler.addMove3DGrid(plannerElement.getSetId(), plannerElement.getElementId(), finalPosMove, this.startMove, this.handleTranslation, this.stopMove);
398
- plannerUIHandler.addRot3DGrid(plannerElement.getSetId(), plannerElement.getElementId(), finalPosRot, this.startRotation, this.handleRotation, this.stopRotation);
399
- }
400
-
401
- /**
402
- * Updates the planner Element and draws the svg icon on the ground. The selected element gets also rotation and translation icons
403
- * @param plannerElement
404
- * @param isSelectedElem
405
- */
406
- }, {
407
- key: "updatePlannerElement",
408
- value: function updatePlannerElement(plannerElement) {
409
- if (!plannerElement.hasSvgDataOLTBase64() || !this.renderer || !this.scene) return;
410
-
411
- //var texture = new THREE.Texture(plannerElement.getSvgDataOLTBase64 ());
412
- var texture = new THREE.TextureLoader().load(plannerElement.getSvgDataOLTBase64());
413
- texture.wrapS = THREE.RepeatWrapping;
414
- texture.wrapT = THREE.RepeatWrapping;
415
- texture.generateMipmaps = true;
416
- texture.anisotropy = this.renderer.capabilities.getMaxAnisotropy();
417
- //texture.needsUpdate = true;
418
- var geoWidth = plannerElement.getWidthOLT() / 100;
419
- var geoHeight = plannerElement.getHeightOLT() / 100;
420
- var geometry = new THREE.PlaneGeometry(geoWidth, geoHeight);
421
- var material = new THREE.MeshBasicMaterial({
422
- map: texture
423
- });
424
- var plannerElementMesh = new THREE.Mesh(geometry, material);
425
- plannerElementMesh.rotation.z = -plannerElement.getRotRad();
426
- plannerElementMesh.rotation.x = -Math.PI / 2;
427
- plannerElementMesh.position.x = plannerElement.getWorldPosCenter().x / 100;
428
- plannerElementMesh.position.y = plannerElement.getLayer() / 500;
429
- plannerElementMesh.position.z = plannerElement.getWorldPosCenter().z / 100;
430
- if (!this.sceneTree.has(plannerElement.getSetId())) this.sceneTree.set(plannerElement.getSetId(), new Map());
431
- this.sceneTree.get(plannerElement.getSetId()).set(plannerElement.getElementId(), plannerElementMesh);
432
- this.scene.add(plannerElementMesh);
433
- }
434
-
435
- /**
436
- * This scene is called when a new Rendering is made. The whole scene Tree is updated and the SVGs are placed in the Tree.JS world
437
- * @param plannerElements
438
- */
439
- }, {
440
- key: "updateScene",
441
- value: function updateScene(plannerUIHandler, rendering, curSelectedElement, plannerElementsDict, renderSize) {
442
- var _this3 = this;
443
- if (!this.renderer && !this.camera) return;
444
- plannerUIHandler.clear3DGridUI();
445
- this.show3DGrid();
446
- this.clearSceneTree();
447
- this.curSelectedElement = curSelectedElement;
448
- this.initBackgroundScene(rendering);
449
- this.canvasWidth = renderSize.imgWidth;
450
- this.canvasHeight = renderSize.imgHeight;
451
- var camInfo = rendering.getCamInfo();
452
- if (this.renderer && this.renderer.getSize(new THREE.Vector2()).x != renderSize.imgWidth || this.renderer.getSize(new THREE.Vector2()).y != renderSize.imgHeight || (camInfo === null || camInfo === void 0 ? void 0 : camInfo.vertFov) != this.camera.fov) {
453
- this.camera.fov = camInfo.vertFov;
454
- this.camera.aspect = renderSize.imgWidth / renderSize.imgHeight;
455
- this.camera.updateProjectionMatrix();
456
- this.renderer.setSize(renderSize.imgWidth, renderSize.imgHeight);
457
- }
458
-
459
- // this.debugScene();
460
- this.updateCamera(rendering);
461
- plannerElementsDict.forEach(function (allPlannedElements, setId) {
462
- for (var i = 0; i < allPlannedElements.length; i++) {
463
- if (curSelectedElement != undefined && allPlannedElements[i].getElementId() == curSelectedElement.getElementId()) _this3.updateInteractionIcons(plannerUIHandler, allPlannedElements[i]);
464
- }
465
- });
466
- }
467
-
468
- /**
469
- * Sets up the background scene (layermask of the rendering)
470
- * @param rendering
471
- */
472
- }, {
473
- key: "initBackgroundScene",
474
- value: function initBackgroundScene(rendering) {
475
- if (!rendering.HasLayerMaskThreeTexture) {
476
- var textureLoader = new THREE.TextureLoader();
477
- rendering.LayerMaskThreeTexture = textureLoader.load(rendering.getLayerMaskForSrc());
478
- }
479
- this.backgroundTex = rendering.LayerMaskThreeTexture;
480
- this.backGroundTexChanged = true;
481
- }
482
- }, {
483
- key: "isInTrasnformMode",
484
- value:
485
- /**
486
- * This function returns true if the 3D Grid is currently in the transformation mode (translating or rotating)
487
- */
488
- function isInTrasnformMode() {
489
- return this.isTransforming;
490
- }
491
-
492
- /**
493
- * This function is called when the 3D Grid should be shown. (User starts interaction with scene)
494
- */
495
- }, {
496
- key: "show3DGrid",
497
- value: function show3DGrid() {
498
- if (!this.doShow3DGrid) {
499
- this.doShow3DGrid = true;
500
- this.run();
501
- }
502
- }
503
-
504
- /**
505
- * This function is called when the 3D Grid should be hidden. (The user releases interaction - only 3D image is shown.)
506
- */
507
- }, {
508
- key: "hide3DGrid",
509
- value: function hide3DGrid() {
510
- if (!this.renderer) return;
511
- if (this.doShow3DGrid) {
512
- this.renderer.clear();
513
- this.doShow3DGrid = false;
514
- }
515
- }
516
-
517
- /**
518
- * This function is called to update the user Interface elements of the 3D Grid
519
- * @param curSelectedPlannerElement
520
- */
521
- }, {
522
- key: "updateUI",
523
- value: function updateUI(plannerUIHandler, curSelectedPlannerElement) {
524
- plannerUIHandler.clear3DGridUI();
525
- this.curSelectedElement = curSelectedPlannerElement;
526
- this.show3DGrid();
527
- this.updateInteractionIcons(plannerUIHandler, curSelectedPlannerElement);
528
- }
529
- }, {
530
- key: "getPositionOfCanvasContainer",
531
- value: function getPositionOfCanvasContainer() {
532
- return new Vector2(0, 0);
533
- }
534
- }, {
535
- key: "convertWorldPosToScreenPos",
536
- value: function convertWorldPosToScreenPos(worldPos) {
537
- var pos = worldPos.clone();
538
- pos.project(this.camera);
539
- var widthHalf = this.canvasWidth / 2;
540
- var heightHalf = this.canvasHeight / 2;
541
- pos.x = pos.x * widthHalf + widthHalf;
542
- pos.y = -(pos.y * heightHalf) + heightHalf;
543
- return new Vector2$1(pos.x, pos.y);
544
- }
545
- }]);
546
- }();
547
-
548
- var Planner3DImageUI = /*#__PURE__*/function () {
549
- function Planner3DImageUI(getConfiguratorState, plannerPaletteViewInfo, settingsState) {
550
- _classCallCheck(this, Planner3DImageUI);
551
- this.settingsState = settingsState;
552
- _defineProperty(this, "uiHTMLContainer", void 0);
553
- _defineProperty(this, "classUI", 'wc3DImageUI');
554
- _defineProperty(this, "getConfiguratorState", void 0);
555
- _defineProperty(this, "plannerPaletteViewInfo", void 0);
556
- this.getConfiguratorState = getConfiguratorState;
557
- this.plannerPaletteViewInfo = plannerPaletteViewInfo;
558
- }
559
-
560
- /**
561
- * This function adds the trash icon (deletion) on the 3D image.
562
- * The position is computed based on the informations from the rendering
563
- * @param element The elements where the icon should be displayed
564
- * @param posXPercent The procentual X position of the deletion icon when it should be displayd on TOP_RIGHT_BACK config
565
- * @param posYPercent The procentual Y position of the deletion icon when it should be displayd on TOP_RIGHT_BACK config
566
- */
567
- return _createClass(Planner3DImageUI, [{
568
- key: "addDelIcon",
569
- value: function addDelIcon(plannerUIHandler, element, posXPercent, posYPercent) {
570
- if (posXPercent > 100 || posXPercent < 0 || posYPercent > 100 || posYPercent < 0) return;
571
- plannerUIHandler.addTrashIconUI(element.getSetId(), element.getElementId(), element.getRotDeg(), new Vector2(posXPercent, posYPercent, 'percentage'), element.getPlannerType() == 'BOX' ? 'BOX' : '3D');
572
- }
573
- }, {
574
- key: "addDimensionInfo",
575
- value: function addDimensionInfo(plannerUIHandler, setId, element, rendering) {
576
- var alternateRenderInfo = rendering.getAlternateRenderInfo();
577
- if (rendering.getAlternateRenderingsExist() && alternateRenderInfo == undefined) return; //Only display the dimensions when no door is shown
578
- var elementId = element.parentElementId + '.' + element.shelfGridId + '.' + element.shelfRasterHeight;
579
- var position = rendering.getLeftBottomFrontUIPos(setId, elementId);
580
- if (!position) return;
581
- if (position.x < 0 || position.x > 100) return;
582
- if (position.y < 0 || position.y > 100) return;
583
- var distVal = Math.round(rendering.getDistanceToGround(setId, elementId));
584
- if (distVal == -1) return;
585
- plannerUIHandler.addDistanceFromGround(setId, element.parentElementId, distVal, position);
586
- }
587
-
588
- /**
589
- * This function adds the position number to the 3D image. It returns the position of the number on the screen and its width
590
- * @param element
591
- * @param posXPercent
592
- * @param posYPercent
593
- * @param elemIsSelected
594
- * @param elemIsSelectable
595
- */
596
- }, {
597
- key: "addPosNrUI",
598
- value: function addPosNrUI(plannerUIHandler, element, posXPercent, posYPercent, elemIsSelected, elemIsSelectable) {
599
- var _plannerUIHandler$get;
600
- if (posXPercent < 0) posXPercent = 0;
601
- if (posXPercent > 100) posXPercent = 100;
602
- if (posYPercent < 0) posYPercent = 0;
603
- if (posYPercent > 100) posYPercent = 100;
604
- plannerUIHandler.addPosNrUI(element.getSetId(), element.getElementId(), element.getIsDockedAccessoire(), new Vector2(posXPercent, posYPercent, 'percentage'), element.getRotDeg(), 1, (_plannerUIHandler$get = plannerUIHandler.getPosNrByBasketId(element.getBasketId())) === null || _plannerUIHandler$get === void 0 ? void 0 : _plannerUIHandler$get.toString(), elemIsSelected ? 'selected' : elemIsSelectable ? 'selectable' : 'unselectable', '3D');
605
- }
606
-
607
- /**
608
- * This function adds the docking points of the box planner. It is the docking point for docking to left and right and if the element is the top element in the colum
609
- * it also adds the add to top.
610
- * @param element The current selected element
611
- * @param rendering The rendering that holds the information about the screen positions
612
- */
613
- }, {
614
- key: "addBoxPlannerDockingPoints",
615
- value: function addBoxPlannerDockingPoints(plannerUIHandler, element, rendering) {
616
- var displayTopDP = false;
617
- var avoDP = element.getFreeDockingPointByTypeAndNumber('AVO', 1);
618
- if (avoDP != undefined && !avoDP.IsDisabled) displayTopDP = true; //The dockingpoint can be disabled when e.g. the max count of elements per col is reached
619
-
620
- var leftCenter = rendering.getBoxPlannerCornerUIPos(element.getSetId(), element.getElementId(), 'LEFTCENTER');
621
- if (leftCenter) plannerUIHandler.addCopy(element.getSetId(), element.getElementId(), 'BoxCopyLeft', leftCenter, '3D');
622
- var rightCenter = rendering.getBoxPlannerCornerUIPos(element.getSetId(), element.getElementId(), 'RIGHTCENTER');
623
- if (rightCenter) plannerUIHandler.addCopy(element.getSetId(), element.getElementId(), 'BoxCopyRight', rightCenter, '3D');
624
- if (displayTopDP) {
625
- var topCenter = rendering.getBoxPlannerCornerUIPos(element.getSetId(), element.getElementId(), 'TOPCENTER');
626
- if (topCenter) plannerUIHandler.addCopy(element.getSetId(), element.getElementId(), 'BoxCopyTop', topCenter, '3D');
627
- }
628
- }
629
- }, {
630
- key: "addCopyIcon",
631
- value: function addCopyIcon(plannerUIHandler, element) {
632
- plannerUIHandler.addCopy(element.getSetId(), element.getElementId(), 'CopyElement', new Vector2(0, 0), '3D');
633
- }
634
-
635
- /**
636
- * This function adds the accessoire DockingPoints on the 3D Image.
637
- * @param element The current element
638
- * @param viewDockingPointList
639
- * @param selectedDP
640
- */
641
- }, {
642
- key: "addAccDockingPoints",
643
- value: function addAccDockingPoints(plannerUIHandler, element, viewDockingPointList, typeOnly) {
644
- var allDockingPoints = element.getAllDockingPoints();
645
- for (var i = 0; i < allDockingPoints.length; i++) {
646
- var _this$plannerPaletteV;
647
- var dp = allDockingPoints[i];
648
- if ((_this$plannerPaletteV = this.plannerPaletteViewInfo) !== null && _this$plannerPaletteV !== void 0 && (_this$plannerPaletteV = _this$plannerPaletteV.plannerConfiguration.hideAVButtons) !== null && _this$plannerPaletteV !== void 0 && _this$plannerPaletteV.includes(dp.Type)) continue;
649
- if ((dp.Type == 'AVO' || dp.Type == 'AVC' || dp.Type == 'AVU' || dp.Type == 'AVS' || dp.Type == 'AVN') && typeOnly == undefined || typeOnly === dp.Type) {
650
- for (var j = 0; j < viewDockingPointList.length; j++) {
651
- if (dp.Name == viewDockingPointList[j].N) {
652
- //Man kann ihn anzeigen.
653
-
654
- plannerUIHandler.addDP(element.getSetId(), element.getElementId(), dp.DpId, 'ACC', dp.IsDocking ? 'DOCKING' : 'NOT_DOCKING', dp.OnElementId, element.getRotDeg(), 0, new Vector2(viewDockingPointList[j].x, viewDockingPointList[j].y, 'percentage'), '3D');
655
- }
656
- }
657
- }
658
- }
659
- }
660
- }, {
661
- key: "addOutlinePolygon",
662
- value: function addOutlinePolygon(plannerUIHandler, rendering, plannerElement, state, viewPortSize) {
663
- var outlineInfo = rendering.getOutlinePolygonForSVG(plannerElement.getSetId(), plannerElement.getElementId(), viewPortSize);
664
- if (outlineInfo) {
665
- plannerUIHandler.addOutline3D(plannerElement.getSetId(), plannerElement.getElementId(), outlineInfo.points, outlineInfo.avgCamDist, state, plannerElement.getPlannerType() == 'BOX');
666
- }
667
- }
668
-
669
- /**
670
- * Initializes the UI of the 3D image
671
- * @param htmlContainer The html Container where the UI should be rendered into
672
- */
673
- }, {
674
- key: "initialize",
675
- value: function initialize(htmlContainer) {
676
- if (!this.uiHTMLContainer) {
677
- this.uiHTMLContainer = document.createElement('div');
678
- this.uiHTMLContainer.classList.add(this.classUI);
679
- htmlContainer.appendChild(this.uiHTMLContainer);
680
- }
681
- }
682
-
683
- /**
684
- * Update the UserInterface on the 3D image.
685
- * @param allPlannedElements A list
686
- * @param rendering
687
- * @param selectedElements
688
- * @param selectableElements
689
- * @param setAllElementsSelectable
690
- * @param selectedDP
691
- */
692
- }, {
693
- key: "updateUI",
694
- value: function updateUI(plannerUIHandler, allPlannedElementsDict, allVisualizedNotPlannedElementsDict, rendering, selectedElementsDict, selectableElementsDict, setAllElementsSelectable, selectedDP, viewPortSize) {
695
- var _this = this;
696
- //Run through all position Elements and look if they are visible in the UIInfo
697
-
698
- plannerUIHandler.clear2D3DViewerUI();
699
- allPlannedElementsDict.forEach(function (allPlannedElements, setId) {
700
- for (var i = 0; i < allPlannedElements.length; i++) {
701
- var element = allPlannedElements[i];
702
- if (!rendering.hasUIInfosOfElement(element.getSetId(), element.getElementId())) continue;
703
- var elemIsSelected = false;
704
- var elemIsSelectable = setAllElementsSelectable;
705
- //TODO only show number of acccessoire if one of the accessoires or parent is selected
706
- if (selectedElementsDict.has(setId)) {
707
- var selectedElements = selectedElementsDict.get(setId);
708
- var selectedElemetIds = selectedElements.map(function (item) {
709
- return item.getElementId();
710
- });
711
- elemIsSelected = selectedElemetIds.includes(element.getElementId());
712
- }
713
- if (!elemIsSelected && !setAllElementsSelectable) {
714
- if (selectableElementsDict.has(setId)) {
715
- var selectableElements = selectableElementsDict.get(setId);
716
- for (var j = 0; j < selectableElements.length; j++) {
717
- if (element.getElementId() == selectableElements[j].getElementId()) {
718
- elemIsSelectable = true;
719
- break;
720
- }
721
- }
722
- }
723
- }
724
- _this.addOutlinePolygon(plannerUIHandler, rendering, element, elemIsSelected ? 'selected' : elemIsSelectable ? 'selectable' : 'unselectable', viewPortSize);
725
- switch (element.getPlannerType()) {
726
- case 'STD':
727
- {
728
- var isPlanner = ['PLANNER', 'PRODUCTS', 'PROMOTED', 'PLANNER_2.0'].includes(_this.getConfiguratorState());
729
- var _elemUIInfo = rendering.getLeftTopBackUIPos(element.getSetId(), element.getElementId());
730
- if (_elemUIInfo && (!_this.settingsState.posNrAreHidden || isPlanner)) _this.addPosNrUI(plannerUIHandler, element, _elemUIInfo.x, _elemUIInfo.y, elemIsSelected, elemIsSelectable);
731
- if (elemIsSelected) {
732
- if (isPlanner) {
733
- if (element.getIsDockedAccessoire()) {
734
- _this.addAccDockingPoints(plannerUIHandler, element, rendering.getAllDockingPoints(element.getSetId(), element.getElementId()), 'AVO');
735
- } else {
736
- _this.addAccDockingPoints(plannerUIHandler, element, rendering.getAllDockingPoints(element.getSetId(), element.getElementId()));
737
- }
738
- var _elemUIInfo2 = rendering.getRightTopBackUIPos(element.getSetId(), element.getElementId());
739
- _this.addDelIcon(plannerUIHandler, element, _elemUIInfo2.x, _elemUIInfo2.y);
740
- _this.addCopyIcon(plannerUIHandler, element);
741
- }
742
- }
743
- //if this is the ACC_PLANNER step the accessoreis show the deleteIcon
744
- if (_this.getConfiguratorState() == 'ACC_PLANNER' && element.getIsDockedAccessoire()) {
745
- var _elemUIInfo3 = rendering.getRightTopBackUIPos(element.getSetId(), element.getElementId());
746
- _this.addDelIcon(plannerUIHandler, element, _elemUIInfo3.x, _elemUIInfo3.y);
747
- }
748
- }
749
- break;
750
- case 'BOX':
751
- var elemUIInfo = rendering.getBoxPlannerCornerUIPos(element.getSetId(), element.getElementId(), 'RIGHTTOPFRONT');
752
- if (elemUIInfo) {
753
- _this.addPosNrUI(plannerUIHandler, element, elemUIInfo.x, elemUIInfo.y, elemIsSelected, elemIsSelectable);
754
- }
755
- if (elemIsSelected) {
756
- _this.addBoxPlannerDockingPoints(plannerUIHandler, element, rendering);
757
- if (!_this.checkBoxPlannerSingleElement(allPlannedElements) && element.getFreeDockingPointByTypeAndNumber('AVO', 1) != undefined) {
758
- //Only display Delete Icon for boxPlanner when there is more than 1 element and the element has no element on top
759
- var posBoxTrash = rendering.getBoxPlannerCornerUIPos(element.getSetId(), element.getElementId(), 'RIGHTTOPFRONT');
760
- if (posBoxTrash) _this.addDelIcon(plannerUIHandler, element, posBoxTrash.x, posBoxTrash.y);
761
- }
762
- }
763
- break;
764
- }
765
- }
766
- });
767
- allVisualizedNotPlannedElementsDict.forEach(function (allVisualizedNotPlannedElements, setId) {
768
- for (var i = 0; i < allVisualizedNotPlannedElements.length; i++) {
769
- var element = allVisualizedNotPlannedElements[i];
770
- if (element.isShelfAcc) _this.addDimensionInfo(plannerUIHandler, setId, element, rendering);
771
- }
772
- });
773
- }
774
-
775
- /**
776
- * This function returns true if only one Element is left.
777
- * If the backside module is activated, it is also one element left, if the two are opposite
778
- */
779
- }, {
780
- key: "checkBoxPlannerSingleElement",
781
- value: function checkBoxPlannerSingleElement(allPlannerElements) {
782
- if (allPlannerElements.length == 1) return true;
783
- if (allPlannerElements.length == 2) {
784
- var dockingPoints1 = allPlannerElements[0].getAllDockingPoints();
785
- var dockingPoints2 = allPlannerElements[0].getAllDockingPoints();
786
- for (var i = 0; i < dockingPoints1.length; i++) {
787
- var dockingPoint1 = dockingPoints1[i];
788
- for (var j = 0; j < dockingPoints2.length; j++) {
789
- var dockingPoint2 = dockingPoints2[j];
790
- if (dockingPoint1.IsDocking && dockingPoint2.IsDocking && dockingPoint1.Number == 2 && dockingPoint2.Number == 2 && (dockingPoint1.Type == 'AVO' || dockingPoint1.Type == 'AVU')) return true;
791
- }
792
- }
793
- }
794
- return false;
795
- }
796
-
797
- /**-------------------------Getter ------------------------------- */
798
- }, {
799
- key: "Class3DUI",
800
- get: function get() {
801
- return this.classUI;
802
- }
803
- }]);
804
- }();
805
-
806
- var Planner3DImage = /*#__PURE__*/function () {
807
- function Planner3DImage(getConfiguratorState, update3DImgSrcInView, getPlannerViewConfig, onDoShowNav3DChanged, getAllPlannedElements, plannerPaletteViewInfo, settingsState) {
808
- _classCallCheck(this, Planner3DImage);
809
- _defineProperty(this, "imageContainer", undefined);
810
- _defineProperty(this, "UIHandler", void 0);
811
- _defineProperty(this, "curRendering", void 0);
812
- _defineProperty(this, "planner3DGrid", void 0);
813
- _defineProperty(this, "update3DImgSrcInView", void 0);
814
- _defineProperty(this, "onDoShowNav3DChanged", void 0);
815
- //Navigation
816
- _defineProperty(this, "enablePlanner3DGrid", void 0);
817
- this.UIHandler = new Planner3DImageUI(getConfiguratorState, plannerPaletteViewInfo, settingsState);
818
- this.curRendering = new Rendering('Placeholder', 'Placeholder', '', -1, -1, false, false, 0, false, false, 'STREAM');
819
- this.planner3DGrid = new Planner3DGrid(getPlannerViewConfig, getAllPlannedElements);
820
- this.onDoShowNav3DChanged = onDoShowNav3DChanged;
821
- //this.getConfiguratorState = getConfiguratorState;
822
- this.enablePlanner3DGrid = false;
823
- this.update3DImgSrcInView = update3DImgSrcInView;
824
- }
825
- /*
826
- private onDragStart = (e: any) => {
827
- e.preventDefault();
828
- };
829
- */
830
- /**
831
- * This function is called to initialize the view of the 3D Image. All HTML components are created and the three.js canvas is initialized.
832
- * @param htmlElementID The Html Id where the image should be rendered
833
- * @param canvasSize The size of the container - used for Threejs canvas initialization
834
- */
835
- return _createClass(Planner3DImage, [{
836
- key: "initialize",
837
- value: function initialize(htmlElementID, updatePlannerTrans) {
838
- this.imageContainer = document.getElementById(htmlElementID);
839
- this.planner3DGrid.setCallbackMethods(updatePlannerTrans);
840
- if (this.imageContainer) {
841
- this.UIHandler.initialize(this.imageContainer);
842
- }
843
- }
844
-
845
- /**
846
- * This function is called when the visualization state of the 3D Grid changed. The 3D Grid is shown or hidden.
847
- * @param canvasSize The size the 3D canvas is rendered into
848
- * @param forceClose if true - the 3D grid is closed and ignores the state
849
- */
850
- }, {
851
- key: "handlePlanner3DGridChanged",
852
- value: function handlePlanner3DGridChanged(plannerUIHandler, canvasSize, forceClose, forceActivate) {
853
- if (forceClose) {
854
- if (this.enablePlanner3DGrid) {
855
- this.enablePlanner3DGrid = false;
856
- this.planner3DGrid.destroy(plannerUIHandler);
857
- }
858
- } else {
859
- var prevWasActive = this.enablePlanner3DGrid;
860
- if (forceActivate) this.enablePlanner3DGrid = true;else this.enablePlanner3DGrid = !this.enablePlanner3DGrid;
861
- if (prevWasActive && !this.enablePlanner3DGrid) {
862
- this.planner3DGrid.destroy(plannerUIHandler);
863
- } else if (!prevWasActive && this.enablePlanner3DGrid) {
864
- this.planner3DGrid.initialize(canvasSize.imgWidth, canvasSize.imgHeight);
865
- }
866
- }
867
- }
868
-
869
- /**
870
- * Clear all views - 2D Grid/ 3D Grid and 3D image
871
- */
872
- }, {
873
- key: "clearView",
874
- value: function clearView(plannerUIHandler) {
875
- this.planner3DGrid.destroy(plannerUIHandler);
876
- this.curRendering = new Rendering('Placeholder', 'Placeholder', '', -1, -1, false, false, 0, false, false, 'STREAM');
877
- this.update3DImgSrcInView('data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=='); //"data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" basis a blank white image
878
- }
879
-
880
- /**
881
- * returns true if the Planner3D Grid is enabled
882
- *
883
- */
884
- }, {
885
- key: "getPlanner3DGridEnabled",
886
- value: function getPlanner3DGridEnabled() {
887
- return this.enablePlanner3DGrid;
888
- }
889
- }, {
890
- key: "getPlanner3DGridIsInTransformMode",
891
- value: function getPlanner3DGridIsInTransformMode() {
892
- return this.planner3DGrid.isInTrasnformMode();
893
- }
894
-
895
- /**
896
- * This function is called when the user Interface of the current rendering has to be updated. This can be the case when the planner Changed or the configurator step changed.
897
- * @param selectedElements
898
- * @param selectableElements
899
- * @param setAllElementsSelectable if this is set the elements in the selectableElements are ignored and all Elements that are not selected are declared to be selectable
900
- */
901
- }, {
902
- key: "updateUI",
903
- value: function updateUI(plannerUIHandler, allPlannedElements, allVisualizedNotPlannedElements, selectedElementsDict, selectableElements, setAllElementsSelectable, selectedDP, viewPortSize) {
904
- var _this = this;
905
- if (this.enablePlanner3DGrid) {
906
- if (selectedElementsDict.size > 0) {
907
- selectedElementsDict.forEach(function (selectedPlannerElements, setId) {
908
- for (var i = 0; i < selectedPlannerElements.length; i++) {
909
- _this.planner3DGrid.updateUI(plannerUIHandler, selectedPlannerElements[i]);
910
- }
911
- });
912
- } else {
913
- plannerUIHandler.clear2D3DViewerUI();
914
- }
915
- }
916
- this.UIHandler.updateUI(plannerUIHandler, allPlannedElements, allVisualizedNotPlannedElements, this.curRendering, selectedElementsDict, selectableElements, setAllElementsSelectable, selectedDP, viewPortSize);
917
- }
918
-
919
- /**
920
- * This function is called when a new rendering should displayed on the screen.
921
- * This function handels also the positioning of posnum etc.
922
- * @param rendering The rendering to display
923
- * @param allPlannedElements All elements in the planning
924
- * @param selectedElements All currently selected elements
925
- * @param renderSize The size of the rendering
926
- */
927
- }, {
928
- key: "updatePlannerView",
929
- value: function updatePlannerView(plannerUIHandler, rendering, allPlannedElementsDict, selectedElementsDict, renderSize) {
930
- var prevImageHasStaticBG = this.curRendering.getHasStaticBackground();
931
- var curImageHasStaticBG = rendering.getHasStaticBackground();
932
- if (prevImageHasStaticBG != curImageHasStaticBG) {
933
- this.onDoShowNav3DChanged(!curImageHasStaticBG);
934
- }
935
- this.curRendering = rendering;
936
- this.update3DImgSrcInView(rendering.getImageForSrc());
937
- //this.planner3DImg.src = rendering.getImageForSrc();
938
- //this.planner3DImg.style.display = "";
939
- if (this.enablePlanner3DGrid) {
940
- var selectedElement = undefined;
941
- if (selectedElementsDict.size > 0) {
942
- selectedElementsDict.forEach(function (allPlannedElements, setId) {
943
- if (selectedElement == undefined && allPlannedElements.length > 0) selectedElement = allPlannedElements[0];
944
- });
945
- }
946
-
947
- //if (selectedElement != undefined) this.planner3DGrid.updateScene(rendering, selectedElement, allPlannedElementsDict, renderSize);
948
- this.planner3DGrid.updateScene(plannerUIHandler, rendering, selectedElement, allPlannedElementsDict, renderSize);
949
- }
950
- }
951
- }, {
952
- key: "resetSelectedElementsOnEnterPlannerMode",
953
- value: function resetSelectedElementsOnEnterPlannerMode() {
954
- return false;
955
- }
956
- }]);
957
- }();
958
-
959
- export { Planner3DImage as default };