graphdb-workbench 2.8.0-TR13 → 2.8.0-TR15

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 (878) hide show
  1. package/dist/0.414c01a88c3b335d6f9c.bundle.js +25 -0
  2. package/dist/1.71a62546a2ca43800118.bundle.js +1 -0
  3. package/dist/10.9cd7b7ccaa39cbcf462a.bundle.js +1 -0
  4. package/dist/100.0b1371296b9b8273d3f6.bundle.js +1 -0
  5. package/dist/101.3bf31014ca140e5b2e89.bundle.js +1 -0
  6. package/dist/102.5316c67fa71f41f1c30f.bundle.js +1 -0
  7. package/dist/103.129fcd580b5aea860b2f.bundle.js +1 -0
  8. package/dist/104.09edf9d0b56ef6ee1f5d.bundle.js +1 -0
  9. package/dist/105.40c57862adc44f40c5dc.bundle.js +1 -0
  10. package/dist/106.3520e36633e98df9c1f2.bundle.js +1 -0
  11. package/dist/107.c7e374753760b72ea154.bundle.js +1 -0
  12. package/dist/108.bb9738cfe50dd8401d65.bundle.js +1 -0
  13. package/dist/109.79193a98f1afe5568d26.bundle.js +1 -0
  14. package/dist/11.5df7064cc818d1b86861.bundle.js +1 -0
  15. package/dist/110.65297c52e944ce5f7fe2.bundle.js +1 -0
  16. package/dist/111.de925a56a8a471a61c9a.bundle.js +1 -0
  17. package/dist/112.a18f3b6a2f2f89a9e50a.bundle.js +1 -0
  18. package/dist/113.013d5e17f50f1bae2376.bundle.js +1 -0
  19. package/dist/114.6072c968da8906a3af1f.bundle.js +1 -0
  20. package/dist/115.03581e7f7a97551e7de7.bundle.js +1 -0
  21. package/dist/116.216f40cc02c56a322cff.bundle.js +1 -0
  22. package/dist/117.6a6ccded9246bd3ead58.bundle.js +1 -0
  23. package/dist/118.f524358a7dd60af874e9.bundle.js +1 -0
  24. package/dist/119.2cc46636bf1c9358dd04.bundle.js +1 -0
  25. package/dist/12.f89270c46d76da4281cb.bundle.js +1 -0
  26. package/dist/120.fe03791a3cc393e45343.bundle.js +1 -0
  27. package/dist/121.ef298f578d8df102ed47.bundle.js +1 -0
  28. package/dist/122.f212147abb65cb698ccb.bundle.js +1 -0
  29. package/dist/123.54255f56228262479762.bundle.js +1 -0
  30. package/dist/124.3a140bf5db097db5a43a.bundle.js +1 -0
  31. package/dist/125.4f79c0300e2aa616d9fb.bundle.js +1 -0
  32. package/dist/126.c67bfe17de22b0d3e1b4.bundle.js +1 -0
  33. package/dist/127.33d689cc498474d2e092.bundle.js +1 -0
  34. package/dist/128.b61c5a263b1db25e102b.bundle.js +1 -0
  35. package/dist/129.731fb2380480231f1a0f.bundle.js +1 -0
  36. package/dist/13.1bce00c2e3e417362e0e.bundle.js +1 -0
  37. package/dist/130.8d4fb119be3dc4d677e2.bundle.js +1 -0
  38. package/dist/131.beee6f4abd325ba6d981.bundle.js +1 -0
  39. package/dist/132.80151a84670b5d40c19e.bundle.js +1 -0
  40. package/dist/133.21d4e8857e5d0ed770fb.bundle.js +1 -0
  41. package/dist/134.1c2011cf568e5beb173a.bundle.js +1 -0
  42. package/dist/135.829cad7a5a7778210e60.bundle.js +1 -0
  43. package/dist/136.f1a9257da7146e048e6a.bundle.js +1 -0
  44. package/dist/137.3aa2844b92ccf5aa19b2.bundle.js +1 -0
  45. package/dist/138.6118baae2e13b8a2d01c.bundle.js +1 -0
  46. package/dist/139.db121c1465b4e7f6548b.bundle.js +1 -0
  47. package/dist/14.3b4ce9eca55404ba580c.bundle.js +73 -0
  48. package/dist/140.8584a06abe9a70370917.bundle.js +1 -0
  49. package/dist/141.644021149c4fcf9ffffd.bundle.js +1 -0
  50. package/dist/142.c811d2c03fff9aa064f0.bundle.js +1 -0
  51. package/dist/143.f8983fa62b5c680693bd.bundle.js +1 -0
  52. package/dist/144.08b60d0a201f32b3a4df.bundle.js +1 -0
  53. package/dist/145.46ce164d8c755082df97.bundle.js +1 -0
  54. package/dist/146.154f3735e8747d8e718a.bundle.js +1 -0
  55. package/dist/147.02f868699de865ed9401.bundle.js +1 -0
  56. package/dist/148.04d6134151da45704ef9.bundle.js +1 -0
  57. package/dist/149.47c6d9f9e1709c21e6f0.bundle.js +1 -0
  58. package/dist/15.b1cedc9e979fbdcb812b.bundle.js +1 -0
  59. package/dist/150.577c1e58e9366f12f48e.bundle.js +1 -0
  60. package/dist/151.6fe1230cf33ee7c4d2dc.bundle.js +1 -0
  61. package/dist/152.776a72b3b0d732a3d848.bundle.js +1 -0
  62. package/dist/153.790c6e04dbd01de513b7.bundle.js +1 -0
  63. package/dist/154.c38ea19400bb0edcf25c.bundle.js +1 -0
  64. package/dist/155.d24167551257275c7933.bundle.js +1 -0
  65. package/dist/156.ab3de668c403eb8c6a91.bundle.js +1 -0
  66. package/dist/157.698213394dea1493ebfe.bundle.js +1 -0
  67. package/dist/158.5bb35124ef509bfbe34f.bundle.js +1 -0
  68. package/dist/159.4dc4b2690a8b8e708c3a.bundle.js +1 -0
  69. package/dist/16.958c174533714be27701.bundle.js +1 -0
  70. package/dist/160.135feb2a2eb7b7e1d2cb.bundle.js +1 -0
  71. package/dist/161.1afe966286f82909a308.bundle.js +1 -0
  72. package/dist/162.8797c00274d07be39fdf.bundle.js +1 -0
  73. package/dist/163.d19bd9a9e15be6026eca.bundle.js +1 -0
  74. package/dist/164.7abc7cb3c0d36d9db811.bundle.js +1 -0
  75. package/dist/165.7be36c94701e88b09a3e.bundle.js +1 -0
  76. package/dist/166.672d065d61af5692b781.bundle.js +1 -0
  77. package/dist/167.069721a4bc47e81146c0.bundle.js +1 -0
  78. package/dist/168.28f7c4e9d90f66bd933d.bundle.js +1 -0
  79. package/dist/169.eea49398abb4085ebd01.bundle.js +1 -0
  80. package/dist/17.9d82e64bcea9d284d004.bundle.js +2 -0
  81. package/dist/170.075f612f030ee7c88c20.bundle.js +1 -0
  82. package/dist/171.85b83871592c13f3b1bc.bundle.js +1 -0
  83. package/dist/172.ea38de3b4a0c119de770.bundle.js +1 -0
  84. package/dist/173.a2a0cfde35c112fabba9.bundle.js +1 -0
  85. package/dist/174.d4a9b43599ec6d0a3d44.bundle.js +1 -0
  86. package/dist/175.a146bb35712f1add37f5.bundle.js +1 -0
  87. package/dist/176.b949d1521027bdae2e53.bundle.js +1 -0
  88. package/dist/177.4d19e5c88f0a39e6da9b.bundle.js +1 -0
  89. package/dist/178.e6845440b64207ab547d.bundle.js +1 -0
  90. package/dist/179.74bdd833176a2d34497c.bundle.js +1 -0
  91. package/dist/18.a8fdd8ef6037687bea22.bundle.js +1 -0
  92. package/dist/180.196769aca7a780a55571.bundle.js +1 -0
  93. package/dist/181.28821988320a075ddbe7.bundle.js +1 -0
  94. package/dist/182.38ac1338346ecd459116.bundle.js +1 -0
  95. package/dist/183.532370cbe31fc01986d0.bundle.js +1 -0
  96. package/dist/184.13f58b6cbf1cda19d540.bundle.js +1 -0
  97. package/dist/185.c867b5aa10b87a6dac2b.bundle.js +1 -0
  98. package/dist/186.fc1a1a66dff695726739.bundle.js +1 -0
  99. package/dist/187.c5b9f6148c9268afd0d9.bundle.js +1 -0
  100. package/dist/188.cbd5f03f98aebed7f57c.bundle.js +1 -0
  101. package/dist/189.856bbe902aa5177eef5b.bundle.js +1 -0
  102. package/dist/19.08d5af756e56a5926d10.bundle.js +1 -0
  103. package/dist/190.15042cfa8096d38bf756.bundle.js +1 -0
  104. package/dist/191.1f9fec25750fdb6a5534.bundle.js +1 -0
  105. package/dist/192.bd66e1590f5d35aaa5fd.bundle.js +1 -0
  106. package/dist/193.540954df73aa1071a4c1.bundle.js +1 -0
  107. package/dist/194.cd13d30436c1ccb323e8.bundle.js +1 -0
  108. package/dist/195.8a4b8b0c266e0b0b0e2c.bundle.js +1 -0
  109. package/dist/196.53667a727da9c84364dd.bundle.js +1 -0
  110. package/dist/197.6e3e8f5c371b0273f579.bundle.js +1 -0
  111. package/dist/198.8f16b9864fc692561627.bundle.js +1 -0
  112. package/dist/199.527ef6ef5d3e2b84f8ff.bundle.js +1 -0
  113. package/dist/2.4cca59afa5fa52653437.bundle.js +2 -0
  114. package/dist/20.9960a2c5a4c33e8e7a88.bundle.js +1 -0
  115. package/dist/200.9e214c2cafe8f00fff60.bundle.js +1 -0
  116. package/dist/201.64eb64e19732ec7b2694.bundle.js +1 -0
  117. package/dist/202.4ebae633e9f45e4f3558.bundle.js +1 -0
  118. package/dist/203.3c663931e3193c91ea36.bundle.js +1 -0
  119. package/dist/204.b68d6f01f491ebbf8d1f.bundle.js +1 -0
  120. package/dist/205.f50a110733da1427abef.bundle.js +1 -0
  121. package/dist/206.7dd3c78bd2ed247e17f0.bundle.js +1 -0
  122. package/dist/207.7e50a40cd8c5bffe2cd4.bundle.js +1 -0
  123. package/dist/208.caa73957510d0a947650.bundle.js +1 -0
  124. package/dist/209.5617f3347cd744470439.bundle.js +1 -0
  125. package/dist/21.0fa6677b24bc05643879.bundle.js +7 -0
  126. package/dist/210.7d23e1da8ef5c11c5e02.bundle.js +1 -0
  127. package/dist/211.274af50d5a89bc337456.bundle.js +1 -0
  128. package/dist/212.c7dfdad36fd66aad24a9.bundle.js +1 -0
  129. package/dist/213.7eb44f37a2283b9051f7.bundle.js +1 -0
  130. package/dist/214.b011149292e48373699c.bundle.js +1 -0
  131. package/dist/215.f1f848f447dbb50382ab.bundle.js +1 -0
  132. package/dist/216.4b1f7550e3f6d581ded8.bundle.js +1 -0
  133. package/dist/217.e11d4a3ac9b0a323e01e.bundle.js +1 -0
  134. package/dist/218.b2e65a57457ef09e23ae.bundle.js +1 -0
  135. package/dist/219.91cd33ce17a6805bb23d.bundle.js +1 -0
  136. package/dist/22.db7d69075991a37167c1.bundle.js +3 -0
  137. package/dist/220.b068be9cdd96368e8f8c.bundle.js +1 -0
  138. package/dist/221.e00530898cfe5b36023a.bundle.js +1 -0
  139. package/dist/222.ebf5243f48c3a5d1fbd5.bundle.js +1 -0
  140. package/dist/223.3445f37e42d85f3549db.bundle.js +1 -0
  141. package/dist/224.e95dd4d63083689536b6.bundle.js +1 -0
  142. package/dist/225.8fc8e313aab01a8de4b9.bundle.js +1 -0
  143. package/dist/226.e74e38fbb012262f25b3.bundle.js +1 -0
  144. package/dist/227.18ea2f47f28bd1b50ee3.bundle.js +1 -0
  145. package/dist/228.2527127574de7876d60e.bundle.js +1 -0
  146. package/dist/229.3499e577be57d93dda4b.bundle.js +1 -0
  147. package/dist/23.9f8c8d4e939dbe31026e.bundle.js +2 -0
  148. package/dist/230.c7e81e81b02dfe010f19.bundle.js +1 -0
  149. package/dist/231.02c79cc98391351eea34.bundle.js +1 -0
  150. package/dist/232.81893eaf03744af76750.bundle.js +1 -0
  151. package/dist/233.456d14bcd1dda8a41dd0.bundle.js +1 -0
  152. package/dist/234.31f53b12afdea26d3574.bundle.js +1 -0
  153. package/dist/235.1adf6994dc1bfbc119d2.bundle.js +1 -0
  154. package/dist/236.beb07884a491b3917666.bundle.js +1 -0
  155. package/dist/237.c37c120ed92aa0e7fa2f.bundle.js +1 -0
  156. package/dist/238.db8dece448a771f56ecf.bundle.js +1 -0
  157. package/dist/239.ca0e048bae86e42047e4.bundle.js +1 -0
  158. package/dist/24.316819a3867307a7af5e.bundle.js +2 -0
  159. package/dist/240.fbae0ebdaaafc2c13055.bundle.js +1 -0
  160. package/dist/241.fc7f1174107ee4bb7822.bundle.js +1 -0
  161. package/dist/242.b76b4082b9c60af6d53e.bundle.js +1 -0
  162. package/dist/243.bf9d3425fee6a08dffc4.bundle.js +1 -0
  163. package/dist/244.3d8548d3a35b1a81ba02.bundle.js +1 -0
  164. package/dist/245.6b2a2c1c60dd2d8b5eac.bundle.js +1 -0
  165. package/dist/246.fb9fffc64f919b121ff8.bundle.js +1 -0
  166. package/dist/247.1ebba235e9bbc8dbc94d.bundle.js +1 -0
  167. package/dist/248.317bed6133fdf737af7a.bundle.js +1 -0
  168. package/dist/249.f8ad0aba173b80b92076.bundle.js +1 -0
  169. package/dist/25.558a2ed68f4323e1cc76.bundle.js +3 -0
  170. package/dist/250.916ec3f2334507462ba5.bundle.js +1 -0
  171. package/dist/251.1ce272bd7de2199df2b2.bundle.js +1 -0
  172. package/dist/252.5a91ced19a4c9ef8fb66.bundle.js +1 -0
  173. package/dist/253.f60220deab70e2be7fe8.bundle.js +1 -0
  174. package/dist/254.32f5a1030805b3474dc6.bundle.js +1 -0
  175. package/dist/255.19c7848b634f48c7b0af.bundle.js +1 -0
  176. package/dist/256.18c91a577acc4ff376a5.bundle.js +1 -0
  177. package/dist/257.28c2b4cb27e8b9863efb.bundle.js +1 -0
  178. package/dist/258.2655cf9c894aa39786e7.bundle.js +1 -0
  179. package/dist/259.1264629b742846a7e568.bundle.js +1 -0
  180. package/dist/26.18e4c8030f38849493f4.bundle.js +2 -0
  181. package/dist/260.214339c9590187329398.bundle.js +1 -0
  182. package/dist/261.f3e1020e02ee493649ca.bundle.js +1 -0
  183. package/dist/262.1d5909ecf281b9f1c63e.bundle.js +1 -0
  184. package/dist/263.d58bf5d0bb84bef2aeb5.bundle.js +1 -0
  185. package/dist/264.bb5de981d669cae106de.bundle.js +1 -0
  186. package/dist/265.0c28fbc64b4c2035d333.bundle.js +1 -0
  187. package/dist/266.3dd4930f15db3c3f8798.bundle.js +1 -0
  188. package/dist/267.d65d76cf636245a8e7c0.bundle.js +1 -0
  189. package/dist/268.b7a4233a2069319d8226.bundle.js +1 -0
  190. package/dist/269.a4ca871ec5eb203d2ecd.bundle.js +1 -0
  191. package/dist/27.d2e24d03f9f5b21a2902.bundle.js +1 -0
  192. package/dist/270.c8b6c9c8160f7d81b60e.bundle.js +1 -0
  193. package/dist/271.835e8abf8546f0016247.bundle.js +1 -0
  194. package/dist/272.9c89d2d7facb6c479f4a.bundle.js +1 -0
  195. package/dist/273.60f29737090be39eb270.bundle.js +1 -0
  196. package/dist/274.9983ff0697fdb3895d19.bundle.js +1 -0
  197. package/dist/275.c308abe795d095d4979d.bundle.js +1 -0
  198. package/dist/276.808d57a3b4b9f14d71a3.bundle.js +1 -0
  199. package/dist/277.a54b69e8ed4cada9a67c.bundle.js +1 -0
  200. package/dist/278.25aa2cff82954db60d5f.bundle.js +1 -0
  201. package/dist/279.94c2d1fd5d362db5c4a1.bundle.js +1 -0
  202. package/dist/28.e73219a59b3b88ad9da0.bundle.js +1 -0
  203. package/dist/280.6451ad0adc8c3d92d760.bundle.js +1 -0
  204. package/dist/281.8e5a1fe579e284b07358.bundle.js +1 -0
  205. package/dist/282.1f7c2ba54fd19b587924.bundle.js +1 -0
  206. package/dist/283.a6809fdde25c1b441836.bundle.js +1 -0
  207. package/dist/284.9a96eb54ccd79558549e.bundle.js +1 -0
  208. package/dist/285.6a7500ab0821d1491355.bundle.js +1 -0
  209. package/dist/286.9e00cbd92a3545907b41.bundle.js +1 -0
  210. package/dist/287.6e6cab905b61e7d74e2f.bundle.js +1 -0
  211. package/dist/288.9fbaad51a7d7b9343173.bundle.js +1 -0
  212. package/dist/289.f634b51fb4a7f2e20f2b.bundle.js +1 -0
  213. package/dist/29.a0ec5aa87a0dc7208ab1.bundle.js +1 -0
  214. package/dist/290.1c356f5f80800847d7df.bundle.js +1 -0
  215. package/dist/291.8eb43d6ca25d395c4ca3.bundle.js +1 -0
  216. package/dist/292.3f66f761892382ed32a8.bundle.js +1 -0
  217. package/dist/293.b0745f57f56f2a3771df.bundle.js +1 -0
  218. package/dist/294.97040396daf50907610d.bundle.js +1 -0
  219. package/dist/295.8e9ad289d4a656c760a7.bundle.js +1 -0
  220. package/dist/296.6c781ef00e1d43a39ad6.bundle.js +1 -0
  221. package/dist/297.c547d5aa05be41996ee7.bundle.js +1 -0
  222. package/dist/298.c5d0dd410115bf331476.bundle.js +1 -0
  223. package/dist/299.832a9c2e5d049d536f3e.bundle.js +1 -0
  224. package/dist/3.6b64ea41af521b5c7e31.bundle.js +1 -0
  225. package/dist/30.0f106315dd047b3f8518.bundle.js +1 -0
  226. package/dist/300.5f6df11ea1edea5d7223.bundle.js +1 -0
  227. package/dist/301.0ea086ec9b107fcf3bb6.bundle.js +1 -0
  228. package/dist/302.9cd6b79305502cdf37d0.bundle.js +1 -0
  229. package/dist/303.a02b7bedd10b7ce96b76.bundle.js +1 -0
  230. package/dist/304.f7377e8ff70ba7af8d4a.bundle.js +1 -0
  231. package/dist/305.4367c7df350b4fd71872.bundle.js +1 -0
  232. package/dist/306.5c68e2560e7c6957f391.bundle.js +1 -0
  233. package/dist/307.9ae4911137eabfd8b51d.bundle.js +1 -0
  234. package/dist/308.137efa51aa067e41beac.bundle.js +1 -0
  235. package/dist/309.17482d18e12d77214c24.bundle.js +1 -0
  236. package/dist/31.947addfb9642c77b4b56.bundle.js +1 -0
  237. package/dist/310.d923fadf60be58c1f7d9.bundle.js +1 -0
  238. package/dist/311.63483516e0327b7bf07b.bundle.js +1 -0
  239. package/dist/312.f9ba2ed7ff6456516845.bundle.js +1 -0
  240. package/dist/313.58a65179dc664a5e5f39.bundle.js +1 -0
  241. package/dist/314.1cc1b02c686d29637e13.bundle.js +1 -0
  242. package/dist/315.1203c22bfe37f9492358.bundle.js +1 -0
  243. package/dist/316.ad7fe6804111b6b25363.bundle.js +1 -0
  244. package/dist/317.3614baba5b487c15cc16.bundle.js +1 -0
  245. package/dist/318.a39cb6a4cb9b4dfb3500.bundle.js +1 -0
  246. package/dist/319.05a526a8a5cf3296cfb3.bundle.js +1 -0
  247. package/dist/32.fa306f50b17b38677c26.bundle.js +1 -0
  248. package/dist/325.2bef186523f65f95fab3.bundle.js +1 -0
  249. package/dist/326.e7d68a3e7f7a869550da.bundle.js +1 -0
  250. package/dist/327.f10b9b51de9d7fd26f76.bundle.js +1 -0
  251. package/dist/328.0bb022ca5fca53ab552b.bundle.js +1 -0
  252. package/dist/329.c59edaa2f4c498000597.bundle.js +1 -0
  253. package/dist/33.7b6e1c3ea2f2291a5e28.bundle.js +1 -0
  254. package/dist/330.db579474c933b881a706.bundle.js +1 -0
  255. package/dist/331.665dfa6a612cb3c2ceed.bundle.js +1 -0
  256. package/dist/332.e35eb4c8b8057acdc844.bundle.js +1 -0
  257. package/dist/333.b353275ca03eebaf7584.bundle.js +1 -0
  258. package/dist/334.8904032906beae82861d.bundle.js +1 -0
  259. package/dist/335.d551d6941e662e5f80eb.bundle.js +1 -0
  260. package/dist/336.49c139508591ecabd373.bundle.js +1 -0
  261. package/dist/337.6c0d4fbf048e7f2990c6.bundle.js +1 -0
  262. package/dist/338.ed8564d24acd94ce15f8.bundle.js +1 -0
  263. package/dist/339.1270ff49d6a59939bd60.bundle.js +1 -0
  264. package/dist/34.a095c2e3d65337dcbd57.bundle.js +1 -0
  265. package/dist/340.b9befd15248a01178bd8.bundle.js +1 -0
  266. package/dist/341.72a8ad20015a20d0a70a.bundle.js +1 -0
  267. package/dist/342.7866c5999a65fa6eed75.bundle.js +1 -0
  268. package/dist/343.0a174e2ccd464e4e6fa0.bundle.js +1 -0
  269. package/dist/344.1b4965198d7d2ecd90d2.bundle.js +1 -0
  270. package/dist/345.01449575de02b82dcb14.bundle.js +1 -0
  271. package/dist/346.d26137421796596cd084.bundle.js +1 -0
  272. package/dist/347.ab7779485a408efa2d32.bundle.js +1 -0
  273. package/dist/348.cdcee5a502d667348dcf.bundle.js +1 -0
  274. package/dist/349.f48037b5acfc4102c14a.bundle.js +1 -0
  275. package/dist/35.9e0ad6ad619ab7d2f2c0.bundle.js +1 -0
  276. package/dist/350.9b3af7fb49f3fcd259bb.bundle.js +1 -0
  277. package/dist/351.193814a9c59acc65742e.bundle.js +1 -0
  278. package/dist/352.3ada36df7175ad27cd4f.bundle.js +1 -0
  279. package/dist/353.77c91b1cce2c4ac26c6f.bundle.js +1 -0
  280. package/dist/354.129888c3a658fae41ca4.bundle.js +1 -0
  281. package/dist/355.4f5c9d8029924da508a7.bundle.js +1 -0
  282. package/dist/356.9bf047ed819e89b76f27.bundle.js +1 -0
  283. package/dist/357.fc2fe6d448d3c673ea42.bundle.js +1 -0
  284. package/dist/358.a9fdb993ab1095746a35.bundle.js +1 -0
  285. package/dist/359.ec3729ce152e5c5f17a5.bundle.js +1 -0
  286. package/dist/36.a25e5036aa77c41b5b05.bundle.js +1 -0
  287. package/dist/360.464f445a84cc8e6e115a.bundle.js +1 -0
  288. package/dist/361.59723876cf8d753ff224.bundle.js +1 -0
  289. package/dist/362.fc3f09ee576f77709900.bundle.js +1 -0
  290. package/dist/363.0996ca9a19502c15348a.bundle.js +1 -0
  291. package/dist/364.5702695531b9e4f0f4c6.bundle.js +1 -0
  292. package/dist/365.f03e2a5b6e97808fcbd6.bundle.js +1 -0
  293. package/dist/366.94db4e3f22e55e934a23.bundle.js +1 -0
  294. package/dist/367.350c3953cecf39345978.bundle.js +1 -0
  295. package/dist/368.392f5ff96584ccd15b65.bundle.js +1 -0
  296. package/dist/369.d605d7019cfe59dab0c2.bundle.js +1 -0
  297. package/dist/37.4122d55e13928443c108.bundle.js +1 -0
  298. package/dist/370.4b64bec23152c1df7fa5.bundle.js +1 -0
  299. package/dist/371.6b8b5156512f3c37c5c5.bundle.js +1 -0
  300. package/dist/372.d6d38b170d0ef4842b91.bundle.js +1 -0
  301. package/dist/373.6024c4b09bbfced80eaf.bundle.js +1 -0
  302. package/dist/374.d8a32964a80664b013ba.bundle.js +1 -0
  303. package/dist/375.cb96752f695bf3e55d75.bundle.js +1 -0
  304. package/dist/376.84a1e1f78636c3662ed6.bundle.js +1 -0
  305. package/dist/377.20dd9b268804ee4999dc.bundle.js +1 -0
  306. package/dist/378.659e27eb1561b74bdb2f.bundle.js +1 -0
  307. package/dist/379.82fdf8791cf2d6b66493.bundle.js +1 -0
  308. package/dist/38.33980c3c38ba3273ec53.bundle.js +1 -0
  309. package/dist/380.fc3b8f064d9112919023.bundle.js +1 -0
  310. package/dist/381.aa0c43792f9f9c25ba3e.bundle.js +1 -0
  311. package/dist/382.dcb78256496691c51858.bundle.js +1 -0
  312. package/dist/383.807da175bc5fbaddceea.bundle.js +1 -0
  313. package/dist/384.15fe51bfdafa3275fae0.bundle.js +1 -0
  314. package/dist/385.efd5d4755bb37e87301c.bundle.js +1 -0
  315. package/dist/386.981ee29a7e01f6792c9f.bundle.js +1 -0
  316. package/dist/387.fbb82546be97105584b0.bundle.js +1 -0
  317. package/dist/388.6978f50657c5f739c0cd.bundle.js +1 -0
  318. package/dist/389.9ab22516b70e2e0d52bd.bundle.js +1 -0
  319. package/dist/39.d204fb46b2601e18d4bc.bundle.js +1 -0
  320. package/dist/390.f7b0e4389a395e8ea859.bundle.js +1 -0
  321. package/dist/391.cfcfdad46bb2a3f8ded6.bundle.js +1 -0
  322. package/dist/392.8b856f8a43fe4f1d909c.bundle.js +1 -0
  323. package/dist/393.487c3f5c214a2cf4e1ad.bundle.js +1 -0
  324. package/dist/394.7e79b40ba2786a67b969.bundle.js +1 -0
  325. package/dist/395.911d3be60646b12434d9.bundle.js +1 -0
  326. package/dist/396.c55f5c2b2cb1a458a055.bundle.js +1 -0
  327. package/dist/397.fd3649a8461ec6f0a040.bundle.js +1 -0
  328. package/dist/398.96b206fe5ae74a567622.bundle.js +1 -0
  329. package/dist/399.ced18ac995f2cdf61a82.bundle.js +1 -0
  330. package/dist/4.4522da4bda87e7406c48.bundle.js +1 -0
  331. package/dist/40.e924b5a4d1f98735f737.bundle.js +1 -0
  332. package/dist/400.b6eb1e312fb061233fa7.bundle.js +1 -0
  333. package/dist/401.8b988401b378e7512f3e.bundle.js +1 -0
  334. package/dist/402.eeee5f927567aeadfde0.bundle.js +1 -0
  335. package/dist/41.047aff6f4976cae08d73.bundle.js +1 -0
  336. package/dist/42.76f952befc4cdda8bdcc.bundle.js +1 -0
  337. package/dist/43.1127d83cfb01b57204aa.bundle.js +1 -0
  338. package/dist/44.11672d40b459934e65dd.bundle.js +1 -0
  339. package/dist/45.ecd62b78f64553b92d74.bundle.js +1 -0
  340. package/dist/46.3c5a5a57f4081b180a4e.bundle.js +1 -0
  341. package/dist/47.f23b6b26dc7e1390e4f6.bundle.js +1 -0
  342. package/dist/48.5c052ba7293f933911a0.bundle.js +1 -0
  343. package/dist/49.8c89fd27b76e5ca5e5c5.bundle.js +1 -0
  344. package/dist/5.26539eac768420c95c9b.bundle.js +1 -0
  345. package/dist/50.f7977fb3e853c430f1f5.bundle.js +1 -0
  346. package/dist/51.98a27d10aa5e795d2584.bundle.js +1 -0
  347. package/dist/52.0b153ee8adaefe23a440.bundle.js +2 -0
  348. package/dist/53.9ba2abbe318fbb3da252.bundle.js +1 -0
  349. package/dist/54.135e95645927fd00765d.bundle.js +1 -0
  350. package/dist/55.fc0eecf213976ba6505b.bundle.js +1 -0
  351. package/dist/56.ae5879d100bc0d7eb962.bundle.js +1 -0
  352. package/dist/57.3c693f01ad6c3f51e51a.bundle.js +1 -0
  353. package/dist/58.30fe5adfaeebc10e831a.bundle.js +1 -0
  354. package/dist/59.bd689de4819c01c8d318.bundle.js +1 -0
  355. package/dist/6.62d83178ef0bfd4ae056.bundle.js +1 -0
  356. package/dist/60.2c305938fa7e43ba8b6d.bundle.js +1 -0
  357. package/dist/61.d5655af9054902db9c16.bundle.js +1 -0
  358. package/dist/62.325da6f8fa00248d2494.bundle.js +1 -0
  359. package/dist/63.6bfc26bd0cd4d48a9d40.bundle.js +2 -0
  360. package/dist/64.38b13b1094aaccc8e846.bundle.js +1 -0
  361. package/dist/65.89201eac6bc5eeb0c1b2.bundle.js +1 -0
  362. package/dist/66.085d59138248b0f84c23.bundle.js +1 -0
  363. package/dist/67.2ce4ea07ade8d7e62ff1.bundle.js +1 -0
  364. package/dist/68.6dc029d637516b278ec2.bundle.js +1 -0
  365. package/dist/69.79880942c595d8f12a44.bundle.js +1 -0
  366. package/dist/7.6a3a0bc71e4b49f8dd2d.bundle.js +1 -0
  367. package/dist/70.db7c2c3134552bd7952c.bundle.js +1 -0
  368. package/dist/71.857b5906b2133bf9d3ce.bundle.js +1 -0
  369. package/dist/72.5db9419c9c7915e1e0ff.bundle.js +1 -0
  370. package/dist/73.80b3b16c3694a7f89d53.bundle.js +1 -0
  371. package/dist/74.8e244767193f8b110b63.bundle.js +1 -0
  372. package/dist/75.3d8dde7b28d5da982eb1.bundle.js +1 -0
  373. package/dist/76.5e0272a9e5aeb0fb08a2.bundle.js +1 -0
  374. package/dist/77.2fe46cabd947a63967d5.bundle.js +1 -0
  375. package/dist/78.cfcbac6591db0ac18c28.bundle.js +2 -0
  376. package/dist/79.29c7af8b9a2f9fa6ffd2.bundle.js +1 -0
  377. package/dist/8.912dc7574b6bfec62783.bundle.js +1 -0
  378. package/dist/80.6993ffcaa6b103ce34b4.bundle.js +1 -0
  379. package/dist/81.5d83362d60bbad3f141e.bundle.js +1 -0
  380. package/dist/82.d158a37d0a8868907f4e.bundle.js +1 -0
  381. package/dist/83.cccb038a87841b6f45b7.bundle.js +1 -0
  382. package/dist/84.405405b2f846e9b082be.bundle.js +1 -0
  383. package/dist/85.2d0995bccea2b9c7e230.bundle.js +1 -0
  384. package/dist/86.1795e5d0bc99d7bf3264.bundle.js +1 -0
  385. package/dist/87.9f1d666ba727309f5d64.bundle.js +1 -0
  386. package/dist/88.73734c76b17210d6c5ad.bundle.js +1 -0
  387. package/dist/89.dd5d82357b5bea8db55b.bundle.js +1 -0
  388. package/dist/9.12872e26d5df3315c192.bundle.js +1 -0
  389. package/dist/90.84c8b52cf4550943cfe3.bundle.js +1 -0
  390. package/dist/91.ded911a93a71e7823332.bundle.js +1 -0
  391. package/dist/92.5b243e905fbf44c2124f.bundle.js +1 -0
  392. package/dist/93.972d39d248511efd34e5.bundle.js +1 -0
  393. package/dist/94.ec6e3c7324507592e3ac.bundle.js +1 -0
  394. package/dist/95.ae6168ff2b18dc0b113a.bundle.js +1 -0
  395. package/dist/96.298c74bfda471c2243f1.bundle.js +1 -0
  396. package/dist/97.5bd39efdde003c6a8f19.bundle.js +1 -0
  397. package/dist/98.948a1d6748f50c370c60.bundle.js +1 -0
  398. package/dist/99.48c7f99f8612fe993264.bundle.js +1 -0
  399. package/dist/bundle.831c9632fbb43302febe.bundle.js +95 -0
  400. package/dist/css/bootstrap-graphdb-theme-dark-auto.css +0 -10
  401. package/dist/css/cookie-policy.css +50 -0
  402. package/dist/css/rdf-resource-search.css +11 -4
  403. package/dist/css/repositories.css +17 -3
  404. package/dist/css/ttyg/agent-instructions-explain-modal.css +12 -0
  405. package/dist/css/ttyg/agent-settings-modal.css +9 -0
  406. package/dist/css/ttyg/chat-panel.css +2 -2
  407. package/dist/css/ttyg/no-agents-view.css +4 -0
  408. package/dist/css/ttyg/ttyg.css +21 -5
  409. package/dist/css/workbench-custom.css +4 -0
  410. package/dist/i18n/locale-en.json +88 -24
  411. package/dist/i18n/locale-fr.json +139 -75
  412. package/dist/index.html +8 -7
  413. package/dist/js/angular/core/directives/autocomplete/templates/autocomplete.html +1 -1
  414. package/dist/js/angular/core/directives/operations-statuses-monitor/templates/operations-statuses-monitor.html +1 -1
  415. package/dist/js/angular/core/directives/rdfresourcesearch/templates/rdfResourceSearchTemplate.html +7 -3
  416. package/dist/js/angular/core/directives/yasgui-component/templates/yasgui-component.html +1 -1
  417. package/dist/js/angular/core/templates/cookie-policy/cookie-consent.html +8 -0
  418. package/dist/js/angular/core/templates/cookie-policy/cookie-policy.html +50 -0
  419. package/dist/js/angular/repositories/templates/manage-remote-location-dialog.template.html +36 -9
  420. package/dist/js/angular/security/templates/user.html +10 -3
  421. package/dist/js/angular/security/templates/users.html +1 -5
  422. package/dist/js/angular/templates/pageInfoTooltip.html +6 -0
  423. package/dist/js/angular/templates/titlePopoverTemplate.html +8 -4
  424. package/dist/js/angular/ttyg/templates/agent-list.html +7 -10
  425. package/dist/js/angular/ttyg/templates/agent-select-menu.html +14 -15
  426. package/dist/js/angular/ttyg/templates/chat-item-detail.html +7 -6
  427. package/dist/js/angular/ttyg/templates/chat-list.html +3 -3
  428. package/dist/js/angular/ttyg/templates/chat-panel.html +12 -11
  429. package/dist/js/angular/ttyg/templates/chatInfo.html +4 -4
  430. package/dist/js/angular/ttyg/templates/modal/agent-instructions-explain-modal.html +26 -0
  431. package/dist/js/angular/ttyg/templates/modal/agent-settings-modal.html +16 -11
  432. package/dist/js/angular/ttyg/templates/no-agents-view.html +8 -15
  433. package/dist/js/angular/ttyg/templates/ttyg.html +8 -10
  434. package/dist/license-checker.json +2 -2
  435. package/dist/main.21a95f6e91a8afd63566.css +1 -0
  436. package/dist/main.3e8457e57160ea777ae7.bundle.js +1 -0
  437. package/dist/pages/aclmanagement.html +3 -7
  438. package/dist/pages/autocomplete.html +2 -6
  439. package/dist/pages/choose-repository-type.html +1 -1
  440. package/dist/pages/cluster-management/clusterInfo.html +4 -9
  441. package/dist/pages/connectorsInfo.html +1 -5
  442. package/dist/pages/create-index.html +1 -1
  443. package/dist/pages/dependencies.html +2 -6
  444. package/dist/pages/domainRangeInfo.html +2 -2
  445. package/dist/pages/edit.html +1 -1
  446. package/dist/pages/explore.html +1 -1
  447. package/dist/pages/export.html +3 -7
  448. package/dist/pages/find.html +1 -1
  449. package/dist/pages/graph-config/saveGraphConfig.html +8 -8
  450. package/dist/pages/graphs-visualizations.html +8 -12
  451. package/dist/pages/guides.html +2 -6
  452. package/dist/pages/import.html +3 -7
  453. package/dist/pages/info.html +1 -5
  454. package/dist/pages/jdbc-create.html +1 -1
  455. package/dist/pages/jdbc.html +1 -5
  456. package/dist/pages/licenseInfo.html +1 -5
  457. package/dist/pages/monitor/backup-and-restore.html +2 -8
  458. package/dist/pages/monitor/queries.html +2 -6
  459. package/dist/pages/monitor/resources.html +2 -6
  460. package/dist/pages/namespaces.html +3 -7
  461. package/dist/pages/plugins.html +2 -6
  462. package/dist/pages/rdfClassHierarchyInfo.html +8 -12
  463. package/dist/pages/rdfrank.html +3 -7
  464. package/dist/pages/repositories.html +165 -144
  465. package/dist/pages/repository.html +1 -1
  466. package/dist/pages/similarity-indexes.html +2 -6
  467. package/dist/pages/sparql-editor.html +2 -6
  468. package/dist/pages/sparql-template-create.html +1 -1
  469. package/dist/pages/sparql-templates.html +1 -5
  470. package/dist/pages/ux-test1.html +2 -2
  471. package/dist/pages/webapi.html +3 -7
  472. package/dist/plugins.js +87 -45
  473. package/dist/polyfills-dom.18dc4be981b2d52813ed.bundle.js +19 -0
  474. package/dist/res/swagger5/index.html +12 -12
  475. package/dist/vendor.a5fbdb053b3b7eb33159.bundle.js +27 -0
  476. package/dist/vendors~polyfills-core-js.dea62a00c3f6122c08b5.bundle.js +1 -0
  477. package/package.json +1 -1
  478. package/dist/0.c12880b944139d726364.bundle.js +0 -25
  479. package/dist/1.b5ab0c81ff05d97d9212.bundle.js +0 -1
  480. package/dist/10.1179c6bc53d65a3018b4.bundle.js +0 -1
  481. package/dist/100.6ec3d989e75140cf46ca.bundle.js +0 -1
  482. package/dist/101.f066daa3cfc930d79302.bundle.js +0 -1
  483. package/dist/102.791468df396a09a31d71.bundle.js +0 -1
  484. package/dist/103.37921e51177a654d75ac.bundle.js +0 -1
  485. package/dist/104.e3e2867c1b690c43f489.bundle.js +0 -1
  486. package/dist/105.f8bc439e384e9f5110fe.bundle.js +0 -1
  487. package/dist/106.8c2ba58b4f242956a82c.bundle.js +0 -1
  488. package/dist/107.4315a0c3620f546dd600.bundle.js +0 -1
  489. package/dist/108.02aeec3c92b68ce6c35e.bundle.js +0 -1
  490. package/dist/109.e0e1046fdb1e8ecd59f8.bundle.js +0 -1
  491. package/dist/11.731ed4f7b67ece4fb109.bundle.js +0 -1
  492. package/dist/110.d51e761889fe08e2c49d.bundle.js +0 -1
  493. package/dist/111.da72110e4ddfe486912a.bundle.js +0 -1
  494. package/dist/112.77a36111c9f4da94f2d0.bundle.js +0 -1
  495. package/dist/113.d5bd3f0ad7bd8c52abe1.bundle.js +0 -1
  496. package/dist/114.2f6bdd6b8c8dd9f01217.bundle.js +0 -1
  497. package/dist/115.b9393bf71391a3f494da.bundle.js +0 -1
  498. package/dist/116.54e31b6224e208e4c423.bundle.js +0 -1
  499. package/dist/117.38e2c564034dc25c4815.bundle.js +0 -1
  500. package/dist/118.09e66dd3b083f2d36696.bundle.js +0 -1
  501. package/dist/119.131ce05ec4fa52bfaf2a.bundle.js +0 -1
  502. package/dist/12.006922371a75c0e8f3aa.bundle.js +0 -1
  503. package/dist/120.2fe6c930b40edfc70a3f.bundle.js +0 -1
  504. package/dist/121.4f96e05a93da0d050583.bundle.js +0 -1
  505. package/dist/122.14c6539a5cf5826291f1.bundle.js +0 -1
  506. package/dist/123.75914b050247dec2f47a.bundle.js +0 -1
  507. package/dist/124.db458d12650e11836826.bundle.js +0 -1
  508. package/dist/125.653e9a40b0339268bfa4.bundle.js +0 -1
  509. package/dist/126.bc9af544cdeef53a98a4.bundle.js +0 -1
  510. package/dist/127.20092c02c9853f630785.bundle.js +0 -1
  511. package/dist/128.d7b62fe06971afd880da.bundle.js +0 -1
  512. package/dist/129.676c2740eba42a5189ae.bundle.js +0 -1
  513. package/dist/13.76fc57fe53ba53fb2c7f.bundle.js +0 -1
  514. package/dist/130.ef294422e321cdff61f3.bundle.js +0 -1
  515. package/dist/131.aaa123afc12ca4bdf46e.bundle.js +0 -1
  516. package/dist/132.88ff26b2f0d1d51bad52.bundle.js +0 -1
  517. package/dist/133.4847df13c0867a84a713.bundle.js +0 -1
  518. package/dist/134.20c075955d10d6925a62.bundle.js +0 -1
  519. package/dist/135.5e771c47f8d09d2854fc.bundle.js +0 -1
  520. package/dist/136.92a341f0772ee65da7d6.bundle.js +0 -1
  521. package/dist/137.7330e14ed6a57aad5f94.bundle.js +0 -1
  522. package/dist/138.43357891c8faa58707b4.bundle.js +0 -1
  523. package/dist/139.2277d7941d2756767afe.bundle.js +0 -1
  524. package/dist/14.a8fc6ef8dc6fa2f2816a.bundle.js +0 -73
  525. package/dist/140.2bf9ff7d38dd8ff616af.bundle.js +0 -1
  526. package/dist/141.f710186615c337b2fae6.bundle.js +0 -1
  527. package/dist/142.fd312126fe70574b15e3.bundle.js +0 -1
  528. package/dist/143.b31bed2d13b249d84ad0.bundle.js +0 -1
  529. package/dist/144.9f1e5dd5f0d1e6f382fd.bundle.js +0 -1
  530. package/dist/145.33d55443d1dd19a0bacb.bundle.js +0 -1
  531. package/dist/146.7765ae4e0ecce35603f4.bundle.js +0 -1
  532. package/dist/147.5d44d89036a267b899c1.bundle.js +0 -1
  533. package/dist/148.f25d2d396c86c31714f6.bundle.js +0 -1
  534. package/dist/149.f7dbe3a9918a4684fa64.bundle.js +0 -1
  535. package/dist/15.5e160943e2ce5fc32b3f.bundle.js +0 -1
  536. package/dist/150.c69c89d996b1a696f1b1.bundle.js +0 -1
  537. package/dist/151.23df73ebedae9acb9f8a.bundle.js +0 -1
  538. package/dist/152.050964735a12306f4d8d.bundle.js +0 -1
  539. package/dist/153.450de3a974ca576d4f76.bundle.js +0 -1
  540. package/dist/154.e4cfb640ab1ca3cd4286.bundle.js +0 -1
  541. package/dist/155.e07768c450476750f15e.bundle.js +0 -1
  542. package/dist/156.0eea43daab882951002d.bundle.js +0 -1
  543. package/dist/157.8647e0cfa6d9b22fba1c.bundle.js +0 -1
  544. package/dist/158.e2eb018ac1b578ce4b4e.bundle.js +0 -1
  545. package/dist/159.a377c78f9b79f34833cd.bundle.js +0 -1
  546. package/dist/16.72c5de6792b2fb3d40cb.bundle.js +0 -1
  547. package/dist/160.4f9ada4c29a100824fb1.bundle.js +0 -1
  548. package/dist/161.d048c37d7e9b3ee1528b.bundle.js +0 -1
  549. package/dist/162.f08b5bef113ac7ac925d.bundle.js +0 -1
  550. package/dist/163.efa08aaff2e3cdda3711.bundle.js +0 -1
  551. package/dist/164.1654634aa86b14797f13.bundle.js +0 -1
  552. package/dist/165.3e5cfde1214c42087e41.bundle.js +0 -1
  553. package/dist/166.bb6f7d1b5cc9bc3ac381.bundle.js +0 -1
  554. package/dist/167.7c7fd26d09c91dbd9c55.bundle.js +0 -1
  555. package/dist/168.6a3e67fea55b932f3090.bundle.js +0 -1
  556. package/dist/169.a9310a747d8bf7366f97.bundle.js +0 -1
  557. package/dist/17.ce810873458ff1ffca06.bundle.js +0 -2
  558. package/dist/170.cf2599059e3e923207a4.bundle.js +0 -1
  559. package/dist/171.a1608fd5e4c899b96352.bundle.js +0 -1
  560. package/dist/172.c42d95c2edad241cf688.bundle.js +0 -1
  561. package/dist/173.18301f20eb503ef8a27a.bundle.js +0 -1
  562. package/dist/174.4a15711f0dd5f8ce0919.bundle.js +0 -1
  563. package/dist/175.a73ae90b613da5e597c5.bundle.js +0 -1
  564. package/dist/176.4f84bdfcc0197d750474.bundle.js +0 -1
  565. package/dist/177.080a382546a2c07c54c8.bundle.js +0 -1
  566. package/dist/178.456581d02bb705a29124.bundle.js +0 -1
  567. package/dist/179.9cd9059a32896097ca5f.bundle.js +0 -1
  568. package/dist/18.05b6388e2622fda2a4e1.bundle.js +0 -1
  569. package/dist/180.5e55e866b1afe07594b5.bundle.js +0 -1
  570. package/dist/181.95f7ef7fc792b50c2cc6.bundle.js +0 -1
  571. package/dist/182.465ef1426af8ff195fac.bundle.js +0 -1
  572. package/dist/183.569215a21a4c1546760c.bundle.js +0 -1
  573. package/dist/184.badf1727b917eb1cc3a3.bundle.js +0 -1
  574. package/dist/185.dd5dc8cbc36ea29c75d1.bundle.js +0 -1
  575. package/dist/186.d27f62884853006d8614.bundle.js +0 -1
  576. package/dist/187.cd3cd4940779cc26c789.bundle.js +0 -1
  577. package/dist/188.06eac6a609764fbac382.bundle.js +0 -1
  578. package/dist/189.ba20e7d03ba9d5662145.bundle.js +0 -1
  579. package/dist/19.a017cb971598b8f97d9d.bundle.js +0 -1
  580. package/dist/190.cb6275ca394d76ef427c.bundle.js +0 -1
  581. package/dist/191.2f9468f433dd256b830d.bundle.js +0 -1
  582. package/dist/192.bbc4db61fa1c83810958.bundle.js +0 -1
  583. package/dist/193.13de0802dc61815adb36.bundle.js +0 -1
  584. package/dist/194.cad267ee805777bb53f0.bundle.js +0 -1
  585. package/dist/195.a88587cea9417bf47167.bundle.js +0 -1
  586. package/dist/196.aa2f65a02303df09f869.bundle.js +0 -1
  587. package/dist/197.d9ad911f2f09ee7f4c44.bundle.js +0 -1
  588. package/dist/198.8cf96a77ff98047b56d4.bundle.js +0 -1
  589. package/dist/199.46d552230fd3b9a277c8.bundle.js +0 -1
  590. package/dist/2.b24d9c8f4b672452f0cf.bundle.js +0 -2
  591. package/dist/20.8ab4bf04280797eee840.bundle.js +0 -1
  592. package/dist/200.e8bd925fee20f081e0d8.bundle.js +0 -1
  593. package/dist/201.38a5e9c920da6c674bb2.bundle.js +0 -1
  594. package/dist/202.60995e2807007fdefbbc.bundle.js +0 -1
  595. package/dist/203.09062b200e16b561e992.bundle.js +0 -1
  596. package/dist/204.cea7c3f2fe05cd173b26.bundle.js +0 -1
  597. package/dist/205.69be86aebcd45d957b1e.bundle.js +0 -1
  598. package/dist/206.a4ee3c3fffdf85a82752.bundle.js +0 -1
  599. package/dist/207.8ab144e114ccc93a2c94.bundle.js +0 -1
  600. package/dist/208.27d350ea98a8bc335a7d.bundle.js +0 -1
  601. package/dist/209.2c79024b41dfac14c3f9.bundle.js +0 -1
  602. package/dist/21.a563810cf92e995c13c3.bundle.js +0 -7
  603. package/dist/210.0f6c9ebcadbffaa8531e.bundle.js +0 -1
  604. package/dist/211.aca395e80f5e6a48e0de.bundle.js +0 -1
  605. package/dist/212.36953c7f97cd6507d2d6.bundle.js +0 -1
  606. package/dist/213.7804fa487e6278a29e53.bundle.js +0 -1
  607. package/dist/214.c886d5ef7eec1e676930.bundle.js +0 -1
  608. package/dist/215.658744c3b46d8dc85366.bundle.js +0 -1
  609. package/dist/216.f02f8bcf96f472f5b84d.bundle.js +0 -1
  610. package/dist/217.4f7c1f106d34fe29303c.bundle.js +0 -1
  611. package/dist/218.cd8f1c38958f6da4610e.bundle.js +0 -1
  612. package/dist/219.195dfdb05aa457e0ffad.bundle.js +0 -1
  613. package/dist/22.f7fed8a367c43a44d346.bundle.js +0 -3
  614. package/dist/220.359062c67e1ac99041a0.bundle.js +0 -1
  615. package/dist/221.489ed1f3b133ae83f38e.bundle.js +0 -1
  616. package/dist/222.ac5be57c1ecf47951587.bundle.js +0 -1
  617. package/dist/223.12ba4921db0a80a7f6ec.bundle.js +0 -1
  618. package/dist/224.6601a180974115a39936.bundle.js +0 -1
  619. package/dist/225.573bc79a0dd932a2676f.bundle.js +0 -1
  620. package/dist/226.c4bc92b0728fa5defa97.bundle.js +0 -1
  621. package/dist/227.653e1bf41320c331f905.bundle.js +0 -1
  622. package/dist/228.c4b21051d5d8f71835dd.bundle.js +0 -1
  623. package/dist/229.855b8ace3ff3b2e00c6c.bundle.js +0 -1
  624. package/dist/23.f3a3443a579f798ac397.bundle.js +0 -2
  625. package/dist/230.0488e3db5b97f2f0718e.bundle.js +0 -1
  626. package/dist/231.ab1564ef24bd5560bff9.bundle.js +0 -1
  627. package/dist/232.563f877ad8cb57bd7ae9.bundle.js +0 -1
  628. package/dist/233.a5556c9c0ab666b2ba78.bundle.js +0 -1
  629. package/dist/234.367169c455d8820a807c.bundle.js +0 -1
  630. package/dist/235.2f2d4c37affc808fa971.bundle.js +0 -1
  631. package/dist/236.35e1180ad2c8ce70ad4b.bundle.js +0 -1
  632. package/dist/237.83c53e7e4e46c2d64368.bundle.js +0 -1
  633. package/dist/238.eb9903b3fdd36c43571f.bundle.js +0 -1
  634. package/dist/239.b02f686988986a34e9b7.bundle.js +0 -1
  635. package/dist/24.89d0c908a57f6cc21ce1.bundle.js +0 -2
  636. package/dist/240.d65f43e1dbace7d8d7d3.bundle.js +0 -1
  637. package/dist/241.28390930afd91ed8d816.bundle.js +0 -1
  638. package/dist/242.9509806f8a01d26bdf83.bundle.js +0 -1
  639. package/dist/243.f903930bec14e06ab93c.bundle.js +0 -1
  640. package/dist/244.6220325e47e556f08596.bundle.js +0 -1
  641. package/dist/245.51569c5abc67f65be79e.bundle.js +0 -1
  642. package/dist/246.816cec67bc81bab4371f.bundle.js +0 -1
  643. package/dist/247.70459005b0d253fcecb7.bundle.js +0 -1
  644. package/dist/248.511260c598cc125e71e4.bundle.js +0 -1
  645. package/dist/249.9a6257284542082278c2.bundle.js +0 -1
  646. package/dist/25.1679fde85cc933df66f0.bundle.js +0 -2
  647. package/dist/250.4ca0ea98b21c22156982.bundle.js +0 -1
  648. package/dist/251.010f27656deea8b99ebc.bundle.js +0 -1
  649. package/dist/252.14189833165f412a68cd.bundle.js +0 -1
  650. package/dist/253.b13d8c3004ab84305e69.bundle.js +0 -1
  651. package/dist/254.6875897bff77b6222c2a.bundle.js +0 -1
  652. package/dist/255.44cb00a2b9e6a891daa1.bundle.js +0 -1
  653. package/dist/256.b1032d9d6cc12cc90281.bundle.js +0 -1
  654. package/dist/257.cd5f9fcbaa21f8e9f2db.bundle.js +0 -1
  655. package/dist/258.109ff997ac0412172236.bundle.js +0 -1
  656. package/dist/259.e063188721ef545ef935.bundle.js +0 -1
  657. package/dist/26.fe862a850ff9f06e4945.bundle.js +0 -3
  658. package/dist/260.8b4d34bd5f8771440f83.bundle.js +0 -1
  659. package/dist/261.1cef385e5bc9a0120cab.bundle.js +0 -1
  660. package/dist/262.ac373be4e20b215d4005.bundle.js +0 -1
  661. package/dist/263.87b1d661b837f6acba82.bundle.js +0 -1
  662. package/dist/264.508024327c7e15863b03.bundle.js +0 -1
  663. package/dist/265.e47f5f16cca0f82cdec5.bundle.js +0 -1
  664. package/dist/266.7fe249a8dd58496edd5a.bundle.js +0 -1
  665. package/dist/267.813c52fac5e3a4c10bec.bundle.js +0 -1
  666. package/dist/268.1760717d55d1cce059d8.bundle.js +0 -1
  667. package/dist/269.6fac51bdfdcd247f48ad.bundle.js +0 -1
  668. package/dist/27.3b2aa542f87461dc430e.bundle.js +0 -2
  669. package/dist/270.9db5f5e3f78875e3220c.bundle.js +0 -1
  670. package/dist/271.9b9fede86283fadfb193.bundle.js +0 -1
  671. package/dist/272.adde63f600ed911c15a8.bundle.js +0 -1
  672. package/dist/273.1e58a14bc482f37dae02.bundle.js +0 -1
  673. package/dist/274.4c4b5c33f1e88d517c3d.bundle.js +0 -1
  674. package/dist/275.9dc2c9482c53353e2567.bundle.js +0 -1
  675. package/dist/276.9414df55f6f14dff2306.bundle.js +0 -1
  676. package/dist/277.a91dd1008205eb4f5162.bundle.js +0 -1
  677. package/dist/278.2e0c8e3aaa8bfbec0561.bundle.js +0 -1
  678. package/dist/279.cf588b3c41cebbbddbc8.bundle.js +0 -1
  679. package/dist/28.a4203eb16286d27639bd.bundle.js +0 -1
  680. package/dist/280.4e90409f55584b089387.bundle.js +0 -1
  681. package/dist/281.68715e3756b54db92deb.bundle.js +0 -1
  682. package/dist/282.a0559bbcbfe9c92ffd76.bundle.js +0 -1
  683. package/dist/283.172f7328e455cb38f8ad.bundle.js +0 -1
  684. package/dist/284.30dc35180864dfbc2927.bundle.js +0 -1
  685. package/dist/285.f0e41adb7ba7e938d5ec.bundle.js +0 -1
  686. package/dist/286.0eee3de95ff80d120e02.bundle.js +0 -1
  687. package/dist/287.5a566c1270bd784a7f51.bundle.js +0 -1
  688. package/dist/288.a32072eeac9eccbb5698.bundle.js +0 -1
  689. package/dist/289.fbfa6ce0a5f1d15259b4.bundle.js +0 -1
  690. package/dist/29.d7f53701e435afe11038.bundle.js +0 -1
  691. package/dist/290.d1f08b23cd58260b1226.bundle.js +0 -1
  692. package/dist/291.da9edfebb6940cbaee70.bundle.js +0 -1
  693. package/dist/292.9e4d468765ee6b3db189.bundle.js +0 -1
  694. package/dist/293.00eee1c8630942feed6e.bundle.js +0 -1
  695. package/dist/294.e6c10040aa02069c1e05.bundle.js +0 -1
  696. package/dist/295.95030365ac036cda2e5f.bundle.js +0 -1
  697. package/dist/296.a80e29fc4de1a421231b.bundle.js +0 -1
  698. package/dist/297.829ef1630b4e75540813.bundle.js +0 -1
  699. package/dist/298.6b1a667d8bcbe6d3821d.bundle.js +0 -1
  700. package/dist/299.fe9ca43f790c155799d6.bundle.js +0 -1
  701. package/dist/3.325ae6955d167cf629b6.bundle.js +0 -1
  702. package/dist/30.dfba97d073872a68a48b.bundle.js +0 -1
  703. package/dist/300.8f9582a9f4bfbf07c7ba.bundle.js +0 -1
  704. package/dist/301.387501285ac0b2f557ca.bundle.js +0 -1
  705. package/dist/302.cd7dfab197ea83fddc62.bundle.js +0 -1
  706. package/dist/303.5fbc4fc6b3b6700dd71c.bundle.js +0 -1
  707. package/dist/304.b6372799dca7f4e9f712.bundle.js +0 -1
  708. package/dist/305.7b55f0b9b7f098f296a4.bundle.js +0 -1
  709. package/dist/306.bb9a74f47fcfa466da91.bundle.js +0 -1
  710. package/dist/307.fce2ff46fc55d2fe75c7.bundle.js +0 -1
  711. package/dist/308.5acbd03acf472e20ae08.bundle.js +0 -1
  712. package/dist/309.5b1e827b31e736a31f04.bundle.js +0 -1
  713. package/dist/31.efc8d1b5a18dbec9a9aa.bundle.js +0 -1
  714. package/dist/310.484b2c9a5912e27c15b1.bundle.js +0 -1
  715. package/dist/311.edb2960e58f2ab6cf72f.bundle.js +0 -1
  716. package/dist/312.f9ae518b97765ab230a4.bundle.js +0 -1
  717. package/dist/313.f65b42bd83ed3ecd090e.bundle.js +0 -1
  718. package/dist/314.aa017fbf0412dc642dec.bundle.js +0 -1
  719. package/dist/315.d4c6d40909267d14a01b.bundle.js +0 -1
  720. package/dist/316.04cf972c06c0c069e03d.bundle.js +0 -1
  721. package/dist/32.39304475fbf4b36b2a43.bundle.js +0 -1
  722. package/dist/322.36a6899c0565b022e54d.bundle.js +0 -1
  723. package/dist/323.dcb289cffe4ff71d53a4.bundle.js +0 -1
  724. package/dist/324.180650d6f3bd6b4adb4d.bundle.js +0 -1
  725. package/dist/325.b4db54955a4ce097ad2f.bundle.js +0 -1
  726. package/dist/326.c5d3853822abe1e86a44.bundle.js +0 -1
  727. package/dist/327.32ff9cb46eabb5d4a953.bundle.js +0 -1
  728. package/dist/328.a976af34cedf2fa2f704.bundle.js +0 -1
  729. package/dist/329.12cfb97185cd3f19ec78.bundle.js +0 -1
  730. package/dist/33.750b03f61268eaf2623b.bundle.js +0 -1
  731. package/dist/330.bb63d5fc20b2bcd4d339.bundle.js +0 -1
  732. package/dist/331.dcf5bf6589ac6508f678.bundle.js +0 -1
  733. package/dist/332.9d03e71ea008a855fa21.bundle.js +0 -1
  734. package/dist/333.0b9d6cf9eaddcf7fced8.bundle.js +0 -1
  735. package/dist/334.594168bf09ec20c0a3ca.bundle.js +0 -1
  736. package/dist/335.8ba957523219aa412abc.bundle.js +0 -1
  737. package/dist/336.34e1704cf1ebe667954f.bundle.js +0 -1
  738. package/dist/337.8481172aedfa9b3e2ae5.bundle.js +0 -1
  739. package/dist/338.f28c4ee33fc99bbfb9d0.bundle.js +0 -1
  740. package/dist/339.c669b86c15f773126998.bundle.js +0 -1
  741. package/dist/34.cf1c5d51e0bfbf10fe2e.bundle.js +0 -1
  742. package/dist/340.72090fb9be58672bf42d.bundle.js +0 -1
  743. package/dist/341.97cd72809c4207c6d1da.bundle.js +0 -1
  744. package/dist/342.865fb5893eb67ed6ac7c.bundle.js +0 -1
  745. package/dist/343.1e0cb72cc52ef6f3a593.bundle.js +0 -1
  746. package/dist/344.37dde32d5cb2fdbf6630.bundle.js +0 -1
  747. package/dist/345.7b096bd8435e4ab16889.bundle.js +0 -1
  748. package/dist/346.a4cd577a9e8aa56875d2.bundle.js +0 -1
  749. package/dist/347.35843e38ac1e710251fb.bundle.js +0 -1
  750. package/dist/348.54a4ceaed66e168609a7.bundle.js +0 -1
  751. package/dist/349.2b5a807450bcf89aa7a3.bundle.js +0 -1
  752. package/dist/35.ec76ac07567c2d176a4b.bundle.js +0 -1
  753. package/dist/350.5bba8d09243b3ffc8d27.bundle.js +0 -1
  754. package/dist/351.00c6d019c3ee260bbbb7.bundle.js +0 -1
  755. package/dist/352.216f8da48bf6779cbe8a.bundle.js +0 -1
  756. package/dist/353.8c810994084e57e681af.bundle.js +0 -1
  757. package/dist/354.7e3a75ab06e7bbc6e391.bundle.js +0 -1
  758. package/dist/355.4bf835922000865b78ff.bundle.js +0 -1
  759. package/dist/356.2fb2e095f752291fc36a.bundle.js +0 -1
  760. package/dist/357.7a005297fb7a35544edd.bundle.js +0 -1
  761. package/dist/358.b81cae8ad3c6d372d78a.bundle.js +0 -1
  762. package/dist/359.da5bb8979c09500c9731.bundle.js +0 -1
  763. package/dist/36.5ce24e912050a85868aa.bundle.js +0 -1
  764. package/dist/360.b82aba282a9d8061d236.bundle.js +0 -1
  765. package/dist/361.bf3bd5dac44b4779b072.bundle.js +0 -1
  766. package/dist/362.18f0adca82e101c4e5b9.bundle.js +0 -1
  767. package/dist/363.242e5a4aba7c76394d71.bundle.js +0 -1
  768. package/dist/364.c8b7a1ca0adf6f6ab5d1.bundle.js +0 -1
  769. package/dist/365.da6f9e3b79056fbc9935.bundle.js +0 -1
  770. package/dist/366.933e620636c9518da77e.bundle.js +0 -1
  771. package/dist/367.333dbacb07d920cb4f35.bundle.js +0 -1
  772. package/dist/368.b996e000118fd2d48023.bundle.js +0 -1
  773. package/dist/369.e9f183ffff429673e575.bundle.js +0 -1
  774. package/dist/37.31c75f57d06df83316c6.bundle.js +0 -1
  775. package/dist/370.2df5d6d470f8c4cf16de.bundle.js +0 -1
  776. package/dist/371.6e98e61425dae465956a.bundle.js +0 -1
  777. package/dist/372.8dc712fa11b03b7cb4a0.bundle.js +0 -1
  778. package/dist/373.23df17a1f315ef2daedf.bundle.js +0 -1
  779. package/dist/374.4dd4eb5cc82b451d8945.bundle.js +0 -1
  780. package/dist/375.d5b1e69a6423a38c9caf.bundle.js +0 -1
  781. package/dist/376.be83e1d73d4b5595017c.bundle.js +0 -1
  782. package/dist/377.43c7d29f15618ab44a3d.bundle.js +0 -1
  783. package/dist/378.a5375562ce0b67f8382b.bundle.js +0 -1
  784. package/dist/379.42bcccb9366be5787688.bundle.js +0 -1
  785. package/dist/38.1dfb5763064c2adaebd6.bundle.js +0 -1
  786. package/dist/380.fbd0b1c517e7f117b69c.bundle.js +0 -1
  787. package/dist/381.f5f789cf35400f2c9639.bundle.js +0 -1
  788. package/dist/382.421cd82a9eb002f6843c.bundle.js +0 -1
  789. package/dist/383.e5540db47682edab834d.bundle.js +0 -1
  790. package/dist/384.f1c40e0e60f01d8aba9a.bundle.js +0 -1
  791. package/dist/385.48c5e5379f7dfac726ab.bundle.js +0 -1
  792. package/dist/386.7e64e8d9c4aac0bbdb45.bundle.js +0 -1
  793. package/dist/387.e9a84b8c2892dda2f650.bundle.js +0 -1
  794. package/dist/388.2e6dfb15fbcd6462c3d3.bundle.js +0 -1
  795. package/dist/389.5b0ede46232d8f8f4d66.bundle.js +0 -1
  796. package/dist/39.78d988e336bd9d4f7cd4.bundle.js +0 -1
  797. package/dist/390.6036e2ff582e87acaec1.bundle.js +0 -1
  798. package/dist/391.90a84270ddca2ebe03eb.bundle.js +0 -1
  799. package/dist/392.e0c451e90d8b605ed2bd.bundle.js +0 -1
  800. package/dist/393.3bfc31b44bfdba16d49c.bundle.js +0 -1
  801. package/dist/394.97f198143c473525a230.bundle.js +0 -1
  802. package/dist/395.6ce498a744a986e8ff86.bundle.js +0 -1
  803. package/dist/396.aefb86d4ebef8ff2a297.bundle.js +0 -1
  804. package/dist/397.79cd207a9f02d868df10.bundle.js +0 -1
  805. package/dist/4.6e3aeb8eee6cde5ba990.bundle.js +0 -1
  806. package/dist/40.4cc11d63e6bcfb257927.bundle.js +0 -1
  807. package/dist/41.8564cea4b8d2e978c0fa.bundle.js +0 -1
  808. package/dist/42.d7e29d98febe1327f20d.bundle.js +0 -1
  809. package/dist/43.970f6e2bb8846b2712b8.bundle.js +0 -1
  810. package/dist/44.bcc6eace48b1d6434e62.bundle.js +0 -1
  811. package/dist/45.9b655ea07221e5e2a517.bundle.js +0 -1
  812. package/dist/46.a29d923276330b841abe.bundle.js +0 -1
  813. package/dist/47.ba8a59361b7bef07c6a4.bundle.js +0 -1
  814. package/dist/48.c31e4bbc3f21fe58fd65.bundle.js +0 -1
  815. package/dist/49.929061b5beba2ec97451.bundle.js +0 -1
  816. package/dist/5.b2096856419b1a06ea75.bundle.js +0 -1
  817. package/dist/50.20572266650787d7ee91.bundle.js +0 -1
  818. package/dist/51.920803b51e86c1f8d45a.bundle.js +0 -1
  819. package/dist/52.42e7bb5a56f5f4c75241.bundle.js +0 -1
  820. package/dist/53.ffce7c0ac6b025c53b75.bundle.js +0 -2
  821. package/dist/54.ee14bd02621e6b4667b8.bundle.js +0 -1
  822. package/dist/55.409784fff5aff351a7fe.bundle.js +0 -1
  823. package/dist/56.b8582f61d881c1cad5e7.bundle.js +0 -1
  824. package/dist/57.a298ee7bb5d22e8419f8.bundle.js +0 -1
  825. package/dist/58.e8c5b3956ece53354494.bundle.js +0 -1
  826. package/dist/59.6b5fd868c31cfb6a2762.bundle.js +0 -1
  827. package/dist/6.fa03286d27c8ae9a8ab2.bundle.js +0 -1
  828. package/dist/60.686d916962bfb4056a6c.bundle.js +0 -1
  829. package/dist/61.0f5b5f053325f96a3f34.bundle.js +0 -1
  830. package/dist/62.b60e36b63fe11c962d52.bundle.js +0 -1
  831. package/dist/63.732d2a81f1389f90c8c9.bundle.js +0 -1
  832. package/dist/64.f3a6be2dd7fa51c4f3d4.bundle.js +0 -1
  833. package/dist/65.72826a0c206575c1e2b0.bundle.js +0 -2
  834. package/dist/66.2d6293e2aff634d498fe.bundle.js +0 -1
  835. package/dist/67.ada6349f0f83da3f3256.bundle.js +0 -1
  836. package/dist/68.7237eac2d4aeac9a56bd.bundle.js +0 -1
  837. package/dist/69.07b17e35f4356b0316a6.bundle.js +0 -1
  838. package/dist/7.cd9f66de5a80daeb89da.bundle.js +0 -1
  839. package/dist/70.857ff29191ca36ed5b48.bundle.js +0 -1
  840. package/dist/71.55f2d00c428565282880.bundle.js +0 -1
  841. package/dist/72.aec349c178c91727485d.bundle.js +0 -1
  842. package/dist/73.fdc9c07492227e344cc3.bundle.js +0 -1
  843. package/dist/74.ba6d30bda6286ae239d5.bundle.js +0 -1
  844. package/dist/75.8020265074f8b85a9038.bundle.js +0 -1
  845. package/dist/76.f6535b08fc78b47a9c7e.bundle.js +0 -1
  846. package/dist/77.5dd4b9ee10abc4d51d9d.bundle.js +0 -1
  847. package/dist/78.4a3b2d46d28b4844917e.bundle.js +0 -1
  848. package/dist/79.fcb63f57ab3b465fe83a.bundle.js +0 -2
  849. package/dist/8.61d7d1eb310f8cdc62a6.bundle.js +0 -1
  850. package/dist/80.ed230d0ab87e71ce20a0.bundle.js +0 -1
  851. package/dist/81.a5122117f8d64f9e4593.bundle.js +0 -1
  852. package/dist/82.8d0172da4ec38841ff65.bundle.js +0 -1
  853. package/dist/83.06f9155fd9d2840c9e0d.bundle.js +0 -1
  854. package/dist/84.7a6bd4dcc42d89095d9d.bundle.js +0 -1
  855. package/dist/85.7c2f09c86407294a40ba.bundle.js +0 -1
  856. package/dist/86.80e2092b94da006fef06.bundle.js +0 -1
  857. package/dist/87.81bb296620f4b3a5fddd.bundle.js +0 -1
  858. package/dist/88.ea0225ac48d9f5b7b8ee.bundle.js +0 -1
  859. package/dist/89.dcb04f91d7e151b1a309.bundle.js +0 -1
  860. package/dist/9.fec09ce429afc7d37e5c.bundle.js +0 -1
  861. package/dist/90.0b163611c3037b07a007.bundle.js +0 -1
  862. package/dist/91.ae39d2216929928ed44e.bundle.js +0 -1
  863. package/dist/92.e809512eeabf7ebef765.bundle.js +0 -1
  864. package/dist/93.eacf11b216749ef24662.bundle.js +0 -1
  865. package/dist/94.ea51ce6e0a719f162375.bundle.js +0 -1
  866. package/dist/95.0dc5550911d3d0d871da.bundle.js +0 -1
  867. package/dist/96.f35153db1bf3b90d2abc.bundle.js +0 -1
  868. package/dist/97.5f0cbc7c62c5871a1dbb.bundle.js +0 -1
  869. package/dist/98.6711ad20bbd77dd418d8.bundle.js +0 -1
  870. package/dist/99.35c79bc748869bc79a91.bundle.js +0 -1
  871. package/dist/bundle.f19c8bb3b73aeddf1f27.bundle.js +0 -95
  872. package/dist/js/angular/ttyg/templates/chat1.html +0 -113
  873. package/dist/js/angular/ttyg/templates/modal/settings.html +0 -61
  874. package/dist/main.004a8c0b1d1bb1fa006f.css +0 -1
  875. package/dist/main.bc67010f8efbfa19a87a.bundle.js +0 -1
  876. package/dist/polyfills-dom.798fd2050f81c0dff613.bundle.js +0 -19
  877. package/dist/vendor.3ae36bbbdf44fc52984f.bundle.js +0 -27
  878. package/dist/vendors~polyfills-core-js.b7d53dddc781f5fdc222.bundle.js +0 -1
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[360],{464:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='<div class="ot-loader ot-main-loader" onto-loader size="50" ng-if="showLoader"></div>\n<div class="import-resource-tree mt-2" ng-if="!showLoader && resources && !resources.isEmpty()">\n <div class="import-resource-tree-header">\n <div class="import-resources-actions">\n <div class="import-resource-status-dropdown btn-group" uib-dropdown>\n <button type="button" uib-dropdown-toggle class="btn btn-secondary dropdown-toggle"\n ng-class="{\'selected\': selectedByStatus}">\n <input type="checkbox" prop-indeterminate="areAllDisplayedImportResourcesPartialSelected"\n ng-model="areAllDisplayedImportResourcesSelected">\n {{selectedByStatus ? ((\'import.import_resource_tree.status.\' + selectedByStatus) | translate) : \'\n \'}}\n </button>\n <ul class="dropdown-menu" role="menu">\n <li>\n <button type="button" class="dropdown-item"\n ng-click="selectResourceWithStatus(STATUS_OPTIONS.ALL)">\n {{\'import.import_resource_tree.status.ALL\' | translate}}\n </button>\n <button type="button" class="dropdown-item"\n ng-click="selectResourceWithStatus(STATUS_OPTIONS.NONE)">\n {{\'import.import_resource_tree.status.NONE\' | translate}}\n </button>\n <button type="button" class="dropdown-item"\n ng-click="selectResourceWithStatus(STATUS_OPTIONS.IMPORTED)">\n {{\'import.import_resource_tree.status.IMPORTED\' | translate}}\n </button>\n <button type="button" class="dropdown-item"\n ng-click="selectResourceWithStatus(STATUS_OPTIONS.NOT_IMPORTED)">\n {{\'import.import_resource_tree.status.NOT_IMPORTED\' | translate}}\n </button>\n </li>\n </ul>\n </div>\n <div class="import-resource-selected-actions btn-group"\n ng-if="hasSelection">\n <div class="btn-group batch-import-dropdown" uib-dropdown\n uib-popover="{{\'import.selected.items\' | translate}}"\n popover-trigger="mouseenter"\n popover-placement="top">\n <button type="button" class="btn btn-primary batch-import-btn" ng-click="importAll(false)">\n <span class="icon-import"></span>\n {{\'common.import\' | translate}}\n </button>\n <button type="button" class="btn btn-primary dropdown-toggle-split dropdown-toggle"\n uib-dropdown-toggle>\n <span class="sr-only"></span>\n </button>\n <ul class="dropdown-menu" role="menu">\n <li>\n <button type="button"\n class="dropdown-item import-without-change-btn batch-import-without-change-btn"\n ng-click="importAll(true)">\n {{\'import.without.changing.settings\' | translate}}\n </button>\n </li>\n </ul>\n </div>\n <button class="btn btn-secondary reset-status-btn batch-reset-btn" type="button"\n ng-click="onResetStatus()"\n ng-if="canResetSelectedResources"\n uib-popover="{{\'import.reset.last.imported\' | translate}}"\n popover-trigger="mouseenter"\n popover-placement="top">\n {{\'import.reset.status\' | translate}}\n </button>\n <button ng-if="canRemoveResource" class="btn btn-secondary remove-resources-btn" type="button"\n ng-click="onRemoveResources()"\n uib-popover="{{\'import.remove.selected\' | translate}}"\n popover-trigger="mouseenter"\n popover-placement="top">\n {{\'import.remove.btn\' | translate}}\n </button>\n </div>\n </div>\n <div class="import-resource-tree-filter btn-group">\n <div ng-if="showTypeFilter" class="import-resource-type-filter mr-1">\n <button class="btn btn-secondary show-all-resources-btn"\n ng-click="filterByTypeChanged(TYPE_FILTER_OPTIONS.ALL)"\n ng-class="{\'active\': TYPE_FILTER_OPTIONS.ALL === filterByType}">\n <em class="icon-file"></em>\n <em class="icon-folder"></em>\n </button>\n <button class="btn btn-secondary show-only-folders-btn"\n ng-click="filterByTypeChanged(TYPE_FILTER_OPTIONS.DIRECTORY)"\n ng-class="{\'active\': TYPE_FILTER_OPTIONS.DIRECTORY === filterByType}">\n <em class="icon-folder"></em>\n </button>\n <button class="btn btn-secondary show-only-files-btn"\n ng-click="filterByTypeChanged(TYPE_FILTER_OPTIONS.FILE)"\n ng-class="{\'active\': TYPE_FILTER_OPTIONS.FILE === filterByType}">\n <em class="icon-file"></em>\n </button>\n </div>\n\n <div class="import-resource-filter btn-group">\n <div class="input-group">\n <input id="fileQuery" class="form-control" type="text" ng-model="filterByFileName"\n autocomplete="off"\n ng-change="filterByFileNameChanged(filterByFileName)"\n placeholder="{{\'import.type.to.filter\' | translate}}">\n </div>\n </div>\n </div>\n </div>\n <table class="import-resource-table mt-2">\n <thead>\n <tr>\n <th class="header-cell cell-select"></th>\n <th class="header-cell cell-name" ng-click="sort(SORTING_TYPES.NAME)">\n <span ng-class="{\n \'sorting_desc\': SORTING_TYPES.NAME === sortedBy && !sortAsc,\n \'sorting_asc\': SORTING_TYPES.NAME === sortedBy && sortAsc,\n \'sorting\': SORTING_TYPES.NAME !== sortedBy\n }">{{columnKeys.name | translate}}</span>\n </th>\n <th class="header-cell cell-size" ng-click="sort(SORTING_TYPES.SIZE)">\n <span ng-class="{\n \'sorting_desc\': SORTING_TYPES.SIZE === sortedBy && !sortAsc,\n \'sorting_asc\': SORTING_TYPES.SIZE === sortedBy && sortAsc,\n \'sorting\': SORTING_TYPES.SIZE !== sortedBy\n }">{{columnKeys.size | translate}}</span>\n </th>\n <th class="header-cell cell-modified" ng-click="sort(SORTING_TYPES.MODIFIED)">\n <span ng-class="{\n \'sorting_desc\': SORTING_TYPES.MODIFIED === sortedBy && !sortAsc,\n \'sorting_asc\': SORTING_TYPES.MODIFIED === sortedBy && sortAsc,\n \'sorting\': SORTING_TYPES.MODIFIED !== sortedBy\n }">{{columnKeys.modified | translate}}</span>\n </th>\n <th class="header-cell cell-imported" ng-click="sort(SORTING_TYPES.IMPORTED)">\n <span ng-class="{\n \'sorting_desc\': SORTING_TYPES.IMPORTED === sortedBy && !sortAsc,\n \'sorting_asc\': SORTING_TYPES.IMPORTED === sortedBy && sortAsc,\n \'sorting\': SORTING_TYPES.IMPORTED !== sortedBy\n }">{{columnKeys.imported | translate}}</span>\n </th>\n <th class="header-cell cell-context" ng-click="sort(SORTING_TYPES.CONTEXT)">\n <span ng-class="{\n \'sorting_desc\': SORTING_TYPES.CONTEXT === sortedBy && !sortAsc,\n \'sorting_asc\': SORTING_TYPES.CONTEXT === sortedBy && sortAsc,\n \'sorting\': SORTING_TYPES.CONTEXT !== sortedBy\n }">{{columnKeys.context | translate}}</span>\n </th>\n <th class="header-cell import-resource-action"></th>\n </tr>\n </thead>\n <tbody>\n <tr ng-repeat-start="resource in displayResources track by resource.importResource.hash"\n class="row title-row"\n ng-class="{ \'even-row-start\': $even, \'odd-row-start\': $odd}">\n <td class="cell cell-select">\n <input type="checkbox" ng-model="resource.selected" ng-click="selectionChanged(resource)"\n prop-indeterminate="resource.partialSelected" class="select-checkbox">\n </td>\n <td ng-style="{\'padding-left\': (filterByType !== TYPE_FILTER_OPTIONS.FILE ? resource.indent : \'8px\')}"\n class="cell">\n <span class="cell-title">\n <em ng-class="resource.iconClass"></em>\n <div ng-if="onEditResource && resource.isEditable">\n <a href="#" ng-click="editResource(resource)" title="{{resource.name}}">\n <strong>{{resource.shortenedName ? resource.shortenedName : resource.name}}</strong>\n </a>\n </div>\n <div ng-if="!resource.isEditable" title="{{resource.name}}">\n <strong>{{resource.shortenedName ? resource.shortenedName : resource.name}}</strong>\n </div>\n </span>\n </td>\n <td class="cell cell-size">\n {{ resource.importResource.size | humanReadableSize}}\n </td>\n <td class="cell cell-modified"\n ng-class="{\'font-weight-bold\': resource.isModifiedBiggerThanImported}">\n {{ resource.importResource.modifiedOn ? (resource.importResource.modifiedOn | date:\'yyyy-MM-dd, HH:mm\') : \'\' }}\n </td>\n <td class="cell cell-imported"\n ng-class="{\'font-weight-bold\': resource.isImportedBiggerThanModified}">\n {{ resource.importResource.importedOn ? (resource.importResource.importedOn | date:\'yyyy-MM-dd, HH:mm\') : \'\' }}\n </td>\n <td class="cell">\n <a if="resource.importResource.context"\n title="{{resource.importResource.context}}"\n class="uri-link"\n href="{{\'resource?uri=\' + resource.importResource.context + \'&role=context\'}}">\n {{resource.shortenedContext ? resource.shortenedContext : resource.importResource.context}}\n </a>\n </td>\n <td class="cell">\n <div class="cell-actions">\n <import-resource-status-info class="btn btn-sm import"\n ng-if="resource.hasStatusInfo"\n resource="resource"></import-resource-status-info>\n <button role="button" class="btn btn-link btn-sm secondary import-resource-action-reset-btn"\n ng-click="resetStatus(resource)"\n ng-if="resource.canResetStatus"\n ng-disabled="hasSelection"\n gdb-tooltip="{{\'import.reset.status\' | translate}}">\n <span class="icon-close"></span>\n </button>\n <button ng-if="canRemoveResource && resource.importResource.status !== ImportResourceStatus.UPLOADING && resource.importResource.status !== ImportResourceStatus.UPLOADED && resource.importResource.status !== ImportResourceStatus.UPLOAD_ERROR"\n class="btn btn-link btn-sm secondary import-resource-action-remove-btn"\n ng-disabled="hasSelection"\n ng-click="removeResource(resource)"\n gdb-tooltip="{{\'import.remove.btn\' | translate}}">\n <em class="icon-trash"></em>\n </button>\n <button class="btn btn-primary btn-sm import-resource-action-import-btn"\n ng-if="resource.isImportable"\n ng-click="onImport({resource: resource})"\n ng-disabled="hasSelection"\n guide-selector="import-file-{{resource.name}}"\n gdb-tooltip="{{\'import.import.btn\' | translate}}">\n <span class="icon-import"></span>\n </button>\n <button class="btn btn-sm"\n ng-click="stopImport(resource)"\n ng-disabled="resource.importResource.status === ImportResourceStatus.INTERRUPTING"\n ng-if="resource.hasOngoingImport"\n gdb-tooltip="{{\'import.import_resource_tree.action.interrupt_import\' | translate}}">\n <span class="icon-close"></span>\n {{\'import.import_resource_tree.action.abort\' | translate}}\n </button>\n </div>\n </td>\n </tr>\n <tr ng-repeat-end class="row info-row" ng-class="{ \'even-row-end\': $even, \'odd-row-end\': $odd}">\n <td class="cell cell-select"></td>\n <td colspan="6" ng-style="{\'padding-left\': (filterByType !== TYPE_FILTER_OPTIONS.FILE ? resource.indent : \'8px\')}"\n class="cell">\n <import-resource-message resource="resource"></import-resource-message>\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n';return __p}}}]);
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[361],{465:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='<div class="modal-header">\n <button type="button" class="close" ng-click="close()"></button>\n <h4 class="modal-title">{{\'import.settings\' | translate}}</h4>\n</div>\n<div class="modal-body">\n <form name="settingsForm" id="settingsForm" class="settings-form">\n <div class="form-horizontal">\n\n <div class="form-group row">\n <label class="col-lg-3">\n {{\'import.target.graphs\' | translate}}\n <span class="btn btn-link p-0"\n uib-popover="{{\'import.into.graphs\' | translate}}"\n popover-trigger="mouseenter"\n popover-placement="right">\n <em class="icon icon-info"></em>\n </span>\n </label>\n <div class="col-lg-9">\n <div>\n <label uib-popover="{{\'import.by.data.source\' | translate}}"\n popover-trigger="mouseenter">\n <input type="radio" class="from-data-btn" ng-model="target" value="data"\n ng-change="settingsForm.context.$setValidity(\'validateUri\', true)">\n {{\'import.from.data\' | translate}}\n </label>\n &nbsp;\n <label uib-popover="{{\'import.into.default.graph\' | translate}}"\n popover-trigger="mouseenter">\n <input type="radio" class="default-graph-btn" ng-model="target" value="default"\n ng-change="settingsForm.context.$setValidity(\'validateUri\', true)">\n {{\'import.default.graph\' | translate}}\n </label>\n &nbsp;\n <label uib-popover="{{\'import.into.user.graph\' | translate}}"\n popover-trigger="mouseenter">\n <input type="radio" class="named-graph-btn" ng-model="target" value="named"\n class="named-graph-option">\n {{\'import.named.graph\' | translate}}\n </label>\n </div>\n <div>\n <input validate-uri name="context" type="text" ng-required="target === \'named\'"\n ng-disabled="target !== \'named\'" ng-model="settings.context"\n class="form-control named-graph-input"\n placeholder="http://example.com/graph...">\n <div class="alert alert-danger"\n ng-if="settingsForm.context.$dirty && settingsForm.context.$error.validateUri">\n {{\'import.alert.not.valid.iri\' | translate}}\n </div>\n <div class="alert alert-danger" ng-if="settingsForm.context.$error.required">\n {{\'required.field\' | translate}}\n </div>\n </div>\n </div>\n </div>\n <div class="form-group row">\n <div class="col-lg-9 offset-lg-3">\n <label class="col-form-label"\n uib-popover="{{isMultiple ? \'import.mode.not.supported.constraint\' : \'import.enable.replace.option\' | translate}}"\n popover-trigger="mouseenter"\n popover-placement="top">\n <input type="checkbox" class="existing-data-replacement" ng-model="enableReplace"\n ng-disabled="isMultiple">\n {{\'import.enter.replacement\' | translate}}\n </label>\n </div>\n </div>\n <div class="form-group row" ng-show="enableReplace">\n <label class="col-lg-3 col-form-label">\n {{\'import.replaced.graphs\' | translate}}\n <span class="btn btn-link p-0"\n uib-popover="{{\'import.replaced.graphs.for.update\' | translate}}"\n popover-trigger="mouseenter"\n popover-placement="right">\n <em class="icon icon-info"></em>\n </span>\n </label>\n <label class="col-lg-9 col-form-label" ng-show="target === \'default\' || target === \'named\'">\n <span ng-show="target === \'default\'">{{\'import.default.graph\' | translate}}</span>\n <span ng-show="target === \'named\'">{{settings.context}}</span>\n <span class="text-muted">{{\'import.same.as.target\' | translate}}</span>\n </label>\n <div class="col-lg-9" ng-show="target === \'data\'">\n <div class="row">\n <div class="col-lg-9">\n <input name="replaceGraph" ng-model="replaceGraph" type="text"\n class="replaced-graphs-input form-control"\n placeholder="http://example.com/graph..."\n ng-keypress="checkEnterReplaceGraph($event, replaceGraph)"\n uib-popover="{{\'import.graph.wildcard\' | translate}}"\n popover-placement="top"\n popover-trigger="mouseenter">\n </div>\n <div class="col-lg-3 col-lg-no-padding">\n <div class="btn-group" uib-dropdown>\n <button type="button" class="btn btn-primary add-graph-btn"\n ng-click="addReplaceGraph(replaceGraph)">\n <span class="icon-plus"></span> {{\'import.add.graph\' | translate}}\n </button>\n <button type="button" class="btn btn-primary dropdown-toggle-split dropdown-toggle"\n uib-dropdown-toggle>\n <span class="sr-only"></span>\n </button>\n <ul class="dropdown-menu" role="menu">\n <li>\n <button type="button" class="dropdown-item"\n ng-click="addReplaceGraph(\'default\')">\n {{\'import.add.default.graph\' | translate}}\n </button>\n </li>\n </ul>\n </div>\n </div>\n </div>\n <div>\n <table aria-describedby="Replaced graphs table">\n <tr>\n <th id="graphsColumn">\n <span\n ng-show="settings.replaceGraphs.length">{{\'import.replaced.graphs\' | translate}}</span>\n <span\n ng-show="!settings.replaceGraphs.length">{{\'import.no.replaced.graphs.added\' | translate}}</span>\n </th>\n </tr>\n <tr ng-repeat="g in settings.replaceGraphs">\n <td>\n <span ng-show="g !== \'default\'">{{g}}</span>\n <span ng-show="g === \'default\'">{{\'import.default.graph\' | translate}}</span>\n <button type="button" class="btn btn-link btn-sm secondary"\n ng-click="settings.replaceGraphs.splice($index, 1)">\n <em class="icon icon-trash"></em>\n </button>\n </td>\n </tr>\n </table>\n </div>\n </div>\n <div class="col-lg-9 offset-lg-3">\n <label class="col-form-label">\n <input type="checkbox" class="graph-replace-confirm-checkbox" ng-model="agree"\n ng-required="enableReplace">\n <strong>{{\'import.data.cleared.before.import\' | translate}}</strong>\n </label>\n </div>\n </div>\n\n <div ng-show="settings.hasContextLink" class="form-group row contextLinkRow">\n <label class="col-lg-3 col-form-label">\n {{\'import.context.link\' | translate}}\n <span class="btn btn-link p-0"\n uib-popover="{{\'import.context.link.info\' | translate}}"\n popover-trigger="mouseenter"\n popover-placement="right">\n <em class="icon icon-info"></em>\n </span>\n </label>\n <div class="col-lg-9">\n <input validate-uri name="contextLink" type="text"\n ng-model="settings.parserSettings[\'contextLink\']" class="form-control"\n placeholder="http://example.com/example.jsonld">\n <div class="alert alert-danger"\n ng-if="settingsForm.contextLink.$dirty && settingsForm.contextLink.$error.validateUri">\n {{\'import.alert.not.valid.iri\' | translate}}\n </div>\n </div>\n </div>\n\n <div class="text-xs-center">\n <button type="button" ng-click="switchParserSettings()"\n class="btn btn-link btn-sm toggle-advanced-settings">\n <span ng-hide="showAdvancedSettings">{{\'import.show.advance.settings\' | translate}}<em\n class="icon-caret-down"></em></span>\n <span ng-show="showAdvancedSettings">{{\'import.hide.advance.settings\' | translate}}<em\n class="icon-caret-up"></em></span>\n </button>\n </div>\n\n <div ng-show="hasParserSettings && showAdvancedSettings" class="advanced-settings">\n <div class="form-group row mt-1">\n <label class="col-lg-3 col-form-label">\n {{\'import.label.base.iri\' | translate}}\n <span class="btn btn-link p-0"\n uib-popover="{{\'import.popover.relative.iri\' | translate}}"\n popover-trigger="mouseenter"\n popover-placement="right">\n <em class="icon icon-info"></em>\n </span>\n </label>\n <div class="col-lg-9">\n <input validate-uri name="baseURI" type="text" ng-model="settings[\'baseURI\']"\n class="form-control"\n placeholder="http://exampleuri.com/examplepath">\n <div class="alert alert-danger"\n ng-if="settingsForm.baseURI.$dirty && settingsForm.baseURI.$error.validateUri">\n {{\'import.alert.not.valid.iri\' | translate}}\n </div>\n </div>\n </div>\n\n <div class="form-group row">\n <label class="col-lg-3">{{\'import.label.bnodes\' | translate}}</label>\n <div class="col-lg-9">\n <div>\n <label>\n <input name="preserveBNodeIDs" type="checkbox"\n ng-model="settings[\'parserSettings\'][\'preserveBNodeIds\']"\n uib-popover="{{\'import.assign.own.bnode.ids\' | translate}}"\n popover-trigger="mouseenter"\n popover-placement="bottom"> {{\'import.preserve.bnode.ids\' | translate}}\n </label>\n </div>\n </div>\n </div>\n <div class="form-group row">\n <label class="col-lg-3">{{\'import.label.datatype\' | translate}}</label>\n <div class="col-lg-9">\n <div>\n <label>\n <input name="failOnUnknownDataTypes" type="checkbox"\n ng-model="settings[\'parserSettings\'][\'failOnUnknownDataTypes\']"\n uib-popover="{{\'import.fail.unknown.datatype\' | translate}}"\n popover-trigger="mouseenter"\n popover-placement="bottom"> {{\'import.fail.parsing.if.unrecognised\' | translate}}\n </label>\n </div>\n <div>\n <label>\n <input name="verifyDataTypeValues" type="checkbox"\n ng-model="settings[\'parserSettings\'][\'verifyDataTypeValues\']"\n uib-popover="{{\'import.validate.recognised\' | translate}}"\n popover-trigger="mouseenter"\n popover-placement="bottom"> {{\'import.verify.recognised\' | translate}}\n </label>\n </div>\n <div>\n <label>\n <input name="normalizeDataTypeValues" type="checkbox"\n ng-model="settings[\'parserSettings\'][\'normalizeDataTypeValues\']"\n uib-popover="{{\'import.normalize.recognised\' | translate}}"\n popover-trigger="mouseenter"\n popover-placement="bottom"> {{\'import.normalize.recognised\' | translate}}\n </label>\n </div>\n </div>\n </div>\n\n <div class="form-group row">\n <label class="col-lg-3">{{\'import.language.tags\' | translate}}</label>\n <div class="col-lg-9">\n <div>\n <label>\n <input name="failOnUnknownLanguageTags" type="checkbox"\n ng-model="settings[\'parserSettings\'][\'failOnUnknownLanguageTags\']"\n uib-popover="{{\'import.fail.lang.unknown\' | translate}}"\n popover-trigger="mouseenter"\n popover-placement="bottom"> {{\'import.fail.parsing.lang.unknown\' | translate}}\n </label>\n </div>\n <div>\n <label>\n <input name="verifyLanguageTags" type="checkbox"\n ng-model="settings[\'parserSettings\'][\'verifyLanguageTags\']"\n uib-popover="{{\'import.validate.lang.tags\' | translate}}"\n popover-trigger="mouseenter"\n popover-placement="bottom"> {{\'import.verify.language\' | translate}}\n </label>\n </div>\n <div>\n <label>\n <input name="normalizeLanguageTags" type="checkbox"\n ng-model="settings[\'parserSettings\'][\'normalizeLanguageTags\']"\n uib-popover="{{\'import.normalize.lang.tags\' | translate}}"\n popover-trigger="mouseenter"\n popover-placement="bottom"> {{\'import.normalize.recognized.tags\' | translate}}\n </label>\n </div>\n </div>\n </div>\n\n <div class="form-group row">\n <label class="col-lg-3">{{\'import.error.handling\' | translate}}</label>\n <div class="col-lg-9">\n <label>\n <input name="stopOnError" type="checkbox"\n ng-model="settings[\'parserSettings\'][\'stopOnError\']"\n uib-popover="{{\'import.parser.stops.on.error\' | translate}}"\n popover-trigger="mouseenter"\n popover-placement="bottom"> {{\'import.should.stop.on.error\' | translate}}\n </label>\n </div>\n </div>\n </div>\n\n <div ng-show="showAdvancedSettings" class="form-group row">\n <label class="col-lg-3 col-form-label">{{\'import.debug.label\' | translate}}</label>\n <div class="col-lg-9 col-form-label">\n <input type="checkbox" ng-model="settings[\'forceSerial\']" id="force-serial">\n <label for="force-serial"\n uib-popover="{{\'import.forces.serial.statements\' | translate}}"\n popover-placement="bottom"\n popover-trigger="mouseenter">{{\'import.force.serial.pipeline\' | translate}}</label>\n </div>\n </div>\n </div>\n </form>\n</div>\n<div class="modal-footer">\n <button type="button" class="btn btn-link pull-left" ng-click="reset()">\n {{\'import.restore.defaults.btn\' | translate}}\n </button>\n <button type="button" ng-if="activeTab === userTabId" ng-click="cancel()"\n class="btn btn-secondary cancel-btn cancel-upload-button">\n {{\'import.cancel.btn\' | translate}}\n </button>\n <button type="button" ng-if="activeTab === userTabId && isUploadOperation" ng-click="onlyUpload()"\n class="btn btn-secondary upload-only-button" guide-selector="import-settings-cancel-button">\n {{\'import.only.upload.btn\' | translate}}\n </button>\n <button type="button" ng-if="activeTab !== userTabId" ng-click="cancelImport()"\n class="btn btn-secondary cancel-import-button" guide-selector="import-settings-cancel-button">\n {{\'common.cancel.btn\' | translate}}\n </button>\n <button type="submit" form="settingsForm" ng-click="ok()" ng-disabled="settingsForm.$invalid"\n class="btn btn-primary import-settings-import-button"\n guide-selector="import-settings-import-button"><span class="import"></span> {{\'common.import\' | translate}}\n </button>\n</div>\n';return __p}}}]);
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[362],{466:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='<div class="modal-header">\n <button type="button" class="close" ng-click="cancel()"></button>\n <h4 class="modal-title">{{\'import.text_snippet_dialog.title\' | translate}}</h4>\n</div>\n\n<div class="modal-body">\n <form name="snippetForm" id="snippetForm">\n <div class="form-group">\n <label for="wb-import-textarea">{{\'import.text_snippet_dialog.text_snippet.label\' | translate}}</label>\n <textarea id="wb-import-textarea" name="rdfSnippet" class="form-control" rows="10" ng-model="rdfText"\n ng-maxlength="sizeLimit-1"\n placeholder="{{\'import.text_snippet_dialog.text_snippet.placeholder\' | translate}}"></textarea>\n <div class="text-right">\n <sub ng-if="!snippetForm.rdfSnippet.$error.maxlength">{{sizeLimit - rdfText.length}}/{{sizeLimit}}</sub>\n </div>\n <div ng-if="snippetForm.rdfSnippet.$error.maxlength" class="alert alert-danger">\n {{\'import.text_snippet_dialog.text_snippet.validation_message\' | translate: {limit: sizeLimit} }}\n </div>\n </div>\n </form>\n</div>\n\n<div class="modal-footer">\n <div class="mb-1">\n <span\n uib-popover="{{\'import.text_snippet_dialog.auto_start.tooltip\' | translate}}"\n popover-trigger="mouseenter"\n popover-placement="top">\n <input id="import-now-checkbox" type="checkbox" ng-model="startImport"/>\n <label for="import-now-checkbox">{{\'import.text_snippet_dialog.auto_start.label\' | translate}}</label>\n </span>\n </div>\n <div>\n <button type="button" ng-click="cancel()" class="btn btn-secondary">{{\'common.cancel.btn\' | translate}}</button>\n <div class="btn-group import-format-dropdown" uib-dropdown>\n <button type="button" class="btn btn-secondary dropdown-toggle import-format-dropdown-btn"\n uib-dropdown-toggle>\n {{\'import.text_snippet_dialog.import_format_menu.label\' | translate}}: {{importFormat.name}}\n </button>\n <ul class="dropdown-menu" role="menu">\n <li ng-repeat="format in importFormats">\n <a ng-click="setFormat(format)" class="dropdown-item">{{format.name}}</a>\n </li>\n </ul>\n </div>\n <button id="wb-import-importText" class="btn btn-primary" type="button"\n ng-click="ok()" ng-disabled="snippetForm.$invalid">\n <em class="icon-import"></em>{{\'common.import\' | translate}}\n </button>\n </div>\n</div>\n';return __p}}}]);
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[363],{467:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='<div class="modal-header">\n <button type="button" class="close" ng-click="cancel()"></button>\n <h4 class="modal-title">{{\'import.data.from.url\' | translate}}</h4>\n</div>\n\n<div class="modal-body">\n <form name="urlForm" class="url-import-form" ng-submit="importUrlForm($event)" ng-hide="loader" novalidate>\n <div class="input-group mb-1">\n <input required validate-uri id="dataUrl" name="dataUrl" placeholder="{{\'url.import.input.placeholder\' | translate}}"\n ng-model="dataUrl" class="form-control" autocomplete="off"\n uib-popover="{{\'import.supported.url.with.rdf\' | translate}} {{fileFormatsHuman}}. "\n popover-placement="bottom"\n popover-trigger="focus">\n </div>\n <div class="text-danger" ng-show="urlForm.dataUrl.$error.validateUri">\n {{\'import.invalid.url\' | translate}}\n </div>\n </form>\n</div>\n\n<div class="modal-footer">\n <div class="mb-1">\n <span uib-popover="{{\'import.enable.for.auto.start\' | translate}}"\n popover-trigger="mouseenter"\n popover-placement="top">\n <input id="import-now-checkbox" type="checkbox" ng-model="startImport"/>\n <label for="import-now-checkbox">"{{\'import.auto.start\' | translate}}</label>\n </span>\n </div>\n <div>\n <button type="button" ng-click="cancel()" class="btn btn-secondary">{{\'common.cancel.btn\' | translate}}</button>\n <div class="btn-group import-format-dropdown" uib-dropdown>\n <button class="btn btn-secondary dropdown-toggle import-format-dropdown-btn" uib-dropdown-toggle>\n {{\'import.format\' | translate}}: {{importFormat.name}}\n </button>\n <ul class="dropdown-menu" role="menu">\n <li><a ng-click="importFormat = {name: \'Auto\', type: \'\'}"\n class="dropdown-item">Auto</a></li>\n <li><a ng-click="importFormat = {name: \'RDF/JSON\', type: \'application/rdf+json\'}"\n class="dropdown-item">RDF/JSON</a></li>\n <li><a ng-click="importFormat = {name: \'JSON-LD\', type: \'application/ld+json\'}"\n class="dropdown-item">JSON-LD</a></li>\n <li><a ng-click="importFormat = {name: \'NDJSON-LD\', type: \'application/x-ld+NDjson\'}"\n class="dropdown-item">NDJSON-LD</a></li>\n <li><a ng-click="importFormat = {name: \'RDF/XML\', type: \'application/rdf+xml\'}"\n class="dropdown-item">RDF/XML</a></li>\n <li><a ng-click="importFormat = {name: \'N3\', type: \'text/rdf+n3\'}"\n class="dropdown-item">N3</a></li>\n <li><a ng-click="importFormat = {name: \'N-Triples\', type: \'text/plain\'}"\n class="dropdown-item">N-Triples</a></li>\n <li><a ng-click="importFormat = {name: \'N-Quads\', type: \'text/x-nquads\'}"\n class="dropdown-item">N-Quads</a></li>\n <li><a ng-click="importFormat = {name: \'Turtle\', type: \'text/turtle\'}"\n class="dropdown-item">Turtle</a></li>\n <li><a ng-click="importFormat = {name: \'Turtle*\', type: \'application/x-turtlestar\'}"\n class="dropdown-item">Turtle*</a></li>\n <li><a ng-click="importFormat = {name: \'TriX\', type: \'application/trix\'}"\n class="dropdown-item">TriX</a></li>\n <li><a ng-click="importFormat = {name: \'TriG\', type: \'application/x-trig\'}"\n class="dropdown-item">TriG</a></li>\n <li><a ng-click="importFormat = {name: \'TriG*\', type: \'application/x-trigstar\'}"\n class="dropdown-item">TriG*</a></li>\n <li><a ng-click="importFormat = {name: \'BinaryRDF\', type: \'application/x-binary-rdf\'}"\n class="dropdown-item">BinaryRDF</a></li>\n </ul>\n </div>\n <button id="wb-import-importUrl" ng-disabled="urlForm.$invalid" ng-click="ok()" class="btn btn-primary">\n <span class="icon-import"></span> {{\'common.import\' | translate}}\n </button>\n </div>\n</div>\n';return __p}}}]);
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[364],{468:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='<div class="form-group mb-2 mt-1">\n\t<label>{{list.fieldNameKey | translate}}</label>\n\t<div>\n\t\t<tags-input class="wb-tags-input" ng-model="list.elements" min-length="3" add-on-space="true"\n\t\t\t\t\tadd-on-comma="true" placeholder="{{\'common.add\' | translate}} {{list.placeholderKey | translate}}"\n\t\t\t\t\ton-tag-added="addToList(list, $tag)"\n\t\t\t\t\ton-tag-removed="deleteFromList(list, $tag)"></tags-input>\n\t</div>\n</div>\n';return __p}}}]);
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[365],{469:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='<div id="fedx-content" class="pt-1">\n <div id="fedx-members">\n <div class="form-repo-members col-md-6 col-lg-5 col-xl-4 mb-1">\n <h4>{{\'fedx.repo.federation.members\' | translate}}</h4>\n <div class="alert alert-warning" ng-if="fedxMembers.length === 0">{{\'fedx.repo.no.members.warning\' | translate}}</div>\n <ul id="fedx-members-table" class="list-group" aria-describedby="Repositories table">\n <li class="list-group-item list-group-item-action d-flex justify-content-between align-items-center repository"\n ng-repeat="member in fedxMembers | orderBy: [\'type === \\\'system\\\'\', \'endpoint\', \'repositoryServer\', \'repositoryName\'] : true ">\n <div class="name">\n <span class="multiline-text multilined">\n <em ng-class="getMemberIcon(member)" class="fedx-repo-member-icon"></em>\n {{resolveName(member)}}\n </span>\n <span class="icon-warning" ng-if="!checkIfRepoExist(member)" gdb-tooltip="{{\'repoTooltips.fedx.repositoryNotExistWarning\' | translate}}"> </span>\n </div>\n <div class="actions">\n <button class="btn btn-link p-0 edit-repository-btn" type="button">\n <span id="{{member.repositoryName}}-icon-edit" class="icon-edit"\n ng-click="editFedXRepository(member)"\n ng-if="member.store !== \'NativeStore\'"\n gdb-tooltip="{{\'repoTooltips.editRepository\' | translate}}"></span>\n </button>\n <button class="btn btn-link p-0 secondary" type="button">\n <span id="{{member.repositoryName}}-icon-close" ng-click="removeMember(member)"\n class="icon-close"\n gdb-tooltip="{{\'repoTooltips.fedx.removeMember\' | translate}}"></span>\n </button>\n <button class="btn btn-link p-0 secondary">\n <span id="{{member.repositoryName}}-icon-writable"\n ng-click="setWritableRepo(member)"\n class="icon-import{{getActiveClass(member)}}"\n gdb-tooltip="{{\'repoTooltips.fedx.setAsWritable\' | translate}}"></span>\n </button>\n </div>\n </li>\n </ul>\n </div>\n <div class="col-md-4 col-lg-3 col-xl-3 mb-1">\n <div class="attached-header">{{\'fedx.repo.local.attached.header\' | translate}}</div>\n <div class="form-local-repos pre-scrollable locations-list">\n <div class="location-item hoverable"\n ng-repeat="repository in knownRepos | orderBy: [\'type === \\\'system\\\'\', \'location\', \'id\']"\n ng-if="repository.type !== \'fedx\'"\n id="{{repository.id}}-local-repo">\n\n <a id="{{repository.id}}-a"\n ng-click="addMember(repository)"\n gdb-tooltip="{{\'repoTooltips.fedx.localReposInstructions\' | translate}}">\n <span class="multiline-text">\n <em ng-class="\'icon-repo-\' + repository.type" class="fedx-repo-member-icon"></em>\n {{repository.id}}\n </span>\n <span class="small"><small> &middot; {{getRepositoryServer(repository)}}</small></span>\n </a>\n </div>\n </div>\n <button type="button" id="addFedXRepository" ng-click="addRemoteMember()" class="btn btn-primary">\n <span class="icon-plus"></span>\n {{\'fedx.repo.add.remote\' | translate}}\n </button>\n </div>\n </div>\n <div id="fedx-options">\n <h4>{{\'fedx.repo.options\' | translate}}</h4>\n <div class="pb-1">\n <div class="form-group row">\n <div class="checkbox offset-xs-1 offset-md-4 indented-div checkbox-param-include-inferred">\n <label gdb-tooltip="{{\'repoTooltips.fedx.withIncludeInferredDefault\' | translate}}">\n <input id="includeInferredDefault" name="includeInferredDefault" type="checkbox"\n ng-true-value="\'true\'" ng-false-value="\'false\'"\n ng-model="repositoryInfo.params.includeInferredDefault.value"/>\n {{repositoryInfo.params.includeInferredDefault.label}}\n </label>\n </div>\n <div class="checkbox offset-xs-1 offset-md-4 offset-lg-2">\n <label class="padding-label" gdb-tooltip="{{\'repoTooltips.fedx.withEnableServiceAsBoundJoin\' | translate}}">\n <input id="enableServiceAsBoundJoin"\n name="enableServiceAsBoundJoin" type="checkbox"\n ng-true-value="\'true\'" ng-false-value="\'false\'"\n ng-model="repositoryInfo.params.enableServiceAsBoundJoin.value"/>\n {{repositoryInfo.params.enableServiceAsBoundJoin.label}}\n </label>\n </div>\n </div>\n <div class="form-group row">\n <div class="checkbox offset-xs-1 offset-md-4 indented-div checkbox-param-padded">\n <label gdb-tooltip="{{\'repoTooltips.fedx.withLogQueries\' | translate}}">\n <input id="isLogQueries" name="isLogQueries" type="checkbox"\n ng-true-value="\'true\'" ng-false-value="\'false\'"\n ng-model="repositoryInfo.params.isLogQueries.value"/>\n {{repositoryInfo.params.isLogQueries.label}}\n </label>\n </div>\n <div class="checkbox offset-xs-1 offset-md-4 offset-lg-2">\n <label class="padding-label" gdb-tooltip="{{\'repoTooltips.fedx.withDebugQueryPlan\' | translate}}">\n <input id="debugQueryPlan"\n name="debugQueryPlan" type="checkbox"\n ng-true-value="\'true\'" ng-false-value="\'false\'"\n ng-model="repositoryInfo.params.debugQueryPlan.value"/>\n {{repositoryInfo.params.debugQueryPlan.label}}\n </label>\n </div>\n </div>\n </div>\n <div class="pb-1">\n <div class="form-group row">\n <div class="offset-xs-1 offset-md-4 indented-div">\n <label class="col-lg-3">\n {{repositoryInfo.params.queryTimeout.label}}\n </label>\n <div class="col-lg-2">\n <input id="enforceMaxQueryTime"\n name="enforceMaxQueryTime"\n type="number" step="1"\n ng-model="repositoryInfo.params.queryTimeout.value"\n class="form-control"\n required\n gdb-tooltip="{{\'repoTooltips.fedx.enforceMaxQueryTime\' | translate}}"/>\n </div>\n </div>\n <div class="offset-xs-1 offset-md-4 indented-div">\n <label class="col-lg-3">\n {{repositoryInfo.params.boundJoinBlockSize.label}}\n </label>\n <div class="col-lg-2">\n <input id="boundJoinBlockSize"\n name="boundJoinBlockSize"\n type="number" step="1"\n ng-model="repositoryInfo.params.boundJoinBlockSize.value"\n class="form-control"\n required\n gdb-tooltip="{{\'repoTooltips.fedx.withBoundJoinBlockSize\' | translate}}"/>\n </div>\n </div>\n </div>\n <div class="form-group row">\n <div class="offset-xs-1 offset-md-4 indented-div">\n <label class="col-lg-3">\n {{repositoryInfo.params.joinWorkerThreads.label}}\n </label>\n <div class="col-lg-2">\n <input id="joinWorkerThreads"\n name="joinWorkerThreads"\n type="number" step="1"\n ng-model="repositoryInfo.params.joinWorkerThreads.value"\n class="form-control"\n required\n gdb-tooltip="{{\'repoTooltips.fedx.withJoinWorkerThreads\' | translate}}"/>\n </div>\n </div>\n <div class="offset-xs-1 offset-md-4 indented-div">\n <label class="col-lg-3">\n {{repositoryInfo.params.leftJoinWorkerThreads.label}}\n </label>\n <div class="col-lg-2">\n <input id="leftJoinWorkerThreads"\n name="leftJoinWorkerThreads"\n type="number" step="1"\n ng-model="repositoryInfo.params.leftJoinWorkerThreads.value"\n class="form-control"\n required\n gdb-tooltip="{{\'repoTooltips.fedx.withLeftJoinWorkerThreads\' | translate}}"/>\n </div>\n </div>\n </div>\n <div class="form-group row">\n <div class="offset-xs-1 offset-md-4 indented-div">\n <label class="col-lg-3">\n </label>\n <div class="col-lg-2">\n </div>\n </div>\n <div class="offset-xs-1 offset-md-4 indented-div">\n <label class="col-lg-3">\n {{repositoryInfo.params.unionWorkerThreads.label}}\n </label>\n <div class="col-lg-2">\n <input id="unionWorkerThreads"\n name="unionWorkerThreads"\n type="number" step="1"\n ng-model="repositoryInfo.params.unionWorkerThreads.value"\n class="form-control"\n required\n gdb-tooltip="{{\'repoTooltips.fedx.unionWorkerThreads\' | translate}}"/>\n </div>\n </div>\n </div>\n </div>\n <div class="pb-1">\n <div class="form-group row">\n <div class="indented-div">\n <label for="cache-spec" class="col-md-3 col-lg-3 col-form-label">{{\'fedx.repo.source.selection.cache.spec\' | translate}}</label>\n <div class="col-lg-7 col-xl-7">\n <input id="cache-spec" class="form-control"\n ng-model="repositoryInfo.params[\'sourceCacheSpec\'].value"\n gdb-tooltip="{{\'repoTooltips.fedx.withSourceSelectionCacheSpec\' | translate}}"/>\n </div>\n </div>\n </div>\n\n </div>\n\n </div>\n\n</div>\n';return __p}}}]);
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[366],{470:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='<div class="modal-header">\n <button ng-click="cancel();" class="close" aria-hidden="true"></button>\n\n <h3 class="modal-title">{{(isEdit ? \'manage.remote.location.dialog.update.instance\' : \'manage.remote.location.dialog.attach.instance\') | translate}}</h3>\n</div>\n<div class="modal-body">\n <form id="remoteLocationForm" novalidate name="remoteLocationForm">\n <label>\n <input type="radio"\n class="graph-db-instance"\n ng-model="remoteLocation.locationType"\n ng-disabled="isEdit"\n ng-change="onLocationTypeChanged()"\n value="{{RemoteLocationType.GRAPH_DB}}">\n {{\'manage.remote.location.dialog.graph_db.location.instance\' | translate}}\n\n </label>\n <label class="padding-label">\n <input type="radio"\n class="grap ontopic-instance"\n ng-model="remoteLocation.locationType"\n ng-disabled="isEdit"\n ng-change="onLocationTypeChanged()"\n value="{{RemoteLocationType.ONTOPIC}}">\n {{\'manage.remote.location.dialog.ontopic.location.instance\' | translate}}\n </label>\n\n <div class="form-group row">\n <label for="location" class="col-md-4 col-form-label">{{\'manage.remote.location.dialog.required.url\' | translate}}</label>\n <div class="col-md-8">\n <input id="location" ng-model="remoteLocation.uri" required name="location" class="form-control"\n placeholder="http://my-hostname:7200" ng-disabled="isEdit" validate-url/>\n <span ng-if="!isEdit" class="form-text text-muted">\n {{(remoteLocation.isGraphDBLocation() ? \'manage.remote.location.dialog.graph_db.url.message\' : \'manage.remote.location.dialog.ontopic.url.message\') | translate}}\n </span>\n </div>\n </div>\n\n <div ng-if="!remoteLocationForm.location.$pristine">\n <div ng-if="remoteLocationForm.location.$error.required" class="alert alert-warning">\n {{\'manage.remote.location.dialog.url.requred.message\' | translate}}\n </div>\n <div ng-if="remoteLocationForm.location.$error.validUrl" class="alert alert-warning">\n {{(remoteLocation.isGraphDBLocation() ? \'manage.remote.location.dialog.graph_db.error.not_valid.url\' : \'manage.remote.location.dialog.ontopic.error.not_valid.url\') | translate}} http://server.example.com:7200/.\n </div>\n </div>\n <div class="form-group row" ng-if="remoteLocation.isGraphDBLocation()">\n <label class="col-md-4 col-form-label">{{\'manage.remote.location.dialog.auth_type.header\' | translate}}</label>\n <div class="col-md-8">\n <label class="col-form-label" gdb-tooltip="{{\'remote.location.no.auth.used.tooltip\' | translate}}">\n <input type="radio" name="authType" ng-model="remoteLocation.authType" value="{{RemoteLocationAuthType.NONE}}" class="none-authentication"/>\n {{\'manage.remote.location.dialog.auth_type.none\' | translate}}\n </label>\n &nbsp;\n <label class="col-form-label" gdb-tooltip="{{\'basic.auth.type.tooltip\' | translate}}. {{\'basic.auth.type.admin.constraint.tooltip\' | translate}}">\n <input type="radio" name="authType" ng-model="remoteLocation.authType" value="{{RemoteLocationAuthType.BASIC}}" class="basic-authentication"/>\n {{\'manage.remote.location.dialog.auth_type.basic\' | translate}}\n </label>\n &nbsp;\n <label class="col-form-label" gdb-tooltip="{{\'signature.auth.type.tooltip\' | translate}}">\n <input type="radio" name="authType" ng-model="remoteLocation.authType" value="{{RemoteLocationAuthType.SIGNATURE}}" class="signature-authentication"/>\n {{\'manage.remote.location.dialog.auth_type.signature\' | translate}}\n </label>\n </div>\n </div>\n <div class="form-group row" ng-if="remoteLocation.isNoneAuthType()">\n <div class="col-md-12">{{\'manage.remote.location.dialog.auth_type.basic.description\' | translate}}</div>\n </div>\n <div ng-if="remoteLocation.isBasicAuthType()">\n <div class="form-group row">\n <div class="col-md-12">{{(remoteLocation.isGraphDBLocation() ? \'manage.remote.location.dialog.graph_db.basic.auth.type.description\' : \'manage.remote.location.dialog.ontopic.basic.auth.type.description\') | translate}}</div>\n </div>\n <div class="form-group row">\n <label for="username" class="col-md-4 col-form-label">\n {{(remoteLocation.isGraphDBLocation() ? \'manage.remote.location.dialog.graph_db.username.required.message\' : \'manage.remote.location.dialog.ontopic.username.required.message\') | translate}}\n </label>\n <div class="col-md-8">\n <input id="username" ng-model="remoteLocation.username" name="locationUsername" placeholder="{{(remoteLocation.isGraphDBLocation() ? \'manage.remote.location.dialog.graph_db.username.placeholder\' : \'manage.remote.location.dialog.ontopic.username.placeholder\') | translate}}"\n class="form-control" ng-required="remoteLocation.isBasicAuthType()"/>\n </div>\n </div>\n <div class="form-group row">\n <label for="password" class="col-md-4 col-form-label">\n {{(remoteLocation.isGraphDBLocation() ? \'manage.remote.location.dialog.graph_db.password.required.message\' : \'manage.remote.location.dialog.ontopic.password.required.message\') | translate}}\n </label>\n <div class="col-md-8">\n <input id="password" ng-model="remoteLocation.password" name="locationPassword" placeholder="{{(remoteLocation.isGraphDBLocation() ? \'manage.remote.location.dialog.graph_db.password.placeholder\' : \'manage.remote.location.dialog.ontopic.password.placeholder\') | translate}}"\n type="password" class="form-control" ng-required="remoteLocation.isBasicAuthType()"/>\n </div>\n </div>\n </div>\n <div class="form-group row" ng-if="remoteLocation.isSignatureAuthType()">\n <div class="col-md-12">\n {{\'manage.remote.location.dialog.auth_type.signature.description.prefix\' | translate}}\n <a href="{{docBase}}/access-control.html#gdb-authentication" rel="noopener" target="_blank">\n Access Control / GDB authentication\n </a>\n {{\'manage.remote.location.dialog.auth_type.signature.description.suffix\' | translate}}\n </div>\n </div>\n </form>\n</div>\n<div class="modal-footer">\n <button type="button" ng-click="cancel();" class="btn btn-secondary cancel-attaching-location" data-dismiss="modal">\n {{\'common.cancel.btn\' | translate}}\n </button>\n <button type="submit" ng-click="ok();" class="btn btn-primary attach-location" form="remoteLocationForm"\n ng-disabled="remoteLocationForm.$pristine || remoteLocationForm.$invalid">\n <span ng-if="!isEdit" class="icon-plus"></span>\n {{(isEdit ? \'common.save.btn\' : \'common.attach\') | translate}}\n </button>\n</div>\n';return __p}}}]);
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[367],{471:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='<div id="ontop-content" class="pt-1">\n\n \x3c!-- Connection information --\x3e\n <h4>{{\'ontop.repo.connection.information\' | translate}}</h4>\n\n \x3c!-- select driver type --\x3e\n <div class="form-group row indented-div">\n <label class="col-xs-12 col-md-3 col-lg-2 col-form-label">{{\'ontop.repo.database.driver\' | translate}}</label>\n <div class="col-xs-8 col-md-5 col-lg-4" gdb-tooltip="{{\'repoTooltips.ontop.driverType\' | translate}}">\n <select class="form-control" id="driverType" ng-model="formData.connectionInformation.driverType"\n ng-change="selectDriver(formData.connectionInformation.driverType)"\n ng-options="driver.driverType as driver.driverName for driver in supportedDriversData">\n </select>\n </div>\n </div>\n\n \x3c!-- Host Name --\x3e\n <div class="form-group row indented-div" ng-if="!isGenericDriver">\n <label for="hostName" class="col-xs-12 col-md-3 col-lg-2 col-form-label">\n {{getHostNameLabel()}}</label>\n <div class="col-xs-12 col-md-5 col-lg-4"\n gdb-tooltip="{{\'repoTooltips.ontop.hostName\' | translate}}">\n <input id="hostName" class="form-control"\n type="text" min="1" max="65535"\n ng-required="true"\n placeholder="{{\'ontop.repo.database.host_name.placeholder\' | translate}}"\n ng-model="formData.connectionInformation.hostName"\n ng-change="updateUrl()">\n </div>\n </div>\n\n \x3c!-- Port --\x3e\n <div class="form-group row indented-div" ng-if="!isGenericDriver">\n <label for="port" class="col-xs-12 col-md-3 col-lg-2 col-form-label">\n {{\'ontop.repo.database.port\' | translate}} {{selectedDriver.portRequired ? \'*\' : \'\'}}</label>\n <div class="col-xs-12 col-md-5 col-lg-4"\n gdb-tooltip="{{\'repoTooltips.ontop.port\' | translate}}">\n <input id="port" class="form-control"\n type="number" min="1" max="65535"\n ng-required="selectedDriver.portRequired"\n name="port"\n placeholder="{{\'ontop.repo.database.port.placeholder\' | translate}}"\n ng-model="formData.connectionInformation.port"\n ng-change="updateUrl()">\n </div>\n </div>\n\n \x3c!-- Data Base Name --\x3e\n <div class="form-group row indented-div" ng-if="!isGenericDriver">\n <label for="databaseName" class="col-xs-12 col-md-3 col-lg-2 col-form-label">\n {{getDatabaseNameLabel()}} *</label>\n <div class="col-xs-12 col-md-5 col-lg-4"\n gdb-tooltip="{{\'repoTooltips.ontop.databaseName\' | translate}}">\n <input id="databaseName" class="form-control"\n type="text" min="1" max="65535"\n ng-required="true"\n placeholder="{{\'ontop.repo.database.database_name.placeholder\' | translate}}"\n ng-model="formData.connectionInformation.databaseName"\n ng-change="updateUrl()">\n </div>\n </div>\n\n \x3c!-- Username --\x3e\n <div class="form-group row indented-div">\n <label for="username" class="col-xs-12 col-md-3 col-lg-2 col-form-label">\n {{\'ontop.repo.database.username\' | translate}}</label>\n <div class="col-xs-12 col-md-5 col-lg-4"\n gdb-tooltip="{{\'repoTooltips.ontop.userName\' | translate}}">\n <input id="username" class="form-control"\n type="text" min="1" max="65535"\n placeholder="{{\'ontop.repo.database.username.placeholder\' | translate}}"\n ng-model="formData.connectionInformation.username">\n </div>\n </div>\n\n \x3c!-- Password --\x3e\n <div class="form-group row indented-div">\n <label for="password" class="col-xs-12 col-md-3 col-lg-2 col-form-label">\n {{\'ontop.repo.database.password\' | translate}}</label>\n <div class="col-xs-12 col-md-5 col-lg-4"\n gdb-tooltip="{{\'repoTooltips.ontop.password\' | translate}}">\n <input id="password" class="form-control"\n autocomplete="new-password"\n type="password" min="1" max="65535"\n placeholder="{{\'ontop.repo.database.password.placeholder\' | translate}}"\n ng-model="formData.connectionInformation.password">\n </div>\n </div>\n\n \x3c!-- Driver class --\x3e\n <div class="form-group row indented-div">\n <label for="driverClass" class="col-xs-12 col-md-3 col-lg-2 col-form-label">\n {{(\'ontop.repo.database.driver_class\' | translate) + \' *\'}}</label>\n <div class="col-xs-12 col-md-5 col-lg-4"\n gdb-tooltip="{{\'repoTooltips.ontop.driverClass\' | translate}}">\n <input id="driverClass" class="form-control"\n type="text" min="1" max="65535"\n ng-required="true"\n placeholder="{{\'ontop.repo.database.driver_class.placeholder\' | translate}}"\n ng-readonly="!isGenericDriver"\n ng-model="formData.connectionInformation.driverClass">\n </div>\n <div class="col-xs-12 col-md-4" ng-if="!selectedDriver.classAvailable">\n <div ng-if="!isGenericDriver">\n <em class="icon-warning icon-2x" gdb-tooltip="{{\'repoTooltips.ontop.driverClassWarning\' | translate}}"\n tooltip-placement="top"></em>\n <a class="uri" ng-if="selectedDriver.downloadDriverUrl"\n href="{{selectedDriver.downloadDriverUrl}}"\n style="text-decoration: underline;">\n {{\'ontop.repo.download.jdbc.driver\' | translate}}\n </a>\n </div>\n\n <div ng-if="isGenericDriver && !formData.connectionInformation.driverClass">\n <em class="icon-warning icon-2x" gdb-tooltip="{{\'repoTooltips.ontop.driverClassWarning\' | translate}}"\n tooltip-placement="top"></em>\n <span>{{\'ontop.repo.missing.jdbc.driver\' | translate}}</span>\n </div>\n </div>\n </div>\n\n \x3c!-- JDBC URL --\x3e\n <div class="form-group row indented-div">\n <label for="url" class="col-xs-12 col-md-3 col-lg-2 col-form-label">\n {{(\'ontop.repo.database.url\' | translate) + \' *\'}}</label>\n <div class="col-xs-12 col-md-5 col-lg-4"\n gdb-tooltip="{{\'repoTooltips.ontop.url\' | translate}}">\n <input id="url" class="form-control"\n type="text" min="1" max="65535"\n ng-required="true"\n placeholder="{{isGenericDriver ? defaultUrlTemplate : selectedDriver.urlTemplate}}"\n ng-model="formData.connectionInformation.url"\n ng-keydown="onKeyDownInUrlInput($event)"\n ng-keyup="onKeyUpInUrlInput()">\n </div>\n\n <div class="col-xs-4 col-md-2">\n <div class="wrapper-div" gdb-tooltip="{{\'repoTooltips.ontop.testConn\' | translate}}">\n <button id="testConnection"\n ng-click="testConnection()"\n ng-disabled="isTestConnectionDisabled()"\n type="submit"\n class="btn btn-primary">{{\'ontop.repo.test.connection\' | translate}}\n </button>\n </div>\n </div>\n </div>\n\n \x3c!-- Ontop settings --\x3e\n <h4>{{\'ontop.repo.settings\' | translate}}</h4>\n\n \x3c!-- Additional properties --\x3e\n <div class="form-group row indented-div">\n <label class="col-xs-12 col-md-3 col-lg-2 col-form-label">\n {{\'ontop.repo.properties.label\' | translate}}\n </label>\n <div class="col-xs-8 col-md-5 col-lg-4">\n <div class="mb-1" gdb-tooltip="{{\'ontop.repo.properties.tooltip\' | translate}}">\n <textarea class="form-control" rows="3" maxlength="1000"\n id="additionalProperties"\n ng-model="formData.settings.additionalProperties"\n placeholder="{{\'ontop.repo.properties.placeholder\' | translate}}">\n </textarea>\n </div>\n </div>\n <div class="col-xs-12 col-md-4">\n <a class="uri"\n href="{{ontopProperiesLink}}"\n style="text-decoration: underline;">\n {{\'ontop.repo.properties.configuration.link\' | translate}}\n </a>\n </div>\n </div>\n\n \x3c!-- ontop files --\x3e\n <div ng-repeat="ontopFileInfo in formData.settings.ontopFiles" class="form-group row indented-div">\n <label for="{{ontopFileInfo.type}}" class="col-xs-12 col-md-3 col-lg-2 col-form-label">\n {{((\'ontop.repo.file.\' + ontopFileInfo.type + \'.name\') | translate)}} {{ontopFileInfo.required ? \' *\' : \'\'}}\n </label>\n\n <div class="col-xs-8 col-md-5 col-lg-4" gdb-tooltip="{{\'repoTooltips.ontop.\' + ontopFileInfo.type | translate}}">\n <a ng-if="!!ontopFileInfo.fileName"\n class="btn btn-link ot-edit-input"\n ng-click="editFile(ontopFileInfo)"\n gdb-tooltip="{{\'edit.file.content\' | translate}}"\n tooltip-placement="right">\n <span class="icon-edit"></span>\n </a>\n <input class="form-control" id="{{ontopFileInfo.type}}" ng-readonly="true"\n placeholder="{{ontopFileInfo.required ? (\'required.field\' | translate) : \'\'}}"\n ng-model="ontopFileInfo.fileName">\n </div>\n\n <div class="col-xs-4 col-md-2">\n <div class="btn btn-outline-primary btn-sm">\n <div ngf-select ngf-change="uploadOntopFile($files, ontopFileInfo)" ngf-multiple="false "\n class="selectFiles pointer clearfix">\n <em ng-hide="ontopFileInfo.loading" class="fa fa-upload fa-2x"></em>&nbsp;\n <div ng-show="ontopFileInfo.loading" onto-loader size="24" class="spinner-container ot-loader"></div>\n <span for="{{ontopFileInfo.type}}" class="pageInfo"\n style="vertical-align: super; color: #8a8a8a;">{{\'upload.file\' | translate}}</span>\n </div>\n </div>\n </div>\n </div>\n\n <div class="pt-1"></div>\n <div class="form-group row" ng-if="editRepoPage">\n <div class="checkbox col-xs-12">\n <label gdb-tooltip="{{\'restart.repo.check.tooltip\' | translate}}">\n <input id="restartRepo" name="restartRepo"\n type="checkbox"\n ng-model="repositoryInfo.restartRequested"\n ng-checked="repositoryInfo.restartRequested || repositoryInfo.saveId !== repositoryInfo.id"\n ng-disabled="repositoryInfo.saveId !== repositoryInfo.id"/>\n {{\'restart.repo.label\' | translate}}\n </label>\n </div>\n </div>\n <div class="form-group row col-xs-12 pb-3">\n <div class="text-right">\n <a ng-click="goBackToPreviousLocation()" class="btn btn-secondary">{{\'common.cancel.btn\' | translate}}</a>\n <button id="addSaveOntopRepository" ng-click="updateOntopRepo()" ng-if="!editRepoPage" type="submit" class="btn btn-primary">\n {{\'common.create.btn\' | translate}}\n </button>\n <button id="addEditOntopRepository" ng-click="updateOntopRepo()" ng-if="editRepoPage" type="submit" class="btn btn-primary">\n {{\'common.save.btn\' | translate}}\n </button>\n </div>\n </div>\n</div>\n';return __p}}}]);
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[368],{472:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='<div class="modal-header">\n <h3 class="modal-title">{{\'security.free.access.config.title\' | translate}}</h3>\n <div>{{\'security.free.access.config.settings\' | translate}}</div>\n</div>\n<div class="modal-body">\n <div class="card" id="user-settings">\n <div class="card-block">\n <h3>{{\'security.application.settings\' | translate}}</h3>\n <label class="mr-1"><input type="checkbox" ng-model="appSettings.DEFAULT_SAMEAS" id="defaultSameAs" checked="appSettings.DEFAULT_SAMEAS" > {{\'security.default.same.as\' | translate}}</label>\n <label class="mr-1"><input type="checkbox" ng-model="appSettings.DEFAULT_INFERENCE" id="defaultInference" checked="appSettings.DEFAULT_INFERENCE" > {{\'security.default.inference\' | translate}}</label>\n <label><input type="checkbox" ng-model="appSettings.EXECUTE_COUNT" id="defaultCount" checked="appSettings.EXECUTE_COUNT"> {{\'security.count.all.results\' | translate}}</label>\n </div>\n </div>\n <div class="card">\n <div class="card-block repo-fields">\n <h3>{{\'security.read.write.access\' | translate}}</h3>\n <div class="row">\n <p ng-show="repositoryCheckError" class="authoritiesError alert alert-danger col-xs-12">\n {{\'security.user.rights\' | translate}}\n </p>\n <p ng-hide="hasActiveLocation()" class="authoritiesError alert alert-danger col-xs-12">{{\'security.no.active.location\' | translate}}\n <a href="repository" ng-if="isAdmin()">{{\'activate.location\' | translate}}</a>\n </p>\n </div>\n <div class="row" style="margin-top: 0">\n <h5 class="boldless col-xs-10">{{\'security.repository.title\' | translate}}</h5>\n <span class="fa fa-eye fa-1andAhalfx col-xs-1" gdb-tooltip="{{\'security.tooltip.read\' | translate}}"\n tooltip-placement="top" style="margin-top: 10px"></span>\n <span class="fa fa-pencil fa-1andAhalfx col-xs-1" gdb-tooltip="{{\'security.tooltip.write\' | translate}}"\n tooltip-placement="top" style="margin-top: 10px"></span>\n </div>\n <div id="access-user-repos access-user-rights" class="row"\n ng-repeat="repository in getRepositories() | orderBy: [\'id\', \'location\']">\n <p class="col-xs-10">{{repository.id}}<small> &middot; {{repository.location ? repository.location : \'Local\'}}</small></p>\n <label class="col-xs-1">\n <input class="animated read" type="checkbox"\n ng-model="grantedAuthorities.READ_REPO[createUniqueKey(repository)]"\n ng-checked="grantedAuthorities.READ_REPO[createUniqueKey(repository)] || grantedAuthorities.WRITE_REPO[createUniqueKey(repository)]"\n ng-disabled="grantedAuthorities.WRITE_REPO[createUniqueKey(repository)]"\n ng-class="grantedAuthorities.WRITE_REPO[createUniqueKey(repository)] ? \'bounceIn\' : \'\'"\n ng-click="setGrantedAuthorities()">\n </label>\n <label class="col-xs-1">\n <input class="animated write" type="checkbox"\n ng-model="grantedAuthorities.WRITE_REPO[createUniqueKey(repository)]"\n ng-checked="grantedAuthorities.WRITE_REPO[createUniqueKey(repository)]"\n ng-click="setGrantedAuthorities()">\n </label>\n </div>\n </div>\n </div>\n</div>\n<div class="modal-footer">\n <button type="button" class="btn btn-default" ng-click="cancel()">{{\'common.cancel.btn\' | translate}}</button>\n <button class="btn btn-primary" ng-click="ok()">{{\'common.ok.btn\' | translate}}</button>\n</div>\n';return __p}}}]);
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[369],{473:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='<h1>\n {{title}}\n</h1>\n<div core-errors></div>\n<div ng-show="getActiveRepository()">\n <table class="table table-striped" aria-describedby="Role mappings table">\n <thead>\n <th id="mappingsColumn"><strong>{{\'security.mapping.header\' | translate}}</strong></th>\n <th ng-repeat="role in roles" id="rolesColumn">\n <strong>{{role}}</strong>\n </th>\n </thead>\n <tbody>\n <tr ng-repeat="mapping in mappings">\n <td><span>{{mapping}}</span></td>\n <td ng-repeat="role in roles">\n <span ng-style="{\'color\': roleMappings[role][mapping] ? \'green\' : \'red\'}">\n {{roleMappings[role][mapping]}}</span> <span role="button" ng-click="debugMapping(role, mapping)" class="menu-item-icon icon-help"></span></td>\n </tr>\n </tbody>\n </table>\n\n</div>\n';return __p}}}]);
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[37,199,200,201,225,233,311],{166:function(n,e,t){"use strict";t.r(e),t.d(e,"DEFAULT_SPARQL_QUERY",(function(){return o})),t.d(e,"JdbcConfigurationInfo",(function(){return i}));const o="PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>\n\n# Selects two variables to use as columns\nSELECT ?id ?label {\n ?id rdfs:label ?label\n # The following placeholder must be present in the query\n #!filter\n}";class i{constructor(n=o,e=!0,t){this.query=n,this.jdbcConfigurationName=t,this.isNewJdbcConfiguration=e,this.isValidQuery=!0,this.isValidQueryType=!0,this.hasUndefinedColumns=!1,this.isColumnsEmpty=!1,this.columns=[]}}},167:function(n,e,t){"use strict";t.r(e),t.d(e,"JdbcConfigurationError",(function(){return o}));class o extends Error{constructor(n,e){super(n),this.jdbcConfigurationInfo=e}}},168:function(n,e,t){"use strict";t.r(e),t.d(e,"JdbcColumn",(function(){return o})),t.d(e,"toJDBCColumns",(function(){return i})),t.d(e,"updateColumn",(function(){return r}));class o{constructor(){this.column_name="",this.column_type="",this.sparql_type="",this.nullable=!0}}const i=(n=[],e)=>n.map(n=>({column_name:n,column_type:e[n].column_type,nullable:!0,sparql_type:e[n].sparql_type})),r=(n,e)=>{n.column_type=e[n.column_name].column_type,n.sparql_type=e[n.column_name].sparql_type}},265:function(n,e,t){"use strict";t.r(e);t(32),t(34),t(87),t(7),t(17);var o=t(166),i=t(82),r=t(167),s=t(74),a=t(168),c=t(15),u=t(0);function l(n,e,t,o,i,r){n.getSqlConfigurations=function(){!e.getActiveRepository()||e.isActiveRepoOntopType()||e.isActiveRepoFedXType()?n.jdbcConfigurations=[]:t.getJdbcConfigurations().success((function(e){n.jdbcConfigurations=e})).error((function(n){const e=getError(n);o.error(e,r.instant("jdbc.not.get.SQL.msg"))}))},n.$watch((function(){return e.getActiveRepository()}),(function(){n.getSqlConfigurations()})),n.deleteConfiguration=function(e){i.openSimpleModal({title:r.instant("common.warning"),message:r.instant("jdbc.delete.sql.table.warning.msg",{name:e}),warning:!0}).result.then((function(){t.deleteJdbcConfiguration(e).success((function(){n.getSqlConfigurations()})).error((function(n){o.error(getError(n),r.instant("jdbc.not.delete.sql.msg"))}))}))}}function g(n,e,t,l,g,d,f,m,b,p,C,y,h,j,w,v){e.emptySparqlResponse='{"head": {"vars": []},"results": {"bindings": []}}',e.getSuggestionSqlType="",e.sqlTypes=[],e.activeTab=1,e.jdbcConfigurationInfo=new o.JdbcConfigurationInfo,e.jdbcConfigurationInfo.jdbcConfigurationName=l.search().name||"",e.saveOrUpdateExecuted=!1,e.jdbcConfigurationInfo.isNewJdbcConfiguration=!e.jdbcConfigurationInfo.jdbcConfigurationName,e.language=w.getLanguage(),e.isDirty=!1,e.prefixes=[],e.loadingControllerResources=!1,e.isQueryRunning=!1,e.canEditActiveRepo=!1;let E=!0;e.saveJdbcConfiguration=()=>{if(e.saveOrUpdateExecuted=!0,!e.jdbcConfigurationInfo.jdbcConfigurationName)return;if(!e.isDirty)return void V();const n=e.jdbcConfigurationInfo.isNewJdbcConfiguration?S:T;N(e.jdbcConfigurationInfo).then(_).then(D).then(M).then(n).catch(n=>{if(!(n instanceof r.JdbcConfigurationError)){const e=getError(n);g.error(e,j.instant("jdbc.not.saved.configuration"))}})},e.getPreview=()=>{e.activeTab=1,e.isQueryRunning=!0,N(e.jdbcConfigurationInfo).then(_).then(D).then(M).then(n=>(A({render:s.RenderingMode.YASQE,initialQuery:n.query}),n)).then(q).then(([n,e])=>{const t=n&&n.results.bindings&&n.results.bindings.length>0;let o=s.RenderingMode.YASGUI;t||(o=s.RenderingMode.YASQE,g.info(j.instant("jdbc.table.definition"),j.instant("jdbc.preview.sql"))),A({render:o,sparqlResponse:n,initialQuery:e.query})}).catch(n=>{n instanceof r.JdbcConfigurationError?n.jdbcConfigurationInfo&&(n.jdbcConfigurationInfo.isColumnsEmpty||n.jdbcConfigurationInfo.hasUndefinedColumns)&&(P(),e.activeTab=2):g.error(getError(n,0,100),j.instant("jdbc.not.show.preview"))}).finally(()=>{e.isQueryRunning=!1})},e.setActiveTab=n=>{e.activeTab=n;const t=e.jdbcConfigurationInfo.columns;2!==e.activeTab||t&&0!==t.length||N(e.jdbcConfigurationInfo).then(_).then(()=>{e.getColumnsSuggestions()})},e.setDirty=()=>{e.isDirty=!0},e.getTypeLabel=n=>{switch(n){case"iri":return"VARCHAR: IRI";case"string":return"VARCHAR: String";default:return n.indexOf(" ")>0?n:n.toUpperCase()}},e.selectColumnType=(n,t)=>{e.setDirty();const o=e.jdbcConfigurationInfo.columns.find(e=>e.column_name===n);o.column_type===e.getSuggestionSqlType&&M(e.jdbcConfigurationInfo).then(e=>p.getColumnsTypeSuggestion(e.query,[n])).then(n=>n.data).then(n=>{Object(a.updateColumn)(o,n),I(o.column_type,t)}).catch(n=>{g.error(getError(n),j.instant("jdbc.not.suggest.column.type"))})},e.deleteColumn=function(n,t){h.openSimpleModal({title:j.instant("common.warning"),message:j.instant("jdbc.warning.delete.column.msg",{columnName:n}),warning:!0}).result.then((function(){e.jdbcConfigurationInfo.columns.splice(t,1),e.setDirty()}))},e.getColumnsSuggestions=()=>{e.jdbcConfigurationInfo.columns&&e.jdbcConfigurationInfo.columns.length>0?h.openSimpleModal({title:j.instant("common.warning"),message:j.instant("jdbc.warning.column.type.msg"),warning:!0}).result.then((function(){P()})):P()},e.hasPrecision=n=>"iri"===n||"string"===n||"decimal"===n,e.containsColumnsWithPrecision=n=>n&&n.some(n=>e.hasPrecision(n.column_type)),e.containsColumnsWithScale=n=>n&&n.some(n=>L(n.column_type)),e.isLiteral=n=>"iri"!==n&&"unknown"!==n,e.containsNonLiteralColumnsOnly=n=>n&&n.every(n=>!e.isLiteral(n.column_type));const q=n=>{if(e.canWriteActiveRepo){const t=JSON.stringify({name:e.jdbcConfigurationInfo.jdbcConfigurationName,query:e.jdbcConfigurationInfo.query,columns:e.jdbcConfigurationInfo.columns||[]});return Promise.all([p.getNewSqlTablePreview(t).then(n=>n.data),Promise.resolve(n)])}return Promise.all([p.getExistingSqlTablePreview(e.jdbcConfigurationInfo.jdbcConfigurationName).then(n=>n.data),Promise.resolve(n)])},I=(n,e)=>{n===e?g.info(Object(u.decodeHTML)(j.instant("jdbc.same.suggested.sql.type",{type:n})),j.instant("jdbc.suggest.sql.type"),{allowHtml:!0}):g.success(Object(u.decodeHTML)(j.instant("jdbc.suggested.sql.type",{type:n})),j.instant("jdbc.suggest.sql.type"),{allowHtml:!0})},R=(n,t=new o.JdbcConfigurationInfo)=>{e.jdbcConfigurationInfo.columns=t.columns,e.jdbcConfigurationInfo.query=t.query,e.jdbcConfigurationInfo.jdbcConfigurationName=l.search().name||"",e.jdbcConfigurationInfo.isNewJdbcConfiguration=!e.jdbcConfigurationInfo.jdbcConfigurationName,e.prefixes=n,A(),x()},S=n=>{const t={name:n.jdbcConfigurationName,query:n.query,columns:n.columns};return p.createNewJdbcConfiguration(t).then(()=>{e.isDirty=!1,e.jdbcConfigurationInfo.isNewConfiguration=!1,g.success(j.instant("jdbc.saved.configuration")),k()})},T=n=>{const t={name:n.jdbcConfigurationName,query:n.query,columns:n.columns};p.updateJdbcConfiguration(t).then(()=>{e.isDirty=!1,e.jdbcConfigurationInfo.isNewConfiguration=!1,g.success(j.instant("jdbc.configuration.updated")),k()})},A=(n={})=>{const t={};angular.extend(t,e.yasguiConfig||J(),n),e.yasguiConfig=t},J=()=>({showEditorTabs:!1,showToolbar:!1,showResultTabs:!1,showQueryButton:!1,showResultInfo:!1,downloadAsOn:!1,showYasqeResizer:!1,initialQuery:e.jdbcConfigurationInfo.query,componentId:"jdbc-component",prefixes:e.prefixes,maxPersistentResponseSize:0,render:s.RenderingMode.YASQE,getCellContent:U,sparqlResponse:e.emptySparqlResponse,yasqeActionButtons:c.DISABLE_YASQE_BUTTONS_CONFIGURATION,yasqeMode:e.canEditActiveRepo?i.YasqeMode.WRITE:i.YasqeMode.PROTECTED}),N=n=>O().getQueryType().then(e=>(n.isValidQueryType="SELECT"===e,n.isValidQueryType?n:Promise.reject(new r.JdbcConfigurationError("Query type is not valid.")))),_=n=>O().isQueryValid().then(e=>(n.isValidQuery=e,n.isValidQuery?n:Promise.reject(new r.JdbcConfigurationError("Invalid query.")))),D=n=>{if(!n.columns||0===n.columns.length)return n.isColumnsEmpty=!0,g.error(j.instant("jdbc.warning.one.column.msg")),Promise.reject(new r.JdbcConfigurationError("There are not defined columns.",n));return e.jdbcConfigurationInfo.columns&&e.jdbcConfigurationInfo.columns.find(n=>"unknown"===n.column_type)?(n.hasUndefinedColumns=!0,Promise.reject(new r.JdbcConfigurationError("There are columns without defined type.",n))):Promise.resolve(n)},P=()=>{N(e.jdbcConfigurationInfo).then(_).then(M).then(Q).then($).then(n=>e.jdbcConfigurationInfo=n).catch(n=>{console.log(n)})},Q=n=>p.getColumnNames(n.query).then(e=>[n,e.data]).catch((function(n){g.error(getError(n),j.instant("jdbc.not.suggest.column.names"))})),$=([n,t])=>p.getColumnsTypeSuggestion(n.query,t).then((function(o){return n.columns=Object(a.toJDBCColumns)(t,o.data),n.isColumnsEmpty=n.columns.length,e.setDirty(),n})).catch((function(n){g.error(getError(n),j.instant("jdbc.not.suggest.column.types"))})),O=()=>c.YasguiComponentDirectiveUtil.getOntotextYasguiElement("#query-editor"),M=n=>O().getQuery().then(e=>(n.query=e,n)),L=n=>"decimal"===n,U=(n,e)=>{let t=n.value;t=t.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;");return"<div class = 'literal-cell'>"+("<p class='nonUri' style='border: none; background-color: transparent; padding: 0; margin: 0'>"+t+"</p>")+"</div>"},Y=(n,e,t,o)=>{h.openSimpleModal({title:n,message:e,warning:!0}).result.then((function(){angular.isFunction(t)&&t()}),(function(){angular.isFunction(o)&&o()}))},x=()=>{e.getSuggestionSqlType=j.instant("view.jdbc.create.get_suggestion_sql_type"),e.sqlTypes=["string","iri","boolean","byte","short","int","long","float","double","decimal","date","time","timestamp",e.getSuggestionSqlType]},k=()=>{setTimeout((function(){V()}),1e3)},V=()=>{l.url("/jdbc")},W=n=>{e.isDirty&&(n.returnValue=!0)},F=()=>{window.removeEventListener("beforeunload",W),B.forEach(n=>n())},B=[];B.push(t.$on("$translateChangeSuccess",()=>{e.language=w.getLanguage(),x()})),B.push(e.$on("$locationChangeStart",(n,t)=>{if(e.isDirty){n.preventDefault();const e=j.instant("common.confirm"),o=j.instant("jdbc.warning.unsaved.changes");Y(e,o,()=>{F();const n=l.absUrl().length-l.url().length,e=t.substring(n);l.path(e)})}else F()})),B.push(v.subscribe("repositoryWillChangeEvent",n=>new Promise((function(t){if(e.jdbcConfigurationInfo.isNewJdbcConfiguration)return void t(n);const o=()=>{e.isDirty=!1,V(),t(n)};if(e.isDirty){const e=()=>{n.cancel=!0,t(n)},i=j.instant("common.confirm"),r=j.instant("jdbc.warning.unsaved.changes");Y(i,r,o,e)}else o()})))),B.push(e.$on("$destroy",F)),window.addEventListener("beforeunload",W),B.push(e.$watch(e.getActiveRepositoryObject,n=>{n&&(e.canEditActiveRepo=e.canWriteActiveRepo(),E?((()=>{e.loadingControllerResources=!0;const n=d.getActiveRepository();e.jdbcConfigurationInfo.jdbcConfigurationName?Promise.all([d.getPrefixes(n),p.getJdbcConfiguration(e.jdbcConfigurationInfo.jdbcConfigurationName)]).then(([n,e])=>{R(n,e.data)}).finally(()=>e.loadingControllerResources=!1):d.getPrefixes(n).then(n=>R(n)).finally(()=>e.loadingControllerResources=!1)})(),E=!1):O().abortQuery().then(V))}))}angular.module("graphdb.framework.jdbc.controllers",["ui.bootstrap","graphdb.framework.core.services.repositories","graphdb.framework.rest.monitoring.service","toastr","graphdb.framework.utils.event-emitter-service"],["graphdb.framework.utils.notifications"]).controller("JdbcListCtrl",l).controller("JdbcCreateCtrl",g),l.$inject=["$scope","$repositories","JdbcRestService","toastr","ModalService","$translate"],g.$inject=["$q","$scope","$rootScope","$location","toastr","$repositories","$window","$timeout","$interval","JdbcRestService","RDF4JRepositoriesRestService","SparqlRestService","ModalService","$translate","$languageService","EventEmitterService"]},74:function(n,e,t){"use strict";t.r(e),t.d(e,"RenderingMode",(function(){return o}));const o={YASGUI:"mode-yasgui",YASQE:"mode-yasqe",YASR:"mode-yasr"}},82:function(n,e,t){"use strict";t.r(e),t.d(e,"YasqeMode",(function(){return o}));const o={WRITE:"WRITE",READ:"READ",PROTECTED:"PROTECTED"}},87:function(n,e){function t(n,e){return{showToastMessageWithDelay:function(t){return new Promise(o=>{n.success(e.instant(t)),setTimeout(o,200)})}}}angular.module("graphdb.framework.utils.notifications",[]).factory("Notifications",t),t.$inject=["toastr","$translate"]}}]);
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[370],{474:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='<script type="text/ng-template" id="popover-content-user.html">\n\t<h5>{{\'security.user.may\' | translate}}</h5>\n\t<ul>\n <li>{{\'security.use.gdb\' | translate}}</li>\n\t <li>{{\'security.grant.read.access\' | translate}}</li>\n\t\t<li>{{\'security.grant.read.write.access\' | translate}}</li>\n </ul>\n<\/script>\n\n<script type="text/ng-template" id="popover-content-repo-manager.html">\n\t<h5>{{\'security.repo.manager.may\' | translate}}</h5>\n\t<ul>\n\t\t<li>{{\'security.use.gdb\' | translate}}</li>\n\t\t<li>{{\'security.read.write.all.repos\' | translate}}</li>\n\t\t<li>{{\'security.create.edit.delete.repos\' | translate}}</li>\n\t\t<li>{{\'security.access.monitoring\' | translate}}</li>\n\t</ul>\n<\/script>\n\n<script type="text/ng-template" id="popover-content-admin.html">\n\t<h5>{{\'security.admin.may\' | translate}}</h5>\n\t<ul>\n\t\t<li>{{\'security.use.gdb\' | translate}}</li>\n\t\t<li>{{\'security.read.write.all.repos\' | translate}}</li>\n\t\t<li>{{\'security.create.edit.delete.repos\' | translate}}</li>\n\t\t<li>{{\'security.access.monitoring\' | translate}}</li>\n\t\t<li>{{\'security.attach.remote.locations\' | translate}}</li>\n\t\t<li>{{\'security.manage.users.access\' | translate}}</li>\n\t\t<li>{{\'security.manage.cluster\' | translate}}</li>\n\t\t<li>{{\'security.view.sys.info\' | translate}}</li>\n\t</ul>\n<\/script>\n\n<link href="css/lib/ng-tags-input/ng-tags-input.min.css?v=2.8.0-TR13" rel="stylesheet"/>\n\n<h1>{{pageTitle}}</h1>\n\n<div id="wb-user" ng-hide="loader">\n\t<form name="form" class="form newUserForm userForm editUserContainer" ng-submit="submit()" novalidate>\n\t\t<div class="row">\n\t\t\t<div class="col-md-6 us-left-col">\n\t\t\t\t<div class="card login-credentials" ng-hide="isOverrideAuth() || !isLocalAuthentication()">\n\t\t\t\t\t<div class="card-block">\n\t\t\t\t\t\t<h3>{{\'view.login.title\' | translate}}</h3>\n\t\t\t\t\t\t<div class="form-group" ng-class="{\'has-danger\': usernameError}">\n\t\t\t\t\t\t\t<div class="input-group">\n\t\t\t\t\t\t\t\t<span class="input-group-addon" gdb-tooltip="{{\'security.table.username\' | translate}}"><em class="icon-user icon-2x text-muted"></em></span>\n\t\t\t\t\t\t\t\t<input id="wb-user-username" placeholder="{{\'security.table.username\' | translate}}" name="username" class="form-control form-control-lg" type="text" ng-model="user.username" ng-readonly="mode !== \'add\'">\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div ng-show="usernameError" class="form-control-feedback">{{usernameError}}</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class="form-group" ng-class="{\'has-danger\': passwordError}">\n\t\t\t\t\t\t\t<div class="input-group">\n\t\t\t\t\t\t\t\t<span class="input-group-addon" gdb-tooltip="{{\'security.password.placeholder\' | translate}}"><em class="icon-lock icon-2x text-muted"></em></span>\n\t\t\t\t\t\t\t\t<input id="wb-user-password" placeholder="{{passwordPlaceholder | translate}}" name="password" class="form-control form-control-lg" type="password"\tng-model="user.password" ng-hide="user.external || hasExternalAuthUser()" ng-readonly="noPassword">\n\t\t\t\t\t\t\t\t<span ng-show="user.external || hasExternalAuthUser()">{{\'security.auth.from.external.module\' | translate}}</span>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div ng-show="passwordError" class="form-control-feedback">{{passwordError}}</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class="form-group" ng-class="{\'has-danger\': confirmPasswordError}" ng-hide="user.external || hasExternalAuthUser()">\n\t\t\t\t\t\t\t<div class="input-group">\n\t\t\t\t\t\t\t\t<span class="input-group-addon" gdb-tooltip="{{\'security.password.confirm\' | translate}}"><em class="icon-lock icon-2x text-muted"></em></span>\n\t\t\t\t\t\t\t\t<input id="wb-user-confirmpassword" placeholder="{{\'security.password.confirm\' | translate}}" name="password_confirm" class="form-control form-control-lg" type="password" ng-model="user.confirmpassword" ng-readonly="noPassword">\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div ng-show="confirmPasswordError" class="form-control-feedback">{{confirmPasswordError}}</div>\n\t\t\t\t\t\t</div>\n <div>\n <label class="d-block">\n <input type="checkbox" id="noPassword" ng-model="noPassword" ng-change="setNoPassword()">\n <span ng-show="mode === \'add\'">{{\'security.dont.set.password\' | translate}} </span>\n <span ng-show="mode !== \'add\'">{{\'security.unset.password\' | translate}} </span>\n </label>\n </div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t\t<div class="card sparql-editor-settings" id="user-settings">\n\t\t\t\t\t<div class="card-block">\n\t\t\t\t\t\t<h3>{{\'security.user.settings\' | translate}}</h3>\n\n\t\t\t\t\t\t<div id="sameas-on" class="mb-1">\n\t\t\t\t\t\t\t<span class="sameas-label">\n\t\t\t\t\t\t\t\t{{\'security.expand.sameAs.is\' | translate}}\n\t\t\t\t\t\t\t\t<span class="tag {{user.appSettings.DEFAULT_SAMEAS ? \'tag-primary\' : \'tag-default\'}}">\n\t\t\t\t\t\t\t\t\t{{user.appSettings.DEFAULT_SAMEAS ? \'common.on.btn\' : \'common.off.btn\' | translate}}\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t<span gdb-tooltip="{{shouldDisableSameAs() ? \'core.require.inferred\' : \'security.tooltip.click.me\' | translate}}" tooltip-placement="top"\n\t\t\t\t\t\t\t\t ng-click="user.appSettings.DEFAULT_SAMEAS = !user.appSettings.DEFAULT_SAMEAS"\n\t\t\t\t\t\t\t\t class="switch mr-0">\n\t\t\t\t\t\t\t\t<input id="sameAsCheck" type="checkbox" class="switch"\n ng-checked="user.appSettings.DEFAULT_SAMEAS"\n ng-disabled="shouldDisableSameAs()"/>\n\t\t\t\t\t\t\t\t<label for="sameas-on"></label>\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t{{\'security.default.editor.graph\' | translate}}\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<div id="inference-on" class="mb-1">\n\t\t\t\t\t\t\t<span class="inference-label">\n\t\t\t\t\t\t\t\t{{\'security.inference.is\' | translate}}\n\t\t\t\t\t\t\t\t<span class="tag {{user.appSettings.DEFAULT_INFERENCE ? \'tag-primary\' : \'tag-default\'}}">\n\t\t\t\t\t\t\t\t\t{{user.appSettings.DEFAULT_INFERENCE ? \'common.on.btn\' : \'common.off.btn\' | translate}}\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t<span gdb-tooltip="{{\'security.tooltip.click.me\' | translate}}" tooltip-placement="top"\n\t\t\t\t\t\t\t\t ng-click="user.appSettings.DEFAULT_INFERENCE = !user.appSettings.DEFAULT_INFERENCE"\n\t\t\t\t\t\t\t\t class="switch mr-0">\n\t\t\t\t\t\t\t\t<input type="checkbox" class="switch" ng-checked="user.appSettings.DEFAULT_INFERENCE"/>\n\t\t\t\t\t\t\t\t<label for="inference-on"></label>\n\t\t\t\t\t\t\t</span>\n {{\'security.default.editor.graph\' | translate}}\n\t\t\t\t\t\t</div>\n\n <div id="schema-on" class="mb-1">\n\t\t\t\t\t\t\t<span class="schema-label">\n\t\t\t\t\t\t\t\t{{\'security.show.schema\' | translate}}\n\t\t\t\t\t\t\t\t<span class="tag {{user.appSettings.DEFAULT_VIS_GRAPH_SCHEMA ? \'tag-primary\' : \'tag-default\'}}">\n\t\t\t\t\t\t\t\t\t{{user.appSettings.DEFAULT_VIS_GRAPH_SCHEMA ? \'common.on.btn\' : \'common.off.btn\' | translate}}\n\t\t\t\t\t\t\t\t</span>\n <span gdb-tooltip="{{\'security.tooltip.click.me\' | translate}}" tooltip-placement="top"\n ng-click="user.appSettings.DEFAULT_VIS_GRAPH_SCHEMA = !user.appSettings.DEFAULT_VIS_GRAPH_SCHEMA"\n class="switch mr-0">\n\t\t\t\t\t\t\t\t<input type="checkbox" class="switch" ng-checked="user.appSettings.DEFAULT_VIS_GRAPH_SCHEMA"/>\n\t\t\t\t\t\t\t\t<label for="schema-on"></label>\n\t\t\t\t\t\t\t</span>\n {{\'security.default.visual.graph\' | translate}}\n\t\t\t\t\t\t\t</span>\n </div>\n\n\t\t\t\t\t\t<label class="d-block">\n\t\t\t\t\t\t\t<input type="checkbox" ng-model="user.appSettings.EXECUTE_COUNT" id="defaultCount" checked="appSettings.EXECUTE_COUNT">\n\t\t\t\t\t\t\t{{\'security.count.total.results\' | translate}}\n\t\t\t\t\t\t</label>\n\n\t\t\t\t\t\t<label class="d-block">\n\t\t\t\t\t\t\t<input type="checkbox" ng-model="user.appSettings.IGNORE_SHARED_QUERIES" id="ignore-shared" checked="appSettings.IGNORE_SHARED_QUERIES">\n\t\t\t\t\t\t\t{{\'security.ignore.shared.queries\' | translate}}\n\t\t\t\t\t\t</label>\n\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n\t\t\t\t<div class="card" id="workbench-settings" ng-if="showWorkbenchSettings">\n\t\t\t\t\t<div class="card-block">\n\t\t\t\t\t\t<h3>{{\'security.workbench.settings.title\' | translate}}\n\t\t\t\t\t\t\t<em class="icon-info text-tertiary small" gdb-tooltip="{{\'security.workbench.settings.theme.tooltip\' | translate}}"></em></h3>\n\t\t\t\t\t\t<div>\n <div class="form-group">\n <label class="col-lg-2">{{\'security.workbench.settings.theme.label\' | translate}}</label>\n <div class="btn-group theme-selector-dropdown" uib-dropdown>\n <button type="button" class="btn btn-sm btn-secondary dropdown-toggle theme-selector-dropdown-btn" uib-dropdown-toggle>\n {{selectedTheme.label}}\n </button>\n <ul class="dropdown-menu" role="menu">\n <li ng-repeat="theme in themes">\n <a ng-click="setTheme(theme)" class="dropdown-item">{{theme.label}}</a>\n </li>\n </ul>\n </div>\n </div>\n\n <div class="form-group">\n <label class="col-lg-2">{{\'security.workbench.settings.theme.mode.label\' | translate}}</label>\n <div class="radio">\n <label class="px-1">\n <input type="radio" value="light" ng-model="workbenchSettings.mode" ng-change="setThemeMode()"/>\n {{\'security.workbench.settings.theme.mode.light\' | translate}}\n </label>\n <label class="px-1">\n <input type="radio" value="dark" ng-model="workbenchSettings.mode" ng-change="setThemeMode()"/>\n {{\'security.workbench.settings.theme.mode.dark\' | translate}}\n </label>\n </div>\n </div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\n\t\t\t<div class="col-md-6 us-right-col" ng-hide="!isLocalAuthentication()">\n\t\t\t\t<div class="card user-role" id="user-roles">\n\t\t\t\t\t<div class="card-block">\n\t\t\t\t\t\t<h3>{{\'security.user.role\' | translate}}</h3>\n\t\t\t\t\t\t<label class="mr-1"\n\t\t\t\t\t\t\t uib-popover-template="\'popover-content-user.html\'"\n\t\t\t\t\t\t\t popover-trigger="mouseenter"\n\t\t\t\t\t\t\t popover-placement="bottom">\n\t\t\t\t\t\t\t<input type="radio" ng-model="userType" id="roleUser" value="user" ng-disabled="hasEditRestrictions()" >\n\t\t\t\t\t\t\t{{\'security.user.label\' | translate}}\n\t\t\t\t\t\t</label>\n\t\t\t\t\t\t<label class="mr-1"\n\t\t\t\t\t\t\t uib-popover-template="\'popover-content-repo-manager.html\'"\n\t\t\t\t\t\t\t popover-trigger="mouseenter"\n\t\t\t\t\t\t\t popover-placement="bottom">\n\t\t\t\t\t\t\t<input type="radio" ng-model="userType" id="roleRepoAdmin" value="repoManager" ng-disabled="hasEditRestrictions()">\n\t\t\t\t\t\t\t{{\'security.repo.manager.label\' | translate}}\n\t\t\t\t\t\t</label>\n\t\t\t\t\t\t<label uib-popover-template="\'popover-content-admin.html\'"\n\t\t\t\t\t\t\t popover-trigger="mouseenter"\n\t\t\t\t\t\t\t popover-placement="bottom">\n\t\t\t\t\t\t\t<input type="radio" ng-model="userType" id="roleAdmin" value="admin" ng-disabled="hasEditRestrictions()">\n\t\t\t\t\t\t\t{{\'security.admin.label\' | translate}}\n\t\t\t\t\t\t</label>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\n <div class="card user-custom-roles" id="user-custom-roles">\n <div class="card-block">\n <h3>{{\'security.user.custom_role\' | translate}}</h3>\n <div class="input-group">\n <tags-input name="customRoleTag" class="wb-tags-input" ng-model="customRoles" min-length="1"\n ng-disabled="!isUser() || mode === \'settings\'"\n use-strings="true"\n add-on-space="true"\n add-on-comma="true"\n add-on-paste="true"\n replace-spaces-with-dashes="false"\n paste-split-pattern="[\\s+]"\n on-tag-adding="isCustomRoleValid($tag)"\n on-tag-added="addCustomRole($tag)"\n ng-keydown="checkUserInput($event)"\n ng-cut="removeErrorOnCut()"\n placeholder="{{\'security.user.add.custom_role.msg\' | translate}}"\n custom-role-prefix></tags-input>\n <div class="small" ng-hide="isRoleValid">\n <small>{{\'security.user.role.too.short\' | translate}}</small>\n </div>\n <div class="small prefix-warning" ng-if="form.customRoleTag.$warning">\n <small>{{\'acl_management.rulestable.custom_prefix_warning.text\' | translate}}</small>\n </div>\n </div>\n </div>\n </div>\n\n\t\t\t\t<div id="user-repos" class="card user-repositories">\n\t\t\t\t\t<div class="card-block">\n\t\t\t\t\t\t<h3>{{\'security.repo.rights\' | translate}}</h3>\n\t\t\t\t\t\t<div class="has-danger">\n\t\t\t\t\t\t\t<p ng-show="repositoryCheckError" class="form-control-feedback">\n\t\t\t\t\t\t\t\t{{\'security.user.rights\' | translate}}\n\t\t\t\t\t\t\t</p>\n\t\t\t\t\t\t</div>\n <div class="scrollable-table">\n <table class="table table-hover table-sm" aria-describedby="User rights table">\n <thead>\n <tr>\n <th id="repositoryIdColumn">{{\'security.repository.title\' | translate}}</th>\n <th id="readRightsColumn" class="text-xs-center"><em class="icon-eye icon-lg" gdb-tooltip="{{\'security.tooltip.read\' | translate}}"></em></th>\n <th id="writeRightColumn" class="text-xs-center"><em class="icon-edit icon-lg" gdb-tooltip="{{\'security.tooltip.write\' | translate}}"></em></th>\n </tr>\n <tr>\n <th>{{\'security.any.data.repo\' | translate}}\n <em class="icon-info text-tertiary" gdb-tooltip="{{\'security.data.repos\' | translate}}"></em>\n </th>\n <th class="text-xs-center">\n <input class="read" type="checkbox" ng-model="grantedAuthorities.READ_REPO[\'*\']" ng-checked="hasReadPermission(\'*\')" ng-disabled="readCheckDisabled(\'*\')" ng-click="setGrantedAuthorities()">\n </th>\n <th class="text-xs-center">\n <input class="write" type="checkbox" ng-model="grantedAuthorities.WRITE_REPO[\'*\']" ng-checked="hasWritePermission(\'*\')" ng-disabled="writeCheckDisabled(\'*\')" ng-click="setGrantedAuthorities()">\n </th>\n </tr>\n </thead>\n <tbody>\n <div>\n <tr ng-repeat="repository in getReadableRepositories() | orderBy: [\'location\', \'id\']">\n <td class="repository-name">{{repository.id}}<small> &middot; {{repository.location ? repository.location : \'Local\'}}</small></td>\n <td class="text-xs-center read-rights"><input class="read" type="checkbox" ng-model="grantedAuthorities.READ_REPO[createUniqueKey(repository)]" ng-checked="hasReadPermission(repository)" ng-disabled="readCheckDisabled(repository)" ng-click="setGrantedAuthorities()"></td>\n <td class="text-xs-center write-rights"><input class="write" type="checkbox" ng-model="grantedAuthorities.WRITE_REPO[createUniqueKey(repository)]" ng-checked="hasWritePermission(repository)" ng-disabled="writeCheckDisabled(repository)" ng-click="setGrantedAuthorities()"></td>\n </tr>\n </div>\n </tbody>\n </table>\n </div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n </div>\n\t\t</div>\n\n\t\t<div class="text-right">\n <button id="wb-user-goBack" class="btn btn-secondary" type="button" ng-click="goBack()">{{\'common.cancel.btn\' | translate}}</button>\n <button id="wb-user-submit" class="btn btn-primary" type="submit" ng-disabled="!isRoleValid">{{saveButtonText}}</button>\n\t\t</div>\n\t</form>\n</div>\n<div class="ot-loader ot-main-loader" onto-loader size="50" ng-show="loader"></div>\n\n\n\n';return __p}}}]);
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[371],{475:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='<h1>\n\t{{title}}\n\t<span class="btn btn-link"\n\t uib-popover-template="\'js/angular/templates/titlePopoverTemplate.html\'"\n\t popover-trigger="mouseenter"\n\t popover-placement="bottom-right"\n\t popover-append-to-body="true"><span class="icon-info text-tertiary"></span></span>\n</h1>\n<div id="wb-users" ng-hide="loader">\n\t<div class="mb-1">\n\t\t<div class="pull-right">\n\t\t\t<span id="toggle-security" class="mr-1">\n\t\t\t\t<span class="security-switch-label">{{\'security.is\' | translate}} <span class="tag {{securityEnabled() ? \'tag-primary\' : \'tag-default\'}}">{{securityEnabled() ? \'common.on.btn\' : \'common.off.btn\' | translate}}</span></span>\n\t\t\t\t<span gdb-tooltip="{{\'click.to\' | translate}} {{securityEnabled() ? \'disable\' : \'enable\' | translate}} {{\'security.label\' | translate}}" tooltip-placement="top" ng-click="toggleSecurity()" class="switch">\n\t\t\t\t\t<input type="checkbox" class="switch" ng-checked="securityEnabled()"/>\n\t\t\t\t\t<label for="toggle-security"></label>\n\t\t\t\t</span>\n\t\t\t</span>\n\t\t\t<span ng-show="securityEnabled()" id="toggle-freeaccess">\n\t\t\t\t<span>{{\'security.free.access.is\' | translate}} <span class="tag {{freeAccessEnabled() ? \'tag-primary\' : \'tag-default\'}}">{{freeAccessEnabled() ? \'common.on.btn\' : \'common.off.btn\' | translate}}</span></span>\n\t\t\t\t<span gdb-tooltip="{{\'click.to\' | translate}} {{freeAccessEnabled() ? \'disable\' : \'enable\' | translate}} {{\'security.free.access.non.admin\' | translate}}" tooltip-placement="top" ng-click="toggleFreeAccess()" class="switch">\n\t\t\t\t\t<input type="checkbox" class="switch" ng-checked="freeAccessEnabled()"/>\n\t\t\t\t\t<label for="toggle-freeaccess"></label>\n\t\t\t\t</span>\n\t\t\t\t<span ng-show="freeAccessEnabled()">\n\t\t\t\t\t{{\'security.free.access.settings\' | translate}}\n\t\t\t\t\t<a style="padding-left: 0px;" class="btn btn-link" href="#"><em class="icon-settings" gdb-tooltip="{{\'security.free.access.config.title\' | translate}}" ng-click="editFreeAccess()"></em></a>\n\t\t\t\t</span>\n\t\t\t</span>\n\t\t</div>\n\n\t\t<a id="wb-users-userCreateLink" ng-show="!hasExternalAuth()" class="btn btn-primary" href="user/create"><span class="icon-plus"></span> {{\'view.create.user.title\' | translate}}</a>\n\t</div>\n\n\t<div ng-show="hasExternalAuth()">\n\t\t<div>&nbsp;</div>\n\t\t<div class="alert alert-info no-icon mt-1">\n\t\t\t<p>{{\'security.using.external.auth.db\' | translate}} {{getAuthImplementation()}}.</p>\n\t\t\t<p>{{\'security.user.settings.modification\' | translate}}</p>\n\t\t\t<p>{{\'security.user.settings.user_role\' | translate}}</p>\n\t\t</div>\n\t</div>\n\n\t<table id="wb-users-userInUsers" class="table table-striped" aria-describedby="Users table">\n\t\t<thead>\n\t\t\t<tr>\n\t\t\t\t<th id="usernameColumn">{{\'security.table.username\' | translate}}</th>\n\t\t\t\t<th ng-if="!hasExternalAuth()" id="roleColumn">{{\'security.table.role\' | translate}}</th>\n\t\t\t\t<th ng-if="!hasExternalAuth()" id="repoRightsColumn">{{\'security.repo.rights\' | translate}}</th>\n\t\t\t\t<th id="creationDateColumn">{{\'security.table.date.created\' | translate}}</th>\n\t\t\t\t<th id="actionsColumn">{{\'security.table.actions\' | translate}}</th>\n\t\t\t</tr>\n\t\t</thead>\n\t\t<tbody>\n\t\t\t<tr ng-repeat="user in users | orderBy: \'username\'">\n\t\t\t\t<td class="username"><span>{{user.username}}</span></td>\n\t\t\t\t<td ng-if="!hasExternalAuth()" class="user-type">{{user.userTypeDescription}}</td>\n\t\t\t\t<td ng-if="!hasExternalAuth()" class="repository-rights">\n\t\t\t\t\t<div ng-show="user.userType === \'user\'" ng-repeat="(repo, rights) in user.repositories track by $index">\n\t\t\t\t\t\t<em class="icon-eye" ng-class="rights.read ? \'text-tertiary\' : \'text-muted\'" gdb-tooltip="{{rights.read ? \'security.has.read.access\' : \'security.no.read.access\' | translate}}"></em>\n\t\t\t\t\t\t<em class="icon-edit" ng-class="rights.write ? \'text-tertiary\' : \'text-muted\'" gdb-tooltip="{{rights.read ? \'security.has.write.access\' : \'security.no.write.access\' | translate}}"></em>\n\t\t\t\t\t\t{{repo}}\n\t\t\t\t\t</div>\n\t\t\t\t\t<div ng-show="user.userType !== \'user\'">{{\'security.unrestricted\' | translate}}</div>\n <div>\n <span ng-repeat="role in user.customRoles">\n <span class="tag tag-primary" >{{ role }}</span>\n &nbsp;\n </span>\n </div>\n\t\t\t\t</td>\n\t\t\t\t<td class="date-created"><span>{{user.dateCreated | date: \'yyyy-MM-dd HH:mm:ss\'}}</span></td>\n\t\t\t\t<td class="actions-bar">\n\t\t\t\t\t<span>\n\t\t\t\t\t\t<a class="btn btn-link edit-user-btn" href="user/{{encodeURIComponent(user.username)}}">\n <em class="icon-edit" gdb-tooltip="{{\'security.edit.user.tooltip\' | translate}}"></em>\n </a>\n\t\t\t\t\t\t<a class="btn btn-link secondary delete-user-btn" ng-if="user.username != \'admin\'" ng-show="!hasExternalAuth()" href ng-click="removeUser(user.username)">\n <em class="icon-trash" gdb-tooltip="{{\'security.delete.user.tooltip\' | translate}}"></em>\n </a>\n\t\t\t\t\t</span>\n\t\t\t\t</td>\n\t\t\t</tr>\n\t\t</tbody>\n\t</table>\n</div>\n<div class="ot-loader ot-main-loader" onto-loader size="50" ng-show="loader"></div>\n\n';return __p}}}]);
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[372],{476:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='<div class="modal-header">\n <button ng-click="cancel();" class="close" aria-hidden="true"></button>\n <h3 class="modal-title">{{\'view.settings.title\' | translate}}</h3>\n</div>\n\n<div class="modal-body">\n\t<form id="settingsForm" class="form-horizontal" novalidate name="settingsForm">\n\t\t<div ng-hide="supportsStatistics" class="alert alert-info">\n\t\t\t{{\'active.location.version.not.support.settings.warning\' | translate}}\n\t\t</div>\n\t\t<div ng-show="supportsStatistics" class="container" ng-init="moreInfo = false">\n\n\t\t\t<div class="form-check">\n\t\t\t\t<label gdb-tooltip="{{\'click.to\' | translate}} {{settings.statistics ? \'disable\' : \'enable\' | translate}} {{\'this.setting\' | translate}}"\n\t\t\t\t\t tooltip-placement="top" class="form-check-label">\n\t\t\t\t\t<input type="checkbox" ng-model="settings.statistics" class="form-check-input">\n\t\t\t\t\t{{\'send.anonymous.statistics\' | translate}}\n\t\t\t\t</label>\n\t\t\t</div>\n\n\t\t\t<div class="clearfix">\n\t\t\t\t<button ng-click="moreInfo = !moreInfo" class="btn btn-link btn-sm pull-right" ng-show="!moreInfo">{{\'more.info\' | translate}} <span class="icon-caret-down"></span></button>\n\t\t\t\t<button ng-click="moreInfo = !moreInfo" class="btn btn-link btn-sm pull-right" ng-show="moreInfo">{{\'less.info\' | translate}} <span class="icon-caret-up"></span></button>\n\t\t\t</div>\n\n\t\t\t<div id="statisticsInfo" ng-if="moreInfo">\n\t\t\t\t<h4>{{\'why.send.statistics\' | translate}}</h4>\n\t\t\t\t<p>{{\'why.send.statistics.explanation\' | translate}}</p>\n\t\t\t\t<h4>{{\'what.statistics.include\' | translate}}</h4>\n\t\t\t\t<p>{{\'for.each.repo.header\' | translate}}</p>\n\t\t\t\t<ul>\n\t\t\t\t\t<li>\n\t\t\t\t\t\t{{\'absolute.values\' | translate}}\n\t\t\t\t\t\t<ul>\n\t\t\t\t\t\t\t<li>{{\'gdb.edition.and.version\' | translate}}</li>\n\t\t\t\t\t\t\t<li>{{\'number.explicit.implicit.triples\' | translate}}</li>\n\t\t\t\t\t\t\t<li>{{\'entities.number\' | translate}}</li>\n\t\t\t\t\t\t\t<li>{{\'predicates.number\' | translate}}</li>\n\t\t\t\t\t\t\t<li>{{\'repo.size.on.disk\' | translate}}</li>\n\t\t\t\t\t\t\t<li>{{\'is.given.plugin.used\' | translate}}</li>\n\t\t\t\t\t\t\t<li>{{\'used.ruleset\' | translate}}</li>\n\t\t\t\t\t\t\t<li>{{\'os.type\' | translate}}</li>\n\t\t\t\t\t\t</ul>\n\t\t\t\t\t</li>\n\t\t\t\t\t<li>\n\t\t\t\t\t\t{{\'aggregated.values.header\' | translate}}\n\t\t\t\t\t\t<ul>\n\t\t\t\t\t\t\t<li>{{\'queries.per.day\' | translate}}</li>\n\t\t\t\t\t\t\t<li>{{\'average.time.per.query\' | translate}}</li>\n\t\t\t\t\t\t\t<li>{{\'updates.per.day\' | translate}}</li>\n\t\t\t\t\t\t\t<li>{{\'average.time.per.updates\' | translate}}</li>\n\t\t\t\t\t\t</ul>\n\t\t\t\t\t</li>\n\t\t\t\t</ul>\n\t\t\t\t<p>{{\'data.send.to.msg\' | translate}}\n\t\t\t\t\thttp://statistics.graphdb.ontotext.com.</p>\n\t\t\t\t<p>{{\'data.encryption.msg\' | translate}}</p>\n\t\t\t</div>\n\t\t</div>\n\t</form>\n</div>\n<div class="modal-footer">\n\t<button type="button" ng-click="cancel();" class="btn btn-secondary" data-dismiss="modal">{{\'common.cancel.btn\' | translate}}</button>\n\t<button ng-click="submitForm();" form="settingsForm" class="btn btn-primary">{{\'save.settings.btn\' | translate}}</button>\n</div>\n';return __p}}}]);
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[373],{477:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='<div class="modal-header">\n <button type="button" class="close" ng-click="cancel()"></button>\n <h3 class="modal-title">{{\'are.license.details.correct\' | translate}}</h3>\n</div>\n<div class="modal-body">\n <h4>GraphDB {{license.productType | titlecase}} {{\'edition\' | translate}}</h4>\n <div>\n\t\t<div class="float-xs-left d-inline-block mr-2 mb-1">\n\t\t\t{{\'licensed.to\' | translate}}\n\t\t\t<span class="data-value big">{{license.licensee}}</span>\n\t\t</div>\n\t\t<div class="float-xs-left d-inline-block mr-2 mb-1">\n\t\t\t{{\'valid.until\' | translate}}\n\t\t\t<span class="data-value big">{{license.expiryDate ? (license.expiryDate | date : \'yyyy-MM-dd\') : \'perpetual\' | translate}}</span>\n\t\t</div>\n\t\t<div class="float-xs-left d-inline-block mr-2 mb-1">\n\t\t\t{{\'cores.number\' | translate}}\n\t\t\t<span class="data-value big">{{license.maxCpuCores ? license.maxCpuCores : \'unlimited\' | translate}}</span>\n\t\t</div>\n\t\t<div class="float-xs-left d-inline-block mr-2 mb-1">\n\t\t\t{{\'maintenance.date\' | translate}}\n\t\t\t<span class="data-value big">{{license.latestPublicationDate ? (license.latestPublicationDate | date : \'yyyy-MM-dd\') : \'perpetual\' | translate}}</span>\n\t\t</div>\n <div class="d-inline-block mb-1">\n {{\'capabilities\' | translate}}\n <div class="data-value big">\n <div ng-if="license.licenseCapabilities.length !== 0">\n <div ng-repeat="capability in license.licenseCapabilities">\n <div>{{capability}}</div>\n </div>\n </div>\n <div ng-if="license.licenseCapabilities.length === 0">\n <div>{{\'none\' | translate}}</div>\n </div>\n </div>\n </div>\n\t</div>\n\t<div class="text-muted">{{license.typeOfUse}}</div>\n</div>\n<div class="modal-footer">\n\t<button type="button" class="btn btn-secondary" ng-click="cancel()">{{\'common.cancel.btn\' | translate}}</button>\n\t<button class="btn btn-primary" ng-click="ok()">{{\'common.yes.btn\' | translate}}</button>\n</div>\n';return __p}}}]);
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[374],{480:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='\x3c!-- Start addRemoteMember.html --\x3e\n<div class="modal-header" ng-if="mode === \'remote\'">\n <button ng-click="cancel();" class="close" aria-hidden="true" data-dismiss="dialog">\n </button>\n <h3 class="modal-title" ng-if="!model.editMode">{{\'add.remote.repo\' | translate}}</h3>\n <h3 class="modal-title" ng-if="model.editMode">{{\'edit.remote.repo\' | translate}}</h3>\n</div>\n<div class="modal-header" ng-if="mode === \'local\'">\n <button ng-click="cancel();" class="close" aria-hidden="true" data-dismiss="dialog">\n </button>\n <h3 class="modal-title">{{\'edit.local.repo\' | translate}}</h3>\n</div>\n<div class="modal-body" ng-if="mode === \'remote\'">\n <form id="addFedXRepositoryForm" novalidate name="form">\n <label> <input type="radio" name="model.store" ng-model="model.store" ng-disabled="model.editMode" id="graphdb-server" value="RemoteRepository">\n {{\'gdb.rdf4j.server\' | translate}}</label>\n <label class="padding-label"> <input type="radio" name="model.store" ng-model="model.store" ng-disabled="model.editMode" id="sparql-endpoint" value="SPARQLEndpoint">\n {{\'generic.sparql.endpoint\' | translate}}</label>\n <div ng-if="model.store === \'RemoteRepository\'">\n <div class="form-group row">\n <label for="server-url" class="col-lg-3 col-form-label">{{\'server.url\' | translate}}</label>\n <div class="col-lg-8">\n <input name="model.repositoryServer" ng-model="model.repositoryServer" type="text" id="server-url" class="form-control" ng-disabled="model.editMode" ng-required=\'!model.sparqlEndpoint\'>\n </div>\n </div>\n <div class="form-group row">\n <label for="repository-id" class="col-lg-3 col-form-label">{{\'repo.id\' | translate}}</label>\n <div class="col-lg-8">\n <input name="model.repositoryName" ng-model="model.repositoryName" type="text" id="repository-id" class="form-control" ng-disabled="model.editMode" ng-required=\'!model.sparqlEndpoint\'>\n </div>\n </div>\n </div>\n <div ng-if="model.store === \'SPARQLEndpoint\'">\n <div class="form-group row">\n <label for="url-endpoint" class="col-lg-3 col-form-label">{{\'endpoint.url\' | translate}}</label>\n <div class="col-lg-8">\n <input name="model.sparqlEndpoint" ng-model="model.sparqlEndpoint" type="text" id="url-endpoint" class="form-control" ng-disabled="model.editMode" ng-required=\'!model.repositoryServer\' ng-required=\'!model.repositoryName\'>\n </div>\n </div>\n <div class="form-group row indented-div">\n <label for="ask-queries" class="col-lg-7 offset-xs-2">\n <input name = "model.supportsASKQueries" ng-model = "model.supportsASKQueries" type="checkbox" id="ask-queries" ng-true-value="\'true\'" ng-false-value="\'false\'"> {{\'supports.ask.queries\' | translate}}\n </label>\n </div>\n </div>\n <div id="auth-credentials">\n <p> <strong>{{\'authentication.credentials\' | translate}}</strong> </p>\n <div id="username" class="form-group row">\n <label for="username-credentials" class=" col-lg-3 col-form-label">{{\'username\' | translate}}</label>\n <div class="col-lg-8">\n <input type="text" id="username-credentials" class="form-control" placeholder="my-user" ng-model="model.username">\n </div>\n </div>\n <div id="password" class="form-group row">\n <label for="password-credentials" class="col-lg-3 col-form-label">{{\'pass\' | translate}}</label>\n <div class="col-lg-8">\n <input type="password" id="password-credentials" class="form-control" placeholder="my-password" ng-model="model.password">\n </div>\n </div>\n </div>\n </form>\n</div>\n<div class="modal-body" ng-if="mode === \'local\'">\n <form id="addFedXRepositoryForm" novalidate name="form">\n <div id="respect">\n <input type="radio" name="model.respectRights" ng-model="model.respectRights" id="respect_access" value="true">\n <label for="respect_access" style="font-size: 1.3em; display:inline">{{\'respect.repo.access.rights\' | translate}}</label>\n <p class="indented-div">{{\'no.access.to.repo.users.warning\' | translate}}</p>\n </div>\n <div id="ignore">\n <input type="radio" name="model.respectRights" ng-model="model.respectRights" id="ignore_access" value="false">\n <label for="ignore_access" style="font-size: 1.3em; display:inline">{{\'ignore.repo.access.rights\' | translate}}</label>\n <p class="indented-div">{{\'regardless.repo.rights.federated.view.warning\' | translate}}</p>\n </div>\n </form>\n</div>\n<div class="modal-footer">\n <button type="submit" form="addFedXRepositoryForm" ng-click="ok();" class="btn btn-primary"\n ng-disabled="form.$invalid" ng-if="!model.editMode"> {{\'common.add\' | translate}}\n </button>\n <button type="submit" form="addFedXRepositoryForm" ng-click="ok();" class="btn btn-primary"\n ng-disabled="form.$invalid" ng-if="model.editMode"> {{\'edit\' | translate}}\n </button>\n <button type="button" ng-click="cancel();" class="btn btn-secondary" data-dismiss="modal">{{\'common.cancel.btn\' | translate}}</button>\n</div>\n';return __p}}}]);
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[375],{481:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='<div class="modal-header">\n <button ng-click="cancel();" class="close" aria-hidden="true"></button>\n <h3 class="modal-title">{{\'attach.remote.gdb.instance\' | translate}}</h3>\n</div>\n<div class="modal-body">\n <form id="addLocationForm" novalidate name="form">\n <div class="form-group row">\n <label for="sesameLocation" class="col-md-4 col-form-label">{{\'remote.location.url\' | translate}}</label>\n <div class="col-md-8">\n <input id="sesameLocation" ng-model="newLocation.uri" required name="sesameLocation" class="form-control"\n placeholder="http://my-hostname:7200" ng-blur="isValidLocation()"/>\n\n <span class="form-text text-muted">{{\'remote.location.enter.url.msg\' | translate}}</span>\n </div>\n </div>\n <div ng-show="!isValidLocation()" class="alert alert-warning">\n {{\'valid.remote.location.warning\' | translate}} http://server.example.com:7200/.\n </div>\n\n <div ng-if="!newLocation.clusterMode" class="form-group row">\n <label class="col-md-4 col-form-label">{{\'auth.type.header\' | translate}}</label>\n <div class="col-md-8">\n <label class="col-form-label" gdb-tooltip="{{\'remote.location.no.auth.used.tooltip\' | translate}}">\n <input type="radio" name="authType" ng-model="newLocation.authType" value="none"/>\n {{\'auth.type.none\' | translate}}\n </label>\n &nbsp;\n <label class="col-form-label" gdb-tooltip="{{\'basic.auth.type.tooltip\' | translate}}. {{\'basic.auth.type.admin.constraint.tooltip\' | translate}}">\n <input type="radio" name="authType" ng-model="newLocation.authType" value="basic"/>\n {{\'auth.type.basic\' | translate}}\n </label>\n &nbsp;\n <label class="col-form-label" gdb-tooltip="{{\'signature.auth.type.tooltip\' | translate}}">\n <input type="radio" name="authType" ng-model="newLocation.authType" value="signature"/>\n {{\'auth.type.signature\' | translate}}\n </label>\n </div>\n </div>\n <div class="form-group row" ng-if="newLocation.authType === \'none\'">\n <div class="col-md-12">{{\'remote.location.no.auth.used.header\' | translate}}</div>\n </div>\n <div ng-if="newLocation.authType === \'basic\'">\n <div class="form-group row">\n <div class="col-md-12">{{\'basic.auth.type.constraint\' | translate}}</div>\n </div>\n <div class="form-group row">\n <label for="username" class="col-md-4 col-form-label">{{\'username.required\' | translate}}</label>\n <div class="col-md-8">\n <input id="username" ng-model="newLocation.username" name="locationUsername" placeholder="{{\'my.user.placeholder\' | translate}}"\n class="form-control" ng-required="newLocation.authType === \'basic\'"/>\n </div>\n </div>\n <div class="form-group row">\n <label for="password" class="col-md-4 col-form-label">{{\'password.required\' | translate}}</label>\n <div class="col-md-8">\n <input id="password" ng-model="newLocation.password" name="locationPassword" placeholder="{{\'my.password.placeholder\' | translate}}"\n type="password" class="form-control" ng-required="newLocation.authType === \'basic\'"/>\n </div>\n </div>\n </div>\n <div class="form-group row" ng-if="newLocation.authType === \'signature\'">\n <div class="col-md-12">\n <a ng-if="newLocation.clusterMode">\n {{\'signature.cluster.auth.info\' | translate}}\n </a>\n <a ng-if="!newLocation.clusterMode">\n {{\'signature.auth.info\' | translate}}\n </a>\n <a href="{{docBase}}/access-control.html#gdb-authentication"\n rel="noopener" target="_blank">Access Control / GDB authentication</a>{{\'signature.auth.info.last\' |\n translate}}\n </div>\n </div>\n </form>\n</div>\n<div class="modal-footer">\n <button type="button" ng-click="cancel();" class="btn btn-secondary" data-dismiss="modal">{{\'common.cancel.btn\' | translate}}</button>\n <button type="submit" ng-click="ok();" class="btn btn-primary add-location-btn" form="addLocationForm"\n ng-disabled="form.$invalid"><span class="icon-plus"></span> {{\'common.attach\' | translate}}\n </button>\n</div>\n';return __p}}}]);
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[376],{482:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='\x3c!-- Start editLocation.html --\x3e\n\n<div class="modal-header">\n\t<button type="button" class="close" ng-click="cancel();" aria-hidden="true"></button>\n\t<h3 class="modal-title">{{\'edit.location\' | translate}}</h3>\n</div>\n<div class="modal-body">\n <form id="addLocationForm" autocomplete="off" name="form">\n <div class="form-group row">\n <label class="col-md-4 col-form-label">{{\'auth.type.header\' | translate}}</label>\n <div class="col-md-8">\n <label class="col-form-label" gdb-tooltip="{{\'remote.location.no.auth.used.tooltip\' | translate}}">\n <input type="radio" name="authType" ng-model="editedLocation.authType" value="none"/>\n {{\'auth.type.none\' | translate}}\n </label>\n &nbsp;\n <label class="col-form-label" gdb-tooltip="{{\'basic.auth.type.tooltip\' | translate}}">\n <input type="radio" name="authType" ng-model="editedLocation.authType" value="basic"/>\n {{\'auth.type.basic\' | translate}}\n </label>\n &nbsp;\n <label class="col-form-label" gdb-tooltip="{{\'signature.auth.type.tooltip\' | translate}}">\n <input type="radio" name="authType" ng-model="editedLocation.authType" value="signature"/>\n {{\'auth.type.signature\' | translate}}\n </label>\n </div>\n </div>\n <div class="form-group row" ng-if="editedLocation.authType === \'none\'">\n <div class="col-md-12">{{\'remote.location.no.auth.used.header\' | translate}}</div>\n </div>\n <div ng-if="editedLocation.authType === \'basic\'">\n <div class="form-group row">\n <div class="col-md-12">{{\'basic.auth.type.constraint\' | translate}}</div>\n </div>\n <div class="form-group row">\n <label for="username" class="col-md-4 col-form-label">{{\'username.required\' | translate}}</label>\n <div class="col-md-8">\n <input id="username" ng-model="editedLocation.username" name="locationUsername" placeholder="{{\'my.user.placeholder\' | translate}}"\n class="form-control" ng-required="editedLocation.authType === \'basic\'"/>\n </div>\n </div>\n <div class="form-group row">\n <label for="password" class="col-md-4 col-form-label">{{\'password.required\' | translate}}</label>\n <div class="col-md-8">\n <input id="password" ng-model="editedLocation.password" name="locationPassword" placeholder="{{\'my.password.placeholder\' | translate}}"\n type="password" class="form-control" ng-required="editedLocation.authType === \'basic\'"/>\n </div>\n </div>\n </div>\n <div class="form-group row" ng-if="editedLocation.authType === \'signature\'">\n <div class="col-md-12">\n {{\'signature.auth.info\' | translate}}<a href="{{docBase}}/access-control.html#gdb-authentication"\n rel="noopener" target="_blank">Access Control / GDB authentication</a>{{\'signature.auth.info.last\' | translate}}\n </div>\n </div>\n </form>\n</div>\n<div class="modal-footer">\n <button type="button" ng-click="cancel();" class="btn btn-secondary">{{\'common.cancel.btn\' | translate}}</button>\n <button ng-click="ok();" form="addLocationForm" class="btn btn-primary" ng-disabled="form.$invalid">{{\'common.save.btn\' | translate}}</button>\n</div>\n\n\x3c!-- End editLocation.html --\x3e\n';return __p}}}]);
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[377],{483:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='<div class="modal-header">\n <button type="button" class="close" ng-click="cancel()"></button>\n <h4 class="modal-title">{{dialogTitle}}</h4>\n</div>\n\n<div class="modal-body">\n <div class="form-group">\n <textarea id="wb-repository-file-textarea" class="form-control" rows="10" ng-model="fileContent"\n placeholder="{{\'update.file.content.placeholder\' | translate}}"\n uib-popover="{{\'update.file.content.tooltip\' | translate}}"\n popover-placement="bottom"\n popover-trigger="focus"></textarea>\n </div>\n</div>\n\n<div class="modal-footer">\n <div>\n <button type="button" ng-click="cancel()" class="btn btn-secondary">{{\'common.cancel.btn\' | translate}}</button>\n <button id="wb-repository-saveFile" class="btn btn-primary" type="button"\n ng-click="ok()">{{\'common.save.btn\' | translate}}</button>\n </div>\n</div>\n';return __p}}}]);
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[378],{484:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='\x3c!-- Start editLocation.html --\x3e\n\n<div class="modal-header">\n\t<button class="close" ng-click="cancel();" aria-hidden="true"></button>\n\t<h3 class="modal-title">{{\'upload.repo.config.header\' | translate}}</h3>\n</div>\n<div class="modal-body">\n\t<div class="btn btn-outline-primary btn-lg btn-block" ng-if="!editRepoPage">\n\t\t<a ngf-select ngf-change="upload($files)" ngf-multiple="false" class="selectFiles pointer clearfix"\n\t\t accept=".ttl" gdb-tooltip="{{\'select.repo.config.tooltip\' | translate}}">\n\t\t\t<em class="icon-upload icon-lg pull-left" gdb-tooltip="Select files"></em>\n\t\t\t<div class="pull-left">\n\t\t\t\t<span>{{\'upload.ttl.file.btn\' | translate}}</span>\n\t\t\t\t<br>\n\t\t\t\t<small ng-hide="uploadFile" class="text-muted">{{\'no.file.selected.error\' | translate}}</small>\n\t\t\t\t<small ng-show="uploadFile" class="text-muted"\n translate="selected.file.msg"\n translate-value-name="{{uploadFile.name}}"></small>\n\t\t\t</div>\n\t\t\t<div ng-show="uploadFileLoader" onto-loader size="48" class="ot-loader pull-right"></div>\n\t\t</a>\n\t</div>\n</div>\n<div class="modal-footer">\n <button type="button" class="btn btn-secondary" ng-click="cancel()">{{\'common.cancel.btn\' | translate}}</button>\n <button class="btn btn-primary" ng-click="ok()">{{\'common.create.btn\' | translate}}</button>\n</div>\n\n\x3c!-- End editLocation.html --\x3e\n';return __p}}}]);
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[379],{485:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='<div ng-init="getRepositorySize()" style="margin: -4px 0; padding: 10px">\n <div class="row">\n <label style="margin-right: 10px">{{\'location.label\' | translate}}</label>\n <span class="text-right pull-right">\n\t\t\t{{popoverRepo.location ? popoverRepo.location : \'Local\'}}\n\t\t</span>\n </div>\n\t<div class="row">\n\t\t<label style="margin-right: 10px">{{\'type.label\' | translate}}</label>\n\t\t<span class="text-right pull-right">\n\t\t\t{{toHumanReadableType(popoverRepo.type)}}\n\t\t</span>\n\t</div>\n\t<div class="row mb-1">\n\t\t<label style="margin-right: 10px">{{\'access.label\' | translate}}</label>\n\t\t<span class="text-right pull-right">\n\t\t\t{{(popoverRepo.writable && canWriteRepoInLocation(popoverRepo) && popoverRepo.type !== \'ontop\') ? \'read.write.label\' : \'read.only.label\' | translate}}\n\t\t</span>\n\t</div>\n\t<div ng-show="repositorySize.total >= 0">\n\t\t<div class="row" ng-show="repositorySize.total >= 0" style="margin-top: 0">\n\t\t\t\t<label style="margin-right: 10px">{{\'total.statements.label\' | translate}}</label>\n\t\t\t<span class="text-right pull-right">\n\t\t\t\t{{repositorySize.total | currency:\'\':0}}\n\t\t\t</span>\n\t\t</div>\n\t\t<div class="row" ng-show="repositorySize.explicit >= 0" style="margin-top: 0">\n\t\t\t\t<label style="margin-right: 10px">{{\'explicit.label\' | translate}}</label>\n\t\t\t<span class="text-right pull-right">\n\t\t\t\t{{repositorySize.explicit != 0 ? (repositorySize.explicit | currency:\'\':0) : 0}}\n\t\t\t</span>\n\t\t</div>\n\t\t<div class="row" ng-show="repositorySize.inferred >= 0" style="margin-top: 0">\n\t\t\t<label style="margin-right: 10px">{{\'inferred.label\' | translate}}</label>\n\t\t\t<span class="text-right pull-right">\n\t\t\t\t{{repositorySize.inferred | currency:\'\':0}}\n\t\t\t</span>\n\t\t</div>\n\t\t<div class="row" ng-show="repositorySize.explicit >= 0" style="margin-top: 0">\n\t\t\t\t<label style="margin-right: 10px">{{\'expansion.ratio.label\' | translate}}</label>\n\t\t\t<span class="text-right pull-right">\n\t\t\t\t{{repositorySize.explicit != 0 ? (repositorySize.total/repositorySize.explicit | currency:\'\') : \'-\'}}\n\t\t\t</span>\n\t\t</div>\n\t</div>\n\t<div class="row" ng-hide="repositorySize.loading || repositorySize.total >= 0">\n\t\t{{\'size.info.not.available\' | translate}}\n\t</div>\n\t<div class="row" class="row" ng-show="repositorySize.loading">\n\t\t{{\'common.loading\' | translate}}\n\t</div>\n</div>\n';return __p}}}]);
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[38,99,206,207,208,209,210],{105:function(e,r,t){"use strict";t.r(r),t.d(r,"JdbcDriverType",(function(){return o}));const o={GENERIC:"generic",MY_SQL:"mySQL",POSTGRESS:"postgreSQL",ORACLE:"oracle",MS_SQL:"msSQL",DB2:"DB2",DREMIO:"dremio",DATABRICKS:"databricks",SNOWFLAKE:"snowflake"}},170:function(e,r,t){"use strict";t.r(r),t.d(r,"OntopConnectionInformation",(function(){return o}));class o{constructor(e="generic"){this.driverType=e,this.hostName="",this.port=void 0,this.databaseName="",this.username="",this.password="",this.driverClass="",this.url="",this.urlUserInput=""}}},171:function(e,r,t){"use strict";t.r(r),t.d(r,"OntopDriverData",(function(){return n}));var o=t(105);class n{constructor(){this.classAvailable=!1,this.downloadDriverUrl="",this.driverClass="",this.driverName="",this.driverType="",this.portRequired=!1,this.urlTemplate=""}static isGenericDriver(e){return e===o.JdbcDriverType.GENERIC}static isSnowflakeDriver(e){return e===o.JdbcDriverType.SNOWFLAKE}}},172:function(e,r,t){"use strict";t.r(r),t.d(r,"OntopFileInfo",(function(){return o}));class o{constructor(e,r=!1){this.type=e,this.fileName="",this.loading=!1,this.required=r}}},173:function(e,r,t){"use strict";t.r(r),t.d(r,"OntopFileType",(function(){return o}));const o={OBDA:"obdaFile",OWL:"owlFile",CONSTRAINT:"constraintFile",LENSES:"lensesFile",DB_METADATA:"dbMetadataFile"}},174:function(e,r,t){"use strict";t.r(r),t.d(r,"OntopRepositoryError",(function(){return o}));class o extends Error{}},277:function(e,r,t){"use strict";t.r(r);var o=t(145),n=t(173),a=t(170),i=t(172),s=t(174),p=t(171),c=t(105);function l(e,r,t,l,d){return{restrict:"E",scope:!1,templateUrl:"js/angular/repositories/templates/ontop-repo.html",link:function(m){m.isGenericDriver=!0,m.defaultUrlTemplate="jdbc:database://localhost:port/database_name",m.ontopProperiesLink="https://ontop-vkg.org/guide/advanced/configuration.html",m.ontopFileType=n.OntopFileType,m.selectedDriver=new p.OntopDriverData,m.supportedDriversData=[],m.formData={connectionInformation:new a.OntopConnectionInformation,settings:{additionalProperties:"",ontopFiles:[]}},m.selectDriver=e=>{m.selectedDriver=m.supportedDriversData.find(r=>r.driverType===e),m.isGenericDriver=p.OntopDriverData.isGenericDriver(m.selectedDriver.driverType),m.editRepoPage&&m.currentOntopRepoInfo&&m.currentOntopRepoInfo.connectionInformation.driverType===e?m.formData=_.cloneDeep(m.currentOntopRepoInfo):(w(),m.formData.connectionInformation.driverType=m.selectedDriver.driverType),m.formData.connectionInformation.driverClass=m.selectedDriver.driverClass,m.updateUrl()},m.getOntopFileInfo=e=>m.formData.settings.ontopFiles.find(r=>e===r.type),m.getHostNameLabel=()=>{const e=p.OntopDriverData.isSnowflakeDriver(m.selectedDriver.driverType)?"ontop.repo.database.snowflake.host_name":"ontop.repo.database.host_name";return d.instant(e)+"*"},m.getDatabaseNameLabel=()=>{let e="";switch(m.selectedDriver.driverType){case c.JdbcDriverType.SNOWFLAKE:e="ontop.repo.database.warehouse.database_name";break;case c.JdbcDriverType.DATABRICKS:e="ontop.repo.database.http_path.database_name";break;case c.JdbcDriverType.DREMIO:e="ontop.repo.database.schema.database_name";break;default:e="ontop.repo.database.database_name"}return d.instant(e)},m.updateUrl=()=>{const e=u()||"";m.formData.connectionInformation.url=e+m.formData.connectionInformation.urlUserInput},m.isTestConnectionDisabled=()=>{const e=m.formData.connectionInformation,r=m.selectedDriver;return!(e.driverClass&&e.url&&(!r.portRequired||e.port))||!(p.OntopDriverData.isGenericDriver(r.driverType)||e.hostName&&e.databaseName)},m.testConnection=()=>{b().then(R).then(O).then(g).then(N).then(h).then(()=>r.validateOntopPropertiesConnection(m.repositoryInfo)).then(()=>t.success(d.instant("ontop.repo.successful.connection.msg"))).catch(e=>{e instanceof s.OntopRepositoryError?t.error(e.message):I(d.instant("ontop.repo.failed.to.connect"),e)})},m.editFile=t=>{const n=m.repositoryInfo.params[t.type].label,a=d.instant("update.file.edit.content.header",{fileName:n});e.open({templateUrl:"js/angular/templates/modal/editRepoFile.html",controller:"EditRepositoryFileCtrl",windowClass:"update-ontop-repo-dialog",resolve:{file:()=>{const e=m.repositoryInfo.params[t.type];return e?e.value:""},dialogTitle:()=>a}}).result.then(e=>{r.updateRepositoryFileContent(e.fileLocation,e.content,m.repositoryInfo.location).success(e=>{t.fileName=Object(o.getFileName)(e.fileLocation),m.repositoryInfo.params[t.type].value=e.fileLocation}).error(e=>{I(d.instant("common.error"),e)})})},m.uploadOntopFile=(e,r)=>{if(e&&e.length){const o=e[0];r.loading=!0;const n={url:"rest/repositories/file/upload",data:{file:o,location:m.repositoryInfo.location}};l.upload(n).success(e=>{e.success?(r.fileName=o.name,m.repositoryInfo.params[r.type].value=e.fileLocation):t.error(e.errorMessage)}).error(e=>{I(d.instant("common.error"),e),m.uploadFile=""}).finally(()=>{r.loading=!1})}},m.updateOntopRepo=()=>{const e=m.editRepoPage?m.editRepository:m.createRepo;T().then(b).then(R).then(O).then(g).then(N).then(F).then(h).then(e).catch(e=>{e instanceof s.OntopRepositoryError?t.error(e.message):console.log(e)})},m.onKeyDownInUrlInput=e=>{const r=e.keyCode;if(37===r||39===r||36===r||35===r)return;const t=u();if(!t)return;const o=e.ctrlKey||e.metaKey;if(o&&65===r||o&&67===r)return;const n=e.target.selectionStart;8===r&&n-1<t.length&&(e.preventDefault(),e.stopPropagation()),n<t.length&&(e.preventDefault(),e.stopPropagation())},m.onKeyUpInUrlInput=()=>{f()};const f=()=>{const e=u();e&&m.formData.connectionInformation.url.startsWith(e)?m.formData.connectionInformation.urlUserInput=m.formData.connectionInformation.url.substring(e.length):m.formData.connectionInformation.urlUserInput=m.formData.connectionInformation.url},u=()=>p.OntopDriverData.isSnowflakeDriver(m.selectedDriver.driverType)?D():v(),D=()=>{let e=m.selectedDriver.urlTemplate;const r=m.formData.connectionInformation;return r.hostName&&(e=e.replace("{identifier}",r.hostName)),r.port&&(e=e.replace(".snowflakecomputing.com/?",`.snowflakecomputing.com:${r.port}/?`)),r.databaseName&&(e=e.replace("{database}",r.databaseName)),e},v=()=>{let e=m.selectedDriver.urlTemplate;const r=m.formData.connectionInformation;return r.hostName&&(e=r.port?e.replace("{hostport}",`${r.hostName}:${r.port}`):e.replace("{hostport}",""+r.hostName)),r.databaseName&&(e=e.replace("{database}",r.databaseName)),e},y=e=>{m.formData.settings.ontopFiles.forEach(r=>{r.loading=e})},h=()=>{y(!0);const e=m.formData.connectionInformation,t={hostName:e.hostName,port:e.port,databaseName:e.databaseName,userName:e.username,password:e.password,driverClass:e.driverClass,url:e.url,additionalProperties:m.formData.settings.additionalProperties};return r.updatePropertiesFile(m.repositoryInfo.params.propertiesFile.value,t,m.repositoryInfo.location,m.selectedDriver.driverType).success(e=>{m.repositoryInfo.params.propertiesFile.value=e.fileLocation}).error(e=>{I(d.instant("common.error"),e)}).finally(()=>y(!1))},I=(e,r)=>{const o=getError(r);t.error(o,e)},b=()=>p.OntopDriverData.isGenericDriver(m.selectedDriver.driverType)||m.formData.connectionInformation.hostName?Promise.resolve():Promise.reject(new s.OntopRepositoryError(d.instant("missing.required.field",{fieldName:d.instant("ontop.repo.database.host_name")}))),O=()=>p.OntopDriverData.isGenericDriver(m.selectedDriver.driverType)||m.formData.connectionInformation.databaseName?Promise.resolve():Promise.reject(new s.OntopRepositoryError(d.instant("missing.required.field",{fieldName:d.instant("ontop.repo.database.database_name")}))),g=()=>m.formData.connectionInformation.driverClass?Promise.resolve():Promise.reject(new s.OntopRepositoryError(d.instant("missing.required.field",{fieldName:d.instant("ontop.repo.database.driver_class")}))),N=()=>m.formData.connectionInformation.url?Promise.resolve():Promise.reject(new s.OntopRepositoryError(d.instant("missing.required.field",{fieldName:d.instant("ontop.repo.database.url")}))),T=()=>m.repositoryInfo.id?Promise.resolve():Promise.reject(new s.OntopRepositoryError(d.instant("empty.repoid.warning"))),F=()=>m.getOntopFileInfo(n.OntopFileType.OBDA).fileName?Promise.resolve():Promise.reject(new s.OntopRepositoryError(d.instant("ontop.repo.missing.required.file",{fileName:m.repositoryInfo.params[n.OntopFileType.OBDA].label}))),R=()=>m.selectedDriver.portRequired&&!m.formData.connectionInformation.port?Promise.reject(new s.OntopRepositoryError(d.instant("missing.required.field",{fieldName:d.instant("ontop.repo.database.port")}))):Promise.resolve(),w=()=>{m.formData={connectionInformation:new a.OntopConnectionInformation,settings:{additionalProperties:"",ontopFiles:[]}},Object.values(n.OntopFileType).forEach(e=>{const r=new i.OntopFileInfo(e);m.formData.settings.ontopFiles.push(r)}),m.getOntopFileInfo(n.OntopFileType.OBDA).required=!0};r.getSupportedDriversData(m.repositoryInfo).success(e=>{m.supportedDriversData=e}).error(e=>{I(d.instant("common.error"),e)}).then(()=>{m.editRepoPage?(y(!0),r.loadPropertiesFile(m.repositoryInfo.params.propertiesFile.value,m.repositoryInfo.location,m.selectedDriver.driverType).success(e=>{let r=m.supportedDriversData.find(r=>r.driverClass===e.driverClass);r&&e.hostName||(r=m.supportedDriversData.find(e=>p.OntopDriverData.isGenericDriver(e.driverType))),m.selectDriver(r.driverType),m.formData.connectionInformation.driverType=r.driverType,m.formData.connectionInformation.driverClass=e.driverClass,m.formData.connectionInformation.password=e.password,m.formData.connectionInformation.username=e.userName,m.formData.connectionInformation.url=e.url,m.formData.settings.additionalProperties=e.additionalProperties,p.OntopDriverData.isGenericDriver(r.driverType)||(m.formData.connectionInformation.hostName=e.hostName,m.formData.connectionInformation.databaseName=e.databaseName,m.formData.connectionInformation.port=e.port?parseInt(e.port,10):void 0),f(),m.updateUrl(),Object.values(n.OntopFileType).forEach(e=>{const r=m.repositoryInfo.params[e],t=m.getOntopFileInfo(e);r&&(t.fileName=Object(o.getFileName)(r.value))}),m.currentOntopRepoInfo=_.cloneDeep(m.formData)}).error(e=>{I(d.instant("common.error"),e)}).finally(()=>{y(!1)})):m.selectDriver(c.JdbcDriverType.GENERIC)})}}}angular.module("graphdb.framework.repositories.ontop-repo.directive",[]).directive("ontopRepo",l),l.$inject=["$uibModal","RepositoriesRestService","toastr","Upload","$translate"]}}]);
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[380],{486:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='<div class="help-info">\n <h4>{{title}}</h4>\n <p ng-bind-html="helpInfo">\n \x3c!--{{helpInfo}}--\x3e\n </p>\n</div>';return __p}}}]);
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[381],{487:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='<link href="css/ttyg/agent-list.css?v=2.8.0-TR13" rel="stylesheet"/>\n\n<div class="agent-list-component">\n <div class="agents-filter-dropdown btn-group" uib-dropdown>\n <button type="button" uib-dropdown-toggle class="btn btn-outline-primary dropdown-toggle">\n <i class="fa-kit fa-gdb-repo-graphdb mr-1"></i>\n <span class="selected-filter">{{selectedAgentsFilter.label}}</span>\n <i class="fa-regular fa-filter" gdb-tooltip="{{\'ttyg.agent.btn.filter.tooltip\' | translate}}"></i>\n </button>\n <ul class="dropdown-menu" role="menu">\n <li ng-repeat="filterModel in agentListFilterModel">\n <button type="button" class="dropdown-item" ng-click="onAgentsFilterChange(filterModel)"\n data-value="{{filterModel.label}}">\n {{filterModel.label}}\n </button>\n </li>\n </ul>\n </div>\n\n <div class="agent-list">\n <div ng-if="!agentList.agents.length" class="alert alert-warning">\n {{\'ttyg.agent.messages.no_agents\' | translate}}\n </div>\n\n <div ng-repeat="agent in agentList.filterableAgents">\n <div ng-if="!deletingAgent || deletingAgent.agentId !== agent.id" class="agent-item"\n ng-class="{\'selected\': agent.id === selectedAgent.id}">\n <div class="agent-info" ng-if="agent.repositoryId">\n <div class="agent-name">{{agent.name}}</div>\n <div class="related-repository">\n <i class="fa-kit fa-gdb-repo-graphdb"></i>\n {{agent.repositoryId}}\n </div>\n </div>\n <div class="agent-info agent-no-repo" ng-if="!agent.repositoryId">\n <div class="agent-name">{{agent.name}}</div>\n <div class="related-repository">\n <i class="fa-regular fa-triangle-exclamation text-warning"></i>\n {{\'ttyg.agent.deleted_repository\' | translate}}\n </div>\n </div>\n <div class="btn-group">\n <button class="btn btn-link secondary btn-sm open-agent-actions-btn"\n data-toggle="dropdown" aria-expanded="false"\n ng-if="true"\n ng-click="openAgentActionMenu()"\n ng-disabled="false">\n <i class="fa-regular fa-ellipsis"></i>\n </button>\n <div class="dropdown-menu dropdown-menu-right agent-actions-menu">\n <button class="dropdown-item edit-agent-btn" type="button" ng-click="onEditAgent(agent)">\n <i class="fa-regular fa-gear"></i>\n <span>{{\'ttyg.agent.btn.edit_agent.label\' | translate}}</span>\n </button>\n <button class="dropdown-item clone-agent-btn" type="button" ng-click="onCloneAgent(agent)">\n <i class="fa-regular fa-clone"></i>\n <span>{{\'ttyg.agent.btn.clone_agent.label\' | translate}}</span>\n </button>\n <div class="dropdown-divider"></div>\n <button class="dropdown-item delete-agent-btn" type="button" ng-click="onDeleteAgent(agent)">\n <i class="fa-regular fa-trash-can"></i>\n <span>{{\'ttyg.agent.btn.delete_agent.label\' | translate}}</span>\n </button>\n </div>\n </div>\n </div>\n\n <div class="deleting-agent-loader" ng-if="deletingAgent.agentId === agent.id && deletingAgent.inProgress"\n onto-loader-fancy message="{{\'ttyg.agent.deleting_agent\' | translate}}"\n size="25"></div>\n </div>\n </div>\n</div>\n';return __p}}}]);
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[382],{488:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='<link href="css/ttyg/agent-select-menu.css?v=2.8.0-TR13" rel="stylesheet"/>\n\n<div class="btn-group agent-select-menu" uib-dropdown>\n <button type="button" class="btn dropdown-toggle-btn" uib-dropdown-toggle\n ng-attr-title="{{selectedAgent && !selectedAgent.isDeleted && selectedAgent.repositoryId ? (selectedAgent.name + \' &middot; \' + selectedAgent.repositoryId) : null}}">\n <span ng-if="!selectedAgent">{{\'ttyg.agent.agent_select_menu.no_selection_label\' | translate}}</span>\n <span ng-if="selectedAgent && !selectedAgent.isDeleted && selectedAgent.repositoryId">\n <span class="agent-name">{{selectedAgent.name}}</span> &middot; {{selectedAgent.repositoryId}}\n </span>\n <span ng-if="selectedAgent && !selectedAgent.isDeleted && !selectedAgent.repositoryId">\n <span class="agent-name">{{selectedAgent.name}}</span> &middot; <i class="fa-regular fa-triangle-exclamation text-warning"></i>\n {{\'ttyg.agent.deleted_repository\' | translate}}\n </span>\n <span ng-if="selectedAgent && selectedAgent.isDeleted" class="text-warning">\n <i class="fa-regular fa-triangle-exclamation"></i>\n {{\'ttyg.agent.agent_select_menu.deleted_agent\' | translate}}\n </span>\n <span class="caret"></span>\n </button>\n <ul class="dropdown-menu" uib-dropdown-menu role="menu" aria-labelledby="single-button">\n <li ng-repeat="agentOption in agentOptionsList" role="menuitem" class="agent-menu-item"\n ng-class="{\'selected\': agentOption.selected}">\n <a href="#" ng-if="agentOption.data.agent.repositoryId" class="agent-with-repo-item"\n ng-click="onAgentSelected(agentOption.data.agent)">\n <span class="agent-name">{{agentOption.label}}</span> &middot;\n <span class="repository-id">{{agentOption.data.agent.repositoryId}}</span>\n </a>\n <a href="#" ng-if="!agentOption.data.agent.repositoryId" class="agent-without-repo-item"\n ng-click="onAgentWithoutRepoSelected(agentOption)">\n <span class="agent-name">{{agentOption.label}}</span> &middot;\n <i class="fa-regular fa-triangle-exclamation text-warning"></i>\n <span class="repository-id">{{\'ttyg.agent.deleted_repository\' | translate}}</span>\n </a>\n </li>\n </ul>\n</div>\n';return __p}}}]);
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[383],{489:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='<link href="css/ttyg/chat-item-details.css?v=2.8.0-TR13" rel="stylesheet"/>\n\n<div class="chat-detail">\n <div class="user-message" ng-if="chatItemDetail.question">\n <div class="question alert-help">\n {{ chatItemDetail.question.message }}\n </div>\n </div>\n <div class="answers" ng-repeat="answer in chatItemDetail.answers">\n <div class="assistant">\n <div class="assistant-icon alert-help"\n gdb-tooltip="{{\'ttyg.chat_panel.labels.agent_name\' | translate : {agentName: agentNameByIdMap[chatItemDetail.agentId]} }}">\n <i class="fa-regular fa-message-bot"></i>\n </div>\n <div class="assistant-message">\n <markdown-content class="answer" content="{{answer.message}}" options="markdownContentOptions"></markdown-content>\n <div class="actions" ng-class="{\'hidden-actions\': !explainResponseModel[answer.id].expanded && (!showActions || !$last)}">\n <button class="btn btn-link btn-sm regenerate-question-btn"\n ng-click="regenerateQuestion()"\n ng-disabled="disabled"\n gdb-tooltip="{{\'ttyg.chat_panel.btn.regenerate.tooltip\' | translate}}">\n <i class="fa-regular fa-arrows-rotate"></i>\n </button>\n <copy-to-clipboard class="btn-sm" tooltip-text="ttyg.chat_panel.btn.copy_answer.tooltip"\n text-to-copy="{{answer.message}}"></copy-to-clipboard>\n <button class="btn btn-link btn-link-only-icons btn-sm explain-response-btn"\n ng-click="explainResponse(answer.id)"\n ng-disabled="disabled && !explainResponseModel[answer.id]"\n gdb-tooltip="{{\'ttyg.chat_panel.btn.explain_response.tooltip\' | translate}}">\n <i class="fa-regular fa-wand-magic-sparkles"></i>\n <i class="fa-regular fa-chevron-up toggle-explain-response-icon"\n ng-class="{expanded: explainResponseModel[answer.id] && explainResponseModel[answer.id].expanded}"></i>\n </button>\n </div>\n <div class="derived-answer-hint"\n ng-if="showActions && $last && explainResponseModel[answer.id].expanded">\n <div ng-bind-html="\'ttyg.chat_panel.btn.derive_answer.hint\' | htmlTranslate"></div>\n <button class="btn btn-secondary deliver-answer-btn" ng-click="onAskHowAnswerWasDerived()">\n {{ \'ttyg.chat_panel.btn.derive_answer.label\' | translate }}\n </button>\n </div>\n <div ng-if="loadingExplainResponse[answer.id]" onto-loader-new size="40"></div>\n <div class="explain-responses" ng-if="explainResponseModel[answer.id] && explainResponseModel[answer.id].expanded">\n <div ng-if="!explainResponseModel[answer.id].queryMethods.items.length"\n class="explain-response">\n {{ \'ttyg.chat_panel.labels.explain_no_methods\' | translate }}\n </div>\n <div ng-if="explainResponseModel[answer.id].queryMethods.items"\n class="explain-response"\n ng-repeat="queryMethod in explainResponseModel[answer.id].queryMethods.items">\n <div class="explain-call">\n <div class="header" gdb-tooltip="">\n <div class="label">\n <span class="query-method" ng-bind-html="\'ttyg.chat_panel.labels.called\' | htmlTranslate:{name: queryMethod.name}">\n </span>:\n <span class="query-method-details" ng-bind="(\'ttyg.chat_panel.query_desc.\' + queryMethod.name) | translate">\n </span>\n </div>\n <div class="actions">\n <open-in-sparql-editor\n ng-if="queryMethod.queryType === ExplainQueryType.SPARQL"\n execute-query="{{!queryMethod.errorMessage}}"\n repository-id="{{repositoryId}}"\n query="{{queryMethod.query}}">\n </open-in-sparql-editor>\n <copy-to-clipboard tooltip-text="ttyg.chat_panel.btn.copy_{{ queryMethod.queryType }}.tooltip"\n text-to-copy="{{queryMethod.query}}"></copy-to-clipboard>\n </div>\n </div>\n <div class="query">\n <pre><code>{{queryMethod.query}}</code></pre>\n </div>\n <div ng-if="showRawQuery(queryMethod)" class="raw-query">\n <span class="label">{{\'ttyg.chat_panel.labels.raw_query\' | translate}}:</span>\n <span class="content">{{queryMethod.rawQuery}}</span>\n <copy-to-clipboard class="copy-to-clipboard-btn" tooltip-text="ttyg.chat_panel.btn.copy_raw_query.tooltip"\n text-to-copy="{{queryMethod.rawQuery}}"></copy-to-clipboard>\n </div>\n <div ng-if="queryMethod.errorMessage" class="alert no-icon alert-warning error-message">\n <div class="error-header">\n <div class="label">{{\'ttyg.chat_panel.labels.error_message\' | translate}}:</div>\n <copy-to-clipboard class="copy-to-clipboard-btn" tooltip-text="ttyg.chat_panel.btn.copy_error_message.tooltip"\n text-to-copy="{{queryMethod.errorMessage}}"></copy-to-clipboard>\n </div>\n <div class="error-content">{{queryMethod.errorMessage}}</div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n <div ng-if="asking" onto-loader-new size="40"></div>\n</div>\n\n';return __p}}}]);
@@ -1 +0,0 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[384],{490:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='<link href="css/ttyg/chat-list.css?v=2.8.0-TR13" rel="stylesheet"/>\n\n<div class="chat-list-component">\n <div class="chat-list">\n <div ng-repeat="chatGroup in chatList.chatsByDay" class="chat-group">\n <label>{{getHumanReadableTimestamp(chatGroup.timestamp)}}</label>\n <ul>\n <li ng-repeat="chat in chatGroup.chats track by chat.hash" class="chat-item"\n ng-class="{\'selected\': chat.id === selectedChat.id, \'edited\': renamedChat && chat.id === renamedChat.id}">\n <div ng-if="!deletingChat || deletingChat.chatId !== chat.id" class="chat-detail">\n <div class="chat-name">\n <inline-editable-text\n field-name="name"\n source="chat"\n is-editing="renamedChat && chat.id === renamedChat.id"\n on-save="onRenameChat(newText, source)"\n on-cancel="onCancelChatRenaming()"\n on-dblclick="onSelectChatForRenaming(chat)"\n on-click="onSelectChat(source)">\n </inline-editable-text>\n </div>\n <div ng-if="chat.id && (!renamedChat || chat.id !== renamedChat.id)" class="btn-group">\n <button class="btn btn-link secondary btn-sm open-chat-actions-btn"\n data-toggle="dropdown" aria-expanded="false"\n ng-if="true"\n ng-click="openChatActionMenu()"\n ng-disabled="false">\n <i class="fa-regular fa-ellipsis"></i>\n </button>\n <div class="dropdown-menu dropdown-menu-right chat-actions-menu">\n <button class="dropdown-item export-chat-btn" type="button" ng-click="onExportChat(chat)">\n <i class="fa-regular fa-arrow-down-to-line"></i>\n <span>{{\'ttyg.chat.btn.export_chat.label\' | translate}}</span>\n </button>\n <button class="dropdown-item rename-chat-btn" type="button" ng-click="onSelectChatForRenaming(chat)">\n <i class="fa-regular fa-pen"></i>\n <span>{{\'ttyg.chat.btn.rename_chat.label\' | translate}}</span>\n </button>\n <div class="dropdown-divider"></div>\n <button class="dropdown-item delete-chat-btn" type="button" ng-click="onDeleteChat(chat)">\n <i class="fa-regular fa-trash-can"></i>\n <span>{{\'ttyg.chat.btn.delete_chat.label\' | translate}}</span>\n </button>\n </div>\n </div>\n </div>\n\n <div class="deleting-chat-loader" ng-if="deletingChat && deletingChat.chatId === chat.id && deletingChat.inProgress"\n onto-loader-fancy message="{{\'ttyg.chat.deleting_chat\' | translate}}"\n size="25"></div>\n </li>\n </ul>\n </div>\n </div>\n</div>\n';return __p}}}]);