rete-angular-plugin 0.0.0 → 2.0.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 (472) hide show
  1. package/12/bundles/rete-angular-plugin-ng12.umd.js +2197 -0
  2. package/12/bundles/rete-angular-plugin-ng12.umd.js.map +1 -0
  3. package/12/core.d.ts +48 -0
  4. package/12/esm2015/core.js +103 -0
  5. package/12/esm2015/index.js +11 -0
  6. package/12/esm2015/module.js +58 -0
  7. package/12/esm2015/presets/classic/components/connection/connection-wrapper.component.js +84 -0
  8. package/12/esm2015/presets/classic/components/connection/connection.component.js +32 -0
  9. package/12/esm2015/presets/classic/components/control/control.component.js +54 -0
  10. package/12/esm2015/presets/classic/components/index.js +6 -0
  11. package/12/esm2015/presets/classic/components/node/node.component.js +143 -0
  12. package/12/esm2015/presets/classic/components/socket/socket.component.js +34 -0
  13. package/12/esm2015/presets/classic/index.js +108 -0
  14. package/12/esm2015/presets/classic/types.js +2 -0
  15. package/12/esm2015/presets/context-menu/components/index.js +4 -0
  16. package/12/esm2015/presets/context-menu/components/item/item.component.js +116 -0
  17. package/12/esm2015/presets/context-menu/components/menu/menu.component.js +111 -0
  18. package/12/esm2015/presets/context-menu/components/search/search.component.js +28 -0
  19. package/12/esm2015/presets/context-menu/debounce.js +17 -0
  20. package/12/esm2015/presets/context-menu/index.js +38 -0
  21. package/12/esm2015/presets/context-menu/module.js +40 -0
  22. package/12/esm2015/presets/context-menu/types.js +2 -0
  23. package/12/esm2015/presets/index.js +5 -0
  24. package/12/esm2015/presets/minimap/components/index.js +4 -0
  25. package/12/esm2015/presets/minimap/components/mini-node/mini-node.component.js +55 -0
  26. package/12/esm2015/presets/minimap/components/mini-viewport/mini-viewport.component.js +81 -0
  27. package/12/esm2015/presets/minimap/components/minimap/minimap.component.js +104 -0
  28. package/12/esm2015/presets/minimap/index.js +42 -0
  29. package/12/esm2015/presets/minimap/module.js +40 -0
  30. package/12/esm2015/presets/minimap/types.js +2 -0
  31. package/12/esm2015/presets/reroute/components/index.js +3 -0
  32. package/12/esm2015/presets/reroute/components/pin/pin.component.js +86 -0
  33. package/12/esm2015/presets/reroute/components/pins/pins.component.js +52 -0
  34. package/12/esm2015/presets/reroute/index.js +32 -0
  35. package/12/esm2015/presets/reroute/module.js +35 -0
  36. package/12/esm2015/presets/reroute/types.js +2 -0
  37. package/12/esm2015/presets/types.js +2 -0
  38. package/12/esm2015/rete-angular-plugin-ng12.js +5 -0
  39. package/12/esm2015/shared/drag.js +23 -0
  40. package/12/esm2015/types.js +2 -0
  41. package/12/fesm2015/rete-angular-plugin-ng12.js +1475 -0
  42. package/12/fesm2015/rete-angular-plugin-ng12.js.map +1 -0
  43. package/12/index.d.ts +12 -0
  44. package/12/module.d.ts +12 -0
  45. package/12/package.json +17 -0
  46. package/12/presets/classic/components/connection/connection-wrapper.component.d.ts +30 -0
  47. package/12/presets/classic/components/connection/connection.component.d.ts +11 -0
  48. package/12/presets/classic/components/control/control.component.d.ts +14 -0
  49. package/12/presets/classic/components/index.d.ts +5 -0
  50. package/12/presets/classic/components/node/node.component.d.ts +28 -0
  51. package/12/presets/classic/components/socket/socket.component.d.ts +12 -0
  52. package/12/presets/classic/index.d.ts +18 -0
  53. package/12/presets/classic/types.d.ts +49 -0
  54. package/12/presets/context-menu/components/index.d.ts +3 -0
  55. package/12/presets/context-menu/components/item/item.component.d.ts +26 -0
  56. package/12/presets/context-menu/components/menu/menu.component.d.ts +27 -0
  57. package/12/presets/context-menu/components/search/search.component.d.ts +8 -0
  58. package/12/presets/context-menu/debounce.d.ts +5 -0
  59. package/12/presets/context-menu/index.d.ts +6 -0
  60. package/12/presets/context-menu/module.d.ts +10 -0
  61. package/12/presets/context-menu/types.d.ts +12 -0
  62. package/12/presets/index.d.ts +4 -0
  63. package/12/presets/minimap/components/index.d.ts +3 -0
  64. package/12/presets/minimap/components/mini-node/mini-node.component.d.ts +14 -0
  65. package/12/presets/minimap/components/mini-viewport/mini-viewport.component.d.ts +27 -0
  66. package/12/presets/minimap/components/minimap/minimap.component.d.ts +25 -0
  67. package/12/presets/minimap/index.d.ts +6 -0
  68. package/12/presets/minimap/module.d.ts +10 -0
  69. package/12/presets/minimap/types.d.ts +22 -0
  70. package/12/presets/reroute/components/index.d.ts +2 -0
  71. package/12/presets/reroute/components/pin/pin.component.d.ts +30 -0
  72. package/12/presets/reroute/components/pins/pins.component.d.ts +17 -0
  73. package/12/presets/reroute/index.d.ts +10 -0
  74. package/12/presets/reroute/module.d.ts +9 -0
  75. package/12/presets/reroute/types.d.ts +18 -0
  76. package/12/presets/types.d.ts +15 -0
  77. package/12/rete-angular-plugin-ng12.d.ts +5 -0
  78. package/12/shared/drag.d.ts +10 -0
  79. package/12/types.d.ts +29 -0
  80. package/13/core.d.ts +48 -0
  81. package/13/esm2020/core.mjs +109 -0
  82. package/13/esm2020/index.mjs +11 -0
  83. package/13/esm2020/module.mjs +58 -0
  84. package/13/esm2020/presets/classic/components/connection/connection-wrapper.component.mjs +79 -0
  85. package/13/esm2020/presets/classic/components/connection/connection.component.mjs +28 -0
  86. package/13/esm2020/presets/classic/components/control/control.component.mjs +51 -0
  87. package/13/esm2020/presets/classic/components/index.mjs +6 -0
  88. package/13/esm2020/presets/classic/components/node/node.component.mjs +137 -0
  89. package/13/esm2020/presets/classic/components/socket/socket.component.mjs +31 -0
  90. package/13/esm2020/presets/classic/index.mjs +111 -0
  91. package/13/esm2020/presets/classic/types.mjs +2 -0
  92. package/13/esm2020/presets/context-menu/components/index.mjs +4 -0
  93. package/13/esm2020/presets/context-menu/components/item/item.component.mjs +111 -0
  94. package/13/esm2020/presets/context-menu/components/menu/menu.component.mjs +105 -0
  95. package/13/esm2020/presets/context-menu/components/search/search.component.mjs +24 -0
  96. package/13/esm2020/presets/context-menu/debounce.mjs +17 -0
  97. package/13/esm2020/presets/context-menu/index.mjs +38 -0
  98. package/13/esm2020/presets/context-menu/module.mjs +40 -0
  99. package/13/esm2020/presets/context-menu/types.mjs +2 -0
  100. package/13/esm2020/presets/index.mjs +5 -0
  101. package/13/esm2020/presets/minimap/components/index.mjs +4 -0
  102. package/13/esm2020/presets/minimap/components/mini-node/mini-node.component.mjs +50 -0
  103. package/13/esm2020/presets/minimap/components/mini-viewport/mini-viewport.component.mjs +76 -0
  104. package/13/esm2020/presets/minimap/components/minimap/minimap.component.mjs +100 -0
  105. package/13/esm2020/presets/minimap/index.mjs +42 -0
  106. package/13/esm2020/presets/minimap/module.mjs +40 -0
  107. package/13/esm2020/presets/minimap/types.mjs +2 -0
  108. package/13/esm2020/presets/reroute/components/index.mjs +3 -0
  109. package/13/esm2020/presets/reroute/components/pin/pin.component.mjs +81 -0
  110. package/13/esm2020/presets/reroute/components/pins/pins.component.mjs +50 -0
  111. package/13/esm2020/presets/reroute/index.mjs +40 -0
  112. package/13/esm2020/presets/reroute/module.mjs +35 -0
  113. package/13/esm2020/presets/reroute/types.mjs +2 -0
  114. package/13/esm2020/presets/types.mjs +2 -0
  115. package/13/esm2020/rete-angular-plugin-ng13.mjs +5 -0
  116. package/13/esm2020/shared/drag.mjs +23 -0
  117. package/13/esm2020/types.mjs +2 -0
  118. package/13/fesm2015/rete-angular-plugin-ng13.mjs +1545 -0
  119. package/13/fesm2015/rete-angular-plugin-ng13.mjs.map +1 -0
  120. package/13/fesm2020/rete-angular-plugin-ng13.mjs +1436 -0
  121. package/13/fesm2020/rete-angular-plugin-ng13.mjs.map +1 -0
  122. package/13/index.d.ts +12 -0
  123. package/13/module.d.ts +12 -0
  124. package/13/package.json +30 -0
  125. package/13/presets/classic/components/connection/connection-wrapper.component.d.ts +30 -0
  126. package/13/presets/classic/components/connection/connection.component.d.ts +11 -0
  127. package/13/presets/classic/components/control/control.component.d.ts +14 -0
  128. package/13/presets/classic/components/index.d.ts +5 -0
  129. package/13/presets/classic/components/node/node.component.d.ts +28 -0
  130. package/13/presets/classic/components/socket/socket.component.d.ts +12 -0
  131. package/13/presets/classic/index.d.ts +18 -0
  132. package/13/presets/classic/types.d.ts +49 -0
  133. package/13/presets/context-menu/components/index.d.ts +3 -0
  134. package/13/presets/context-menu/components/item/item.component.d.ts +26 -0
  135. package/13/presets/context-menu/components/menu/menu.component.d.ts +27 -0
  136. package/13/presets/context-menu/components/search/search.component.d.ts +8 -0
  137. package/13/presets/context-menu/debounce.d.ts +5 -0
  138. package/13/presets/context-menu/index.d.ts +6 -0
  139. package/13/presets/context-menu/module.d.ts +10 -0
  140. package/13/presets/context-menu/types.d.ts +12 -0
  141. package/13/presets/index.d.ts +4 -0
  142. package/13/presets/minimap/components/index.d.ts +3 -0
  143. package/13/presets/minimap/components/mini-node/mini-node.component.d.ts +14 -0
  144. package/13/presets/minimap/components/mini-viewport/mini-viewport.component.d.ts +27 -0
  145. package/13/presets/minimap/components/minimap/minimap.component.d.ts +25 -0
  146. package/13/presets/minimap/index.d.ts +6 -0
  147. package/13/presets/minimap/module.d.ts +10 -0
  148. package/13/presets/minimap/types.d.ts +22 -0
  149. package/13/presets/reroute/components/index.d.ts +2 -0
  150. package/13/presets/reroute/components/pin/pin.component.d.ts +30 -0
  151. package/13/presets/reroute/components/pins/pins.component.d.ts +17 -0
  152. package/13/presets/reroute/index.d.ts +10 -0
  153. package/13/presets/reroute/module.d.ts +9 -0
  154. package/13/presets/reroute/types.d.ts +18 -0
  155. package/13/presets/types.d.ts +15 -0
  156. package/13/rete-angular-plugin-ng13.d.ts +5 -0
  157. package/13/shared/drag.d.ts +10 -0
  158. package/13/types.d.ts +29 -0
  159. package/14/core.d.ts +48 -0
  160. package/14/esm2020/core.mjs +109 -0
  161. package/14/esm2020/index.mjs +11 -0
  162. package/14/esm2020/module.mjs +56 -0
  163. package/14/esm2020/presets/classic/components/connection/connection-wrapper.component.mjs +79 -0
  164. package/14/esm2020/presets/classic/components/connection/connection.component.mjs +28 -0
  165. package/14/esm2020/presets/classic/components/control/control.component.mjs +51 -0
  166. package/14/esm2020/presets/classic/components/index.mjs +6 -0
  167. package/14/esm2020/presets/classic/components/node/node.component.mjs +137 -0
  168. package/14/esm2020/presets/classic/components/socket/socket.component.mjs +31 -0
  169. package/14/esm2020/presets/classic/index.mjs +111 -0
  170. package/14/esm2020/presets/classic/types.mjs +2 -0
  171. package/14/esm2020/presets/context-menu/components/index.mjs +4 -0
  172. package/14/esm2020/presets/context-menu/components/item/item.component.mjs +111 -0
  173. package/14/esm2020/presets/context-menu/components/menu/menu.component.mjs +105 -0
  174. package/14/esm2020/presets/context-menu/components/search/search.component.mjs +24 -0
  175. package/14/esm2020/presets/context-menu/debounce.mjs +17 -0
  176. package/14/esm2020/presets/context-menu/index.mjs +38 -0
  177. package/14/esm2020/presets/context-menu/module.mjs +38 -0
  178. package/14/esm2020/presets/context-menu/types.mjs +2 -0
  179. package/14/esm2020/presets/index.mjs +5 -0
  180. package/14/esm2020/presets/minimap/components/index.mjs +4 -0
  181. package/14/esm2020/presets/minimap/components/mini-node/mini-node.component.mjs +50 -0
  182. package/14/esm2020/presets/minimap/components/mini-viewport/mini-viewport.component.mjs +76 -0
  183. package/14/esm2020/presets/minimap/components/minimap/minimap.component.mjs +100 -0
  184. package/14/esm2020/presets/minimap/index.mjs +42 -0
  185. package/14/esm2020/presets/minimap/module.mjs +38 -0
  186. package/14/esm2020/presets/minimap/types.mjs +2 -0
  187. package/14/esm2020/presets/reroute/components/index.mjs +3 -0
  188. package/14/esm2020/presets/reroute/components/pin/pin.component.mjs +81 -0
  189. package/14/esm2020/presets/reroute/components/pins/pins.component.mjs +50 -0
  190. package/14/esm2020/presets/reroute/index.mjs +40 -0
  191. package/14/esm2020/presets/reroute/module.mjs +33 -0
  192. package/14/esm2020/presets/reroute/types.mjs +2 -0
  193. package/14/esm2020/presets/types.mjs +2 -0
  194. package/14/esm2020/rete-angular-plugin-ng14.mjs +5 -0
  195. package/14/esm2020/shared/drag.mjs +23 -0
  196. package/14/esm2020/types.mjs +2 -0
  197. package/14/fesm2015/rete-angular-plugin-ng14.mjs +1537 -0
  198. package/14/fesm2015/rete-angular-plugin-ng14.mjs.map +1 -0
  199. package/14/fesm2020/rete-angular-plugin-ng14.mjs +1428 -0
  200. package/14/fesm2020/rete-angular-plugin-ng14.mjs.map +1 -0
  201. package/14/index.d.ts +12 -0
  202. package/14/module.d.ts +12 -0
  203. package/14/package.json +30 -0
  204. package/14/presets/classic/components/connection/connection-wrapper.component.d.ts +30 -0
  205. package/14/presets/classic/components/connection/connection.component.d.ts +11 -0
  206. package/14/presets/classic/components/control/control.component.d.ts +14 -0
  207. package/14/presets/classic/components/index.d.ts +5 -0
  208. package/14/presets/classic/components/node/node.component.d.ts +28 -0
  209. package/14/presets/classic/components/socket/socket.component.d.ts +12 -0
  210. package/14/presets/classic/index.d.ts +18 -0
  211. package/14/presets/classic/types.d.ts +49 -0
  212. package/14/presets/context-menu/components/index.d.ts +3 -0
  213. package/14/presets/context-menu/components/item/item.component.d.ts +26 -0
  214. package/14/presets/context-menu/components/menu/menu.component.d.ts +27 -0
  215. package/14/presets/context-menu/components/search/search.component.d.ts +8 -0
  216. package/14/presets/context-menu/debounce.d.ts +5 -0
  217. package/14/presets/context-menu/index.d.ts +6 -0
  218. package/14/presets/context-menu/module.d.ts +10 -0
  219. package/14/presets/context-menu/types.d.ts +12 -0
  220. package/14/presets/index.d.ts +4 -0
  221. package/14/presets/minimap/components/index.d.ts +3 -0
  222. package/14/presets/minimap/components/mini-node/mini-node.component.d.ts +14 -0
  223. package/14/presets/minimap/components/mini-viewport/mini-viewport.component.d.ts +27 -0
  224. package/14/presets/minimap/components/minimap/minimap.component.d.ts +25 -0
  225. package/14/presets/minimap/index.d.ts +6 -0
  226. package/14/presets/minimap/module.d.ts +10 -0
  227. package/14/presets/minimap/types.d.ts +22 -0
  228. package/14/presets/reroute/components/index.d.ts +2 -0
  229. package/14/presets/reroute/components/pin/pin.component.d.ts +30 -0
  230. package/14/presets/reroute/components/pins/pins.component.d.ts +17 -0
  231. package/14/presets/reroute/index.d.ts +10 -0
  232. package/14/presets/reroute/module.d.ts +9 -0
  233. package/14/presets/reroute/types.d.ts +18 -0
  234. package/14/presets/types.d.ts +15 -0
  235. package/14/shared/drag.d.ts +10 -0
  236. package/14/types.d.ts +29 -0
  237. package/15/core.d.ts +48 -0
  238. package/15/esm2020/core.mjs +109 -0
  239. package/15/esm2020/index.mjs +11 -0
  240. package/15/esm2020/module.mjs +56 -0
  241. package/15/esm2020/presets/classic/components/connection/connection-wrapper.component.mjs +79 -0
  242. package/15/esm2020/presets/classic/components/connection/connection.component.mjs +28 -0
  243. package/15/esm2020/presets/classic/components/control/control.component.mjs +51 -0
  244. package/15/esm2020/presets/classic/components/index.mjs +6 -0
  245. package/15/esm2020/presets/classic/components/node/node.component.mjs +137 -0
  246. package/15/esm2020/presets/classic/components/socket/socket.component.mjs +31 -0
  247. package/15/esm2020/presets/classic/index.mjs +111 -0
  248. package/15/esm2020/presets/classic/types.mjs +2 -0
  249. package/15/esm2020/presets/context-menu/components/index.mjs +4 -0
  250. package/15/esm2020/presets/context-menu/components/item/item.component.mjs +111 -0
  251. package/15/esm2020/presets/context-menu/components/menu/menu.component.mjs +105 -0
  252. package/15/esm2020/presets/context-menu/components/search/search.component.mjs +24 -0
  253. package/15/esm2020/presets/context-menu/debounce.mjs +17 -0
  254. package/15/esm2020/presets/context-menu/index.mjs +38 -0
  255. package/15/esm2020/presets/context-menu/module.mjs +38 -0
  256. package/15/esm2020/presets/context-menu/types.mjs +2 -0
  257. package/15/esm2020/presets/index.mjs +5 -0
  258. package/15/esm2020/presets/minimap/components/index.mjs +4 -0
  259. package/15/esm2020/presets/minimap/components/mini-node/mini-node.component.mjs +50 -0
  260. package/15/esm2020/presets/minimap/components/mini-viewport/mini-viewport.component.mjs +76 -0
  261. package/15/esm2020/presets/minimap/components/minimap/minimap.component.mjs +100 -0
  262. package/15/esm2020/presets/minimap/index.mjs +42 -0
  263. package/15/esm2020/presets/minimap/module.mjs +38 -0
  264. package/15/esm2020/presets/minimap/types.mjs +2 -0
  265. package/15/esm2020/presets/reroute/components/index.mjs +3 -0
  266. package/15/esm2020/presets/reroute/components/pin/pin.component.mjs +81 -0
  267. package/15/esm2020/presets/reroute/components/pins/pins.component.mjs +50 -0
  268. package/15/esm2020/presets/reroute/index.mjs +40 -0
  269. package/15/esm2020/presets/reroute/module.mjs +33 -0
  270. package/15/esm2020/presets/reroute/types.mjs +2 -0
  271. package/15/esm2020/presets/types.mjs +2 -0
  272. package/15/esm2020/rete-angular-plugin-ng15.mjs +5 -0
  273. package/15/esm2020/shared/drag.mjs +23 -0
  274. package/15/esm2020/types.mjs +2 -0
  275. package/15/fesm2015/rete-angular-plugin-ng15.mjs +1537 -0
  276. package/15/fesm2015/rete-angular-plugin-ng15.mjs.map +1 -0
  277. package/15/fesm2020/rete-angular-plugin-ng15.mjs +1428 -0
  278. package/15/fesm2020/rete-angular-plugin-ng15.mjs.map +1 -0
  279. package/15/index.d.ts +12 -0
  280. package/15/module.d.ts +12 -0
  281. package/15/package.json +30 -0
  282. package/15/presets/classic/components/connection/connection-wrapper.component.d.ts +30 -0
  283. package/15/presets/classic/components/connection/connection.component.d.ts +11 -0
  284. package/15/presets/classic/components/control/control.component.d.ts +14 -0
  285. package/15/presets/classic/components/index.d.ts +5 -0
  286. package/15/presets/classic/components/node/node.component.d.ts +28 -0
  287. package/15/presets/classic/components/socket/socket.component.d.ts +12 -0
  288. package/15/presets/classic/index.d.ts +18 -0
  289. package/15/presets/classic/types.d.ts +49 -0
  290. package/15/presets/context-menu/components/index.d.ts +3 -0
  291. package/15/presets/context-menu/components/item/item.component.d.ts +26 -0
  292. package/15/presets/context-menu/components/menu/menu.component.d.ts +27 -0
  293. package/15/presets/context-menu/components/search/search.component.d.ts +8 -0
  294. package/15/presets/context-menu/debounce.d.ts +5 -0
  295. package/15/presets/context-menu/index.d.ts +6 -0
  296. package/15/presets/context-menu/module.d.ts +10 -0
  297. package/15/presets/context-menu/types.d.ts +12 -0
  298. package/15/presets/index.d.ts +4 -0
  299. package/15/presets/minimap/components/index.d.ts +3 -0
  300. package/15/presets/minimap/components/mini-node/mini-node.component.d.ts +14 -0
  301. package/15/presets/minimap/components/mini-viewport/mini-viewport.component.d.ts +27 -0
  302. package/15/presets/minimap/components/minimap/minimap.component.d.ts +25 -0
  303. package/15/presets/minimap/index.d.ts +6 -0
  304. package/15/presets/minimap/module.d.ts +10 -0
  305. package/15/presets/minimap/types.d.ts +22 -0
  306. package/15/presets/reroute/components/index.d.ts +2 -0
  307. package/15/presets/reroute/components/pin/pin.component.d.ts +30 -0
  308. package/15/presets/reroute/components/pins/pins.component.d.ts +17 -0
  309. package/15/presets/reroute/index.d.ts +10 -0
  310. package/15/presets/reroute/module.d.ts +9 -0
  311. package/15/presets/reroute/types.d.ts +18 -0
  312. package/15/presets/types.d.ts +15 -0
  313. package/15/shared/drag.d.ts +10 -0
  314. package/15/types.d.ts +29 -0
  315. package/16/core.d.ts +48 -0
  316. package/16/esm2022/core.mjs +111 -0
  317. package/16/esm2022/index.mjs +11 -0
  318. package/16/esm2022/module.mjs +49 -0
  319. package/16/esm2022/presets/classic/components/connection/connection-wrapper.component.mjs +90 -0
  320. package/16/esm2022/presets/classic/components/connection/connection.component.mjs +32 -0
  321. package/16/esm2022/presets/classic/components/control/control.component.mjs +54 -0
  322. package/16/esm2022/presets/classic/components/index.mjs +6 -0
  323. package/16/esm2022/presets/classic/components/node/node.component.mjs +144 -0
  324. package/16/esm2022/presets/classic/components/socket/socket.component.mjs +34 -0
  325. package/16/esm2022/presets/classic/index.mjs +111 -0
  326. package/16/esm2022/presets/classic/types.mjs +2 -0
  327. package/16/esm2022/presets/context-menu/components/index.mjs +4 -0
  328. package/16/esm2022/presets/context-menu/components/item/item.component.mjs +114 -0
  329. package/16/esm2022/presets/context-menu/components/menu/menu.component.mjs +111 -0
  330. package/16/esm2022/presets/context-menu/components/search/search.component.mjs +23 -0
  331. package/16/esm2022/presets/context-menu/debounce.mjs +17 -0
  332. package/16/esm2022/presets/context-menu/index.mjs +38 -0
  333. package/16/esm2022/presets/context-menu/module.mjs +35 -0
  334. package/16/esm2022/presets/context-menu/types.mjs +2 -0
  335. package/16/esm2022/presets/index.mjs +5 -0
  336. package/16/esm2022/presets/minimap/components/index.mjs +4 -0
  337. package/16/esm2022/presets/minimap/components/mini-node/mini-node.component.mjs +54 -0
  338. package/16/esm2022/presets/minimap/components/mini-viewport/mini-viewport.component.mjs +80 -0
  339. package/16/esm2022/presets/minimap/components/minimap/minimap.component.mjs +109 -0
  340. package/16/esm2022/presets/minimap/index.mjs +42 -0
  341. package/16/esm2022/presets/minimap/module.mjs +35 -0
  342. package/16/esm2022/presets/minimap/types.mjs +2 -0
  343. package/16/esm2022/presets/reroute/components/index.mjs +3 -0
  344. package/16/esm2022/presets/reroute/components/pin/pin.component.mjs +85 -0
  345. package/16/esm2022/presets/reroute/components/pins/pins.component.mjs +57 -0
  346. package/16/esm2022/presets/reroute/index.mjs +40 -0
  347. package/16/esm2022/presets/reroute/module.mjs +30 -0
  348. package/16/esm2022/presets/reroute/types.mjs +2 -0
  349. package/16/esm2022/presets/types.mjs +2 -0
  350. package/16/esm2022/rete-angular-plugin-ng16.mjs +5 -0
  351. package/16/esm2022/shared/drag.mjs +23 -0
  352. package/16/esm2022/types.mjs +2 -0
  353. package/16/fesm2022/rete-angular-plugin-ng16.mjs +1478 -0
  354. package/16/fesm2022/rete-angular-plugin-ng16.mjs.map +1 -0
  355. package/16/index.d.ts +12 -0
  356. package/16/module.d.ts +12 -0
  357. package/16/package.json +24 -0
  358. package/16/presets/classic/components/connection/connection-wrapper.component.d.ts +30 -0
  359. package/16/presets/classic/components/connection/connection.component.d.ts +11 -0
  360. package/16/presets/classic/components/control/control.component.d.ts +14 -0
  361. package/16/presets/classic/components/index.d.ts +5 -0
  362. package/16/presets/classic/components/node/node.component.d.ts +28 -0
  363. package/16/presets/classic/components/socket/socket.component.d.ts +12 -0
  364. package/16/presets/classic/index.d.ts +18 -0
  365. package/16/presets/classic/types.d.ts +49 -0
  366. package/16/presets/context-menu/components/index.d.ts +3 -0
  367. package/16/presets/context-menu/components/item/item.component.d.ts +26 -0
  368. package/16/presets/context-menu/components/menu/menu.component.d.ts +27 -0
  369. package/16/presets/context-menu/components/search/search.component.d.ts +8 -0
  370. package/16/presets/context-menu/debounce.d.ts +5 -0
  371. package/16/presets/context-menu/index.d.ts +6 -0
  372. package/16/presets/context-menu/module.d.ts +10 -0
  373. package/16/presets/context-menu/types.d.ts +12 -0
  374. package/16/presets/index.d.ts +4 -0
  375. package/16/presets/minimap/components/index.d.ts +3 -0
  376. package/16/presets/minimap/components/mini-node/mini-node.component.d.ts +14 -0
  377. package/16/presets/minimap/components/mini-viewport/mini-viewport.component.d.ts +27 -0
  378. package/16/presets/minimap/components/minimap/minimap.component.d.ts +25 -0
  379. package/16/presets/minimap/index.d.ts +6 -0
  380. package/16/presets/minimap/module.d.ts +10 -0
  381. package/16/presets/minimap/types.d.ts +22 -0
  382. package/16/presets/reroute/components/index.d.ts +2 -0
  383. package/16/presets/reroute/components/pin/pin.component.d.ts +30 -0
  384. package/16/presets/reroute/components/pins/pins.component.d.ts +17 -0
  385. package/16/presets/reroute/index.d.ts +10 -0
  386. package/16/presets/reroute/module.d.ts +9 -0
  387. package/16/presets/reroute/types.d.ts +18 -0
  388. package/16/presets/types.d.ts +15 -0
  389. package/16/shared/drag.d.ts +10 -0
  390. package/16/types.d.ts +29 -0
  391. package/LICENSE +21 -0
  392. package/README.md +28 -0
  393. package/bundles/rete-angular-plugin.umd.js +1707 -0
  394. package/bundles/rete-angular-plugin.umd.js.map +1 -0
  395. package/core.d.ts +48 -0
  396. package/esm2015/core.js +103 -0
  397. package/esm2015/index.js +12 -0
  398. package/esm2015/module.js +40 -0
  399. package/esm2015/presets/classic/components/connection/connection-wrapper.component.js +80 -0
  400. package/esm2015/presets/classic/components/connection/connection.component.js +17 -0
  401. package/esm2015/presets/classic/components/control/control.component.js +42 -0
  402. package/esm2015/presets/classic/components/index.js +6 -0
  403. package/esm2015/presets/classic/components/node/node.component.js +62 -0
  404. package/esm2015/presets/classic/components/socket/socket.component.js +29 -0
  405. package/esm2015/presets/classic/index.js +108 -0
  406. package/esm2015/presets/classic/types.js +2 -0
  407. package/esm2015/presets/context-menu/components/index.js +4 -0
  408. package/esm2015/presets/context-menu/components/item/item.component.js +64 -0
  409. package/esm2015/presets/context-menu/components/menu/menu.component.js +62 -0
  410. package/esm2015/presets/context-menu/components/search/search.component.js +18 -0
  411. package/esm2015/presets/context-menu/debounce.js +17 -0
  412. package/esm2015/presets/context-menu/index.js +38 -0
  413. package/esm2015/presets/context-menu/module.js +28 -0
  414. package/esm2015/presets/context-menu/types.js +2 -0
  415. package/esm2015/presets/index.js +9 -0
  416. package/esm2015/presets/minimap/components/index.js +4 -0
  417. package/esm2015/presets/minimap/components/mini-node/mini-node.component.js +39 -0
  418. package/esm2015/presets/minimap/components/mini-viewport/mini-viewport.component.js +59 -0
  419. package/esm2015/presets/minimap/components/minimap/minimap.component.js +70 -0
  420. package/esm2015/presets/minimap/index.js +42 -0
  421. package/esm2015/presets/minimap/module.js +28 -0
  422. package/esm2015/presets/minimap/types.js +2 -0
  423. package/esm2015/presets/reroute/components/index.js +3 -0
  424. package/esm2015/presets/reroute/components/pin/pin.component.js +66 -0
  425. package/esm2015/presets/reroute/components/pins/pins.component.js +31 -0
  426. package/esm2015/presets/reroute/index.js +32 -0
  427. package/esm2015/presets/reroute/module.js +25 -0
  428. package/esm2015/presets/reroute/types.js +2 -0
  429. package/esm2015/presets/types.js +2 -0
  430. package/esm2015/rete-angular-plugin.js +18 -0
  431. package/esm2015/shared/drag.js +23 -0
  432. package/esm2015/types.js +2 -0
  433. package/fesm2015/rete-angular-plugin.js +1111 -0
  434. package/fesm2015/rete-angular-plugin.js.map +1 -0
  435. package/index.d.ts +12 -0
  436. package/module.d.ts +2 -0
  437. package/package.json +37 -5
  438. package/presets/classic/components/connection/connection-wrapper.component.d.ts +27 -0
  439. package/presets/classic/components/connection/connection.component.d.ts +8 -0
  440. package/presets/classic/components/control/control.component.d.ts +11 -0
  441. package/presets/classic/components/index.d.ts +5 -0
  442. package/presets/classic/components/node/node.component.d.ts +23 -0
  443. package/presets/classic/components/socket/socket.component.d.ts +9 -0
  444. package/presets/classic/index.d.ts +18 -0
  445. package/presets/classic/types.d.ts +49 -0
  446. package/presets/context-menu/components/index.d.ts +3 -0
  447. package/presets/context-menu/components/item/item.component.d.ts +23 -0
  448. package/presets/context-menu/components/menu/menu.component.d.ts +24 -0
  449. package/presets/context-menu/components/search/search.component.d.ts +5 -0
  450. package/presets/context-menu/debounce.d.ts +5 -0
  451. package/presets/context-menu/index.d.ts +6 -0
  452. package/presets/context-menu/module.d.ts +2 -0
  453. package/presets/context-menu/types.d.ts +12 -0
  454. package/presets/index.d.ts +4 -0
  455. package/presets/minimap/components/index.d.ts +3 -0
  456. package/presets/minimap/components/mini-node/mini-node.component.d.ts +11 -0
  457. package/presets/minimap/components/mini-viewport/mini-viewport.component.d.ts +24 -0
  458. package/presets/minimap/components/minimap/minimap.component.d.ts +22 -0
  459. package/presets/minimap/index.d.ts +6 -0
  460. package/presets/minimap/module.d.ts +2 -0
  461. package/presets/minimap/types.d.ts +22 -0
  462. package/presets/reroute/components/index.d.ts +2 -0
  463. package/presets/reroute/components/pin/pin.component.d.ts +27 -0
  464. package/presets/reroute/components/pins/pins.component.d.ts +14 -0
  465. package/presets/reroute/index.d.ts +10 -0
  466. package/presets/reroute/module.d.ts +2 -0
  467. package/presets/reroute/types.d.ts +18 -0
  468. package/presets/types.d.ts +15 -0
  469. package/rete-angular-plugin.d.ts +17 -0
  470. package/rete-angular-plugin.metadata.json +1 -0
  471. package/shared/drag.d.ts +10 -0
  472. package/types.d.ts +29 -0
@@ -0,0 +1,1111 @@
1
+ import { __awaiter } from 'tslib';
2
+ import { getUID, ClassicPreset, Scope } from 'rete';
3
+ import { getDOMSocketPosition, loopConnectionPath, classicConnectionPath } from 'rete-render-utils';
4
+ import { Directive, ElementRef, Input, Component, ChangeDetectorRef, HostBinding, HostListener, ViewContainerRef, ComponentFactoryResolver, NgModule, EventEmitter, Output } from '@angular/core';
5
+ import { BaseAreaPlugin } from 'rete-area-plugin';
6
+ import { CommonModule } from '@angular/common';
7
+ import { createCustomElement } from '@angular/elements';
8
+
9
+ class RefDirective {
10
+ constructor(el) {
11
+ this.el = el;
12
+ }
13
+ ngOnChanges() {
14
+ this.emit({ type: 'render', data: Object.assign(Object.assign({}, this.data), { element: this.el.nativeElement }) });
15
+ }
16
+ }
17
+ RefDirective.decorators = [
18
+ { type: Directive, args: [{
19
+ selector: '[refComponent]'
20
+ },] }
21
+ ];
22
+ RefDirective.ctorParameters = () => [
23
+ { type: ElementRef }
24
+ ];
25
+ RefDirective.propDecorators = {
26
+ data: [{ type: Input }],
27
+ emit: [{ type: Input }]
28
+ };
29
+ class NodeComponent {
30
+ constructor(cdr) {
31
+ this.cdr = cdr;
32
+ this.seed = 0;
33
+ this.cdr.detach();
34
+ }
35
+ get selected() {
36
+ return this.data.selected;
37
+ }
38
+ ngOnChanges() {
39
+ this.cdr.detectChanges();
40
+ requestAnimationFrame(() => this.rendered());
41
+ this.seed++; // force render sockets
42
+ }
43
+ sortByIndex(a, b) {
44
+ var _a, _b;
45
+ const ai = ((_a = a.value) === null || _a === void 0 ? void 0 : _a.index) || 0;
46
+ const bi = ((_b = b.value) === null || _b === void 0 ? void 0 : _b.index) || 0;
47
+ return ai - bi;
48
+ }
49
+ }
50
+ NodeComponent.decorators = [
51
+ { type: Component, args: [{
52
+ template: "<div class=\"title\" data-testid=\"title\">{{data.label}}</div>\n<div class=\"output\" *ngFor=\"let output of data.outputs | keyvalue: sortByIndex\" [attr.data-testid]=\"'output-'+output.key\">\n <div class=\"output-title\" data-testid=\"output-title\">{{output.value?.label}}</div>\n <div\n class=\"output-socket\"\n refComponent\n [data]=\"{type: 'socket', side: 'output', key: output.key, nodeId: data.id, payload: output.value?.socket, seed: seed }\"\n [emit]=\"emit\"\n data-testid=\"output-socket\"\n ></div>\n</div>\n<div\n class=\"control\"\n *ngFor=\"let control of data.controls | keyvalue: sortByIndex\"\n refComponent\n [data]=\"{type: 'control', payload: control.value }\"\n [emit]=\"emit\"\n [attr.data-testid]=\"'control-'+control.key\"\n></div>\n<div class=\"input\" *ngFor=\"let input of data.inputs | keyvalue: sortByIndex\" [attr.data-testid]=\"'input-'+input.key\">\n <div\n class=\"input-socket\"\n refComponent\n [data]=\"{type: 'socket', side: 'input', key: input.key, nodeId: data.id, payload: input.value?.socket, seed: seed }\"\n [emit]=\"emit\"\n data-testid=\"input-socket\"\n ></div>\n <div class=\"input-title\" data-testid=\"input-title\" *ngIf=\"!input.value?.control || !input.value?.showControl\">{{input.value?.label}}</div>\n <div\n class=\"input-control\"\n [style.display]=\"input.value?.control && input.value?.showControl ? '' : 'none'\"\n refComponent\n [data]=\"{type: 'control', payload: input.value?.control }\"\n [emit]=\"emit\"\n data-testid=\"input-control\"\n ></div>\n</div>\n",
53
+ host: {
54
+ 'data-testid': 'node'
55
+ },
56
+ styles: [":host{display:block;background:rgba(110,136,255,.8);border:2px solid #4e58bf;border-radius:10px;cursor:pointer;box-sizing:border-box;min-width:180px;height:auto;padding-bottom:6px;position:relative;-webkit-user-select:none;user-select:none;line-height:initial;font-family:Arial}:host:hover{background:rgba(130,153,255,.8)}:host.selected{background:#ffd92c;border-color:#e3c000}:host .title{color:#fff;font-family:sans-serif;font-size:18px;padding:8px}:host .output{text-align:right}:host .input{text-align:left}:host .input-title,:host .output-title{vertical-align:middle;color:#fff;display:inline-block;font-family:sans-serif;font-size:14px;margin:6px;line-height:24px}:host .input-title[hidden],:host .output-title[hidden]{display:none}:host .output-socket{text-align:right;margin-right:-18px;display:inline-block}:host .input-socket{text-align:left;margin-left:-18px;display:inline-block}:host .input-control{z-index:1;width:calc(100% - 36px);vertical-align:middle;display:inline-block}:host .control{padding:6px 18px}\n"]
57
+ },] }
58
+ ];
59
+ NodeComponent.ctorParameters = () => [
60
+ { type: ChangeDetectorRef }
61
+ ];
62
+ NodeComponent.propDecorators = {
63
+ data: [{ type: Input }],
64
+ emit: [{ type: Input }],
65
+ rendered: [{ type: Input }],
66
+ selected: [{ type: HostBinding, args: ['class.selected',] }]
67
+ };
68
+
69
+ class SocketComponent {
70
+ constructor(cdr) {
71
+ this.cdr = cdr;
72
+ this.cdr.detach();
73
+ }
74
+ get title() {
75
+ return this.data.name;
76
+ }
77
+ ngOnChanges() {
78
+ this.cdr.detectChanges();
79
+ requestAnimationFrame(() => this.rendered());
80
+ }
81
+ }
82
+ SocketComponent.decorators = [
83
+ { type: Component, args: [{
84
+ template: ``,
85
+ styles: [":host{display:inline-block;cursor:pointer;border:1px solid white;border-radius:12px;width:24px;height:24px;margin:6px;vertical-align:middle;background:#96b38a;z-index:2;box-sizing:border-box}:host:hover{border-width:4px}:host.multiple{border-color:#ff0}:host.output{margin-right:-12px}:host.input{margin-left:-12px}\n"]
86
+ },] }
87
+ ];
88
+ SocketComponent.ctorParameters = () => [
89
+ { type: ChangeDetectorRef }
90
+ ];
91
+ SocketComponent.propDecorators = {
92
+ data: [{ type: Input }],
93
+ rendered: [{ type: Input }],
94
+ title: [{ type: HostBinding, args: ['title',] }]
95
+ };
96
+
97
+ class ControlComponent {
98
+ constructor(cdr) {
99
+ this.cdr = cdr;
100
+ this.cdr.detach();
101
+ }
102
+ pointerdown(event) {
103
+ event.stopPropagation();
104
+ }
105
+ ngOnChanges(changes) {
106
+ const seed = changes['seed'];
107
+ const data = changes['data'];
108
+ if ((seed && seed.currentValue !== seed.previousValue)
109
+ || (data && data.currentValue !== data.previousValue)) {
110
+ this.cdr.detectChanges();
111
+ }
112
+ requestAnimationFrame(() => this.rendered());
113
+ }
114
+ onChange(e) {
115
+ const target = e.target;
116
+ const value = (this.data.type === 'number'
117
+ ? +target.value
118
+ : target.value);
119
+ this.data.setValue(value);
120
+ this.cdr.detectChanges();
121
+ }
122
+ }
123
+ ControlComponent.decorators = [
124
+ { type: Component, args: [{
125
+ template: "<input\n [value]=\"data.value\"\n [readonly]=\"data.readonly\"\n [type]=\"data.type\"\n (input)=\"onChange($event)\"\n/>\n",
126
+ styles: ["input{width:130px;border-radius:30px;background-color:#fff;padding:2px 6px;border:1px solid #999;font-size:110%}\n"]
127
+ },] }
128
+ ];
129
+ ControlComponent.ctorParameters = () => [
130
+ { type: ChangeDetectorRef }
131
+ ];
132
+ ControlComponent.propDecorators = {
133
+ data: [{ type: Input }],
134
+ rendered: [{ type: Input }],
135
+ pointerdown: [{ type: HostListener, args: ['pointerdown', ['$event'],] }]
136
+ };
137
+
138
+ class ConnectionComponent {
139
+ }
140
+ ConnectionComponent.decorators = [
141
+ { type: Component, args: [{
142
+ selector: 'connection',
143
+ template: "<svg data-testid=\"connection\">\n <path [attr.d]=\"path\" />\n</svg>\n",
144
+ styles: ["svg{overflow:visible!important;position:absolute;pointer-events:none;width:9999px;height:9999px}svg path{fill:none;stroke-width:5px;stroke:#4682b4;pointer-events:auto}\n"]
145
+ },] }
146
+ ];
147
+ ConnectionComponent.propDecorators = {
148
+ data: [{ type: Input }],
149
+ start: [{ type: Input }],
150
+ end: [{ type: Input }],
151
+ path: [{ type: Input }]
152
+ };
153
+
154
+ class ConnectionWrapperComponent {
155
+ constructor(cdr, viewContainerRef, componentFactoryResolver) {
156
+ this.cdr = cdr;
157
+ this.viewContainerRef = viewContainerRef;
158
+ this.componentFactoryResolver = componentFactoryResolver;
159
+ this.startOb = null;
160
+ this.endOb = null;
161
+ this.cdr.detach();
162
+ }
163
+ get _start() {
164
+ return 'x' in this.start ? this.start : this.startOb;
165
+ }
166
+ get _end() {
167
+ return 'x' in this.end ? this.end : this.endOb;
168
+ }
169
+ ngOnChanges() {
170
+ return __awaiter(this, void 0, void 0, function* () {
171
+ yield this.updatePath();
172
+ requestAnimationFrame(() => this.rendered());
173
+ this.cdr.detectChanges();
174
+ this.update();
175
+ });
176
+ }
177
+ updatePath() {
178
+ return __awaiter(this, void 0, void 0, function* () {
179
+ if (this._start && this._end) {
180
+ this._path = yield this.path(this._start, this._end);
181
+ }
182
+ });
183
+ }
184
+ ngOnInit() {
185
+ if (typeof this.start === 'function') {
186
+ this.start((value) => __awaiter(this, void 0, void 0, function* () {
187
+ this.startOb = value;
188
+ yield this.updatePath();
189
+ this.cdr.detectChanges();
190
+ this.update();
191
+ }));
192
+ }
193
+ if (typeof this.end === 'function') {
194
+ this.end((value) => __awaiter(this, void 0, void 0, function* () {
195
+ this.endOb = value;
196
+ yield this.updatePath();
197
+ this.cdr.detectChanges();
198
+ this.update();
199
+ }));
200
+ }
201
+ const componentFactory = this.componentFactoryResolver.resolveComponentFactory(this.connectionComponent);
202
+ this.viewContainerRef.clear();
203
+ this.ref = this.viewContainerRef.createComponent(componentFactory);
204
+ this.update();
205
+ }
206
+ update() {
207
+ this.ref.instance.data = this.data;
208
+ this.ref.instance.start = this._start;
209
+ this.ref.instance.end = this._end;
210
+ this.ref.instance.path = this._path;
211
+ }
212
+ }
213
+ ConnectionWrapperComponent.decorators = [
214
+ { type: Component, args: [{
215
+ template: ''
216
+ },] }
217
+ ];
218
+ ConnectionWrapperComponent.ctorParameters = () => [
219
+ { type: ChangeDetectorRef },
220
+ { type: ViewContainerRef },
221
+ { type: ComponentFactoryResolver }
222
+ ];
223
+ ConnectionWrapperComponent.propDecorators = {
224
+ data: [{ type: Input }],
225
+ start: [{ type: Input }],
226
+ end: [{ type: Input }],
227
+ path: [{ type: Input }],
228
+ rendered: [{ type: Input }],
229
+ connectionComponent: [{ type: Input }]
230
+ };
231
+
232
+ function setup$3(props) {
233
+ const positionWatcher = typeof (props === null || props === void 0 ? void 0 : props.socketPositionWatcher) === 'undefined'
234
+ ? getDOMSocketPosition() // fix Type instantiation is excessively deep and possibly infinite.
235
+ : props === null || props === void 0 ? void 0 : props.socketPositionWatcher;
236
+ const { node, connection, socket, control } = (props === null || props === void 0 ? void 0 : props.customize) || {};
237
+ return {
238
+ attach(plugin) {
239
+ positionWatcher.attach(plugin);
240
+ },
241
+ update(context) {
242
+ const data = context.data.payload;
243
+ if (context.data.type === 'connection') {
244
+ const { start, end } = context.data;
245
+ return Object.assign(Object.assign({ data }, (start ? { start } : {})), (end ? { end } : {}));
246
+ }
247
+ return { data };
248
+ },
249
+ mount(context, plugin) {
250
+ const parent = plugin.parentScope();
251
+ const emit = parent.emit.bind(parent);
252
+ const rendered = () => {
253
+ emit({ type: 'rendered', data: context.data });
254
+ };
255
+ if (context.data.type === 'node') {
256
+ const component = node ? node(context.data) : NodeComponent;
257
+ return {
258
+ key: `node-${context.data.payload.id}`,
259
+ component,
260
+ props: {
261
+ data: context.data.payload,
262
+ emit,
263
+ rendered
264
+ }
265
+ };
266
+ }
267
+ if (context.data.type === 'connection') {
268
+ const component = connection ? connection(context.data) : ConnectionComponent;
269
+ const id = context.data.payload.id;
270
+ const { sourceOutput, targetInput, source, target } = context.data.payload;
271
+ const { start, end, payload } = context.data;
272
+ return {
273
+ key: `connection-${id}`,
274
+ component: ConnectionWrapperComponent,
275
+ props: {
276
+ connectionComponent: component,
277
+ data: payload,
278
+ start: start || ((change) => positionWatcher.listen(source, 'output', sourceOutput, change)),
279
+ end: end || ((change) => positionWatcher.listen(target, 'input', targetInput, change)),
280
+ path: (start, end) => __awaiter(this, void 0, void 0, function* () {
281
+ const response = yield plugin.emit({ type: 'connectionpath', data: { payload, points: [start, end] } });
282
+ if (!response)
283
+ return '';
284
+ const { path, points } = response.data;
285
+ const curvature = 0.3;
286
+ if (!path && points.length !== 2)
287
+ throw new Error('cannot render connection with a custom number of points');
288
+ if (!path)
289
+ return payload.isLoop
290
+ ? loopConnectionPath(points, curvature, 120)
291
+ : classicConnectionPath(points, curvature);
292
+ return path;
293
+ }),
294
+ rendered
295
+ }
296
+ };
297
+ }
298
+ if (context.data.type === 'socket') {
299
+ const component = socket ? socket(context.data) : SocketComponent;
300
+ return {
301
+ key: `socket-${getUID()}`,
302
+ component,
303
+ props: {
304
+ data: context.data.payload,
305
+ rendered
306
+ }
307
+ };
308
+ }
309
+ if (context.data.type === 'control') {
310
+ const component = control
311
+ ? control(context.data)
312
+ : (context.data.payload instanceof ClassicPreset.InputControl
313
+ ? ControlComponent
314
+ : null);
315
+ if (component) {
316
+ return {
317
+ key: `control-${context.data.payload.id}`,
318
+ component,
319
+ props: {
320
+ data: context.data.payload,
321
+ rendered
322
+ }
323
+ };
324
+ }
325
+ return;
326
+ }
327
+ return;
328
+ }
329
+ };
330
+ }
331
+
332
+ var index$4 = /*#__PURE__*/Object.freeze({
333
+ __proto__: null,
334
+ setup: setup$3
335
+ });
336
+
337
+ function debounce(cb) {
338
+ return {
339
+ timeout: null,
340
+ cancel() {
341
+ if (this.timeout) {
342
+ window.clearTimeout(this.timeout);
343
+ this.timeout = null;
344
+ }
345
+ },
346
+ call(delay) {
347
+ this.timeout = window.setTimeout(() => {
348
+ cb();
349
+ }, delay);
350
+ }
351
+ };
352
+ }
353
+
354
+ class ContextMenuComponent {
355
+ constructor(cdr) {
356
+ this.cdr = cdr;
357
+ this.filter = '';
358
+ this.hide = debounce(() => {
359
+ this.onHide();
360
+ this.cdr.detectChanges();
361
+ });
362
+ this.customAttribute = '';
363
+ this.cdr.detach();
364
+ }
365
+ pointerover() {
366
+ this.hide.cancel();
367
+ this.cdr.detectChanges();
368
+ }
369
+ pointerleave() {
370
+ this.hide.call(this.delay);
371
+ this.cdr.detectChanges();
372
+ }
373
+ ngOnChanges() {
374
+ this.cdr.detectChanges();
375
+ requestAnimationFrame(() => this.rendered());
376
+ }
377
+ setFilter(value) {
378
+ this.filter = value;
379
+ this.cdr.detectChanges();
380
+ }
381
+ getItems() {
382
+ const filterRegexp = new RegExp(this.filter, 'i');
383
+ const filteredList = this.items.filter(item => (item.label.match(filterRegexp)));
384
+ return filteredList;
385
+ }
386
+ ngOnDestroy() {
387
+ if (this.hide)
388
+ this.hide.cancel();
389
+ }
390
+ }
391
+ ContextMenuComponent.decorators = [
392
+ { type: Component, args: [{
393
+ template: "<div class=\"block\" *ngIf=\"searchBar\">\n <context-menu-search [value]=\"filter\" (update)=\"setFilter($event)\"></context-menu-search>\n</div>\n\n<context-menu-item *ngFor=\"let item of getItems()\" [delay]=\"delay\" (select)=\"item.handler()\" [subitems]=\"item.subitems\"\n (hide)=\"onHide()\">\n {{ item.label }}\n</context-menu-item>\n",
394
+ host: {
395
+ 'data-testid': 'context-menu'
396
+ },
397
+ styles: [":host{display:block;padding:10px;width:120px;margin-top:-20px;margin-left:-60px}\n", ".block{display:block;color:#fff;padding:4px;border-bottom:1px solid rgba(69,103,255,.8);background-color:#6e88ffcc;cursor:pointer;width:100%;position:relative}.block:first-child{border-top-left-radius:5px;border-top-right-radius:5px}.block:last-child{border-bottom-left-radius:5px;border-bottom-right-radius:5px}.block:hover{background-color:#8299ffcc}\n"]
398
+ },] }
399
+ ];
400
+ ContextMenuComponent.ctorParameters = () => [
401
+ { type: ChangeDetectorRef }
402
+ ];
403
+ ContextMenuComponent.propDecorators = {
404
+ items: [{ type: Input }],
405
+ delay: [{ type: Input }],
406
+ searchBar: [{ type: Input }],
407
+ onHide: [{ type: Input }],
408
+ rendered: [{ type: Input }],
409
+ customAttribute: [{ type: HostBinding, args: ['attr.rete-context-menu',] }],
410
+ pointerover: [{ type: HostListener, args: ['mouseover',] }],
411
+ pointerleave: [{ type: HostListener, args: ['mouseleave',] }]
412
+ };
413
+
414
+ function setup$2(props) {
415
+ const delay = typeof (props === null || props === void 0 ? void 0 : props.delay) === 'undefined' ? 1000 : props.delay;
416
+ return {
417
+ update(context) {
418
+ if (context.data.type === 'contextmenu') {
419
+ return {
420
+ items: context.data.items,
421
+ delay,
422
+ searchBar: context.data.searchBar,
423
+ onHide: context.data.onHide
424
+ };
425
+ }
426
+ },
427
+ mount(context, plugin) {
428
+ const parent = plugin.parentScope();
429
+ const emit = parent.emit.bind(parent);
430
+ const rendered = () => {
431
+ emit({ type: 'rendered', data: context.data });
432
+ };
433
+ if (context.data.type === 'contextmenu') {
434
+ return {
435
+ key: 'context-menu',
436
+ component: ContextMenuComponent,
437
+ props: {
438
+ items: context.data.items,
439
+ delay,
440
+ searchBar: context.data.searchBar,
441
+ onHide: context.data.onHide,
442
+ rendered
443
+ }
444
+ };
445
+ }
446
+ return null;
447
+ }
448
+ };
449
+ }
450
+
451
+ var index$3 = /*#__PURE__*/Object.freeze({
452
+ __proto__: null,
453
+ setup: setup$2
454
+ });
455
+
456
+ class MinimapComponent {
457
+ constructor(el, cdr) {
458
+ this.el = el;
459
+ this.cdr = cdr;
460
+ this.cdr.detach();
461
+ }
462
+ get width() {
463
+ return this.px(this.size * this.ratio);
464
+ }
465
+ get height() {
466
+ return this.px(this.size);
467
+ }
468
+ pointerdown(event) {
469
+ event.stopPropagation();
470
+ event.preventDefault();
471
+ }
472
+ dblclick(event) {
473
+ event.stopPropagation();
474
+ event.preventDefault();
475
+ if (!this.el.nativeElement)
476
+ return;
477
+ const box = this.el.nativeElement.getBoundingClientRect();
478
+ const x = (event.clientX - box.left) / (this.size * this.ratio);
479
+ const y = (event.clientY - box.top) / (this.size * this.ratio);
480
+ this.point(x, y);
481
+ }
482
+ ngOnChanges() {
483
+ this.cdr.detectChanges();
484
+ requestAnimationFrame(() => this.rendered());
485
+ }
486
+ px(value) {
487
+ return `${value}px`;
488
+ }
489
+ scale(value) {
490
+ if (!this.el.nativeElement)
491
+ return 0;
492
+ return value * this.el.nativeElement.clientWidth;
493
+ }
494
+ identifyMiniNode(_, item) {
495
+ return [item.top, item.left].join('_');
496
+ }
497
+ }
498
+ MinimapComponent.decorators = [
499
+ { type: Component, args: [{
500
+ template: "<minimap-mini-node *ngFor=\"let node of nodes; trackBy: identifyMiniNode\" [left]=\"scale(node.left)\"\n [top]=\"scale(node.top)\" [width]=\"scale(node.width)\" [height]=\"scale(node.height)\">\n\n</minimap-mini-node>\n<minimap-mini-viewport [left]=\"viewport.left\" [top]=\"viewport.top\" [width]=\"viewport.width\" [height]=\"viewport.height\"\n [containerWidth]=\"el.nativeElement?.clientWidth\" [translate]=\"translate\"></minimap-mini-viewport>\n",
501
+ host: {
502
+ 'data-testid': 'minimap'
503
+ },
504
+ styles: [":host{position:absolute;right:24px;bottom:24px;background:rgba(229,234,239,.65);padding:20px;overflow:hidden;border:1px solid #b1b7ff;border-radius:8px;box-sizing:border-box}\n"]
505
+ },] }
506
+ ];
507
+ MinimapComponent.ctorParameters = () => [
508
+ { type: ElementRef },
509
+ { type: ChangeDetectorRef }
510
+ ];
511
+ MinimapComponent.propDecorators = {
512
+ rendered: [{ type: Input }],
513
+ size: [{ type: Input }],
514
+ ratio: [{ type: Input }],
515
+ nodes: [{ type: Input }],
516
+ viewport: [{ type: Input }],
517
+ translate: [{ type: Input }],
518
+ point: [{ type: Input }],
519
+ width: [{ type: HostBinding, args: ['style.width',] }],
520
+ height: [{ type: HostBinding, args: ['style.height',] }],
521
+ pointerdown: [{ type: HostListener, args: ['pointerdown', ['$event'],] }],
522
+ dblclick: [{ type: HostListener, args: ['dblclick', ['$event'],] }]
523
+ };
524
+
525
+ function setup$1(props) {
526
+ return {
527
+ update(context) {
528
+ if (context.data.type === 'minimap') {
529
+ return {
530
+ nodes: context.data.nodes,
531
+ size: (props === null || props === void 0 ? void 0 : props.size) || 200,
532
+ ratio: context.data.ratio,
533
+ viewport: context.data.viewport,
534
+ translate: context.data.translate,
535
+ point: context.data.point
536
+ };
537
+ }
538
+ return null;
539
+ },
540
+ mount(context, plugin) {
541
+ const parent = plugin.parentScope();
542
+ const emit = parent.emit.bind(parent);
543
+ const rendered = () => {
544
+ emit({ type: 'rendered', data: context.data });
545
+ };
546
+ if (context.data.type === 'minimap') {
547
+ return {
548
+ key: 'rete-minimap',
549
+ component: MinimapComponent,
550
+ props: {
551
+ nodes: context.data.nodes,
552
+ size: (props === null || props === void 0 ? void 0 : props.size) || 200,
553
+ ratio: context.data.ratio,
554
+ viewport: context.data.viewport,
555
+ translate: context.data.translate,
556
+ point: context.data.point,
557
+ rendered
558
+ }
559
+ };
560
+ }
561
+ return null;
562
+ }
563
+ };
564
+ }
565
+
566
+ var index$2 = /*#__PURE__*/Object.freeze({
567
+ __proto__: null,
568
+ setup: setup$1
569
+ });
570
+
571
+ class PinsComponent {
572
+ constructor(cdr) {
573
+ this.cdr = cdr;
574
+ this.cdr.detach();
575
+ }
576
+ ngOnChanges() {
577
+ this.cdr.detectChanges();
578
+ requestAnimationFrame(() => this.rendered());
579
+ }
580
+ track(_, item) {
581
+ return item.id;
582
+ }
583
+ }
584
+ PinsComponent.decorators = [
585
+ { type: Component, args: [{
586
+ template: "<reroute-pin *ngFor=\"let pin of pins; trackBy: track\" [position]=\"pin.position\" [selected]=\"pin.selected\"\n (menu)=\"menu && menu(pin.id)\" (translate)=\"translate && translate(pin.id, $event.dx, $event.dy)\"\n (down)=\"down && down(pin.id)\" [getPointer]=\"getPointer\"></reroute-pin>\n"
587
+ },] }
588
+ ];
589
+ PinsComponent.ctorParameters = () => [
590
+ { type: ChangeDetectorRef }
591
+ ];
592
+ PinsComponent.propDecorators = {
593
+ rendered: [{ type: Input }],
594
+ pins: [{ type: Input }],
595
+ down: [{ type: Input }],
596
+ translate: [{ type: Input }],
597
+ menu: [{ type: Input }],
598
+ getPointer: [{ type: Input }]
599
+ };
600
+
601
+ function setup(props) {
602
+ const getProps = () => ({
603
+ menu: (props === null || props === void 0 ? void 0 : props.contextMenu) || (() => null),
604
+ translate: (props === null || props === void 0 ? void 0 : props.translate) || (() => null),
605
+ down: (props === null || props === void 0 ? void 0 : props.pointerdown) || (() => null)
606
+ });
607
+ return {
608
+ update(context) {
609
+ if (context.data.type === 'reroute-pins') {
610
+ return Object.assign(Object.assign({}, getProps()), { pins: context.data.data.pins });
611
+ }
612
+ return null;
613
+ },
614
+ mount(context, plugin) {
615
+ const area = plugin.parentScope(BaseAreaPlugin);
616
+ const rendered = () => {
617
+ area.emit({ type: 'rendered', data: context.data });
618
+ };
619
+ if (context.data.type === 'reroute-pins') {
620
+ return {
621
+ key: 'rete-reroute',
622
+ component: PinsComponent,
623
+ props: Object.assign(Object.assign({}, getProps()), { pins: context.data.data.pins, rendered, getPointer: () => area.area.pointer })
624
+ };
625
+ }
626
+ return null;
627
+ }
628
+ };
629
+ }
630
+
631
+ var index$1 = /*#__PURE__*/Object.freeze({
632
+ __proto__: null,
633
+ setup: setup
634
+ });
635
+
636
+ var index = /*#__PURE__*/Object.freeze({
637
+ __proto__: null,
638
+ classic: index$4,
639
+ contextMenu: index$3,
640
+ minimap: index$2,
641
+ reroute: index$1
642
+ });
643
+
644
+ class ReteModule {
645
+ }
646
+ ReteModule.decorators = [
647
+ { type: NgModule, args: [{
648
+ declarations: [
649
+ RefDirective,
650
+ NodeComponent,
651
+ ConnectionComponent,
652
+ ConnectionWrapperComponent,
653
+ SocketComponent,
654
+ ControlComponent
655
+ ],
656
+ imports: [
657
+ CommonModule
658
+ ],
659
+ exports: [
660
+ RefDirective,
661
+ NodeComponent,
662
+ ConnectionComponent,
663
+ ConnectionWrapperComponent,
664
+ SocketComponent,
665
+ ControlComponent
666
+ ],
667
+ entryComponents: [
668
+ NodeComponent,
669
+ ConnectionComponent,
670
+ ConnectionWrapperComponent,
671
+ SocketComponent,
672
+ ControlComponent
673
+ ]
674
+ },] }
675
+ ];
676
+
677
+ class ContextMenuSearchComponent {
678
+ constructor() {
679
+ this.update = new EventEmitter();
680
+ }
681
+ }
682
+ ContextMenuSearchComponent.decorators = [
683
+ { type: Component, args: [{
684
+ selector: 'context-menu-search',
685
+ template: "<input class=\"search\" [value]=\"value\" (input)=\"update.emit($any($event.target)?.value || '')\"\n data-testid=\"context-menu-search-input\" />\n",
686
+ styles: [".search{color:#fff;padding:1px 8px;border:1px solid white;border-radius:10px;font-size:16px;font-family:serif;width:100%;box-sizing:border-box;background:transparent}\n"]
687
+ },] }
688
+ ];
689
+ ContextMenuSearchComponent.propDecorators = {
690
+ value: [{ type: Input }],
691
+ update: [{ type: Output }]
692
+ };
693
+
694
+ class ContextMenuItemComponent {
695
+ constructor(cdr) {
696
+ this.cdr = cdr;
697
+ this.select = new EventEmitter();
698
+ this.hide = new EventEmitter();
699
+ this.hideSubitems = debounce(() => {
700
+ this.visibleSubitems = false;
701
+ this.cdr.detectChanges();
702
+ });
703
+ this.visibleSubitems = false;
704
+ this.cdr.detach();
705
+ }
706
+ get block() { return true; }
707
+ get hasSubitems() { return this.subitems; }
708
+ click(event) {
709
+ event.stopPropagation();
710
+ this.select.emit();
711
+ this.hide.emit();
712
+ }
713
+ pointerdown(event) {
714
+ event.stopPropagation();
715
+ }
716
+ wheel(event) {
717
+ event.stopPropagation();
718
+ }
719
+ pointerover() {
720
+ this.hideSubitems.cancel();
721
+ this.visibleSubitems = true;
722
+ this.cdr.detectChanges();
723
+ }
724
+ pointerleave() {
725
+ this.hideSubitems.call(this.delay);
726
+ this.cdr.detectChanges();
727
+ }
728
+ }
729
+ ContextMenuItemComponent.decorators = [
730
+ { type: Component, args: [{
731
+ selector: 'context-menu-item',
732
+ template: "<ng-content></ng-content>\n<div class=\"subitems\" *ngIf=\"subitems && visibleSubitems\">\n <context-menu-item *ngFor=\"let item of subitems\" [delay]=\"delay\" (select)=\"item.handler()\" (hide)=\"hide.emit()\">\n {{ item.label }}\n </context-menu-item>\n</div>\n",
733
+ host: {
734
+ 'data-testid': 'context-menu-item'
735
+ },
736
+ styles: ["@charset \"UTF-8\";:host(.hasSubitems):after{content:\"\\25ba\";position:absolute;opacity:.6;right:5px;top:5px;font-family:initial}.subitems{position:absolute;top:0;left:100%;width:120px}\n", ".block{display:block;color:#fff;padding:4px;border-bottom:1px solid rgba(69,103,255,.8);background-color:#6e88ffcc;cursor:pointer;width:100%;position:relative}.block:first-child{border-top-left-radius:5px;border-top-right-radius:5px}.block:last-child{border-bottom-left-radius:5px;border-bottom-right-radius:5px}.block:hover{background-color:#8299ffcc}\n"]
737
+ },] }
738
+ ];
739
+ ContextMenuItemComponent.ctorParameters = () => [
740
+ { type: ChangeDetectorRef }
741
+ ];
742
+ ContextMenuItemComponent.propDecorators = {
743
+ subitems: [{ type: Input }],
744
+ delay: [{ type: Input }],
745
+ select: [{ type: Output }],
746
+ hide: [{ type: Output }],
747
+ block: [{ type: HostBinding, args: ['class.block',] }],
748
+ hasSubitems: [{ type: HostBinding, args: ['class.hasSubitems',] }],
749
+ click: [{ type: HostListener, args: ['click', ['$event'],] }],
750
+ pointerdown: [{ type: HostListener, args: ['pointerdown', ['$event'],] }],
751
+ wheel: [{ type: HostListener, args: ['wheel', ['$event'],] }],
752
+ pointerover: [{ type: HostListener, args: ['pointerover',] }],
753
+ pointerleave: [{ type: HostListener, args: ['pointerleave',] }]
754
+ };
755
+
756
+ class ReteContextMenuModule {
757
+ }
758
+ ReteContextMenuModule.decorators = [
759
+ { type: NgModule, args: [{
760
+ declarations: [
761
+ ContextMenuComponent,
762
+ ContextMenuSearchComponent,
763
+ ContextMenuItemComponent
764
+ ],
765
+ imports: [
766
+ CommonModule
767
+ ],
768
+ exports: [
769
+ ContextMenuComponent,
770
+ ContextMenuSearchComponent,
771
+ ContextMenuItemComponent,
772
+ ],
773
+ entryComponents: [
774
+ ContextMenuComponent
775
+ ]
776
+ },] }
777
+ ];
778
+
779
+ function useDrag(translate, getPointer) {
780
+ return {
781
+ start(e) {
782
+ let previous = Object.assign({}, getPointer(e));
783
+ function move(moveEvent) {
784
+ const current = Object.assign({}, getPointer(moveEvent));
785
+ const dx = current.x - previous.x;
786
+ const dy = current.y - previous.y;
787
+ previous = current;
788
+ translate(dx, dy);
789
+ }
790
+ function up() {
791
+ window.removeEventListener('pointermove', move);
792
+ window.removeEventListener('pointerup', up);
793
+ window.removeEventListener('pointercancel', up);
794
+ }
795
+ window.addEventListener('pointermove', move);
796
+ window.addEventListener('pointerup', up);
797
+ window.addEventListener('pointercancel', up);
798
+ }
799
+ };
800
+ }
801
+
802
+ class MiniViewportComponent {
803
+ constructor() {
804
+ this.drag = useDrag((dx, dy) => this.onDrag(dx, dy), e => ({ x: e.pageX, y: e.pageY }));
805
+ }
806
+ get styleLeft() {
807
+ return this.px(this.scale(this.left));
808
+ }
809
+ get styleTop() {
810
+ return this.px(this.scale(this.top));
811
+ }
812
+ get styleWidth() {
813
+ return this.px(this.scale(this.width));
814
+ }
815
+ get styleHeight() {
816
+ return this.px(this.scale(this.height));
817
+ }
818
+ pointerdown(event) {
819
+ event.stopPropagation();
820
+ this.drag.start(event);
821
+ }
822
+ px(value) {
823
+ return `${value}px`;
824
+ }
825
+ scale(v) {
826
+ return v * this.containerWidth;
827
+ }
828
+ invert(v) {
829
+ return v / this.containerWidth;
830
+ }
831
+ onDrag(dx, dy) {
832
+ this.translate(this.invert(-dx), this.invert(-dy));
833
+ }
834
+ }
835
+ MiniViewportComponent.decorators = [
836
+ { type: Component, args: [{
837
+ selector: 'minimap-mini-viewport',
838
+ template: "",
839
+ host: {
840
+ 'data-testid': 'minimap-viewport'
841
+ },
842
+ styles: [":host{display:block;position:absolute;background:rgba(255,251,128,.32);border:1px solid #ffe52b}\n"]
843
+ },] }
844
+ ];
845
+ MiniViewportComponent.propDecorators = {
846
+ left: [{ type: Input }],
847
+ top: [{ type: Input }],
848
+ width: [{ type: Input }],
849
+ height: [{ type: Input }],
850
+ containerWidth: [{ type: Input }],
851
+ translate: [{ type: Input }],
852
+ styleLeft: [{ type: HostBinding, args: ['style.left',] }],
853
+ styleTop: [{ type: HostBinding, args: ['style.top',] }],
854
+ styleWidth: [{ type: HostBinding, args: ['style.width',] }],
855
+ styleHeight: [{ type: HostBinding, args: ['style.height',] }],
856
+ pointerdown: [{ type: HostListener, args: ['pointerdown', ['$event'],] }]
857
+ };
858
+
859
+ class MiniNodeComponent {
860
+ get styleLeft() {
861
+ return this.px(this.left);
862
+ }
863
+ get styleTop() {
864
+ return this.px(this.top);
865
+ }
866
+ get styleWidth() {
867
+ return this.px(this.width);
868
+ }
869
+ get styleHeight() {
870
+ return this.px(this.height);
871
+ }
872
+ px(value) {
873
+ return `${value}px`;
874
+ }
875
+ }
876
+ MiniNodeComponent.decorators = [
877
+ { type: Component, args: [{
878
+ selector: 'minimap-mini-node',
879
+ template: "",
880
+ host: {
881
+ 'data-testid': 'minimap-node'
882
+ },
883
+ styles: [":host{display:block;position:absolute;background:rgba(110,136,255,.8);border:1px solid rgba(192,206,212,.6)}\n"]
884
+ },] }
885
+ ];
886
+ MiniNodeComponent.propDecorators = {
887
+ left: [{ type: Input }],
888
+ top: [{ type: Input }],
889
+ width: [{ type: Input }],
890
+ height: [{ type: Input }],
891
+ styleLeft: [{ type: HostBinding, args: ['style.left',] }],
892
+ styleTop: [{ type: HostBinding, args: ['style.top',] }],
893
+ styleWidth: [{ type: HostBinding, args: ['style.width',] }],
894
+ styleHeight: [{ type: HostBinding, args: ['style.height',] }]
895
+ };
896
+
897
+ class ReteMinimapModule {
898
+ }
899
+ ReteMinimapModule.decorators = [
900
+ { type: NgModule, args: [{
901
+ declarations: [
902
+ MinimapComponent,
903
+ MiniViewportComponent,
904
+ MiniNodeComponent
905
+ ],
906
+ imports: [
907
+ CommonModule
908
+ ],
909
+ exports: [
910
+ MinimapComponent,
911
+ MiniViewportComponent,
912
+ MiniNodeComponent
913
+ ],
914
+ entryComponents: [
915
+ MinimapComponent
916
+ ]
917
+ },] }
918
+ ];
919
+
920
+ const pinSize = 20;
921
+ class PinComponent {
922
+ constructor(cdr) {
923
+ this.cdr = cdr;
924
+ this.menu = new EventEmitter();
925
+ this.translate = new EventEmitter();
926
+ this.down = new EventEmitter();
927
+ this.drag = useDrag((dx, dy) => {
928
+ this.translate.emit({ dx, dy });
929
+ }, () => this.getPointer());
930
+ // this.cdr.detach()
931
+ }
932
+ get _selected() {
933
+ return this.selected;
934
+ }
935
+ get top() {
936
+ return `${this.position.y - pinSize / 2}px`;
937
+ }
938
+ get left() {
939
+ return `${this.position.x - pinSize / 2}px`;
940
+ }
941
+ pointerdown(event) {
942
+ event.stopPropagation();
943
+ event.preventDefault();
944
+ this.drag.start(event);
945
+ this.down.emit();
946
+ }
947
+ contextmenu(event) {
948
+ event.stopPropagation();
949
+ event.preventDefault();
950
+ this.menu.emit();
951
+ }
952
+ ngOnChanges() {
953
+ // this.cdr.detectChanges()
954
+ // requestAnimationFrame(() => this.rendered())
955
+ }
956
+ }
957
+ PinComponent.decorators = [
958
+ { type: Component, args: [{
959
+ selector: 'reroute-pin',
960
+ template: '',
961
+ host: {
962
+ 'data-testid': 'pin'
963
+ },
964
+ styles: [":host{display:block;width:20px;height:20px;box-sizing:border-box;background:steelblue;border:2px solid white;border-radius:20px;position:absolute}:host.selected{background:#ffd92c}\n"]
965
+ },] }
966
+ ];
967
+ PinComponent.ctorParameters = () => [
968
+ { type: ChangeDetectorRef }
969
+ ];
970
+ PinComponent.propDecorators = {
971
+ position: [{ type: Input }],
972
+ selected: [{ type: Input }],
973
+ getPointer: [{ type: Input }],
974
+ menu: [{ type: Output }],
975
+ translate: [{ type: Output }],
976
+ down: [{ type: Output }],
977
+ _selected: [{ type: HostBinding, args: ['class.selected',] }],
978
+ top: [{ type: HostBinding, args: ['style.top',] }],
979
+ left: [{ type: HostBinding, args: ['style.left',] }],
980
+ pointerdown: [{ type: HostListener, args: ['pointerdown', ['$event'],] }],
981
+ contextmenu: [{ type: HostListener, args: ['contextmenu', ['$event'],] }]
982
+ };
983
+
984
+ class ReteRerouteModule {
985
+ }
986
+ ReteRerouteModule.decorators = [
987
+ { type: NgModule, args: [{
988
+ declarations: [
989
+ PinsComponent,
990
+ PinComponent,
991
+ ],
992
+ imports: [
993
+ CommonModule
994
+ ],
995
+ exports: [
996
+ PinsComponent,
997
+ PinComponent,
998
+ ],
999
+ entryComponents: [
1000
+ PinsComponent
1001
+ ]
1002
+ },] }
1003
+ ];
1004
+
1005
+ function getRenderer() {
1006
+ const elements = new WeakMap();
1007
+ return {
1008
+ get(element) {
1009
+ return elements.get(element);
1010
+ },
1011
+ mount(element, key, component, injector, props) {
1012
+ // LIMITATION: If an element is remounted with the same identifier, the component cannot be replaced
1013
+ const exists = customElements.get(key);
1014
+ if (!exists) {
1015
+ customElements.define(key, createCustomElement(component, { injector }));
1016
+ }
1017
+ const ngElement = document.createElement(key);
1018
+ Object.keys(props).forEach(key => {
1019
+ ngElement[key] = props[key];
1020
+ });
1021
+ element.appendChild(ngElement);
1022
+ elements.set(element, { key, ngElement });
1023
+ },
1024
+ update({ ngElement }, props) {
1025
+ Object.keys(props).forEach(key => {
1026
+ ngElement.ngElementStrategy.setInputValue(key, props[key]);
1027
+ });
1028
+ ngElement.ngElementStrategy.setInputValue('seed', Math.random());
1029
+ },
1030
+ unmount(element) {
1031
+ const existing = elements.get(element);
1032
+ if (existing) {
1033
+ existing.ngElement.remove();
1034
+ elements.delete(element);
1035
+ }
1036
+ }
1037
+ };
1038
+ }
1039
+ class AngularPlugin extends Scope {
1040
+ constructor(params) {
1041
+ super('angular-render');
1042
+ this.params = params;
1043
+ this.presets = [];
1044
+ this.owners = new WeakMap();
1045
+ this.renderer = getRenderer();
1046
+ this.addPipe(context => {
1047
+ if (!context || typeof context !== 'object' || !('type' in context))
1048
+ return context;
1049
+ if (context.type === 'unmount') {
1050
+ this.unmount(context.data.element);
1051
+ }
1052
+ else if (context.type === 'render') {
1053
+ if ('filled' in context.data && context.data.filled) {
1054
+ return context;
1055
+ }
1056
+ if (this.mount(context.data.element, context)) {
1057
+ return Object.assign(Object.assign({}, context), { data: Object.assign(Object.assign({}, context.data), { filled: true }) });
1058
+ }
1059
+ }
1060
+ return context;
1061
+ });
1062
+ }
1063
+ setParent(scope) {
1064
+ super.setParent(scope);
1065
+ this.presets.forEach(preset => {
1066
+ if (preset.attach)
1067
+ preset.attach(this);
1068
+ });
1069
+ }
1070
+ unmount(element) {
1071
+ this.owners.delete(element);
1072
+ this.renderer.unmount(element);
1073
+ }
1074
+ mount(element, context) {
1075
+ const existing = this.renderer.get(element);
1076
+ if (existing) {
1077
+ this.presets.forEach(preset => {
1078
+ if (this.owners.get(element) !== preset)
1079
+ return;
1080
+ const result = preset.update(context, this);
1081
+ if (result) {
1082
+ this.renderer.update(existing, result);
1083
+ }
1084
+ });
1085
+ return true;
1086
+ }
1087
+ for (const preset of this.presets) {
1088
+ const result = preset.mount(context, this);
1089
+ if (!result)
1090
+ continue;
1091
+ const { key, component, props } = result;
1092
+ this.renderer.mount(element, key, component, this.params.injector, props);
1093
+ this.owners.set(element, preset);
1094
+ return true;
1095
+ }
1096
+ return;
1097
+ }
1098
+ addPreset(preset) {
1099
+ const local = preset;
1100
+ if (local.attach)
1101
+ local.attach(this);
1102
+ this.presets.push(local);
1103
+ }
1104
+ }
1105
+
1106
+ /**
1107
+ * Generated bundle index. Do not edit.
1108
+ */
1109
+
1110
+ export { AngularPlugin, ConnectionComponent, ConnectionWrapperComponent, ContextMenuComponent, ContextMenuItemComponent, ContextMenuSearchComponent, ControlComponent, MiniNodeComponent, MiniViewportComponent, MinimapComponent, NodeComponent, PinComponent, PinsComponent, index as Presets, RefDirective, ReteContextMenuModule, ReteMinimapModule, ReteModule, ReteRerouteModule, SocketComponent, RefDirective as ɵa, NodeComponent as ɵb, ConnectionComponent as ɵc, ConnectionWrapperComponent as ɵd, SocketComponent as ɵe, ControlComponent as ɵf, ContextMenuComponent as ɵg, ContextMenuSearchComponent as ɵh, ContextMenuItemComponent as ɵi, MinimapComponent as ɵj, MiniViewportComponent as ɵk, MiniNodeComponent as ɵl, PinsComponent as ɵm, PinComponent as ɵn };
1111
+ //# sourceMappingURL=rete-angular-plugin.js.map