rete-angular-plugin 0.0.0 → 2.0.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 (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,116 @@
1
+ import { ChangeDetectorRef, Component, EventEmitter, HostBinding, HostListener, Input, Output } from '@angular/core';
2
+ import { debounce } from '../../debounce';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ function ContextMenuItemComponent_div_1_context_menu_item_1_Template(rf, ctx) { if (rf & 1) {
6
+ const _r4 = i0.ɵɵgetCurrentView();
7
+ i0.ɵɵelementStart(0, "context-menu-item", 3);
8
+ i0.ɵɵlistener("select", function ContextMenuItemComponent_div_1_context_menu_item_1_Template_context_menu_item_select_0_listener() { const restoredCtx = i0.ɵɵrestoreView(_r4); const item_r2 = restoredCtx.$implicit; return item_r2.handler(); })("hide", function ContextMenuItemComponent_div_1_context_menu_item_1_Template_context_menu_item_hide_0_listener() { i0.ɵɵrestoreView(_r4); const ctx_r5 = i0.ɵɵnextContext(2); return ctx_r5.hide.emit(); });
9
+ i0.ɵɵtext(1);
10
+ i0.ɵɵelementEnd();
11
+ } if (rf & 2) {
12
+ const item_r2 = ctx.$implicit;
13
+ const ctx_r1 = i0.ɵɵnextContext(2);
14
+ i0.ɵɵproperty("delay", ctx_r1.delay);
15
+ i0.ɵɵadvance(1);
16
+ i0.ɵɵtextInterpolate1(" ", item_r2.label, " ");
17
+ } }
18
+ function ContextMenuItemComponent_div_1_Template(rf, ctx) { if (rf & 1) {
19
+ i0.ɵɵelementStart(0, "div", 1);
20
+ i0.ɵɵtemplate(1, ContextMenuItemComponent_div_1_context_menu_item_1_Template, 2, 2, "context-menu-item", 2);
21
+ i0.ɵɵelementEnd();
22
+ } if (rf & 2) {
23
+ const ctx_r0 = i0.ɵɵnextContext();
24
+ i0.ɵɵadvance(1);
25
+ i0.ɵɵproperty("ngForOf", ctx_r0.subitems);
26
+ } }
27
+ const _c0 = ["*"];
28
+ export class ContextMenuItemComponent {
29
+ constructor(cdr) {
30
+ this.cdr = cdr;
31
+ this.select = new EventEmitter();
32
+ this.hide = new EventEmitter();
33
+ this.hideSubitems = debounce(() => {
34
+ this.visibleSubitems = false;
35
+ this.cdr.detectChanges();
36
+ });
37
+ this.visibleSubitems = false;
38
+ this.cdr.detach();
39
+ }
40
+ get block() { return true; }
41
+ get hasSubitems() { return this.subitems; }
42
+ click(event) {
43
+ event.stopPropagation();
44
+ this.select.emit();
45
+ this.hide.emit();
46
+ }
47
+ pointerdown(event) {
48
+ event.stopPropagation();
49
+ }
50
+ wheel(event) {
51
+ event.stopPropagation();
52
+ }
53
+ pointerover() {
54
+ this.hideSubitems.cancel();
55
+ this.visibleSubitems = true;
56
+ this.cdr.detectChanges();
57
+ }
58
+ pointerleave() {
59
+ this.hideSubitems.call(this.delay);
60
+ this.cdr.detectChanges();
61
+ }
62
+ }
63
+ ContextMenuItemComponent.ɵfac = function ContextMenuItemComponent_Factory(t) { return new (t || ContextMenuItemComponent)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
64
+ ContextMenuItemComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ContextMenuItemComponent, selectors: [["context-menu-item"]], hostAttrs: ["data-testid", "context-menu-item"], hostVars: 4, hostBindings: function ContextMenuItemComponent_HostBindings(rf, ctx) { if (rf & 1) {
65
+ i0.ɵɵlistener("click", function ContextMenuItemComponent_click_HostBindingHandler($event) { return ctx.click($event); })("pointerdown", function ContextMenuItemComponent_pointerdown_HostBindingHandler($event) { return ctx.pointerdown($event); })("wheel", function ContextMenuItemComponent_wheel_HostBindingHandler($event) { return ctx.wheel($event); })("pointerover", function ContextMenuItemComponent_pointerover_HostBindingHandler() { return ctx.pointerover(); })("pointerleave", function ContextMenuItemComponent_pointerleave_HostBindingHandler() { return ctx.pointerleave(); });
66
+ } if (rf & 2) {
67
+ i0.ɵɵclassProp("block", ctx.block)("hasSubitems", ctx.hasSubitems);
68
+ } }, inputs: { subitems: "subitems", delay: "delay" }, outputs: { select: "select", hide: "hide" }, ngContentSelectors: _c0, decls: 2, vars: 1, consts: [["class", "subitems", 4, "ngIf"], [1, "subitems"], [3, "delay", "select", "hide", 4, "ngFor", "ngForOf"], [3, "delay", "select", "hide"]], template: function ContextMenuItemComponent_Template(rf, ctx) { if (rf & 1) {
69
+ i0.ɵɵprojectionDef();
70
+ i0.ɵɵprojection(0);
71
+ i0.ɵɵtemplate(1, ContextMenuItemComponent_div_1_Template, 2, 1, "div", 0);
72
+ } if (rf & 2) {
73
+ i0.ɵɵadvance(1);
74
+ i0.ɵɵproperty("ngIf", ctx.subitems && ctx.visibleSubitems);
75
+ } }, directives: [i1.NgIf, i1.NgForOf, ContextMenuItemComponent], styles: ["@charset \"UTF-8\";.hasSubitems[_nghost-%COMP%]:after{content:\"\\25ba\";position:absolute;opacity:.6;right:5px;top:5px;font-family:initial}.subitems[_ngcontent-%COMP%]{position:absolute;top:0;left:100%;width:120px}", ".block[_ngcontent-%COMP%]{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[_ngcontent-%COMP%]:first-child{border-top-left-radius:5px;border-top-right-radius:5px}.block[_ngcontent-%COMP%]:last-child{border-bottom-left-radius:5px;border-bottom-right-radius:5px}.block[_ngcontent-%COMP%]:hover{background-color:#8299ffcc}"] });
76
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ContextMenuItemComponent, [{
77
+ type: Component,
78
+ args: [{
79
+ selector: 'context-menu-item',
80
+ templateUrl: './item.component.html',
81
+ styleUrls: ['./item.component.sass', '../../block.sass'],
82
+ host: {
83
+ 'data-testid': 'context-menu-item'
84
+ }
85
+ }]
86
+ }], function () { return [{ type: i0.ChangeDetectorRef }]; }, { subitems: [{
87
+ type: Input
88
+ }], delay: [{
89
+ type: Input
90
+ }], select: [{
91
+ type: Output
92
+ }], hide: [{
93
+ type: Output
94
+ }], block: [{
95
+ type: HostBinding,
96
+ args: ['class.block']
97
+ }], hasSubitems: [{
98
+ type: HostBinding,
99
+ args: ['class.hasSubitems']
100
+ }], click: [{
101
+ type: HostListener,
102
+ args: ['click', ['$event']]
103
+ }], pointerdown: [{
104
+ type: HostListener,
105
+ args: ['pointerdown', ['$event']]
106
+ }], wheel: [{
107
+ type: HostListener,
108
+ args: ['wheel', ['$event']]
109
+ }], pointerover: [{
110
+ type: HostListener,
111
+ args: ['pointerover']
112
+ }], pointerleave: [{
113
+ type: HostListener,
114
+ args: ['pointerleave']
115
+ }] }); })();
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9uZzEyL3NyYy9wcmVzZXRzL2NvbnRleHQtbWVudS9jb21wb25lbnRzL2l0ZW0vaXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9uZzEyL3NyYy9wcmVzZXRzL2NvbnRleHQtbWVudS9jb21wb25lbnRzL2l0ZW0vaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFckgsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7OztJQ0F4Qyw0Q0FBZ0g7SUFBL0MsOE5BQVUsaUJBQWMsSUFBQyxzTEFBUyxrQkFBVyxJQUFwQjtJQUN4RixZQUNGO0lBQUEsaUJBQW9COzs7O0lBRjZCLG9DQUFlO0lBQzlELGVBQ0Y7SUFERSw4Q0FDRjs7O0lBSEYsOEJBQTBEO0lBQ3hELDJHQUVvQjtJQUN0QixpQkFBTTs7O0lBSGdDLGVBQVc7SUFBWCx5Q0FBVzs7O0FEVWpELE1BQU0sT0FBTyx3QkFBd0I7SUFxQ25DLFlBQW9CLEdBQXNCO1FBQXRCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBbENoQyxXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUNsQyxTQUFJLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQWlCMUMsaUJBQVksR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQzNCLElBQUksQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFBO1lBQzVCLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUE7UUFDMUIsQ0FBQyxDQUFDLENBQUE7UUFDRixvQkFBZSxHQUFHLEtBQUssQ0FBQTtRQWFyQixJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFBO0lBQ25CLENBQUM7SUFqQ0QsSUFBZ0MsS0FBSyxLQUFLLE9BQU8sSUFBSSxDQUFBLENBQUMsQ0FBQztJQUN2RCxJQUFzQyxXQUFXLEtBQUssT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFBLENBQUMsQ0FBQztJQUV6QyxLQUFLLENBQUMsS0FBaUI7UUFDeEQsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFBO1FBQ3ZCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUE7UUFDbEIsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQTtJQUNsQixDQUFDO0lBQ3dDLFdBQVcsQ0FBQyxLQUFtQjtRQUN0RSxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUE7SUFDekIsQ0FBQztJQUNrQyxLQUFLLENBQUMsS0FBaUI7UUFDeEQsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFBO0lBQ3pCLENBQUM7SUFRNEIsV0FBVztRQUN0QyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxDQUFBO1FBQzFCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFBO1FBQzNCLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUE7SUFDMUIsQ0FBQztJQUM2QixZQUFZO1FBQ3hDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUNsQyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFBO0lBQzFCLENBQUM7O2dHQW5DVSx3QkFBd0I7MkVBQXhCLHdCQUF3QjsyR0FBeEIsaUJBQWEsc0dBQWIsdUJBQW1CLDBGQUFuQixpQkFBYSxnR0FBYixpQkFBYSxrR0FBYixrQkFBYzs7Ozs7UUNaM0Isa0JBQXlCO1FBQ3pCLHlFQUlNOztRQUppQixlQUFpQztRQUFqQywwREFBaUM7MkNEVzNDLHdCQUF3Qjt1RkFBeEIsd0JBQXdCO2NBUnBDLFNBQVM7ZUFBQztnQkFDVCxRQUFRLEVBQUUsbUJBQW1CO2dCQUM3QixXQUFXLEVBQUUsdUJBQXVCO2dCQUNwQyxTQUFTLEVBQUUsQ0FBQyx1QkFBdUIsRUFBRSxrQkFBa0IsQ0FBQztnQkFDeEQsSUFBSSxFQUFFO29CQUNKLGFBQWEsRUFBRSxtQkFBbUI7aUJBQ25DO2FBQ0Y7b0VBRVUsUUFBUTtrQkFBaEIsS0FBSztZQUNHLEtBQUs7a0JBQWIsS0FBSztZQUNJLE1BQU07a0JBQWYsTUFBTTtZQUNHLElBQUk7a0JBQWIsTUFBTTtZQUV5QixLQUFLO2tCQUFwQyxXQUFXO21CQUFDLGFBQWE7WUFDWSxXQUFXO2tCQUFoRCxXQUFXO21CQUFDLG1CQUFtQjtZQUVHLEtBQUs7a0JBQXZDLFlBQVk7bUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDO1lBS1EsV0FBVztrQkFBbkQsWUFBWTttQkFBQyxhQUFhLEVBQUUsQ0FBQyxRQUFRLENBQUM7WUFHSixLQUFLO2tCQUF2QyxZQUFZO21CQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQztZQVVKLFdBQVc7a0JBQXZDLFlBQVk7bUJBQUMsYUFBYTtZQUtHLFlBQVk7a0JBQXpDLFlBQVk7bUJBQUMsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSXRlbSB9IGZyb20gJy4uLy4uL3R5cGVzJztcbmltcG9ydCB7IGRlYm91bmNlIH0gZnJvbSAnLi4vLi4vZGVib3VuY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdjb250ZXh0LW1lbnUtaXRlbScsXG4gIHRlbXBsYXRlVXJsOiAnLi9pdGVtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vaXRlbS5jb21wb25lbnQuc2FzcycsICcuLi8uLi9ibG9jay5zYXNzJ10sXG4gIGhvc3Q6IHtcbiAgICAnZGF0YS10ZXN0aWQnOiAnY29udGV4dC1tZW51LWl0ZW0nXG4gIH1cbn0pXG5leHBvcnQgY2xhc3MgQ29udGV4dE1lbnVJdGVtQ29tcG9uZW50IHtcbiAgQElucHV0KCkgc3ViaXRlbXM/OiBJdGVtW11cbiAgQElucHV0KCkgZGVsYXkhOiBudW1iZXJcbiAgQE91dHB1dCgpIHNlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbiAgQE91dHB1dCgpIGhpZGUgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5ibG9jaycpIGdldCBibG9jaygpIHsgcmV0dXJuIHRydWUgfVxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmhhc1N1Yml0ZW1zJykgZ2V0IGhhc1N1Yml0ZW1zKCkgeyByZXR1cm4gdGhpcy5zdWJpdGVtcyB9XG5cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKSBjbGljayhldmVudDogTW91c2VFdmVudCkge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXG4gICAgdGhpcy5zZWxlY3QuZW1pdCgpXG4gICAgdGhpcy5oaWRlLmVtaXQoKVxuICB9XG4gIEBIb3N0TGlzdGVuZXIoJ3BvaW50ZXJkb3duJywgWyckZXZlbnQnXSkgcG9pbnRlcmRvd24oZXZlbnQ6IFBvaW50ZXJFdmVudCkge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXG4gIH1cbiAgQEhvc3RMaXN0ZW5lcignd2hlZWwnLCBbJyRldmVudCddKSB3aGVlbChldmVudDogTW91c2VFdmVudCkge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXG4gIH1cblxuICBoaWRlU3ViaXRlbXMgPSBkZWJvdW5jZSgoKSA9PiB7XG4gICAgdGhpcy52aXNpYmxlU3ViaXRlbXMgPSBmYWxzZVxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKVxuICB9KVxuICB2aXNpYmxlU3ViaXRlbXMgPSBmYWxzZVxuXG4gIEBIb3N0TGlzdGVuZXIoJ3BvaW50ZXJvdmVyJykgcG9pbnRlcm92ZXIoKSB7XG4gICAgdGhpcy5oaWRlU3ViaXRlbXMuY2FuY2VsKClcbiAgICB0aGlzLnZpc2libGVTdWJpdGVtcyA9IHRydWVcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKClcbiAgfVxuICBASG9zdExpc3RlbmVyKCdwb2ludGVybGVhdmUnKSBwb2ludGVybGVhdmUoKSB7XG4gICAgdGhpcy5oaWRlU3ViaXRlbXMuY2FsbCh0aGlzLmRlbGF5KVxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKVxuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7XG4gICAgdGhpcy5jZHIuZGV0YWNoKClcbiAgfVxufVxuIiwiPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPGRpdiBjbGFzcz1cInN1Yml0ZW1zXCIgKm5nSWY9XCJzdWJpdGVtcyAmJiB2aXNpYmxlU3ViaXRlbXNcIj5cbiAgPGNvbnRleHQtbWVudS1pdGVtICpuZ0Zvcj1cImxldCBpdGVtIG9mIHN1Yml0ZW1zXCIgW2RlbGF5XT1cImRlbGF5XCIgKHNlbGVjdCk9XCJpdGVtLmhhbmRsZXIoKVwiIChoaWRlKT1cImhpZGUuZW1pdCgpXCI+XG4gICAge3sgaXRlbS5sYWJlbCB9fVxuICA8L2NvbnRleHQtbWVudS1pdGVtPlxuPC9kaXY+XG4iXX0=
@@ -0,0 +1,111 @@
1
+ import { Component, Input, ChangeDetectorRef, HostListener, HostBinding } from '@angular/core';
2
+ import { debounce } from '../../debounce';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ import * as i2 from "../search/search.component";
6
+ import * as i3 from "../item/item.component";
7
+ function ContextMenuComponent_div_0_Template(rf, ctx) { if (rf & 1) {
8
+ const _r3 = i0.ɵɵgetCurrentView();
9
+ i0.ɵɵelementStart(0, "div", 2);
10
+ i0.ɵɵelementStart(1, "context-menu-search", 3);
11
+ i0.ɵɵlistener("update", function ContextMenuComponent_div_0_Template_context_menu_search_update_1_listener($event) { i0.ɵɵrestoreView(_r3); const ctx_r2 = i0.ɵɵnextContext(); return ctx_r2.setFilter($event); });
12
+ i0.ɵɵelementEnd();
13
+ i0.ɵɵelementEnd();
14
+ } if (rf & 2) {
15
+ const ctx_r0 = i0.ɵɵnextContext();
16
+ i0.ɵɵadvance(1);
17
+ i0.ɵɵproperty("value", ctx_r0.filter);
18
+ } }
19
+ function ContextMenuComponent_context_menu_item_1_Template(rf, ctx) { if (rf & 1) {
20
+ const _r6 = i0.ɵɵgetCurrentView();
21
+ i0.ɵɵelementStart(0, "context-menu-item", 4);
22
+ i0.ɵɵlistener("select", function ContextMenuComponent_context_menu_item_1_Template_context_menu_item_select_0_listener() { const restoredCtx = i0.ɵɵrestoreView(_r6); const item_r4 = restoredCtx.$implicit; return item_r4.handler(); })("hide", function ContextMenuComponent_context_menu_item_1_Template_context_menu_item_hide_0_listener() { i0.ɵɵrestoreView(_r6); const ctx_r7 = i0.ɵɵnextContext(); return ctx_r7.onHide(); });
23
+ i0.ɵɵtext(1);
24
+ i0.ɵɵelementEnd();
25
+ } if (rf & 2) {
26
+ const item_r4 = ctx.$implicit;
27
+ const ctx_r1 = i0.ɵɵnextContext();
28
+ i0.ɵɵproperty("delay", ctx_r1.delay)("subitems", item_r4.subitems);
29
+ i0.ɵɵadvance(1);
30
+ i0.ɵɵtextInterpolate1(" ", item_r4.label, "\n");
31
+ } }
32
+ export class ContextMenuComponent {
33
+ constructor(cdr) {
34
+ this.cdr = cdr;
35
+ this.filter = '';
36
+ this.hide = debounce(() => {
37
+ this.onHide();
38
+ this.cdr.detectChanges();
39
+ });
40
+ this.customAttribute = '';
41
+ this.cdr.detach();
42
+ }
43
+ pointerover() {
44
+ this.hide.cancel();
45
+ this.cdr.detectChanges();
46
+ }
47
+ pointerleave() {
48
+ this.hide.call(this.delay);
49
+ this.cdr.detectChanges();
50
+ }
51
+ ngOnChanges() {
52
+ this.cdr.detectChanges();
53
+ requestAnimationFrame(() => this.rendered());
54
+ }
55
+ setFilter(value) {
56
+ this.filter = value;
57
+ this.cdr.detectChanges();
58
+ }
59
+ getItems() {
60
+ const filterRegexp = new RegExp(this.filter, 'i');
61
+ const filteredList = this.items.filter(item => (item.label.match(filterRegexp)));
62
+ return filteredList;
63
+ }
64
+ ngOnDestroy() {
65
+ if (this.hide)
66
+ this.hide.cancel();
67
+ }
68
+ }
69
+ ContextMenuComponent.ɵfac = function ContextMenuComponent_Factory(t) { return new (t || ContextMenuComponent)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
70
+ ContextMenuComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ContextMenuComponent, selectors: [["ng-component"]], hostAttrs: ["data-testid", "context-menu"], hostVars: 1, hostBindings: function ContextMenuComponent_HostBindings(rf, ctx) { if (rf & 1) {
71
+ i0.ɵɵlistener("mouseover", function ContextMenuComponent_mouseover_HostBindingHandler() { return ctx.pointerover(); })("mouseleave", function ContextMenuComponent_mouseleave_HostBindingHandler() { return ctx.pointerleave(); });
72
+ } if (rf & 2) {
73
+ i0.ɵɵattribute("rete-context-menu", ctx.customAttribute);
74
+ } }, inputs: { items: "items", delay: "delay", searchBar: "searchBar", onHide: "onHide", rendered: "rendered" }, features: [i0.ɵɵNgOnChangesFeature], decls: 2, vars: 2, consts: [["class", "block", 4, "ngIf"], [3, "delay", "subitems", "select", "hide", 4, "ngFor", "ngForOf"], [1, "block"], [3, "value", "update"], [3, "delay", "subitems", "select", "hide"]], template: function ContextMenuComponent_Template(rf, ctx) { if (rf & 1) {
75
+ i0.ɵɵtemplate(0, ContextMenuComponent_div_0_Template, 2, 1, "div", 0);
76
+ i0.ɵɵtemplate(1, ContextMenuComponent_context_menu_item_1_Template, 2, 3, "context-menu-item", 1);
77
+ } if (rf & 2) {
78
+ i0.ɵɵproperty("ngIf", ctx.searchBar);
79
+ i0.ɵɵadvance(1);
80
+ i0.ɵɵproperty("ngForOf", ctx.getItems());
81
+ } }, directives: [i1.NgIf, i1.NgForOf, i2.ContextMenuSearchComponent, i3.ContextMenuItemComponent], styles: ["[_nghost-%COMP%]{display:block;padding:10px;width:120px;margin-top:-20px;margin-left:-60px}", ".block[_ngcontent-%COMP%]{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[_ngcontent-%COMP%]:first-child{border-top-left-radius:5px;border-top-right-radius:5px}.block[_ngcontent-%COMP%]:last-child{border-bottom-left-radius:5px;border-bottom-right-radius:5px}.block[_ngcontent-%COMP%]:hover{background-color:#8299ffcc}"] });
82
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ContextMenuComponent, [{
83
+ type: Component,
84
+ args: [{
85
+ templateUrl: './menu.component.html',
86
+ styleUrls: ['./menu.component.sass', '../../block.sass'],
87
+ host: {
88
+ 'data-testid': 'context-menu'
89
+ }
90
+ }]
91
+ }], function () { return [{ type: i0.ChangeDetectorRef }]; }, { items: [{
92
+ type: Input
93
+ }], delay: [{
94
+ type: Input
95
+ }], searchBar: [{
96
+ type: Input
97
+ }], onHide: [{
98
+ type: Input
99
+ }], rendered: [{
100
+ type: Input
101
+ }], customAttribute: [{
102
+ type: HostBinding,
103
+ args: ['attr.rete-context-menu']
104
+ }], pointerover: [{
105
+ type: HostListener,
106
+ args: ['mouseover']
107
+ }], pointerleave: [{
108
+ type: HostListener,
109
+ args: ['mouseleave']
110
+ }] }); })();
111
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9uZzEyL3NyYy9wcmVzZXRzL2NvbnRleHQtbWVudS9jb21wb25lbnRzL21lbnUvbWVudS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9uZzEyL3NyYy9wcmVzZXRzL2NvbnRleHQtbWVudS9jb21wb25lbnRzL21lbnUvbWVudS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBd0IsWUFBWSxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVySCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7SUNGMUMsOEJBQXFDO0lBQ25DLDhDQUFtRTtJQUE3QixrTkFBNEI7SUFBQyxpQkFBc0I7SUFDM0YsaUJBQU07OztJQURpQixlQUFnQjtJQUFoQixxQ0FBZ0I7Ozs7SUFHdkMsNENBQ29CO0lBRCtDLG9OQUFVLGlCQUFjLElBQUMsOExBQUE7SUFFMUYsWUFDRjtJQUFBLGlCQUFvQjs7OztJQUgrQixvQ0FBZSw4QkFBQTtJQUVoRSxlQUNGO0lBREUsK0NBQ0Y7O0FESUEsTUFBTSxPQUFPLG9CQUFvQjtJQXlCL0IsWUFBb0IsR0FBc0I7UUFBdEIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFsQm5DLFdBQU0sR0FBVyxFQUFFLENBQUE7UUFFMUIsU0FBSSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDbkIsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFBO1lBQ2IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQTtRQUMxQixDQUFDLENBQUMsQ0FBQTtRQUVxQyxvQkFBZSxHQUFHLEVBQUUsQ0FBQTtRQVl6RCxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFBO0lBQ25CLENBQUM7SUFYMEIsV0FBVztRQUNwQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFBO1FBQ2xCLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUE7SUFDMUIsQ0FBQztJQUMyQixZQUFZO1FBQ3RDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUMxQixJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFBO0lBQzFCLENBQUM7SUFNRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQTtRQUN4QixxQkFBcUIsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQTtJQUM5QyxDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQWE7UUFDckIsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUE7UUFDbkIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLEVBQUUsQ0FBQTtJQUMxQixDQUFDO0lBRUQsUUFBUTtRQUNOLE1BQU0sWUFBWSxHQUFHLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUE7UUFDakQsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUM3QyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FDL0IsQ0FBQyxDQUFBO1FBRUYsT0FBTyxZQUFZLENBQUE7SUFDckIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxJQUFJO1lBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQTtJQUNuQyxDQUFDOzt3RkFsRFUsb0JBQW9CO3VFQUFwQixvQkFBb0I7eUdBQXBCLGlCQUFhLDBGQUFiLGtCQUFjOzs7O1FDWDNCLHFFQUVNO1FBRU4saUdBR29COztRQVBBLG9DQUFlO1FBSUMsZUFBYTtRQUFiLHdDQUFhOzt1RkRPcEMsb0JBQW9CO2NBUGhDLFNBQVM7ZUFBQztnQkFDVCxXQUFXLEVBQUUsdUJBQXVCO2dCQUNwQyxTQUFTLEVBQUUsQ0FBQyx1QkFBdUIsRUFBRSxrQkFBa0IsQ0FBQztnQkFDeEQsSUFBSSxFQUFFO29CQUNKLGFBQWEsRUFBRSxjQUFjO2lCQUM5QjthQUNGO29FQUVVLEtBQUs7a0JBQWIsS0FBSztZQUNHLEtBQUs7a0JBQWIsS0FBSztZQUNHLFNBQVM7a0JBQWpCLEtBQUs7WUFDRyxNQUFNO2tCQUFkLEtBQUs7WUFDRyxRQUFRO2tCQUFoQixLQUFLO1lBU2lDLGVBQWU7a0JBQXJELFdBQVc7bUJBQUMsd0JBQXdCO1lBRVYsV0FBVztrQkFBckMsWUFBWTttQkFBQyxXQUFXO1lBSUcsWUFBWTtrQkFBdkMsWUFBWTttQkFBQyxZQUFZIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgQ2hhbmdlRGV0ZWN0b3JSZWYsIE9uQ2hhbmdlcywgT25EZXN0cm95LCBIb3N0TGlzdGVuZXIsIEhvc3RCaW5kaW5nIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBJdGVtIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuaW1wb3J0IHsgZGVib3VuY2UgfSBmcm9tICcuLi8uLi9kZWJvdW5jZSc7XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZVVybDogJy4vbWVudS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21lbnUuY29tcG9uZW50LnNhc3MnLCAnLi4vLi4vYmxvY2suc2FzcyddLFxuICBob3N0OiB7XG4gICAgJ2RhdGEtdGVzdGlkJzogJ2NvbnRleHQtbWVudSdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBDb250ZXh0TWVudUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgT25EZXN0cm95IHtcbiAgQElucHV0KCkgaXRlbXMhOiBJdGVtW11cbiAgQElucHV0KCkgZGVsYXkhOiBudW1iZXJcbiAgQElucHV0KCkgc2VhcmNoQmFyPzogYm9vbGVhblxuICBASW5wdXQoKSBvbkhpZGUhOiAoKSA9PiB2b2lkXG4gIEBJbnB1dCgpIHJlbmRlcmVkITogKCkgPT4gdm9pZFxuXG4gIHB1YmxpYyBmaWx0ZXI6IHN0cmluZyA9ICcnXG5cbiAgaGlkZSA9IGRlYm91bmNlKCgpID0+IHtcbiAgICB0aGlzLm9uSGlkZSgpXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpXG4gIH0pXG5cbiAgQEhvc3RCaW5kaW5nKCdhdHRyLnJldGUtY29udGV4dC1tZW51JykgY3VzdG9tQXR0cmlidXRlID0gJydcblxuICBASG9zdExpc3RlbmVyKCdtb3VzZW92ZXInKSBwb2ludGVyb3ZlcigpIHtcbiAgICB0aGlzLmhpZGUuY2FuY2VsKClcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKClcbiAgfVxuICBASG9zdExpc3RlbmVyKCdtb3VzZWxlYXZlJykgcG9pbnRlcmxlYXZlKCkge1xuICAgIHRoaXMuaGlkZS5jYWxsKHRoaXMuZGVsYXkpXG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpXG4gIH1cblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICB0aGlzLmNkci5kZXRhY2goKVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpXG4gICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKCgpID0+IHRoaXMucmVuZGVyZWQoKSlcbiAgfVxuXG4gIHNldEZpbHRlcih2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5maWx0ZXIgPSB2YWx1ZVxuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKVxuICB9XG5cbiAgZ2V0SXRlbXMoKSB7XG4gICAgY29uc3QgZmlsdGVyUmVnZXhwID0gbmV3IFJlZ0V4cCh0aGlzLmZpbHRlciwgJ2knKVxuICAgIGNvbnN0IGZpbHRlcmVkTGlzdCA9IHRoaXMuaXRlbXMuZmlsdGVyKGl0ZW0gPT4gKFxuICAgICAgaXRlbS5sYWJlbC5tYXRjaChmaWx0ZXJSZWdleHApXG4gICAgKSlcblxuICAgIHJldHVybiBmaWx0ZXJlZExpc3RcbiAgfVxuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmhpZGUpIHRoaXMuaGlkZS5jYW5jZWwoKVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiYmxvY2tcIiAqbmdJZj1cInNlYXJjaEJhclwiPlxuICA8Y29udGV4dC1tZW51LXNlYXJjaCBbdmFsdWVdPVwiZmlsdGVyXCIgKHVwZGF0ZSk9XCJzZXRGaWx0ZXIoJGV2ZW50KVwiPjwvY29udGV4dC1tZW51LXNlYXJjaD5cbjwvZGl2PlxuXG48Y29udGV4dC1tZW51LWl0ZW0gKm5nRm9yPVwibGV0IGl0ZW0gb2YgZ2V0SXRlbXMoKVwiIFtkZWxheV09XCJkZWxheVwiIChzZWxlY3QpPVwiaXRlbS5oYW5kbGVyKClcIiBbc3ViaXRlbXNdPVwiaXRlbS5zdWJpdGVtc1wiXG4gIChoaWRlKT1cIm9uSGlkZSgpXCI+XG4gIHt7IGl0ZW0ubGFiZWwgfX1cbjwvY29udGV4dC1tZW51LWl0ZW0+XG4iXX0=
@@ -0,0 +1,28 @@
1
+ import { Component, EventEmitter, Input, Output } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class ContextMenuSearchComponent {
4
+ constructor() {
5
+ this.update = new EventEmitter();
6
+ }
7
+ }
8
+ ContextMenuSearchComponent.ɵfac = function ContextMenuSearchComponent_Factory(t) { return new (t || ContextMenuSearchComponent)(); };
9
+ ContextMenuSearchComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ContextMenuSearchComponent, selectors: [["context-menu-search"]], inputs: { value: "value" }, outputs: { update: "update" }, decls: 1, vars: 1, consts: [["data-testid", "context-menu-search-input", 1, "search", 3, "value", "input"]], template: function ContextMenuSearchComponent_Template(rf, ctx) { if (rf & 1) {
10
+ i0.ɵɵelementStart(0, "input", 0);
11
+ i0.ɵɵlistener("input", function ContextMenuSearchComponent_Template_input_input_0_listener($event) { let tmp_b_0; return ctx.update.emit(((tmp_b_0 = $event.target) == null ? null : tmp_b_0.value) || ""); });
12
+ i0.ɵɵelementEnd();
13
+ } if (rf & 2) {
14
+ i0.ɵɵproperty("value", ctx.value);
15
+ } }, styles: [".search[_ngcontent-%COMP%]{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}"] });
16
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ContextMenuSearchComponent, [{
17
+ type: Component,
18
+ args: [{
19
+ selector: 'context-menu-search',
20
+ templateUrl: './search.component.html',
21
+ styleUrls: ['./search.component.sass']
22
+ }]
23
+ }], null, { value: [{
24
+ type: Input
25
+ }], update: [{
26
+ type: Output
27
+ }] }); })();
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25nMTIvc3JjL3ByZXNldHMvY29udGV4dC1tZW51L2NvbXBvbmVudHMvc2VhcmNoL3NlYXJjaC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9uZzEyL3NyYy9wcmVzZXRzL2NvbnRleHQtbWVudS9jb21wb25lbnRzL3NlYXJjaC9zZWFyY2guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFPdkUsTUFBTSxPQUFPLDBCQUEwQjtJQUx2QztRQU9ZLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFBO0tBQzlDOztvR0FIWSwwQkFBMEI7NkVBQTFCLDBCQUEwQjtRQ1B2QyxnQ0FDNEM7UUFETix5SEFBUyw4RUFBMEMsRUFBRSxDQUFDLElBQUM7UUFBN0YsaUJBQzRDOztRQUR0QixpQ0FBZTs7dUZET3hCLDBCQUEwQjtjQUx0QyxTQUFTO2VBQUM7Z0JBQ1QsUUFBUSxFQUFFLHFCQUFxQjtnQkFDL0IsV0FBVyxFQUFFLHlCQUF5QjtnQkFDdEMsU0FBUyxFQUFFLENBQUMseUJBQXlCLENBQUM7YUFDdkM7Z0JBRVUsS0FBSztrQkFBYixLQUFLO1lBQ0ksTUFBTTtrQkFBZixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnY29udGV4dC1tZW51LXNlYXJjaCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9zZWFyY2guY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zZWFyY2guY29tcG9uZW50LnNhc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBDb250ZXh0TWVudVNlYXJjaENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHZhbHVlITogc3RyaW5nXG4gIEBPdXRwdXQoKSB1cGRhdGUgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKVxufVxuIiwiPGlucHV0IGNsYXNzPVwic2VhcmNoXCIgW3ZhbHVlXT1cInZhbHVlXCIgKGlucHV0KT1cInVwZGF0ZS5lbWl0KCRhbnkoJGV2ZW50LnRhcmdldCk/LnZhbHVlIHx8ICcnKVwiXG4gIGRhdGEtdGVzdGlkPVwiY29udGV4dC1tZW51LXNlYXJjaC1pbnB1dFwiIC8+XG4iXX0=
@@ -0,0 +1,17 @@
1
+ export function debounce(cb) {
2
+ return {
3
+ timeout: null,
4
+ cancel() {
5
+ if (this.timeout) {
6
+ window.clearTimeout(this.timeout);
7
+ this.timeout = null;
8
+ }
9
+ },
10
+ call(delay) {
11
+ this.timeout = window.setTimeout(() => {
12
+ cb();
13
+ }, delay);
14
+ }
15
+ };
16
+ }
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVib3VuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9uZzEyL3NyYy9wcmVzZXRzL2NvbnRleHQtbWVudS9kZWJvdW5jZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLFVBQVUsUUFBUSxDQUFDLEVBQWM7SUFDckMsT0FBTztRQUNMLE9BQU8sRUFBRSxJQUFxQjtRQUM5QixNQUFNO1lBQ0osSUFBSSxJQUFJLENBQUMsT0FBTyxFQUFFO2dCQUNoQixNQUFNLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQTtnQkFDakMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUE7YUFDcEI7UUFDSCxDQUFDO1FBQ0QsSUFBSSxDQUFDLEtBQWE7WUFDaEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDcEMsRUFBRSxFQUFFLENBQUE7WUFDTixDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUE7UUFDWCxDQUFDO0tBQ0YsQ0FBQTtBQUNILENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZnVuY3Rpb24gZGVib3VuY2UoY2I6ICgpID0+IHZvaWQpIHtcbiAgcmV0dXJuIHtcbiAgICB0aW1lb3V0OiBudWxsIGFzIG51bGwgfCBudW1iZXIsXG4gICAgY2FuY2VsKCkge1xuICAgICAgaWYgKHRoaXMudGltZW91dCkge1xuICAgICAgICB3aW5kb3cuY2xlYXJUaW1lb3V0KHRoaXMudGltZW91dClcbiAgICAgICAgdGhpcy50aW1lb3V0ID0gbnVsbFxuICAgICAgfVxuICAgIH0sXG4gICAgY2FsbChkZWxheTogbnVtYmVyKSB7XG4gICAgICB0aGlzLnRpbWVvdXQgPSB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIGNiKClcbiAgICAgIH0sIGRlbGF5KVxuICAgIH1cbiAgfVxufVxuIl19
@@ -0,0 +1,38 @@
1
+ import { ContextMenuComponent } from './components/menu/menu.component';
2
+ export function setup(props) {
3
+ const delay = typeof (props === null || props === void 0 ? void 0 : props.delay) === 'undefined' ? 1000 : props.delay;
4
+ return {
5
+ update(context) {
6
+ if (context.data.type === 'contextmenu') {
7
+ return {
8
+ items: context.data.items,
9
+ delay,
10
+ searchBar: context.data.searchBar,
11
+ onHide: context.data.onHide
12
+ };
13
+ }
14
+ },
15
+ mount(context, plugin) {
16
+ const parent = plugin.parentScope();
17
+ const emit = parent.emit.bind(parent);
18
+ const rendered = () => {
19
+ emit({ type: 'rendered', data: context.data });
20
+ };
21
+ if (context.data.type === 'contextmenu') {
22
+ return {
23
+ key: 'context-menu',
24
+ component: ContextMenuComponent,
25
+ props: {
26
+ items: context.data.items,
27
+ delay,
28
+ searchBar: context.data.searchBar,
29
+ onHide: context.data.onHide,
30
+ rendered
31
+ }
32
+ };
33
+ }
34
+ return null;
35
+ }
36
+ };
37
+ }
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9uZzEyL3NyYy9wcmVzZXRzL2NvbnRleHQtbWVudS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUd4RSxNQUFNLFVBQVUsS0FBSyxDQUEyRCxLQUEwQjtJQUN4RyxNQUFNLEtBQUssR0FBRyxPQUFPLENBQUEsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLEtBQUssQ0FBQSxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFBO0lBRXRFLE9BQU87UUFDTCxNQUFNLENBQUMsT0FBTztZQUNaLElBQUksT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssYUFBYSxFQUFFO2dCQUN2QyxPQUFPO29CQUNMLEtBQUssRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUs7b0JBQ3pCLEtBQUs7b0JBQ0wsU0FBUyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUztvQkFDakMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTTtpQkFDNUIsQ0FBQTthQUNGO1FBQ0gsQ0FBQztRQUNELEtBQUssQ0FBQyxPQUFPLEVBQUUsTUFBTTtZQUNuQixNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsV0FBVyxFQUFFLENBQUE7WUFDbkMsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUE7WUFDckMsTUFBTSxRQUFRLEdBQUcsR0FBRyxFQUFFO2dCQUNwQixJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxPQUFPLENBQUMsSUFBSSxFQUFTLENBQUMsQ0FBQTtZQUN2RCxDQUFDLENBQUE7WUFFRCxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLGFBQWEsRUFBRTtnQkFDdkMsT0FBTztvQkFDTCxHQUFHLEVBQUUsY0FBYztvQkFDbkIsU0FBUyxFQUFFLG9CQUFvQjtvQkFDL0IsS0FBSyxFQUFFO3dCQUNMLEtBQUssRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUs7d0JBQ3pCLEtBQUs7d0JBQ0wsU0FBUyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUzt3QkFDakMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTTt3QkFDM0IsUUFBUTtxQkFDVDtpQkFDRixDQUFBO2FBQ0Y7WUFDRCxPQUFPLElBQUksQ0FBQTtRQUNiLENBQUM7S0FDRixDQUFBO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VTY2hlbWVzIH0gZnJvbSAncmV0ZSc7XG5cbmltcG9ydCB7IENvbnRleHRNZW51UmVuZGVyIH0gZnJvbSAnLi90eXBlcyc7XG5pbXBvcnQgeyBDb250ZXh0TWVudUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9tZW51L21lbnUuY29tcG9uZW50JztcbmltcG9ydCB7IFJlbmRlclByZXNldCB9IGZyb20gJy4uL3R5cGVzJztcblxuZXhwb3J0IGZ1bmN0aW9uIHNldHVwPFNjaGVtZXMgZXh0ZW5kcyBCYXNlU2NoZW1lcywgSyBleHRlbmRzIENvbnRleHRNZW51UmVuZGVyPihwcm9wcz86IHsgZGVsYXk/OiBudW1iZXIgfSk6IFJlbmRlclByZXNldDxTY2hlbWVzLCBLPiB7XG4gIGNvbnN0IGRlbGF5ID0gdHlwZW9mIHByb3BzPy5kZWxheSA9PT0gJ3VuZGVmaW5lZCcgPyAxMDAwIDogcHJvcHMuZGVsYXlcblxuICByZXR1cm4ge1xuICAgIHVwZGF0ZShjb250ZXh0KSB7XG4gICAgICBpZiAoY29udGV4dC5kYXRhLnR5cGUgPT09ICdjb250ZXh0bWVudScpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBpdGVtczogY29udGV4dC5kYXRhLml0ZW1zLFxuICAgICAgICAgIGRlbGF5LFxuICAgICAgICAgIHNlYXJjaEJhcjogY29udGV4dC5kYXRhLnNlYXJjaEJhcixcbiAgICAgICAgICBvbkhpZGU6IGNvbnRleHQuZGF0YS5vbkhpZGVcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0sXG4gICAgbW91bnQoY29udGV4dCwgcGx1Z2luKSB7XG4gICAgICBjb25zdCBwYXJlbnQgPSBwbHVnaW4ucGFyZW50U2NvcGUoKVxuICAgICAgY29uc3QgZW1pdCA9IHBhcmVudC5lbWl0LmJpbmQocGFyZW50KVxuICAgICAgY29uc3QgcmVuZGVyZWQgPSAoKSA9PiB7XG4gICAgICAgIGVtaXQoeyB0eXBlOiAncmVuZGVyZWQnLCBkYXRhOiBjb250ZXh0LmRhdGEgfSBhcyBhbnkpXG4gICAgICB9XG5cbiAgICAgIGlmIChjb250ZXh0LmRhdGEudHlwZSA9PT0gJ2NvbnRleHRtZW51Jykge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGtleTogJ2NvbnRleHQtbWVudScsXG4gICAgICAgICAgY29tcG9uZW50OiBDb250ZXh0TWVudUNvbXBvbmVudCxcbiAgICAgICAgICBwcm9wczoge1xuICAgICAgICAgICAgaXRlbXM6IGNvbnRleHQuZGF0YS5pdGVtcyxcbiAgICAgICAgICAgIGRlbGF5LFxuICAgICAgICAgICAgc2VhcmNoQmFyOiBjb250ZXh0LmRhdGEuc2VhcmNoQmFyLFxuICAgICAgICAgICAgb25IaWRlOiBjb250ZXh0LmRhdGEub25IaWRlLFxuICAgICAgICAgICAgcmVuZGVyZWRcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHJldHVybiBudWxsXG4gICAgfVxuICB9XG59XG4iXX0=
@@ -0,0 +1,40 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { ContextMenuComponent } from './components/menu/menu.component';
4
+ import { ContextMenuSearchComponent } from './components/search/search.component';
5
+ import { ContextMenuItemComponent } from './components/item/item.component';
6
+ import * as i0 from "@angular/core";
7
+ export class ReteContextMenuModule {
8
+ }
9
+ ReteContextMenuModule.ɵfac = function ReteContextMenuModule_Factory(t) { return new (t || ReteContextMenuModule)(); };
10
+ ReteContextMenuModule.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: ReteContextMenuModule });
11
+ ReteContextMenuModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [[
12
+ CommonModule
13
+ ]] });
14
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ReteContextMenuModule, [{
15
+ type: NgModule,
16
+ args: [{
17
+ declarations: [
18
+ ContextMenuComponent,
19
+ ContextMenuSearchComponent,
20
+ ContextMenuItemComponent
21
+ ],
22
+ imports: [
23
+ CommonModule
24
+ ],
25
+ exports: [
26
+ ContextMenuComponent,
27
+ ContextMenuSearchComponent,
28
+ ContextMenuItemComponent,
29
+ ],
30
+ entryComponents: [
31
+ ContextMenuComponent
32
+ ]
33
+ }]
34
+ }], null, null); })();
35
+ (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(ReteContextMenuModule, { declarations: [ContextMenuComponent,
36
+ ContextMenuSearchComponent,
37
+ ContextMenuItemComponent], imports: [CommonModule], exports: [ContextMenuComponent,
38
+ ContextMenuSearchComponent,
39
+ ContextMenuItemComponent] }); })();
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbmcxMi9zcmMvcHJlc2V0cy9jb250ZXh0LW1lbnUvbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFBO0FBQ3ZFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLHNDQUFzQyxDQUFBO0FBQ2pGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFBOztBQW9CM0UsTUFBTSxPQUFPLHFCQUFxQjs7MEZBQXJCLHFCQUFxQjt1RUFBckIscUJBQXFCOzJFQVp2QjtZQUNQLFlBQVk7U0FDYjt1RkFVVSxxQkFBcUI7Y0FsQmpDLFFBQVE7ZUFBQztnQkFDUixZQUFZLEVBQUU7b0JBQ1osb0JBQW9CO29CQUNwQiwwQkFBMEI7b0JBQzFCLHdCQUF3QjtpQkFDekI7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLFlBQVk7aUJBQ2I7Z0JBQ0QsT0FBTyxFQUFFO29CQUNQLG9CQUFvQjtvQkFDcEIsMEJBQTBCO29CQUMxQix3QkFBd0I7aUJBQ3pCO2dCQUNELGVBQWUsRUFBRTtvQkFDZixvQkFBb0I7aUJBQ3JCO2FBQ0Y7O3dGQUNZLHFCQUFxQixtQkFoQjlCLG9CQUFvQjtRQUNwQiwwQkFBMEI7UUFDMUIsd0JBQXdCLGFBR3hCLFlBQVksYUFHWixvQkFBb0I7UUFDcEIsMEJBQTBCO1FBQzFCLHdCQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5pbXBvcnQgeyBDb250ZXh0TWVudUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9tZW51L21lbnUuY29tcG9uZW50J1xuaW1wb3J0IHsgQ29udGV4dE1lbnVTZWFyY2hDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc2VhcmNoL3NlYXJjaC5jb21wb25lbnQnXG5pbXBvcnQgeyBDb250ZXh0TWVudUl0ZW1Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvaXRlbS9pdGVtLmNvbXBvbmVudCdcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgQ29udGV4dE1lbnVDb21wb25lbnQsXG4gICAgQ29udGV4dE1lbnVTZWFyY2hDb21wb25lbnQsXG4gICAgQ29udGV4dE1lbnVJdGVtQ29tcG9uZW50XG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIENvbnRleHRNZW51Q29tcG9uZW50LFxuICAgIENvbnRleHRNZW51U2VhcmNoQ29tcG9uZW50LFxuICAgIENvbnRleHRNZW51SXRlbUNvbXBvbmVudCxcbiAgXSxcbiAgZW50cnlDb21wb25lbnRzOiBbXG4gICAgQ29udGV4dE1lbnVDb21wb25lbnRcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBSZXRlQ29udGV4dE1lbnVNb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9uZzEyL3NyYy9wcmVzZXRzL2NvbnRleHQtbWVudS90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVuZGVyU2lnbmFsIH0gZnJvbSAnLi4vLi4vdHlwZXMnXG5cbmV4cG9ydCB0eXBlIEl0ZW0gPSB7XG4gIGxhYmVsOiBzdHJpbmdcbiAga2V5OiBzdHJpbmdcbiAgaGFuZGxlcigpOiB2b2lkXG4gIHN1Yml0ZW1zPzogSXRlbVtdXG59XG5cbmV4cG9ydCB0eXBlIENvbnRleHRNZW51UmVuZGVyID1cbiAgfCBSZW5kZXJTaWduYWw8J2NvbnRleHRtZW51JywgeyBpdGVtczogSXRlbVtdLCBvbkhpZGUoKTogdm9pZCwgc2VhcmNoQmFyPzogYm9vbGVhbiB9PlxuIl19
@@ -0,0 +1,5 @@
1
+ export * as classic from './classic';
2
+ export * as contextMenu from './context-menu';
3
+ export * as minimap from './minimap';
4
+ export * as reroute from './reroute';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9uZzEyL3NyYy9wcmVzZXRzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0sV0FBVyxDQUFBO0FBQ3BDLE9BQU8sS0FBSyxXQUFXLE1BQU0sZ0JBQWdCLENBQUE7QUFDN0MsT0FBTyxLQUFLLE9BQU8sTUFBTSxXQUFXLENBQUE7QUFDcEMsT0FBTyxLQUFLLE9BQU8sTUFBTSxXQUFXLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBhcyBjbGFzc2ljIGZyb20gJy4vY2xhc3NpYydcbmV4cG9ydCAqIGFzIGNvbnRleHRNZW51IGZyb20gJy4vY29udGV4dC1tZW51J1xuZXhwb3J0ICogYXMgbWluaW1hcCBmcm9tICcuL21pbmltYXAnXG5leHBvcnQgKiBhcyByZXJvdXRlIGZyb20gJy4vcmVyb3V0ZSdcbiJdfQ==
@@ -0,0 +1,4 @@
1
+ export { MinimapComponent } from './minimap/minimap.component';
2
+ export { MiniViewportComponent } from './mini-viewport/mini-viewport.component';
3
+ export { MiniNodeComponent } from './mini-node/mini-node.component';
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9uZzEyL3NyYy9wcmVzZXRzL21pbmltYXAvY29tcG9uZW50cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMvRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNoRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IE1pbmltYXBDb21wb25lbnQgfSBmcm9tICcuL21pbmltYXAvbWluaW1hcC5jb21wb25lbnQnO1xuZXhwb3J0IHsgTWluaVZpZXdwb3J0Q29tcG9uZW50IH0gZnJvbSAnLi9taW5pLXZpZXdwb3J0L21pbmktdmlld3BvcnQuY29tcG9uZW50JztcbmV4cG9ydCB7IE1pbmlOb2RlQ29tcG9uZW50IH0gZnJvbSAnLi9taW5pLW5vZGUvbWluaS1ub2RlLmNvbXBvbmVudCc7XG4iXX0=
@@ -0,0 +1,55 @@
1
+ import { Component, Input, HostBinding } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class MiniNodeComponent {
4
+ get styleLeft() {
5
+ return this.px(this.left);
6
+ }
7
+ get styleTop() {
8
+ return this.px(this.top);
9
+ }
10
+ get styleWidth() {
11
+ return this.px(this.width);
12
+ }
13
+ get styleHeight() {
14
+ return this.px(this.height);
15
+ }
16
+ px(value) {
17
+ return `${value}px`;
18
+ }
19
+ }
20
+ MiniNodeComponent.ɵfac = function MiniNodeComponent_Factory(t) { return new (t || MiniNodeComponent)(); };
21
+ MiniNodeComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MiniNodeComponent, selectors: [["minimap-mini-node"]], hostAttrs: ["data-testid", "minimap-node"], hostVars: 8, hostBindings: function MiniNodeComponent_HostBindings(rf, ctx) { if (rf & 2) {
22
+ i0.ɵɵstyleProp("left", ctx.styleLeft)("top", ctx.styleTop)("width", ctx.styleWidth)("height", ctx.styleHeight);
23
+ } }, inputs: { left: "left", top: "top", width: "width", height: "height" }, decls: 0, vars: 0, template: function MiniNodeComponent_Template(rf, ctx) { }, styles: ["[_nghost-%COMP%]{display:block;position:absolute;background:rgba(110,136,255,.8);border:1px solid rgba(192,206,212,.6)}"] });
24
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MiniNodeComponent, [{
25
+ type: Component,
26
+ args: [{
27
+ selector: 'minimap-mini-node',
28
+ templateUrl: './mini-node.component.html',
29
+ styleUrls: ['./mini-node.component.sass'],
30
+ host: {
31
+ 'data-testid': 'minimap-node'
32
+ }
33
+ }]
34
+ }], null, { left: [{
35
+ type: Input
36
+ }], top: [{
37
+ type: Input
38
+ }], width: [{
39
+ type: Input
40
+ }], height: [{
41
+ type: Input
42
+ }], styleLeft: [{
43
+ type: HostBinding,
44
+ args: ['style.left']
45
+ }], styleTop: [{
46
+ type: HostBinding,
47
+ args: ['style.top']
48
+ }], styleWidth: [{
49
+ type: HostBinding,
50
+ args: ['style.width']
51
+ }], styleHeight: [{
52
+ type: HostBinding,
53
+ args: ['style.height']
54
+ }] }); })();
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluaS1ub2RlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL25nMTIvc3JjL3ByZXNldHMvbWluaW1hcC9jb21wb25lbnRzL21pbmktbm9kZS9taW5pLW5vZGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFVOUQsTUFBTSxPQUFPLGlCQUFpQjtJQU01QixJQUErQixTQUFTO1FBQ3RDLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDM0IsQ0FBQztJQUNELElBQThCLFFBQVE7UUFDcEMsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQTtJQUMxQixDQUFDO0lBQ0QsSUFBZ0MsVUFBVTtRQUN4QyxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQzVCLENBQUM7SUFDRCxJQUFpQyxXQUFXO1FBQzFDLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUE7SUFDN0IsQ0FBQztJQUVELEVBQUUsQ0FBQyxLQUFhO1FBQ2QsT0FBTyxHQUFHLEtBQUssSUFBSSxDQUFBO0lBQ3JCLENBQUM7O2tGQXJCVSxpQkFBaUI7b0VBQWpCLGlCQUFpQjs7O3VGQUFqQixpQkFBaUI7Y0FSN0IsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSxtQkFBbUI7Z0JBQzdCLFdBQVcsRUFBRSw0QkFBNEI7Z0JBQ3pDLFNBQVMsRUFBRSxDQUFDLDRCQUE0QixDQUFDO2dCQUN6QyxJQUFJLEVBQUU7b0JBQ0osYUFBYSxFQUFFLGNBQWM7aUJBQzlCO2FBQ0Y7Z0JBRVUsSUFBSTtrQkFBWixLQUFLO1lBQ0csR0FBRztrQkFBWCxLQUFLO1lBQ0csS0FBSztrQkFBYixLQUFLO1lBQ0csTUFBTTtrQkFBZCxLQUFLO1lBRXlCLFNBQVM7a0JBQXZDLFdBQVc7bUJBQUMsWUFBWTtZQUdLLFFBQVE7a0JBQXJDLFdBQVc7bUJBQUMsV0FBVztZQUdRLFVBQVU7a0JBQXpDLFdBQVc7bUJBQUMsYUFBYTtZQUdPLFdBQVc7a0JBQTNDLFdBQVc7bUJBQUMsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIEhvc3RCaW5kaW5nIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ21pbmltYXAtbWluaS1ub2RlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21pbmktbm9kZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21pbmktbm9kZS5jb21wb25lbnQuc2FzcyddLFxuICBob3N0OiB7XG4gICAgJ2RhdGEtdGVzdGlkJzogJ21pbmltYXAtbm9kZSdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBNaW5pTm9kZUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGxlZnQhOiBudW1iZXJcbiAgQElucHV0KCkgdG9wITogbnVtYmVyXG4gIEBJbnB1dCgpIHdpZHRoITogbnVtYmVyXG4gIEBJbnB1dCgpIGhlaWdodCE6IG51bWJlclxuXG4gIEBIb3N0QmluZGluZygnc3R5bGUubGVmdCcpIGdldCBzdHlsZUxlZnQoKSB7XG4gICAgcmV0dXJuIHRoaXMucHgodGhpcy5sZWZ0KVxuICB9XG4gIEBIb3N0QmluZGluZygnc3R5bGUudG9wJykgZ2V0IHN0eWxlVG9wKCkge1xuICAgIHJldHVybiB0aGlzLnB4KHRoaXMudG9wKVxuICB9XG4gIEBIb3N0QmluZGluZygnc3R5bGUud2lkdGgnKSBnZXQgc3R5bGVXaWR0aCgpIHtcbiAgICByZXR1cm4gdGhpcy5weCh0aGlzLndpZHRoKVxuICB9XG4gIEBIb3N0QmluZGluZygnc3R5bGUuaGVpZ2h0JykgZ2V0IHN0eWxlSGVpZ2h0KCkge1xuICAgIHJldHVybiB0aGlzLnB4KHRoaXMuaGVpZ2h0KVxuICB9XG5cbiAgcHgodmFsdWU6IG51bWJlcikge1xuICAgIHJldHVybiBgJHt2YWx1ZX1weGBcbiAgfVxuXG59XG4iXX0=
@@ -0,0 +1,81 @@
1
+ import { Component, Input, HostBinding, HostListener } from '@angular/core';
2
+ import { useDrag } from '../../../../shared/drag';
3
+ import * as i0 from "@angular/core";
4
+ export class MiniViewportComponent {
5
+ constructor() {
6
+ this.drag = useDrag((dx, dy) => this.onDrag(dx, dy), e => ({ x: e.pageX, y: e.pageY }));
7
+ }
8
+ get styleLeft() {
9
+ return this.px(this.scale(this.left));
10
+ }
11
+ get styleTop() {
12
+ return this.px(this.scale(this.top));
13
+ }
14
+ get styleWidth() {
15
+ return this.px(this.scale(this.width));
16
+ }
17
+ get styleHeight() {
18
+ return this.px(this.scale(this.height));
19
+ }
20
+ pointerdown(event) {
21
+ event.stopPropagation();
22
+ this.drag.start(event);
23
+ }
24
+ px(value) {
25
+ return `${value}px`;
26
+ }
27
+ scale(v) {
28
+ return v * this.containerWidth;
29
+ }
30
+ invert(v) {
31
+ return v / this.containerWidth;
32
+ }
33
+ onDrag(dx, dy) {
34
+ this.translate(this.invert(-dx), this.invert(-dy));
35
+ }
36
+ }
37
+ MiniViewportComponent.ɵfac = function MiniViewportComponent_Factory(t) { return new (t || MiniViewportComponent)(); };
38
+ MiniViewportComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: MiniViewportComponent, selectors: [["minimap-mini-viewport"]], hostAttrs: ["data-testid", "minimap-viewport"], hostVars: 8, hostBindings: function MiniViewportComponent_HostBindings(rf, ctx) { if (rf & 1) {
39
+ i0.ɵɵlistener("pointerdown", function MiniViewportComponent_pointerdown_HostBindingHandler($event) { return ctx.pointerdown($event); });
40
+ } if (rf & 2) {
41
+ i0.ɵɵstyleProp("left", ctx.styleLeft)("top", ctx.styleTop)("width", ctx.styleWidth)("height", ctx.styleHeight);
42
+ } }, inputs: { left: "left", top: "top", width: "width", height: "height", containerWidth: "containerWidth", translate: "translate" }, decls: 0, vars: 0, template: function MiniViewportComponent_Template(rf, ctx) { }, styles: ["[_nghost-%COMP%]{display:block;position:absolute;background:rgba(255,251,128,.32);border:1px solid #ffe52b}"] });
43
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(MiniViewportComponent, [{
44
+ type: Component,
45
+ args: [{
46
+ selector: 'minimap-mini-viewport',
47
+ templateUrl: './mini-viewport.component.html',
48
+ styleUrls: ['./mini-viewport.component.sass'],
49
+ host: {
50
+ 'data-testid': 'minimap-viewport'
51
+ }
52
+ }]
53
+ }], null, { left: [{
54
+ type: Input
55
+ }], top: [{
56
+ type: Input
57
+ }], width: [{
58
+ type: Input
59
+ }], height: [{
60
+ type: Input
61
+ }], containerWidth: [{
62
+ type: Input
63
+ }], translate: [{
64
+ type: Input
65
+ }], styleLeft: [{
66
+ type: HostBinding,
67
+ args: ['style.left']
68
+ }], styleTop: [{
69
+ type: HostBinding,
70
+ args: ['style.top']
71
+ }], styleWidth: [{
72
+ type: HostBinding,
73
+ args: ['style.width']
74
+ }], styleHeight: [{
75
+ type: HostBinding,
76
+ args: ['style.height']
77
+ }], pointerdown: [{
78
+ type: HostListener,
79
+ args: ['pointerdown', ['$event']]
80
+ }] }); })();
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluaS12aWV3cG9ydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9uZzEyL3NyYy9wcmVzZXRzL21pbmltYXAvY29tcG9uZW50cy9taW5pLXZpZXdwb3J0L21pbmktdmlld3BvcnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQVdsRCxNQUFNLE9BQU8scUJBQXFCO0lBUmxDO1FBZ0JFLFNBQUksR0FBRyxPQUFPLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQTtLQW1DbkY7SUFqQ0MsSUFBK0IsU0FBUztRQUN0QyxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQTtJQUN2QyxDQUFDO0lBQ0QsSUFBOEIsUUFBUTtRQUNwQyxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQTtJQUN0QyxDQUFDO0lBQ0QsSUFBZ0MsVUFBVTtRQUN4QyxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQTtJQUN4QyxDQUFDO0lBQ0QsSUFBaUMsV0FBVztRQUMxQyxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQTtJQUN6QyxDQUFDO0lBRXdDLFdBQVcsQ0FBQyxLQUFtQjtRQUN0RSxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUE7UUFDdkIsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDeEIsQ0FBQztJQUVELEVBQUUsQ0FBQyxLQUFhO1FBQ2QsT0FBTyxHQUFHLEtBQUssSUFBSSxDQUFBO0lBQ3JCLENBQUM7SUFFRCxLQUFLLENBQUMsQ0FBUztRQUNiLE9BQU8sQ0FBQyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUE7SUFDaEMsQ0FBQztJQUVELE1BQU0sQ0FBQyxDQUFTO1FBQ2QsT0FBTyxDQUFDLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQTtJQUNoQyxDQUFDO0lBRUQsTUFBTSxDQUFDLEVBQVUsRUFBRSxFQUFVO1FBQzNCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFBO0lBQ3BELENBQUM7OzBGQTFDVSxxQkFBcUI7d0VBQXJCLHFCQUFxQjtvSEFBckIsdUJBQW1COzs7O3VGQUFuQixxQkFBcUI7Y0FSakMsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSx1QkFBdUI7Z0JBQ2pDLFdBQVcsRUFBRSxnQ0FBZ0M7Z0JBQzdDLFNBQVMsRUFBRSxDQUFDLGdDQUFnQyxDQUFDO2dCQUM3QyxJQUFJLEVBQUU7b0JBQ0osYUFBYSxFQUFFLGtCQUFrQjtpQkFDbEM7YUFDRjtnQkFFVSxJQUFJO2tCQUFaLEtBQUs7WUFDRyxHQUFHO2tCQUFYLEtBQUs7WUFDRyxLQUFLO2tCQUFiLEtBQUs7WUFDRyxNQUFNO2tCQUFkLEtBQUs7WUFDRyxjQUFjO2tCQUF0QixLQUFLO1lBQ0csU0FBUztrQkFBakIsS0FBSztZQUl5QixTQUFTO2tCQUF2QyxXQUFXO21CQUFDLFlBQVk7WUFHSyxRQUFRO2tCQUFyQyxXQUFXO21CQUFDLFdBQVc7WUFHUSxVQUFVO2tCQUF6QyxXQUFXO21CQUFDLGFBQWE7WUFHTyxXQUFXO2tCQUEzQyxXQUFXO21CQUFDLGNBQWM7WUFJYyxXQUFXO2tCQUFuRCxZQUFZO21CQUFDLGFBQWEsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIEhvc3RCaW5kaW5nLCBIb3N0TGlzdGVuZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHVzZURyYWcgfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvZHJhZyc7XG5pbXBvcnQgeyBNaW5pbWFwRGF0YSB9IGZyb20gJy4uLy4uL3R5cGVzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbWluaW1hcC1taW5pLXZpZXdwb3J0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL21pbmktdmlld3BvcnQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9taW5pLXZpZXdwb3J0LmNvbXBvbmVudC5zYXNzJ10sXG4gIGhvc3Q6IHtcbiAgICAnZGF0YS10ZXN0aWQnOiAnbWluaW1hcC12aWV3cG9ydCdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBNaW5pVmlld3BvcnRDb21wb25lbnQge1xuICBASW5wdXQoKSBsZWZ0ITogbnVtYmVyXG4gIEBJbnB1dCgpIHRvcCE6IG51bWJlclxuICBASW5wdXQoKSB3aWR0aCE6IG51bWJlclxuICBASW5wdXQoKSBoZWlnaHQhOiBudW1iZXJcbiAgQElucHV0KCkgY29udGFpbmVyV2lkdGghOiBudW1iZXJcbiAgQElucHV0KCkgdHJhbnNsYXRlITogTWluaW1hcERhdGFbJ3RyYW5zbGF0ZSddXG5cbiAgZHJhZyA9IHVzZURyYWcoKGR4LCBkeSkgPT4gdGhpcy5vbkRyYWcoZHgsIGR5KSwgZSA9PiAoeyB4OiBlLnBhZ2VYLCB5OiBlLnBhZ2VZIH0pKVxuXG4gIEBIb3N0QmluZGluZygnc3R5bGUubGVmdCcpIGdldCBzdHlsZUxlZnQoKSB7XG4gICAgcmV0dXJuIHRoaXMucHgodGhpcy5zY2FsZSh0aGlzLmxlZnQpKVxuICB9XG4gIEBIb3N0QmluZGluZygnc3R5bGUudG9wJykgZ2V0IHN0eWxlVG9wKCkge1xuICAgIHJldHVybiB0aGlzLnB4KHRoaXMuc2NhbGUodGhpcy50b3ApKVxuICB9XG4gIEBIb3N0QmluZGluZygnc3R5bGUud2lkdGgnKSBnZXQgc3R5bGVXaWR0aCgpIHtcbiAgICByZXR1cm4gdGhpcy5weCh0aGlzLnNjYWxlKHRoaXMud2lkdGgpKVxuICB9XG4gIEBIb3N0QmluZGluZygnc3R5bGUuaGVpZ2h0JykgZ2V0IHN0eWxlSGVpZ2h0KCkge1xuICAgIHJldHVybiB0aGlzLnB4KHRoaXMuc2NhbGUodGhpcy5oZWlnaHQpKVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcigncG9pbnRlcmRvd24nLCBbJyRldmVudCddKSBwb2ludGVyZG93bihldmVudDogUG9pbnRlckV2ZW50KSB7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgICB0aGlzLmRyYWcuc3RhcnQoZXZlbnQpXG4gIH1cblxuICBweCh2YWx1ZTogbnVtYmVyKSB7XG4gICAgcmV0dXJuIGAke3ZhbHVlfXB4YFxuICB9XG5cbiAgc2NhbGUodjogbnVtYmVyKSB7XG4gICAgcmV0dXJuIHYgKiB0aGlzLmNvbnRhaW5lcldpZHRoXG4gIH1cblxuICBpbnZlcnQodjogbnVtYmVyKSB7XG4gICAgcmV0dXJuIHYgLyB0aGlzLmNvbnRhaW5lcldpZHRoXG4gIH1cblxuICBvbkRyYWcoZHg6IG51bWJlciwgZHk6IG51bWJlcikge1xuICAgIHRoaXMudHJhbnNsYXRlKHRoaXMuaW52ZXJ0KC1keCksIHRoaXMuaW52ZXJ0KC1keSkpXG4gIH1cbn1cbiJdfQ==