graphdb-workbench 2.4.0 → 2.4.1-RC2

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 (276) hide show
  1. package/dist/{0.7f49d0748b3a424bf48d.bundle.js → 0.7daec4382561aa8681d5.bundle.js} +2 -2
  2. package/dist/{1.80915662b94480c6eae0.bundle.js → 1.62d2152f08a53359457f.bundle.js} +1 -1
  3. package/dist/{10.586a46ad7a03fb1a142d.bundle.js → 10.25c3009270232c3ad844.bundle.js} +1 -1
  4. package/dist/{100.485fe79107c5fd2cc9d8.bundle.js → 100.63b83a1aaec9dec2a159.bundle.js} +1 -1
  5. package/dist/{101.c0cae8323644bedad4ba.bundle.js → 101.04c16567a76c2d46e334.bundle.js} +1 -1
  6. package/dist/{102.629bee2cfb8ec110f981.bundle.js → 102.2859258827e790c5fe06.bundle.js} +1 -1
  7. package/dist/{103.a2ca7a405a8a741f0521.bundle.js → 103.8d9dfc8dbeceed83ea4d.bundle.js} +1 -1
  8. package/dist/{104.cb0a67b675a88eba7c6b.bundle.js → 104.6b5154dbe7983078d26a.bundle.js} +1 -1
  9. package/dist/{105.b8c695a452d51a59d6fc.bundle.js → 105.2a66bd0e522508ebd271.bundle.js} +1 -1
  10. package/dist/{106.b1ef5171047e6986d7fb.bundle.js → 106.27c9e4f19d1f4638da85.bundle.js} +1 -1
  11. package/dist/{107.a16c33a3b327dd560374.bundle.js → 107.1cafdb62789a6d01efe3.bundle.js} +1 -1
  12. package/dist/{108.21ba9a6de554ddab0cb3.bundle.js → 108.83bb7ce803f462882200.bundle.js} +1 -1
  13. package/dist/{109.a4387e30bcdb97fd09e5.bundle.js → 109.058abd1bafecf89da08f.bundle.js} +1 -1
  14. package/dist/{11.c4ba55be8ec43dc4f602.bundle.js → 11.08c502782a3bd04cb48b.bundle.js} +1 -1
  15. package/dist/{110.baa3035b1ff1600b7d68.bundle.js → 110.63c5d2fc22ca73bc2161.bundle.js} +1 -1
  16. package/dist/{111.cb997ce26df6688ca436.bundle.js → 111.57dcb90ea5fe513d6161.bundle.js} +1 -1
  17. package/dist/{112.6c1c426e4398a1b2cb01.bundle.js → 112.9bd920a0a14fde24231a.bundle.js} +1 -1
  18. package/dist/{113.87d54cf3534845a47b46.bundle.js → 113.fe6efdeb16cea90aef64.bundle.js} +1 -1
  19. package/dist/{114.0ee1d36e8a6457bcc664.bundle.js → 114.3a6135cc10951d23cb56.bundle.js} +1 -1
  20. package/dist/115.a39103a5752b1dee21dd.bundle.js +1 -0
  21. package/dist/116.b3acff9003106b7f9b62.bundle.js +1 -0
  22. package/dist/{117.ec98e261f0266d766299.bundle.js → 117.45f91d2cf367836dadae.bundle.js} +1 -1
  23. package/dist/{118.d61b2de011368d61eb96.bundle.js → 118.aa4d1a68202c7681e169.bundle.js} +1 -1
  24. package/dist/{119.8d42f11b240df08a4ef5.bundle.js → 119.6eba5cf04079e83072ee.bundle.js} +1 -1
  25. package/dist/{12.49ccce6742a1415aec3c.bundle.js → 12.0ca290ed18d2524f66e7.bundle.js} +4 -4
  26. package/dist/{120.816aa40e7f4395071574.bundle.js → 120.0c5bcf54ab7e6114cded.bundle.js} +1 -1
  27. package/dist/{121.0f71088165ab8ef8cf7f.bundle.js → 121.eb2e07b504cbc0c0e151.bundle.js} +1 -1
  28. package/dist/{122.9f4606d8c3449322acff.bundle.js → 122.13211f5eed5e4bf17a48.bundle.js} +1 -1
  29. package/dist/{123.ec36a533edb703a7f4b4.bundle.js → 123.8dbec2943eab449ea638.bundle.js} +1 -1
  30. package/dist/{124.6a922f3ea478549149b1.bundle.js → 124.7ce2385e2ce2ac41a255.bundle.js} +1 -1
  31. package/dist/{125.a33e04f84ca1835342ed.bundle.js → 125.2c1cfa4f1508591c2db9.bundle.js} +1 -1
  32. package/dist/{126.1dde66e1e20302b00319.bundle.js → 126.1e81957d72de76d2a7b5.bundle.js} +1 -1
  33. package/dist/{127.c2632b578254031a9ffa.bundle.js → 127.9a1e0e14854bba15d762.bundle.js} +1 -1
  34. package/dist/{128.ad625978e3241953ffba.bundle.js → 128.4eb95500c74ddcbc0ec1.bundle.js} +1 -1
  35. package/dist/{129.42944b04a4fc9d528b3b.bundle.js → 129.905991d7d0b2c8cdddac.bundle.js} +1 -1
  36. package/dist/{13.04a390c8ad09b873a4f5.bundle.js → 13.6a3e4e38a9efa1adf29e.bundle.js} +1 -1
  37. package/dist/{130.327704f58b3aa6c45583.bundle.js → 130.8d0c570a8363e55b4892.bundle.js} +1 -1
  38. package/dist/{131.f68b5c57dcb3987f3c05.bundle.js → 131.80cb5a2bd108a4f0c74c.bundle.js} +1 -1
  39. package/dist/{132.c9b19fbd0eee83f8872e.bundle.js → 132.d3ba757be1f57238c518.bundle.js} +1 -1
  40. package/dist/{133.e57328b0ef8a2baa94a3.bundle.js → 133.c9432441d39dbdf45a46.bundle.js} +1 -1
  41. package/dist/{134.2d367496e026f6fc6b87.bundle.js → 134.64ab677e16aa2b0c78b1.bundle.js} +1 -1
  42. package/dist/{135.515ebf0e6c2d5ae1aaa0.bundle.js → 135.e7ef2dedc3321ef31558.bundle.js} +1 -1
  43. package/dist/{136.5a8d26b8d272a94e7b09.bundle.js → 136.22f6c4a19299925123a0.bundle.js} +1 -1
  44. package/dist/{137.d5c2e89a8375a9ddd33f.bundle.js → 137.802084605202b8b7aef1.bundle.js} +1 -1
  45. package/dist/138.1eae7a838df0b1e52ff4.bundle.js +1 -0
  46. package/dist/{138.799ba0938ad452088478.bundle.js → 139.21dbd727f5f9bbadc865.bundle.js} +1 -1
  47. package/dist/{14.20bb7db00d25d75ff597.bundle.js → 14.8343a1e9afdb39f1c2dc.bundle.js} +1 -1
  48. package/dist/140.e35e4a6421c31a6eb0d2.bundle.js +1 -0
  49. package/dist/{140.8f72c2a1c83107d60172.bundle.js → 141.d48e599aa8dec29049e5.bundle.js} +1 -1
  50. package/dist/{141.39d3cd5ac37103607b65.bundle.js → 142.d5af4ebdde0264efdbe0.bundle.js} +1 -1
  51. package/dist/{142.6a45e8c52e9231549625.bundle.js → 143.4a600ce8f1b38bc3c484.bundle.js} +1 -1
  52. package/dist/{143.205bd5ed1d706768a171.bundle.js → 144.d2120bcd066b96e7ee58.bundle.js} +1 -1
  53. package/dist/{144.11dd8e560b16e344a71f.bundle.js → 145.2ca8245e03e22c0fd9ed.bundle.js} +1 -1
  54. package/dist/{145.1d69640963ca9040883f.bundle.js → 146.a2f5b077f3eec4961a4b.bundle.js} +1 -1
  55. package/dist/{146.bad3d0f1ce89f432b9f9.bundle.js → 147.c08eab536793c5ab07fc.bundle.js} +1 -1
  56. package/dist/{147.c13c273629daec5e9a37.bundle.js → 148.a55927446e6b202926f1.bundle.js} +1 -1
  57. package/dist/{148.7f32773da512ed8f5fbf.bundle.js → 149.0f1210813636e6d0e48c.bundle.js} +1 -1
  58. package/dist/{15.d795bd0106336806fc0c.bundle.js → 15.54781c280e23072b66c5.bundle.js} +1 -1
  59. package/dist/{149.5eef5d6c3bb15eb7db68.bundle.js → 150.f3a633da2c7c2b9cd7c4.bundle.js} +1 -1
  60. package/dist/{150.38525f24936af8ab7799.bundle.js → 151.474f1a6c85c10e352bc4.bundle.js} +1 -1
  61. package/dist/{151.5af22984e671ee5e81f9.bundle.js → 152.1ef6bdbc8329b2a8d288.bundle.js} +1 -1
  62. package/dist/{152.7c719328acd8dd30f1ee.bundle.js → 153.f710bf5c73f7d736a4b1.bundle.js} +1 -1
  63. package/dist/{153.1040b5b3761a72e5cbef.bundle.js → 154.384bdfe1f4b3fce850b0.bundle.js} +1 -1
  64. package/dist/{154.7e8e4785d433ae4ae492.bundle.js → 155.46f2a94df187ed492591.bundle.js} +1 -1
  65. package/dist/{158.076f004328ae821a4127.bundle.js → 159.b791a62882176dc9a9b3.bundle.js} +1 -1
  66. package/dist/{16.2ac73b090eb362c5659a.bundle.js → 16.24206eca9306f6f153d6.bundle.js} +1 -1
  67. package/dist/{159.2dfa76b41b8e0412fc9a.bundle.js → 160.847d226a7c31b8dd3dba.bundle.js} +1 -1
  68. package/dist/{160.2bf6ec8a4c8f9357f7e9.bundle.js → 161.b255fab3ed77f7ac2230.bundle.js} +1 -1
  69. package/dist/{161.6d5a4903b5f14223da19.bundle.js → 162.532b65eb7575ded1f259.bundle.js} +1 -1
  70. package/dist/{162.61a61aee69b92cf68d50.bundle.js → 163.18ce4731466e3c04fe13.bundle.js} +1 -1
  71. package/dist/{163.533c4841816a30d391e6.bundle.js → 164.f26289867aedbaf63da2.bundle.js} +1 -1
  72. package/dist/{164.03028a8ddb1f45100734.bundle.js → 165.83034f9c4e5a749e4123.bundle.js} +1 -1
  73. package/dist/{165.453e07e0a4818d095fc7.bundle.js → 166.b5734b2ae2128dc1f352.bundle.js} +1 -1
  74. package/dist/{166.4e42d507d305a2fb57ee.bundle.js → 167.39609d5258c038019b9e.bundle.js} +1 -1
  75. package/dist/168.34a1790ea589d9926a97.bundle.js +1 -0
  76. package/dist/{167.9ea529c0a3b5ecd3997a.bundle.js → 169.45b7052421531eceff65.bundle.js} +1 -1
  77. package/dist/{17.2ff48b1759b46db0cef9.bundle.js → 17.f3d91ad6fab1a190a416.bundle.js} +1 -1
  78. package/dist/170.d5527024ac9107b542c3.bundle.js +1 -0
  79. package/dist/{169.159be68cb30d187590f2.bundle.js → 171.c0e7ce3fd59ef1bfc4f5.bundle.js} +1 -1
  80. package/dist/{170.80121ef094a80864dbe1.bundle.js → 172.17dfb02daf0edd4dcfda.bundle.js} +1 -1
  81. package/dist/173.5e3fea538a2a2d5b5c0c.bundle.js +1 -0
  82. package/dist/{172.0de384346425c835153d.bundle.js → 174.73ba2cba36d471c65a24.bundle.js} +1 -1
  83. package/dist/{173.6135160c5555c75f094c.bundle.js → 175.1b84ab33587a120edf96.bundle.js} +1 -1
  84. package/dist/{174.b2eef8f42b7488acf0a5.bundle.js → 176.8c5f2eac9630f47dcfe6.bundle.js} +1 -1
  85. package/dist/{175.1a35ea6aa1d988a4ef6b.bundle.js → 177.b4e1effc89e36a54d383.bundle.js} +1 -1
  86. package/dist/{176.e057a9c8728b5a23cd7a.bundle.js → 178.5878cdc649570bd1584c.bundle.js} +1 -1
  87. package/dist/{177.840f6fa7bd74b92e46b7.bundle.js → 179.e3d0eb54e065b5d3a9b3.bundle.js} +1 -1
  88. package/dist/{18.1b68d0b88fa20176aa24.bundle.js → 18.119e4e696a9b2da67a3f.bundle.js} +2 -2
  89. package/dist/{178.bb649dd7d5cf973fe787.bundle.js → 180.253197fc8d3c22a436eb.bundle.js} +1 -1
  90. package/dist/{179.55f3aa5c4d8d6b4d47f1.bundle.js → 181.6647e03a6aef077b32de.bundle.js} +1 -1
  91. package/dist/{180.a4d221cbb57e21949b88.bundle.js → 182.a1fda6fcbab204e52e0c.bundle.js} +1 -1
  92. package/dist/{181.177ea1ab401157e0ad9a.bundle.js → 183.18cb5ff4f822a8fed662.bundle.js} +1 -1
  93. package/dist/{182.988501bf9fe828071f82.bundle.js → 184.f12257544b5398d3f2a3.bundle.js} +1 -1
  94. package/dist/{183.e5195486d0f13169e423.bundle.js → 185.14c3f0198be367d63776.bundle.js} +1 -1
  95. package/dist/{184.a236dd1af983a3f27302.bundle.js → 186.0202fbf77a009c0044d1.bundle.js} +1 -1
  96. package/dist/{185.1b879f0180106eb900e9.bundle.js → 187.391e7d134c74be03ba3f.bundle.js} +1 -1
  97. package/dist/{186.c17e0b54381381a3ca1f.bundle.js → 188.ac13c63e6f27a377ba89.bundle.js} +1 -1
  98. package/dist/{187.83d9d1f33f1aaf050f24.bundle.js → 189.dddf3f9a7ebe12c03816.bundle.js} +1 -1
  99. package/dist/{19.14bc0e498bd77798b79e.bundle.js → 19.f461a770949b2e409d05.bundle.js} +2 -2
  100. package/dist/{188.1656c052add5b1106cbf.bundle.js → 190.d7ad07ba4f1352960a8c.bundle.js} +1 -1
  101. package/dist/{189.2859c9b1331dfd3322a7.bundle.js → 191.5d9d4325ae7b9ee2a4a9.bundle.js} +1 -1
  102. package/dist/{190.0c0227d01d0784daf2bc.bundle.js → 192.633b1aba2828a7f05a5e.bundle.js} +1 -1
  103. package/dist/{191.e0fefec5c2557fafa928.bundle.js → 193.1fbde1bb67cbf14b1790.bundle.js} +1 -1
  104. package/dist/{192.382cdb8495f2fcb46f24.bundle.js → 194.409535e01db5b95f7902.bundle.js} +1 -1
  105. package/dist/{193.113f7e9e440d462db98d.bundle.js → 195.225e32febad8b009632d.bundle.js} +1 -1
  106. package/dist/{194.0fe2498c08d2f4cf476d.bundle.js → 196.6bbcfa8da98327b65eb1.bundle.js} +1 -1
  107. package/dist/{195.49e618eb27f541f88819.bundle.js → 197.541dd252fe17ef0e0f77.bundle.js} +1 -1
  108. package/dist/{196.4a766300204e2db90718.bundle.js → 198.63399ef675dbcd2056b7.bundle.js} +1 -1
  109. package/dist/{197.a54600c0db57db0c4881.bundle.js → 199.282d9b54b913bfc128d3.bundle.js} +1 -1
  110. package/dist/{2.b340e8a1374b41c1d31e.bundle.js → 2.308618aec7201e8045bd.bundle.js} +3 -3
  111. package/dist/20.635488a03f910fa4518b.bundle.js +1 -0
  112. package/dist/200.76fd30afe28687f92b15.bundle.js +1 -0
  113. package/dist/{199.fcdb693232b79b8f2acd.bundle.js → 201.889e42d915554f3cd902.bundle.js} +1 -1
  114. package/dist/{200.bf5928f341285ebce535.bundle.js → 202.05304444fcad7ed7158e.bundle.js} +1 -1
  115. package/dist/{201.f9f7ebe4ebc5c75034af.bundle.js → 203.81ba13895d041a1a4300.bundle.js} +1 -1
  116. package/dist/{202.4361bccded84d00914fa.bundle.js → 204.1f6da63d62a8a330ca43.bundle.js} +1 -1
  117. package/dist/{203.37022d12af06ee930d30.bundle.js → 205.f57f57ac33eaff53b51d.bundle.js} +1 -1
  118. package/dist/{204.a7a1e432b06136782910.bundle.js → 206.294496c4ba1c972bfad7.bundle.js} +1 -1
  119. package/dist/{205.38ae22477a2bef80eb30.bundle.js → 207.898fb8ad46af1a86525d.bundle.js} +1 -1
  120. package/dist/{206.26eac914e4bc1a73a8a6.bundle.js → 208.51b02bb87aae392135d2.bundle.js} +1 -1
  121. package/dist/{207.301180c1bd9af38cfc94.bundle.js → 209.a51458ccf909fbbc9b1f.bundle.js} +1 -1
  122. package/dist/21.9bbe46c05fe4a34a9cf8.bundle.js +1 -0
  123. package/dist/{208.5f93263b85ddffe2bd42.bundle.js → 210.337c0b7764194dc8cb4e.bundle.js} +1 -1
  124. package/dist/211.1f858cfbe1e9267dd629.bundle.js +1 -0
  125. package/dist/212.1c0e881dff8f75170f2a.bundle.js +1 -0
  126. package/dist/{21.4448ff6f2719bb5a2a71.bundle.js → 22.0ae31e473d0af170b177.bundle.js} +2 -2
  127. package/dist/23.dc3e430b47f766cc2366.bundle.js +1 -0
  128. package/dist/{23.bb941b1c5b252f4ca45d.bundle.js → 24.8d3f4b05a5101a6a685b.bundle.js} +1 -1
  129. package/dist/{24.688854e4985748bac15a.bundle.js → 25.2a489b131bab984243fa.bundle.js} +1 -1
  130. package/dist/{26.40d859a0a8a84551e6a3.bundle.js → 26.377d1bc26079a8159e3c.bundle.js} +1 -1
  131. package/dist/{27.99d15b3b8f4f53e7f7d7.bundle.js → 27.60396d05fddda4894ce3.bundle.js} +1 -1
  132. package/dist/{28.b5cb13b1c5e0b3e27b52.bundle.js → 28.aebd82e778f3fcd55219.bundle.js} +1 -1
  133. package/dist/29.9a6f92841eb0a4870045.bundle.js +1 -0
  134. package/dist/{3.fbff86c51d3c9728d5e5.bundle.js → 3.f2e3c8a056a0e0f1068c.bundle.js} +1 -1
  135. package/dist/{30.8fb17a6d4acf68e3319a.bundle.js → 30.acdf84b0bcd3f178c2fd.bundle.js} +1 -1
  136. package/dist/{31.3a4a28daf26d8386dcf3.bundle.js → 31.9a07cc30c05a1a698b98.bundle.js} +1 -1
  137. package/dist/{32.9a8e75f644f231ec2346.bundle.js → 32.f88a50038df0d43ccfc4.bundle.js} +1 -1
  138. package/dist/{33.19afa1f8be001d8dbb35.bundle.js → 33.d4463e934ae20163667d.bundle.js} +1 -1
  139. package/dist/{34.406736c7cf1269a90b35.bundle.js → 34.3046d2d28129a67d4483.bundle.js} +1 -1
  140. package/dist/{35.5038689f789fe22b0e63.bundle.js → 35.69758da395b815346a2f.bundle.js} +1 -1
  141. package/dist/36.8f7908db8f70bbd3318c.bundle.js +1 -0
  142. package/dist/{37.b0e15cbb51750b7168d3.bundle.js → 37.ac5b9eaa607c43ec69df.bundle.js} +1 -1
  143. package/dist/{38.188ac792f39976dd0a34.bundle.js → 38.b776c45fe26516ca8160.bundle.js} +1 -1
  144. package/dist/39.c74b936329bf2477fbdb.bundle.js +1 -0
  145. package/dist/{4.61bf53cda571e1e46d8b.bundle.js → 4.870de73e2e763f35280a.bundle.js} +1 -1
  146. package/dist/{40.f1f27b64356cd38da424.bundle.js → 40.2c1f1cc8c521b8209885.bundle.js} +1 -1
  147. package/dist/{41.75ea36dd767852fb44e5.bundle.js → 41.ca5e37c70938b397f260.bundle.js} +1 -1
  148. package/dist/{42.daae8283a3e931612c33.bundle.js → 42.b6c558e4b660bdb0be4d.bundle.js} +1 -1
  149. package/dist/{43.4edbf9cbc81f98fb7ee0.bundle.js → 43.42c27c3277a302252fc5.bundle.js} +1 -1
  150. package/dist/{44.14f58271400c03d0ab79.bundle.js → 44.96d4cf9f701897a90fce.bundle.js} +1 -1
  151. package/dist/{45.0e828cba3f18851b0c36.bundle.js → 45.2c4bc26cf5fbe9b84cb6.bundle.js} +1 -1
  152. package/dist/{46.a4b41da1ed11b9383d9e.bundle.js → 46.d63a366dbcb649ed1fbb.bundle.js} +1 -1
  153. package/dist/{47.59d5a8a384b6820f81fa.bundle.js → 47.0ecc5620f91346c3e7d4.bundle.js} +1 -1
  154. package/dist/{48.4d17d325f11d472a147d.bundle.js → 48.f8b0ea5f9306e24ac2d0.bundle.js} +1 -1
  155. package/dist/{49.e6b0277182a580de8b5f.bundle.js → 49.3da99bdb2271cf2adc7b.bundle.js} +1 -1
  156. package/dist/{5.df72ab6068dcb3268c22.bundle.js → 5.adea5d522be945b9d8d3.bundle.js} +1 -1
  157. package/dist/{50.43843be497dad46a3432.bundle.js → 50.6695e410303c03ad694c.bundle.js} +1 -1
  158. package/dist/{51.a83717fc7c532c04d55f.bundle.js → 51.95f30e28e67312c9df42.bundle.js} +1 -1
  159. package/dist/{52.5effadf644acc4629082.bundle.js → 52.b0f496f823a213178075.bundle.js} +1 -1
  160. package/dist/{53.c5f5aae8c4c987385223.bundle.js → 53.716d3c94c3d0959a26a8.bundle.js} +1 -1
  161. package/dist/{54.e053dae3451f3de9146e.bundle.js → 54.44b8cf059fe5ba4bf144.bundle.js} +1 -1
  162. package/dist/{55.e9e14a6cee4521ea6f62.bundle.js → 55.891486b3fa68d44f3a52.bundle.js} +1 -1
  163. package/dist/{56.98d432d2b05944b6e23d.bundle.js → 56.3548e08f4add9390e771.bundle.js} +1 -1
  164. package/dist/{57.2ce53b6973e64c61214e.bundle.js → 57.9f0dbb2e3b44c19c8dcd.bundle.js} +1 -1
  165. package/dist/{58.acbc0efb926ef5a35b61.bundle.js → 58.a76e6e35994e2cb1a7f6.bundle.js} +1 -1
  166. package/dist/{59.80061358d12f155eb834.bundle.js → 59.6dfdee0f9651ff9aa2f6.bundle.js} +1 -1
  167. package/dist/{6.d635bf339b47fecb8cbd.bundle.js → 6.8ec0502f2e6517640ba2.bundle.js} +1 -1
  168. package/dist/{60.3c1a642927ba24ea7d75.bundle.js → 60.2b410d552e467b555529.bundle.js} +1 -1
  169. package/dist/{61.d58f9cc70caedb912d9f.bundle.js → 61.03a75a3d8faf4c165a0c.bundle.js} +1 -1
  170. package/dist/{62.7596e7784d25a4b30b88.bundle.js → 62.86ba4d7804758d2e3f48.bundle.js} +1 -1
  171. package/dist/{63.11630cf394cc05866e03.bundle.js → 63.5e2ca7ce2ea95b397fe7.bundle.js} +1 -1
  172. package/dist/{64.305906a8eb2fa755117a.bundle.js → 64.6a8854031771d4d4ef74.bundle.js} +1 -1
  173. package/dist/{65.f54589b155f0b1dd2dcd.bundle.js → 65.9e598abd11534c42a0c1.bundle.js} +1 -1
  174. package/dist/{66.b3b924f8e83349f1f933.bundle.js → 66.7b18071c05eb5efb213b.bundle.js} +1 -1
  175. package/dist/{67.f124a5a16575f6262909.bundle.js → 67.fa36cb1b8e55e91d8850.bundle.js} +1 -1
  176. package/dist/{68.d6056bdfe9c465d64a21.bundle.js → 68.1d425ce7da7058254c2f.bundle.js} +1 -1
  177. package/dist/{69.45efcc88f8a01b279d2e.bundle.js → 69.7816b63a19bf02451f5d.bundle.js} +1 -1
  178. package/dist/{7.8d6d8399ab2a75018c7c.bundle.js → 7.0af6bb74bf88aa8f14ca.bundle.js} +2 -2
  179. package/dist/{70.969b3bdf1c78b495ce90.bundle.js → 70.fcca4105919427b384ee.bundle.js} +1 -1
  180. package/dist/{71.76927e4430db13cc525a.bundle.js → 71.1d860b69a990d36ece53.bundle.js} +1 -1
  181. package/dist/{72.2a93a562e2af1ada5ce7.bundle.js → 72.c82f209992278009e1a3.bundle.js} +1 -1
  182. package/dist/{73.0a1f181524f01c54c817.bundle.js → 73.fe7ca97e0d6f3e83d9af.bundle.js} +1 -1
  183. package/dist/{74.2bca5c6273320f829317.bundle.js → 74.02eb1c81c5a7b39d63be.bundle.js} +1 -1
  184. package/dist/{75.9889b7bb8be6784c8fe6.bundle.js → 75.13e0f311c6c98067c4f8.bundle.js} +1 -1
  185. package/dist/{76.00da6ae661372d36cc4e.bundle.js → 76.44bdcc2130c6a744bc55.bundle.js} +1 -1
  186. package/dist/{77.6f37164e2d261bef77bb.bundle.js → 77.0373cd7f1c2851df3908.bundle.js} +1 -1
  187. package/dist/{78.1f746a09612846c6634d.bundle.js → 78.a1ebfb9feff3f6aaa5ba.bundle.js} +1 -1
  188. package/dist/{79.55307abbb2743f8667b6.bundle.js → 79.cb33ee2df704588c0dee.bundle.js} +1 -1
  189. package/dist/{8.fa4155230b8ebf8300ff.bundle.js → 8.2b1b357b8afba4bd5dda.bundle.js} +1 -1
  190. package/dist/{80.8bff948fdc671ed95cc6.bundle.js → 80.28723cd3d93bd3fe3c1b.bundle.js} +1 -1
  191. package/dist/{81.1c029fa3cacb7abbb226.bundle.js → 81.c14757a485d616ca95ba.bundle.js} +1 -1
  192. package/dist/{82.db386f380aeb0ed49389.bundle.js → 82.63053f57c54f3870c6b4.bundle.js} +1 -1
  193. package/dist/{83.95d07645d98a358e440e.bundle.js → 83.a6c2ad332de0ee224136.bundle.js} +1 -1
  194. package/dist/{84.df9fe8c9baca90aff668.bundle.js → 84.160b1ea5b257276fe22f.bundle.js} +1 -1
  195. package/dist/{85.b371064c3350a2cac192.bundle.js → 85.32462b06fa1284fc2a87.bundle.js} +1 -1
  196. package/dist/{86.8566ad81fb950fbe9727.bundle.js → 86.399f5cbb00afc5ccccd7.bundle.js} +1 -1
  197. package/dist/{87.c9edcdc7286021af246d.bundle.js → 87.1a8b0b4fd818a413de82.bundle.js} +1 -1
  198. package/dist/{88.c39a79ce39f44a7d45df.bundle.js → 88.738b3a2efa5ba9bfef71.bundle.js} +1 -1
  199. package/dist/{89.8a52741d5060567c104f.bundle.js → 89.ecce6e48f1d5921ad7b9.bundle.js} +1 -1
  200. package/dist/{9.1f3dc3ef494b61320be5.bundle.js → 9.1e2a1467755135bb1717.bundle.js} +1 -1
  201. package/dist/{90.bd8bc3b9ff6976069e1c.bundle.js → 90.052a76395eb9473edb9e.bundle.js} +1 -1
  202. package/dist/{91.ff231a51fe771c4853b6.bundle.js → 91.a6eb1cd89547ccc2da08.bundle.js} +1 -1
  203. package/dist/{92.f96e8ee15e8c94a9fc81.bundle.js → 92.a76fcac9855d6ea43acc.bundle.js} +1 -1
  204. package/dist/93.a66b80c93662e56ccc97.bundle.js +1 -0
  205. package/dist/94.e61e957dc3eeda570bfa.bundle.js +1 -0
  206. package/dist/{95.089785fc5e7baffa26b4.bundle.js → 95.2c6ad9bc82627035b7ed.bundle.js} +1 -1
  207. package/dist/{96.b1e9e979da4692bfa680.bundle.js → 96.0c1b0454a0595ac0b888.bundle.js} +1 -1
  208. package/dist/{97.32e2d8eee49ca21b6eb6.bundle.js → 97.f0e6133cd5a664499c6f.bundle.js} +1 -1
  209. package/dist/{98.f7ddbd6208c4ad45d59b.bundle.js → 98.1886caa9872ba5f2eb07.bundle.js} +1 -1
  210. package/dist/{99.60d4cca5f10b627a89e4.bundle.js → 99.42f11427ea2c99e9173b.bundle.js} +1 -1
  211. package/dist/{bundle.9270374dffa4437895d3.bundle.js → bundle.c7f3e729665657fc72ff.bundle.js} +17 -17
  212. package/dist/css/aclmanagement.css +12 -1
  213. package/dist/css/autocomplete-select.css +62 -0
  214. package/dist/css/bootstrap-graphdb-theme.css +28 -5
  215. package/dist/css/repositories.css +5 -0
  216. package/dist/i18n/locale-en.json +1 -0
  217. package/dist/i18n/locale-fr.json +1 -0
  218. package/dist/index.html +4 -4
  219. package/dist/js/angular/chatgpt/templates/chat.html +1 -1
  220. package/dist/js/angular/core/directives/autocomplete/templates/autocomplete.html +18 -0
  221. package/dist/js/angular/core/directives/operations-statuses-monitor/templates/operations-statuses-monitor.html +1 -1
  222. package/dist/js/angular/core/directives/rdfresourcesearch/templates/rdfResourceSearchTemplate.html +1 -1
  223. package/dist/js/angular/core/templates/core-errors.html +1 -1
  224. package/dist/js/angular/security/templates/user.html +1 -1
  225. package/dist/license-checker.json +2 -2
  226. package/dist/main.a81aea585f94a768d336.css +1 -0
  227. package/dist/{main.34b9127de6103da85a3d.bundle.js → main.dc50b704432268af5a47.bundle.js} +1 -1
  228. package/dist/pages/aclmanagement.html +136 -130
  229. package/dist/pages/autocomplete.html +1 -1
  230. package/dist/pages/choose-repository-type.html +1 -1
  231. package/dist/pages/cluster-management/clusterInfo.html +3 -3
  232. package/dist/pages/create-index.html +4 -4
  233. package/dist/pages/dependencies.html +1 -1
  234. package/dist/pages/domainRangeInfo.html +2 -2
  235. package/dist/pages/edit.html +1 -1
  236. package/dist/pages/explore.html +1 -1
  237. package/dist/pages/export.html +1 -1
  238. package/dist/pages/find.html +1 -1
  239. package/dist/pages/graph-config/saveGraphConfig.html +11 -11
  240. package/dist/pages/graphs-visualizations.html +7 -7
  241. package/dist/pages/guides.html +1 -1
  242. package/dist/pages/import.html +2 -2
  243. package/dist/pages/jdbc-create.html +6 -6
  244. package/dist/pages/monitor/backup-and-restore.html +1 -1
  245. package/dist/pages/monitor/queries.html +1 -1
  246. package/dist/pages/monitor/resources.html +2 -2
  247. package/dist/pages/namespaces.html +2 -2
  248. package/dist/pages/plugins.html +1 -1
  249. package/dist/pages/rdfClassHierarchyInfo.html +7 -7
  250. package/dist/pages/rdfrank.html +2 -2
  251. package/dist/pages/repositories.html +2 -2
  252. package/dist/pages/repository.html +6 -3
  253. package/dist/pages/similarity-indexes.html +1 -1
  254. package/dist/pages/sparql-template-create.html +6 -6
  255. package/dist/pages/sparql.html +3 -3
  256. package/dist/pages/webapi.html +2 -2
  257. package/dist/res/swagger/index.html +27 -27
  258. package/dist/{vendor.627c422eb658d286fa62.bundle.js → vendor.c22e3aa91c9d63aeef57.bundle.js} +5 -5
  259. package/package.json +1 -1
  260. package/dist/115.774a65731c3411dc061d.bundle.js +0 -1
  261. package/dist/116.f3303bd196fbeeb3c0c6.bundle.js +0 -1
  262. package/dist/139.a827f785eb1832984bf2.bundle.js +0 -1
  263. package/dist/168.c2d77ca1c6e78c85cc1c.bundle.js +0 -1
  264. package/dist/171.57b7cb8f53876670f290.bundle.js +0 -1
  265. package/dist/198.bef3c928879a4f4e88f8.bundle.js +0 -1
  266. package/dist/20.4e3d03b01e7af56d4100.bundle.js +0 -1
  267. package/dist/209.c16bad4521d8eed8a18a.bundle.js +0 -1
  268. package/dist/210.31f9dc20558d15d2c955.bundle.js +0 -1
  269. package/dist/22.a052dbb90cc265342e5a.bundle.js +0 -1
  270. package/dist/25.ef0ae4d289d27514ee5c.bundle.js +0 -1
  271. package/dist/29.23338c84d369c009f196.bundle.js +0 -1
  272. package/dist/36.55a3af7ce65b4b20033b.bundle.js +0 -1
  273. package/dist/39.809e18790f078a7c3f00.bundle.js +0 -1
  274. package/dist/93.10155767b589070f20d3.bundle.js +0 -1
  275. package/dist/94.d426bb383e60b759dff6.bundle.js +0 -1
  276. package/dist/main.ef1675ae9664feabc0d4.css +0 -1
@@ -0,0 +1 @@
1
+ (window.webpackJsonp=window.webpackJsonp||[]).push([[20,21,32,40,64,138],{136:function(e,t,s){"use strict";s.r(t);s(6),s(23),s(29),s(85),s(90),s(22);angular.module("graphdb.framework.aclmanagement",["ui.bootstrap","toastr","ngCookies","ngRoute","graphdb.framework.aclmanagement.controllers","graphdb.framework.core.services.repositories","graphdb.framework.core.directives","graphdb.framework.core.controllers"])},63:function(e,t,s){"use strict";s.r(t),s.d(t,"mapAclRulesResponse",(function(){return r}));var l=s(64);const r=e=>{const t=new l.ACListModel;return e&&e.data&&e.data.forEach(e=>{t.appendNewRule(e.subject,e.predicate,e.object,e.context,e.role,e.policy)}),t}},64:function(e,t,s){"use strict";s.r(t),s.d(t,"ACListModel",(function(){return l})),s.d(t,"ACRuleModel",(function(){return r})),s.d(t,"ACL_POLICY",(function(){return o}));class l{constructor(e=[]){this._aclRules=e}size(){return this.aclRules.length}appendNewRule(e,t,s,l,o,n){this.aclRules.push(new r(e,t,s,l,o,n))}addRule(e){this.aclRules.splice(e,0,new r)}removeRule(e){this.aclRules.splice(e,1)}replaceRule(e,t){this.aclRules.splice(e,1,t)}getRule(e){return this.aclRules[e]}isRuleDuplicated(e){const t=this.aclRules[e];return this.aclRules.some((s,l)=>e!==l&&angular.equals(t,s))}getRuleCopy(e){const t=this.aclRules[e];return{subject:t.subject,predicate:t.predicate,object:t.object,context:t.context,role:t.role,policy:t.policy}}moveUp(e){const t=this.aclRules[e-1];this.aclRules[e-1]=this.aclRules[e],this.aclRules[e]=t}moveDown(e){const t=this.aclRules[e+1];this.aclRules[e+1]=this.aclRules[e],this.aclRules[e]=t}toJSON(){return this.aclRules.map(e=>({subject:e.subject,predicate:e.predicate,object:e.object,context:e.context,role:e.role,policy:e.policy}))}get aclRules(){return this._aclRules}set aclRules(e){this._aclRules=e}}class r{constructor(e="*",t="*",s="*",l="*",r="CUSTOM_",n=o.ALLOW){this._subject=e,this._predicate=t,this._object=s,this._context=l,this._role=r,this._policy=n}get subject(){return this._subject}set subject(e){this._subject=e}get predicate(){return this._predicate}set predicate(e){this._predicate=e}get object(){return this._object}set object(e){this._object=e}get context(){return this._context}set context(e){this._context=e}get role(){return this._role}set role(e){this._role=e}get policy(){return this._policy}set policy(e){this._policy=e}}const o={ALLOW:"allow",DENY:"deny"}},86:function(e,t,s){"use strict";s.r(t);s(63);angular.module("graphdb.framework.rest.aclmanagement.service",[]).factory("AclManagementRestService",l),l.$inject=["$http"];function l(e){return{getAcl:function(t){return e.get(`rest/repositories/${t}/acl`)},updateAcl:function(t,s){return e.put(`rest/repositories/${t}/acl`,s)}}}},87:function(e,t,s){"use strict";s.r(t),s.d(t,"mapNamespacesResponse",(function(){return l}));const l=e=>e&&e.data?e.data.results.bindings.map(e=>({prefix:e.prefix.value,uri:e.namespace.value})):[]},90:function(e,t,s){"use strict";s.r(t);s(30),s(86);var l=s(63),r=s(84),o=s(87);function n(e,t,s,n,a,c,i,u,d){e.contextValue=void 0;const p=[];e.ruleData={},e.loading=!1,e.namespaces=[],e.rulesModel=void 0,e.rulesModelCopy=void 0,e.selectedRule=void 0,e.editedRuleIndex=void 0,e.editedRuleCopy=void 0,e.isNewRule=!1,e.modelIsDirty=!1,e.addRule=t=>{e.rulesModel.addRule(t),e.editedRuleIndex=t,e.isNewRule=!0,v()},e.editRule=t=>{e.editedRuleIndex=t,e.isNewRule=!1,e.editedRuleCopy=e.rulesModel.getRuleCopy(t),v()},e.deleteRule=t=>{i.openConfirmation(c.instant("common.confirm"),c.instant("acl_management.rulestable.messages.delete_rule_confirmation",{index:t}),()=>{e.rulesModel.removeRule(t),v()})},e.saveRule=()=>{e.rulesModel.isRuleDuplicated(e.editedRuleIndex)?f():(e.editedRuleIndex=void 0,e.isNewRule=!1,v())},e.cancelEditing=t=>{e.isNewRule?(e.rulesModel.removeRule(t),e.isNewRule=!1):(e.rulesModel.replaceRule(t,e.editedRuleCopy),e.editedRuleCopy=void 0),e.editedRuleIndex=void 0,v()},e.moveUp=t=>{e.rulesModel.moveUp(t),e.selectedRule=t-1,v()},e.moveDown=t=>{e.rulesModel.moveDown(t),e.selectedRule=t+1,v()},e.saveAcl=()=>{e.loading=!0,R().then(m).catch(e=>{const t=getError(e);s.error(t,c.instant("acl_management.errors.updating_rules"))}).finally(()=>{e.loading=!1})},e.cancelAclSave=()=>{i.openConfirmation(c.instant("common.confirm"),c.instant("acl_management.rulestable.messages.revert_acl_list"),()=>{g(),s.success(c.instant("acl_management.rulestable.messages.rules_reverted"))})};const m=()=>{const t=b();return n.getAcl(t).then(t=>{e.rulesModel=Object(l.mapAclRulesResponse)(t),e.rulesModelCopy=Object(l.mapAclRulesResponse)(t),v()}).catch(e=>{const t=getError(e);s.error(t,c.instant("acl_management.errors.loading_rules"))})},R=()=>{const t=b();return n.updateAcl(t,e.rulesModel.toJSON()).then(()=>{s.success(c.instant("acl_management.rulestable.messages.rules_updated"))})},g=()=>{b()&&(e.loading=!0,m().finally(()=>{e.loading=!1}))},h=()=>{g(),e.editedRuleIndex=void 0,e.modelIsDirty=!1,e.editedRuleCopy=void 0},v=()=>{e.modelIsDirty=!Object(r.isEqual)(e.rulesModel,e.rulesModelCopy)},b=()=>a.getActiveRepository(),f=()=>{s.error(c.instant("acl_management.errors.duplicated_rules"))},_=t=>{e.modelIsDirty&&(t.returnValue=!0)},w=()=>{window.removeEventListener("beforeunload",_),p.forEach(e=>e())},y=(s,l)=>{e.modelIsDirty&&(s.preventDefault(),i.openSimpleModal({title:c.instant("common.confirm"),message:c.instant("acl_management.rulestable.messages.unsaved_changes_confirmation"),warning:!0}).result.then((function(){w();const e=t.absUrl().length-t.url().length,s=l.substring(e);t.path(s)}),(function(){})))},j=()=>{e.getAutocompletePromise=d.checkAutocompleteStatus()};u.getNamespaces(a.getActiveRepository()).then(o.mapNamespacesResponse).then(t=>{e.namespaces=t}).catch(e=>{const t=getError(e);s.error(t,c.instant("error.getting.namespaces.for.repo"))}),p.push(e.$on("autocompleteStatus",j)),p.push(e.$watch(b,h)),p.push(e.$on("$locationChangeStart",y)),p.push(e.$on("$destroy",w)),window.addEventListener("beforeunload",_)}angular.module("graphdb.framework.aclmanagement.controllers",["graphdb.framework.rest.plugins.service","graphdb.framework.rest.aclmanagement.service"]).controller("AclManagementCtrl",n),n.$inject=["$scope","$location","toastr","AclManagementRestService","$repositories","$translate","ModalService","RDF4JRepositoriesRestService","AutocompleteRestService"]}}]);
@@ -0,0 +1 @@
1
+ (window.webpackJsonp=window.webpackJsonp||[]).push([[200],{284: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.4.1-RC2" 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 class="wb-tags-input" ng-model="customRoles" min-length="2"\n ng-disabled="!isUser() || mode === \'settings\'"\n use-strings="true"\n add-on-space="true"\n add-on-comma="true"\n on-tag-added="addCustomRole($tag)"\n placeholder="{{\'security.user.add.custom_role.msg\' | translate}}"></tags-input>\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">{{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 +1 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[199],{281: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
+ (window.webpackJsonp=window.webpackJsonp||[]).push([[201],{285: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 +1 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[200],{282: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
+ (window.webpackJsonp=window.webpackJsonp||[]).push([[202],{286: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 +1 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[201],{283: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
+ (window.webpackJsonp=window.webpackJsonp||[]).push([[203],{287: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 +1 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[202],{286: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
+ (window.webpackJsonp=window.webpackJsonp||[]).push([[204],{290: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 +1 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[203],{287:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='\x3c!-- Start addLocation.html --\x3e\n\n<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 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 {{\'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" data-dismiss="modal">{{\'common.cancel.btn\' | translate}}</button>\n <button type="submit" ng-click="ok();" class="btn btn-primary" form="addLocationForm"\n ng-disabled="form.$invalid"><span class="icon-plus"></span> {{\'common.attach\' | translate}}\n </button>\n</div>\n\n\x3c!-- End addLocation.html --\x3e\n';return __p}}}]);
1
+ (window.webpackJsonp=window.webpackJsonp||[]).push([[205],{291:function(module,exports){module.exports=function(obj){obj||(obj={});var __t,__p="";with(obj)__p+='\x3c!-- Start addLocation.html --\x3e\n\n<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 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 {{\'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" data-dismiss="modal">{{\'common.cancel.btn\' | translate}}</button>\n <button type="submit" ng-click="ok();" class="btn btn-primary" form="addLocationForm"\n ng-disabled="form.$invalid"><span class="icon-plus"></span> {{\'common.attach\' | translate}}\n </button>\n</div>\n\n\x3c!-- End addLocation.html --\x3e\n';return __p}}}]);
@@ -1 +1 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[204],{288: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
+ (window.webpackJsonp=window.webpackJsonp||[]).push([[206],{292: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 +1 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[205],{289: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
+ (window.webpackJsonp=window.webpackJsonp||[]).push([[207],{293: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 +1 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[206],{290: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
+ (window.webpackJsonp=window.webpackJsonp||[]).push([[208],{294: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 +1 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[207],{291: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
+ (window.webpackJsonp=window.webpackJsonp||[]).push([[209],{295: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}}}]);
@@ -0,0 +1 @@
1
+ (window.webpackJsonp=window.webpackJsonp||[]).push([[21,32,40,64,138],{63:function(e,t,s){"use strict";s.r(t),s.d(t,"mapAclRulesResponse",(function(){return o}));var l=s(64);const o=e=>{const t=new l.ACListModel;return e&&e.data&&e.data.forEach(e=>{t.appendNewRule(e.subject,e.predicate,e.object,e.context,e.role,e.policy)}),t}},64:function(e,t,s){"use strict";s.r(t),s.d(t,"ACListModel",(function(){return l})),s.d(t,"ACRuleModel",(function(){return o})),s.d(t,"ACL_POLICY",(function(){return n}));class l{constructor(e=[]){this._aclRules=e}size(){return this.aclRules.length}appendNewRule(e,t,s,l,n,r){this.aclRules.push(new o(e,t,s,l,n,r))}addRule(e){this.aclRules.splice(e,0,new o)}removeRule(e){this.aclRules.splice(e,1)}replaceRule(e,t){this.aclRules.splice(e,1,t)}getRule(e){return this.aclRules[e]}isRuleDuplicated(e){const t=this.aclRules[e];return this.aclRules.some((s,l)=>e!==l&&angular.equals(t,s))}getRuleCopy(e){const t=this.aclRules[e];return{subject:t.subject,predicate:t.predicate,object:t.object,context:t.context,role:t.role,policy:t.policy}}moveUp(e){const t=this.aclRules[e-1];this.aclRules[e-1]=this.aclRules[e],this.aclRules[e]=t}moveDown(e){const t=this.aclRules[e+1];this.aclRules[e+1]=this.aclRules[e],this.aclRules[e]=t}toJSON(){return this.aclRules.map(e=>({subject:e.subject,predicate:e.predicate,object:e.object,context:e.context,role:e.role,policy:e.policy}))}get aclRules(){return this._aclRules}set aclRules(e){this._aclRules=e}}class o{constructor(e="*",t="*",s="*",l="*",o="CUSTOM_",r=n.ALLOW){this._subject=e,this._predicate=t,this._object=s,this._context=l,this._role=o,this._policy=r}get subject(){return this._subject}set subject(e){this._subject=e}get predicate(){return this._predicate}set predicate(e){this._predicate=e}get object(){return this._object}set object(e){this._object=e}get context(){return this._context}set context(e){this._context=e}get role(){return this._role}set role(e){this._role=e}get policy(){return this._policy}set policy(e){this._policy=e}}const n={ALLOW:"allow",DENY:"deny"}},86:function(e,t,s){"use strict";s.r(t);s(63);angular.module("graphdb.framework.rest.aclmanagement.service",[]).factory("AclManagementRestService",l),l.$inject=["$http"];function l(e){return{getAcl:function(t){return e.get(`rest/repositories/${t}/acl`)},updateAcl:function(t,s){return e.put(`rest/repositories/${t}/acl`,s)}}}},87:function(e,t,s){"use strict";s.r(t),s.d(t,"mapNamespacesResponse",(function(){return l}));const l=e=>e&&e.data?e.data.results.bindings.map(e=>({prefix:e.prefix.value,uri:e.namespace.value})):[]},90:function(e,t,s){"use strict";s.r(t);s(30),s(86);var l=s(63),o=s(84),n=s(87);function r(e,t,s,r,c,a,i,u,d){e.contextValue=void 0;const p=[];e.ruleData={},e.loading=!1,e.namespaces=[],e.rulesModel=void 0,e.rulesModelCopy=void 0,e.selectedRule=void 0,e.editedRuleIndex=void 0,e.editedRuleCopy=void 0,e.isNewRule=!1,e.modelIsDirty=!1,e.addRule=t=>{e.rulesModel.addRule(t),e.editedRuleIndex=t,e.isNewRule=!0,v()},e.editRule=t=>{e.editedRuleIndex=t,e.isNewRule=!1,e.editedRuleCopy=e.rulesModel.getRuleCopy(t),v()},e.deleteRule=t=>{i.openConfirmation(a.instant("common.confirm"),a.instant("acl_management.rulestable.messages.delete_rule_confirmation",{index:t}),()=>{e.rulesModel.removeRule(t),v()})},e.saveRule=()=>{e.rulesModel.isRuleDuplicated(e.editedRuleIndex)?b():(e.editedRuleIndex=void 0,e.isNewRule=!1,v())},e.cancelEditing=t=>{e.isNewRule?(e.rulesModel.removeRule(t),e.isNewRule=!1):(e.rulesModel.replaceRule(t,e.editedRuleCopy),e.editedRuleCopy=void 0),e.editedRuleIndex=void 0,v()},e.moveUp=t=>{e.rulesModel.moveUp(t),e.selectedRule=t-1,v()},e.moveDown=t=>{e.rulesModel.moveDown(t),e.selectedRule=t+1,v()},e.saveAcl=()=>{e.loading=!0,R().then(m).catch(e=>{const t=getError(e);s.error(t,a.instant("acl_management.errors.updating_rules"))}).finally(()=>{e.loading=!1})},e.cancelAclSave=()=>{i.openConfirmation(a.instant("common.confirm"),a.instant("acl_management.rulestable.messages.revert_acl_list"),()=>{h(),s.success(a.instant("acl_management.rulestable.messages.rules_reverted"))})};const m=()=>{const t=_();return r.getAcl(t).then(t=>{e.rulesModel=Object(l.mapAclRulesResponse)(t),e.rulesModelCopy=Object(l.mapAclRulesResponse)(t),v()}).catch(e=>{const t=getError(e);s.error(t,a.instant("acl_management.errors.loading_rules"))})},R=()=>{const t=_();return r.updateAcl(t,e.rulesModel.toJSON()).then(()=>{s.success(a.instant("acl_management.rulestable.messages.rules_updated"))})},h=()=>{_()&&(e.loading=!0,m().finally(()=>{e.loading=!1}))},g=()=>{h(),e.editedRuleIndex=void 0,e.modelIsDirty=!1,e.editedRuleCopy=void 0},v=()=>{e.modelIsDirty=!Object(o.isEqual)(e.rulesModel,e.rulesModelCopy)},_=()=>c.getActiveRepository(),b=()=>{s.error(a.instant("acl_management.errors.duplicated_rules"))},f=t=>{e.modelIsDirty&&(t.returnValue=!0)},y=()=>{window.removeEventListener("beforeunload",f),p.forEach(e=>e())},w=(s,l)=>{e.modelIsDirty&&(s.preventDefault(),i.openSimpleModal({title:a.instant("common.confirm"),message:a.instant("acl_management.rulestable.messages.unsaved_changes_confirmation"),warning:!0}).result.then((function(){y();const e=t.absUrl().length-t.url().length,s=l.substring(e);t.path(s)}),(function(){})))},j=()=>{e.getAutocompletePromise=d.checkAutocompleteStatus()};u.getNamespaces(c.getActiveRepository()).then(n.mapNamespacesResponse).then(t=>{e.namespaces=t}).catch(e=>{const t=getError(e);s.error(t,a.instant("error.getting.namespaces.for.repo"))}),p.push(e.$on("autocompleteStatus",j)),p.push(e.$watch(_,g)),p.push(e.$on("$locationChangeStart",w)),p.push(e.$on("$destroy",y)),window.addEventListener("beforeunload",f)}angular.module("graphdb.framework.aclmanagement.controllers",["graphdb.framework.rest.plugins.service","graphdb.framework.rest.aclmanagement.service"]).controller("AclManagementCtrl",r),r.$inject=["$scope","$location","toastr","AclManagementRestService","$repositories","$translate","ModalService","RDF4JRepositoriesRestService","AutocompleteRestService"]}}]);
@@ -1 +1 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[208],{292: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
+ (window.webpackJsonp=window.webpackJsonp||[]).push([[210],{296: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}}}]);
@@ -0,0 +1 @@
1
+ (window.webpackJsonp=window.webpackJsonp||[]).push([[211],{288:function(e,p,b){e.exports=b.p+"img/graphdb-small.5f94ee13e65870be1db31bb89e6deded.svg"}}]);
@@ -0,0 +1 @@
1
+ (window.webpackJsonp=window.webpackJsonp||[]).push([[212],{289:function(a,o,p){a.exports=p.p+"img/ot-loader.258a202708a014a48cfaa50891b58540.svg"}}]);
@@ -1,3 +1,3 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[21,74,79,81],{143:function(e,t,n){"use strict";n.r(t);n(6),n(22),n(93),n(130),n(94),n(306),n(310),n(92);angular.module("graphdb.framework.explore",["ngRoute","toastr","xeditable","angucomplete-alt-onto","graphdb.framework.explore.services","graphdb.framework.explore.controllers","graphdb.framework.explore.directives","graphdb.framework.core.directives.fittext"])},310:function(e,t){
1
+ (window.webpackJsonp=window.webpackJsonp||[]).push([[22,74,79,81],{146:function(e,t,n){"use strict";n.r(t);n(6),n(23),n(96),n(133),n(97),n(310),n(314),n(95);angular.module("graphdb.framework.explore",["ngRoute","toastr","xeditable","angucomplete-alt-onto","graphdb.framework.explore.services","graphdb.framework.explore.controllers","graphdb.framework.explore.directives","graphdb.framework.core.directives.fittext"])},314:function(e,t){
2
2
  /*! Copyright (c) 2014 Hidenari Nozaki and contributors | Licensed under the MIT license */
3
- !function(e,t){"use strict";!function(e){e.module("angucomplete-alt-onto",[]).directive("angucompleteAltOnto",["$q","$parse","$http","$sce","$timeout","$templateCache","$interpolate","$rootScope",function(e,t,n,r,l,i,o,a){function u(t,i,o,a){var u,s,c,d,g,p,h=i.find("input"),f=3,m=null,w="autocomplete-required",v=null,b=null,x=i[0].querySelector(".angucomplete-dropdown"),y=!1,S=null;function C(e,n){e&&("object"==typeof e?(t.uri=R(e),M({originalObject:e})):"string"==typeof e&&e.length>0?t.uri=e:console&&console.error&&console.error("Tried to set "+(n?"initial":"")+" value of angucomplete to",e,"which is an invalid value"),F(!0))}function I(e){S=null,t.hideResults(e),document.body.removeEventListener("click",I)}function $(e){return e.which?e.which:e.keyCode}function M(e){"function"==typeof t.selectedObject?t.selectedObject(e):t.selectedObject=e,F(!!e)}function R(e){return t.titleField.split(",").map((function(t){return L(e,t)})).join(" ")}function L(e,t){var n,r;if(t){n=t.split("."),r=e;for(var l=0;l<n.length;l++)r=r[n[l]]}else r=e;return r}function D(e,n){var l,i,o;if(o=new RegExp(n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"i"),e)return e.match&&e.replace||(e=e.toString()),l=(i=e.match(o))?e.replace(o,'<span class="'+t.matchClass+'">'+i[0]+"</span>"):e,r.trustAsHtml(l)}function F(e){t.notEmpty=e,v=t.uri,t.fieldRequired&&a&&t.inputName&&a[t.inputName].$setValidity(w,e)}function j(e){!t.overrideSuggestions||t.selectedObject&&t.selectedObject.originalObject===t.uri||(e&&e.preventDefault(),l.cancel(m),H(),M({originalObject:t.uri}),t.clearSelected&&(t.uri=null),z())}function X(){return i[0].querySelectorAll(".angucomplete-row")[t.currentIndex]}function k(e){x.scrollTop=x.scrollTop+e}function U(){var e=t.results[t.currentIndex];if(t.matchClass){var n=R(e.originalObject);n=n.replace(/<b>|<\/b>/g,""),h.val(n)}else h.val(e.title)}function O(e){return function(n,r,l,i){r||l||i||!n.data||(n=n.data),t.searching=!1,B(L(s(n),t.remoteUrlDataField),e)}}function q(e,n,r,l){0!==n&&-1!==n&&(n||r||l||(n=e.status),t.remoteUrlErrorCallback?t.remoteUrlErrorCallback(e,n,r,l):console&&console.error&&console.error("http error"))}function H(){b&&b.resolve()}function T(r){var l={},i=t.remoteUrl+encodeuriComponent(r);t.remoteUrlRequestFormatter&&(l={params:t.remoteUrlRequestFormatter(r)},i=t.remoteUrl),t.remoteUrlRequestWithCredentials&&(l.withCredentials=!0),H(),b=e.defer(),l.timeout=b.promise,n.get(i,l).success(O(r)).error(q)}function N(n){H(),b=e.defer(),t.remoteApiHandler(n,b.promise).then(O(n)).catch(q)}function z(){t.showDropdown=!1,t.results=[],x&&(x.scrollTop=0)}function E(){t.showDropdown=d,t.currentIndex=t.focusFirst?0:-1,t.results=[]}function A(e){!e||e.length<f||(t.localData?t.$apply((function(){var n;n=void 0!==t.localSearch()?t.localSearch()(e):function(e){var n,r,l,i,o=t.searchFields.split(","),a=[];for(void 0!==t.parseInput()&&(e=t.parseInput()(e)),n=0;n<t.localData.length;n++){for(r=!1,l=0;l<o.length;l++)i=L(t.localData[n],o[l])||"",r=r||i.toString().toLowerCase().indexOf(e.toString().toLowerCase())>=0;r&&(a[a.length]=t.localData[n])}return a}(e),t.searching=!1,B(n,e)})):t.remoteApiHandler?N(e):T(e))}function B(e,n){var r,l,i,o,a,u;if(e&&e.length>0)for(t.results=[],r=0;r<e.length;r++)t.titleField&&""!==t.titleField&&(o=a=R(e[r])),l="",t.descriptionField&&(l=u=L(e[r],t.descriptionField)),i="",t.imageField&&(i=L(e[r],t.imageField)),t.matchClass&&(a=D(o,n),u=D(l,n)),t.results[t.results.length]={title:a,description:u,image:i,originalObject:e[r]};else t.results=[];t.autoMatch&&1===t.results.length&&function(e,n,r){if(!r)return!1;for(var l in n)if(n[l].toLowerCase()===r.toLowerCase())return t.selectResult(e),!0;return!1}(t.results[0],{title:o,desc:l||""},t.uri)?t.showDropdown=!1:0!==t.results.length||g?t.showDropdown=!0:t.showDropdown=!1}function V(){t.localData?B(t.localData,""):t.remoteApiHandler?N(""):T("")}i.on("mousedown",(function(e){e.target.id?(S=e.target.id)===t.id+"_dropdown"&&document.body.addEventListener("click",I):S=e.target.className})),t.currentIndex=t.focusFirst?0:null,t.searching=!1,c=t.$watch("initialValue",(function(e){e&&(c(),C(e,!0))})),t.$watch("fieldRequired",(function(e,n){e!==n&&(e?v&&-1!==t.currentIndex?F(!0):F(!1):a[t.inputName].$setValidity(w,!0))})),t.$on("angucomplete-alt:clearInput",(function(e,n){n&&n!==t.id||(t.uri=null,M(),F(!1),z())})),t.$on("angucomplete-alt:changeInput",(function(e,n,r){n&&n===t.id&&C(r)})),t.onFocusHandler=function(){t.focusIn&&t.focusIn(),0!==f||t.uri&&0!==t.uri.length||(t.currentIndex=t.focusFirst?0:t.currentIndex,t.showDropdown=!0,V())},t.hideResults=function(){S&&(S===t.id+"_dropdown"||S.indexOf("angucomplete")>=0)?S=null:(u=l((function(){z(),t.$apply((function(){t.uri&&t.uri.length>0&&h.val(t.uri)}))}),200),H(),t.focusOut&&t.focusOut(),t.overrideSuggestions&&t.uri&&t.uri.length>0&&-1===t.currentIndex&&j())},t.resetHideResults=function(){u&&l.cancel(u)},t.hoverRow=function(e){t.currentIndex=e},t.selectResult=function(e){t.matchClass&&(e.title=R(e.originalObject),"string"==typeof e.title&&(e.title=e.title.replace(/<b>|<\/b>/g,"")),e.description=L(e.originalObject,t.descriptionField)),t.clearSelected?t.uri=null:t.uri=e.title,M(e),z()},t.inputChangeHandler=function(e){return e.length<f?(H(),z()):0===e.length&&0===f&&(t.searching=!1,V()),t.inputChanged&&(e=t.inputChanged(e)),e},t.fieldRequiredClass&&""!==t.fieldRequiredClass&&(w=t.fieldRequiredClass),t.minlength&&""!==t.minlength&&(f=parseInt(t.minlength,10)),t.pause||(t.pause=500),t.clearSelected||(t.clearSelected=!1),t.overrideSuggestions||(t.overrideSuggestions=!1),t.fieldRequired&&a&&(t.initialValue?F(!0):F(!1)),t.inputType=o.type?o.type:"text",t.textSearching=o.textSearching?o.textSearching:"Searching...",t.textNoResults=o.textNoResults?o.textNoResults:"No results found",d="false"!==t.textSearching,g="false"!==t.textNoResults,t.maxlength=o.maxlength?o.maxlength:524288,h.on("keydown",(function(e){var n=$(e),r=null,l=null;13===n&&t.results?(t.currentIndex>=0&&t.currentIndex<t.results.length?(e.preventDefault(),t.selectResult(t.results[t.currentIndex])):(j(e),z()),t.$apply()):40===n&&t.results?(e.preventDefault(),t.currentIndex+1<t.results.length&&t.showDropdown&&(t.$apply((function(){t.currentIndex++,U()})),y&&(r=X(),x.getBoundingClientRect().top+parseInt(getComputedStyle(x).maxHeight,10)<r.getBoundingClientRect().bottom&&k(function(e){var t=getComputedStyle(e);return e.offsetHeight+parseInt(t.marginTop,10)+parseInt(t.marginBottom,10)}(r))))):38===n&&t.results?(e.preventDefault(),t.currentIndex>=1?(t.$apply((function(){t.currentIndex--,U()})),y&&(l=X().getBoundingClientRect().top-(x.getBoundingClientRect().top+parseInt(getComputedStyle(x).paddingTop,10)))<0&&k(l-1)):0===t.currentIndex&&t.$apply((function(){t.currentIndex=-1,h.val(t.uri)}))):9===n?t.results&&t.results.length>0&&t.showDropdown?-1===t.currentIndex&&t.overrideSuggestions?j():(-1===t.currentIndex&&(t.currentIndex=0),t.selectResult(t.results[t.currentIndex]),t.$digest()):t.uri&&t.uri.length>0&&j():27===n&&e.preventDefault()})),h.on("keyup",(function(e){var n=$(e);if(37!==n&&39!==n)if(38===n||13===n)e.preventDefault();else if(40===n)e.preventDefault(),!t.showDropdown&&t.uri&&t.uri.length>=f&&(E(),t.searching=!0,A(t.uri));else if(27===n)z(),t.$apply((function(){h.val(t.uri)}));else{if(0===f&&!t.uri)return;t.uri&&""!==t.uri?t.uri.length>=f&&(E(),m&&l.cancel(m),t.searching=!0,m=l((function(){A(t.uri)}),t.pause)):t.showDropdown=!1,v&&v!==t.uri&&!t.clearSelected&&t.$apply((function(){M()}))}})),p="remoteUrlResponseFormatter",s=function(e){return t[p]?t[p](e):e},l((function(){var e=getComputedStyle(x);y=e.maxHeight&&"auto"===e.overflowY}))}return i.put("/angucomplete-alt/index.html",'<div class="angucomplete-holder" ng-class="{\'angucomplete-dropdown-visible\': showDropdown}"> <input id="{{id}}_value" name="{{inputName}}" tabindex="{{fieldTabindex}}" ng-class="{\'angucomplete-input-not-empty\': notEmpty}" ng-model="uri" ng-disabled="disableInput" type="{{inputType}}" placeholder="{{placeholder}}" maxlength="{{maxlength}}" ng-focus="onFocusHandler()" class="{{inputClass}}" ng-focus="resetHideResults()" ng-blur="hideResults($event)" autocapitalize="off" autocorrect="off" autocomplete="off" ng-change="inputChangeHandler(uri)" style="overflow: hidden; padding-right: .5em;"/> <div id="{{id}}_dropdown" class="angucomplete-dropdown" ng-show="disableSuggestions && showDropdown"> <div class="angucomplete-searching" ng-show="searching" ng-bind="textSearching"></div> <div class="angucomplete-searching" ng-show="!searching && (!results || results.length == 0)" ng-bind="textNoResults"></div> <div class="angucomplete-row" ng-repeat="result in results" ng-click="selectResult(result)" ng-mouseenter="hoverRow($index)" ng-class="{\'angucomplete-selected-row\': $index == currentIndex}"> <div ng-if="imageField" class="angucomplete-image-holder"> <img ng-if="result.image && result.image != \'\'" ng-src="{{result.image}}" class="angucomplete-image"/> <div ng-if="!result.image && result.image != \'\'" class="angucomplete-image-default"></div> </div> <div class="angucomplete-title" ng-if="matchClass" ng-bind-html="result.title"></div> <div class="angucomplete-title" ng-if="!matchClass">{{ result.title }}</div> <div ng-if="matchClass && result.description && result.description != \'\'" class="angucomplete-description" ng-bind-html="result.description"></div> <div ng-if="!matchClass && result.description && result.description != \'\'" class="angucomplete-description">{{result.description}}</div> </div> </div></div>'),{restrict:"EA",require:"^?form",scope:{selectedObject:"=",disableInput:"=",disableSuggestions:"=",initialValue:"=",localData:"=",localSearch:"&",remoteUrlRequestFormatter:"=",remoteUrlRequestWithCredentials:"@",remoteUrlResponseFormatter:"=",remoteUrlErrorCallback:"=",remoteApiHandler:"=",id:"@",type:"@",placeholder:"@",remoteUrl:"@",remoteUrlDataField:"@",titleField:"@",descriptionField:"@",imageField:"@",inputClass:"@",pause:"@",searchFields:"@",minlength:"@",matchClass:"@",clearSelected:"@",overrideSuggestions:"@",fieldRequired:"=",fieldRequiredClass:"@",inputChanged:"=",autoMatch:"@",focusOut:"&",focusIn:"&",fieldTabindex:"@",inputName:"@",focusFirst:"@",parseInput:"&"},templateUrl:function(e,t){return t.templateUrl||"/angucomplete-alt/index.html"},compile:function(e){var t=o.startSymbol(),n=o.endSymbol();if("{{"!==t||"}}"!==n){var r=e.html().replace(/\{\{/g,t).replace(/\}\}/g,n);e.html(r)}return u}}}])}(window.angular)}()},92:function(e,t){function n(e){return{restrict:"A",scope:{min:"=",max:"="},link:function(t,n,r){const l={debounce:_.debounce,delay:100,loadDelay:10,compressor:1,min:r.fitTextMin||"inherit",max:r.fitTextMax||"inherit",calcSize:10,lines:1},i=n.parent(),o=n[0],a=o.style,u=window.getComputedStyle(n[0],null),s=n.children().length||l.lines,c="inherit"===l.min?u["font-size"]:l.min,d="inherit"===l.max?u["font-size"]:l.max,g=u["line-height"],p=u.display;let h;function f(){const e=l.calcSize*s/o.offsetWidth/s;return Math.max(Math.min(function(e){const t=parseFloat(getComputedStyle(i[0]).paddingLeft),n=parseFloat(getComputedStyle(i[0]).paddingRight);return(i[0].offsetWidth-(t+n))*e*l.compressor}(e),parseFloat(d)),parseFloat(c))}function m(){h&&e.cancel(h),h=e((function(){o.offsetHeight*o.offsetWidth!=0&&(a.fontSize=l.calcSize+"px",a.lineHeight="1",a.display="inline-block",a.fontSize=f()+"px",a.lineHeight=g,a.display=p)}),l.loadDelay)}t.$watch((function(){return[i[0].offsetWidth,n[0].offsetWidth].join("_")}),(function(){m()})),$(window).on("resize",l.debounce((function(){t.$apply(m)}),l.delay)),t.$on("$destroy",(function(){h&&e.cancel(h),$(window).off("resize")}))}}}angular.module("graphdb.framework.core.directives.fittext",[]).directive("fitText",n),n.$inject=["$timeout"]},93:function(e,t){function n(){return{transformToTrig:function(e){let t="";const n={};for(let t=0;t<e.length;t++){const r=e[t];if(void 0===r.context?r.context="":r.context=_.trim(r.context),angular.isUndefined(n[r.context])){const e=[];e.push(r),n[r.context]=e}else n[r.context].push(r)}const r=Object.keys(n);for(let e=0;e<r.length;e++){const l=r[e];t+=""===l?"\n{":"\n<"+l+"> {";const i=n[l];for(let e=0;e<i.length;e++){const n=i[e];t+="\n\t<"+n.subject+"> <"+n.predicate+"> ","uri"===n.object.type?t+="<"+n.object.value+"> .":t+='"""'+n.object.value+'"""'+(n.object.datatype?"^^<"+n.object.datatype+">":n.object.lang?"@"+n.object.lang:"")+" ."}t+="\n}"}return t},buildStatements:function(e,t){const n=[];if(!_.isEmpty(e.data)){const r=e.data[t],l=Object.keys(r);for(let e=0;e<l.length;e++){const i=l[e],o=r[i];for(let e=0;e<o.length;e++){const r=o[e];for(let e=0;e<r.graphs.length;e++){let l=r.graphs[e];"http://www.ontotext.com/explicit"===l&&(l=""),r.lang&&(r.datatype=""),r.datatype||(r.datatype=""),n.push({subject:t,predicate:i,object:{value:r.value,type:r.type,datatype:r.datatype,lang:r.lang},context:l})}}}}return n},getDatatypeOptions:function(){return[{value:"",label:"string"},{value:"http://www.w3.org/2001/XMLSchema#boolean",label:"boolean"},{value:"http://www.w3.org/2001/XMLSchema#decimal",label:"decimal"},{value:"http://www.w3.org/2001/XMLSchema#integer",label:"integer"},{value:"http://www.w3.org/2001/XMLSchema#double",label:"double"},{value:"http://www.w3.org/2001/XMLSchema#float",label:"float"},{value:"http://www.w3.org/2001/XMLSchema#date",label:"date"},{value:"http://www.w3.org/2001/XMLSchema#time",label:"time"},{value:"http://www.w3.org/2001/XMLSchema#dateTime",label:"date time"},{value:"http://www.w3.org/2001/XMLSchema#byte",label:"byte"},{value:"http://www.w3.org/2001/XMLSchema#short",label:"short"},{value:"http://www.w3.org/2001/XMLSchema#int",label:"int"},{value:"http://www.w3.org/2001/XMLSchema#long",label:"long"},{value:"http://www.w3.org/2001/XMLSchema#unsignedByte",label:"unsigned byte"},{value:"http://www.w3.org/2001/XMLSchema#unsignedShort",label:"unsigned short"},{value:"http://www.w3.org/2001/XMLSchema#unsignedInt",label:"unsigned int"},{value:"http://www.w3.org/2001/XMLSchema#unsignedLong",label:"unsigned long"},{value:"http://www.w3.org/2001/XMLSchema#positoveInteger",label:"positive integer"},{value:"http://www.w3.org/2001/XMLSchema#nonNegativeInteger",label:"non-negative integer"},{value:"http://www.w3.org/2001/XMLSchema#negativeInteger",label:"negative integer"},{value:"http://www.w3.org/2001/XMLSchema#nonPositiveInteger",label:"non-positive integer"},{value:"http://www.w3.org/2001/XMLSchema#gYear",label:"gYear"},{value:"http://www.w3.org/2001/XMLSchema#gMonth",label:"gMonth"},{value:"http://www.w3.org/2001/XMLSchema#gDay",label:"gDay"},{value:"http://www.w3.org/2001/XMLSchema#gYearMonth",label:"gYearMonth"},{value:"http://www.w3.org/2001/XMLSchema#gMonthDay",label:"gMonthDay"},{value:"http://www.w3.org/2001/XMLSchema#duration",label:"duration"},{value:"http://www.w3.org/2001/XMLSchema#hexBinary",label:"hex binary"},{value:"http://www.w3.org/2001/XMLSchema#base64Binary",label:"base64 binary"}]}}}angular.module("graphdb.framework.explore.services",[]).factory("StatementsService",n),n.$inject=[]},94:function(e,t,n){"use strict";n.r(t);n(25);angular.module("graphdb.framework.explore.directives",["graphdb.framework.utils.uriutils"]).directive("uri",["UriUtils",function(e){return{require:"ngModel",link:function(t,n,r,l){l.$parsers.unshift((function(t){if(!angular.isUndefined(t)&&t.length>0){const n=e.validateRdfUri(t);return l.$setValidity("searchStr",n),n?t:void 0}return l.$setValidity("searchStr",!0),t})),l.$formatters.unshift((function(t){return angular.isUndefined(t)||l.$setValidity("searchStr",e.validateRdfUri),t}))}}}])}}]);
3
+ !function(e,t){"use strict";!function(e){e.module("angucomplete-alt-onto",[]).directive("angucompleteAltOnto",["$q","$parse","$http","$sce","$timeout","$templateCache","$interpolate","$rootScope",function(e,t,n,r,l,i,o,a){function u(t,i,o,a){var u,s,c,d,g,p,h=i.find("input"),f=3,m=null,w="autocomplete-required",v=null,b=null,x=i[0].querySelector(".angucomplete-dropdown"),y=!1,S=null;function C(e,n){e&&("object"==typeof e?(t.uri=R(e),M({originalObject:e})):"string"==typeof e&&e.length>0?t.uri=e:console&&console.error&&console.error("Tried to set "+(n?"initial":"")+" value of angucomplete to",e,"which is an invalid value"),F(!0))}function I(e){S=null,t.hideResults(e),document.body.removeEventListener("click",I)}function $(e){return e.which?e.which:e.keyCode}function M(e){"function"==typeof t.selectedObject?t.selectedObject(e):t.selectedObject=e,F(!!e)}function R(e){return t.titleField.split(",").map((function(t){return L(e,t)})).join(" ")}function L(e,t){var n,r;if(t){n=t.split("."),r=e;for(var l=0;l<n.length;l++)r=r[n[l]]}else r=e;return r}function D(e,n){var l,i,o;if(o=new RegExp(n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),"i"),e)return e.match&&e.replace||(e=e.toString()),l=(i=e.match(o))?e.replace(o,'<span class="'+t.matchClass+'">'+i[0]+"</span>"):e,r.trustAsHtml(l)}function F(e){t.notEmpty=e,v=t.uri,t.fieldRequired&&a&&t.inputName&&a[t.inputName].$setValidity(w,e)}function j(e){!t.overrideSuggestions||t.selectedObject&&t.selectedObject.originalObject===t.uri||(e&&e.preventDefault(),l.cancel(m),H(),M({originalObject:t.uri}),t.clearSelected&&(t.uri=null),z())}function X(){return i[0].querySelectorAll(".angucomplete-row")[t.currentIndex]}function k(e){x.scrollTop=x.scrollTop+e}function U(){var e=t.results[t.currentIndex];if(t.matchClass){var n=R(e.originalObject);n=n.replace(/<b>|<\/b>/g,""),h.val(n)}else h.val(e.title)}function O(e){return function(n,r,l,i){r||l||i||!n.data||(n=n.data),t.searching=!1,B(L(s(n),t.remoteUrlDataField),e)}}function q(e,n,r,l){0!==n&&-1!==n&&(n||r||l||(n=e.status),t.remoteUrlErrorCallback?t.remoteUrlErrorCallback(e,n,r,l):console&&console.error&&console.error("http error"))}function H(){b&&b.resolve()}function T(r){var l={},i=t.remoteUrl+encodeuriComponent(r);t.remoteUrlRequestFormatter&&(l={params:t.remoteUrlRequestFormatter(r)},i=t.remoteUrl),t.remoteUrlRequestWithCredentials&&(l.withCredentials=!0),H(),b=e.defer(),l.timeout=b.promise,n.get(i,l).success(O(r)).error(q)}function N(n){H(),b=e.defer(),t.remoteApiHandler(n,b.promise).then(O(n)).catch(q)}function z(){t.showDropdown=!1,t.results=[],x&&(x.scrollTop=0)}function E(){t.showDropdown=d,t.currentIndex=t.focusFirst?0:-1,t.results=[]}function A(e){!e||e.length<f||(t.localData?t.$apply((function(){var n;n=void 0!==t.localSearch()?t.localSearch()(e):function(e){var n,r,l,i,o=t.searchFields.split(","),a=[];for(void 0!==t.parseInput()&&(e=t.parseInput()(e)),n=0;n<t.localData.length;n++){for(r=!1,l=0;l<o.length;l++)i=L(t.localData[n],o[l])||"",r=r||i.toString().toLowerCase().indexOf(e.toString().toLowerCase())>=0;r&&(a[a.length]=t.localData[n])}return a}(e),t.searching=!1,B(n,e)})):t.remoteApiHandler?N(e):T(e))}function B(e,n){var r,l,i,o,a,u;if(e&&e.length>0)for(t.results=[],r=0;r<e.length;r++)t.titleField&&""!==t.titleField&&(o=a=R(e[r])),l="",t.descriptionField&&(l=u=L(e[r],t.descriptionField)),i="",t.imageField&&(i=L(e[r],t.imageField)),t.matchClass&&(a=D(o,n),u=D(l,n)),t.results[t.results.length]={title:a,description:u,image:i,originalObject:e[r]};else t.results=[];t.autoMatch&&1===t.results.length&&function(e,n,r){if(!r)return!1;for(var l in n)if(n[l].toLowerCase()===r.toLowerCase())return t.selectResult(e),!0;return!1}(t.results[0],{title:o,desc:l||""},t.uri)?t.showDropdown=!1:0!==t.results.length||g?t.showDropdown=!0:t.showDropdown=!1}function V(){t.localData?B(t.localData,""):t.remoteApiHandler?N(""):T("")}i.on("mousedown",(function(e){e.target.id?(S=e.target.id)===t.id+"_dropdown"&&document.body.addEventListener("click",I):S=e.target.className})),t.currentIndex=t.focusFirst?0:null,t.searching=!1,c=t.$watch("initialValue",(function(e){e&&(c(),C(e,!0))})),t.$watch("fieldRequired",(function(e,n){e!==n&&(e?v&&-1!==t.currentIndex?F(!0):F(!1):a[t.inputName].$setValidity(w,!0))})),t.$on("angucomplete-alt:clearInput",(function(e,n){n&&n!==t.id||(t.uri=null,M(),F(!1),z())})),t.$on("angucomplete-alt:changeInput",(function(e,n,r){n&&n===t.id&&C(r)})),t.onFocusHandler=function(){t.focusIn&&t.focusIn(),0!==f||t.uri&&0!==t.uri.length||(t.currentIndex=t.focusFirst?0:t.currentIndex,t.showDropdown=!0,V())},t.hideResults=function(){S&&(S===t.id+"_dropdown"||S.indexOf("angucomplete")>=0)?S=null:(u=l((function(){z(),t.$apply((function(){t.uri&&t.uri.length>0&&h.val(t.uri)}))}),200),H(),t.focusOut&&t.focusOut(),t.overrideSuggestions&&t.uri&&t.uri.length>0&&-1===t.currentIndex&&j())},t.resetHideResults=function(){u&&l.cancel(u)},t.hoverRow=function(e){t.currentIndex=e},t.selectResult=function(e){t.matchClass&&(e.title=R(e.originalObject),"string"==typeof e.title&&(e.title=e.title.replace(/<b>|<\/b>/g,"")),e.description=L(e.originalObject,t.descriptionField)),t.clearSelected?t.uri=null:t.uri=e.title,M(e),z()},t.inputChangeHandler=function(e){return e.length<f?(H(),z()):0===e.length&&0===f&&(t.searching=!1,V()),t.inputChanged&&(e=t.inputChanged(e)),e},t.fieldRequiredClass&&""!==t.fieldRequiredClass&&(w=t.fieldRequiredClass),t.minlength&&""!==t.minlength&&(f=parseInt(t.minlength,10)),t.pause||(t.pause=500),t.clearSelected||(t.clearSelected=!1),t.overrideSuggestions||(t.overrideSuggestions=!1),t.fieldRequired&&a&&(t.initialValue?F(!0):F(!1)),t.inputType=o.type?o.type:"text",t.textSearching=o.textSearching?o.textSearching:"Searching...",t.textNoResults=o.textNoResults?o.textNoResults:"No results found",d="false"!==t.textSearching,g="false"!==t.textNoResults,t.maxlength=o.maxlength?o.maxlength:524288,h.on("keydown",(function(e){var n=$(e),r=null,l=null;13===n&&t.results?(t.currentIndex>=0&&t.currentIndex<t.results.length?(e.preventDefault(),t.selectResult(t.results[t.currentIndex])):(j(e),z()),t.$apply()):40===n&&t.results?(e.preventDefault(),t.currentIndex+1<t.results.length&&t.showDropdown&&(t.$apply((function(){t.currentIndex++,U()})),y&&(r=X(),x.getBoundingClientRect().top+parseInt(getComputedStyle(x).maxHeight,10)<r.getBoundingClientRect().bottom&&k(function(e){var t=getComputedStyle(e);return e.offsetHeight+parseInt(t.marginTop,10)+parseInt(t.marginBottom,10)}(r))))):38===n&&t.results?(e.preventDefault(),t.currentIndex>=1?(t.$apply((function(){t.currentIndex--,U()})),y&&(l=X().getBoundingClientRect().top-(x.getBoundingClientRect().top+parseInt(getComputedStyle(x).paddingTop,10)))<0&&k(l-1)):0===t.currentIndex&&t.$apply((function(){t.currentIndex=-1,h.val(t.uri)}))):9===n?t.results&&t.results.length>0&&t.showDropdown?-1===t.currentIndex&&t.overrideSuggestions?j():(-1===t.currentIndex&&(t.currentIndex=0),t.selectResult(t.results[t.currentIndex]),t.$digest()):t.uri&&t.uri.length>0&&j():27===n&&e.preventDefault()})),h.on("keyup",(function(e){var n=$(e);if(37!==n&&39!==n)if(38===n||13===n)e.preventDefault();else if(40===n)e.preventDefault(),!t.showDropdown&&t.uri&&t.uri.length>=f&&(E(),t.searching=!0,A(t.uri));else if(27===n)z(),t.$apply((function(){h.val(t.uri)}));else{if(0===f&&!t.uri)return;t.uri&&""!==t.uri?t.uri.length>=f&&(E(),m&&l.cancel(m),t.searching=!0,m=l((function(){A(t.uri)}),t.pause)):t.showDropdown=!1,v&&v!==t.uri&&!t.clearSelected&&t.$apply((function(){M()}))}})),p="remoteUrlResponseFormatter",s=function(e){return t[p]?t[p](e):e},l((function(){var e=getComputedStyle(x);y=e.maxHeight&&"auto"===e.overflowY}))}return i.put("/angucomplete-alt/index.html",'<div class="angucomplete-holder" ng-class="{\'angucomplete-dropdown-visible\': showDropdown}"> <input id="{{id}}_value" name="{{inputName}}" tabindex="{{fieldTabindex}}" ng-class="{\'angucomplete-input-not-empty\': notEmpty}" ng-model="uri" ng-disabled="disableInput" type="{{inputType}}" placeholder="{{placeholder}}" maxlength="{{maxlength}}" ng-focus="onFocusHandler()" class="{{inputClass}}" ng-focus="resetHideResults()" ng-blur="hideResults($event)" autocapitalize="off" autocorrect="off" autocomplete="off" ng-change="inputChangeHandler(uri)" style="overflow: hidden; padding-right: .5em;"/> <div id="{{id}}_dropdown" class="angucomplete-dropdown" ng-show="disableSuggestions && showDropdown"> <div class="angucomplete-searching" ng-show="searching" ng-bind="textSearching"></div> <div class="angucomplete-searching" ng-show="!searching && (!results || results.length == 0)" ng-bind="textNoResults"></div> <div class="angucomplete-row" ng-repeat="result in results" ng-click="selectResult(result)" ng-mouseenter="hoverRow($index)" ng-class="{\'angucomplete-selected-row\': $index == currentIndex}"> <div ng-if="imageField" class="angucomplete-image-holder"> <img ng-if="result.image && result.image != \'\'" ng-src="{{result.image}}" class="angucomplete-image"/> <div ng-if="!result.image && result.image != \'\'" class="angucomplete-image-default"></div> </div> <div class="angucomplete-title" ng-if="matchClass" ng-bind-html="result.title"></div> <div class="angucomplete-title" ng-if="!matchClass">{{ result.title }}</div> <div ng-if="matchClass && result.description && result.description != \'\'" class="angucomplete-description" ng-bind-html="result.description"></div> <div ng-if="!matchClass && result.description && result.description != \'\'" class="angucomplete-description">{{result.description}}</div> </div> </div></div>'),{restrict:"EA",require:"^?form",scope:{selectedObject:"=",disableInput:"=",disableSuggestions:"=",initialValue:"=",localData:"=",localSearch:"&",remoteUrlRequestFormatter:"=",remoteUrlRequestWithCredentials:"@",remoteUrlResponseFormatter:"=",remoteUrlErrorCallback:"=",remoteApiHandler:"=",id:"@",type:"@",placeholder:"@",remoteUrl:"@",remoteUrlDataField:"@",titleField:"@",descriptionField:"@",imageField:"@",inputClass:"@",pause:"@",searchFields:"@",minlength:"@",matchClass:"@",clearSelected:"@",overrideSuggestions:"@",fieldRequired:"=",fieldRequiredClass:"@",inputChanged:"=",autoMatch:"@",focusOut:"&",focusIn:"&",fieldTabindex:"@",inputName:"@",focusFirst:"@",parseInput:"&"},templateUrl:function(e,t){return t.templateUrl||"/angucomplete-alt/index.html"},compile:function(e){var t=o.startSymbol(),n=o.endSymbol();if("{{"!==t||"}}"!==n){var r=e.html().replace(/\{\{/g,t).replace(/\}\}/g,n);e.html(r)}return u}}}])}(window.angular)}()},95:function(e,t){function n(e){return{restrict:"A",scope:{min:"=",max:"="},link:function(t,n,r){const l={debounce:_.debounce,delay:100,loadDelay:10,compressor:1,min:r.fitTextMin||"inherit",max:r.fitTextMax||"inherit",calcSize:10,lines:1},i=n.parent(),o=n[0],a=o.style,u=window.getComputedStyle(n[0],null),s=n.children().length||l.lines,c="inherit"===l.min?u["font-size"]:l.min,d="inherit"===l.max?u["font-size"]:l.max,g=u["line-height"],p=u.display;let h;function f(){const e=l.calcSize*s/o.offsetWidth/s;return Math.max(Math.min(function(e){const t=parseFloat(getComputedStyle(i[0]).paddingLeft),n=parseFloat(getComputedStyle(i[0]).paddingRight);return(i[0].offsetWidth-(t+n))*e*l.compressor}(e),parseFloat(d)),parseFloat(c))}function m(){h&&e.cancel(h),h=e((function(){o.offsetHeight*o.offsetWidth!=0&&(a.fontSize=l.calcSize+"px",a.lineHeight="1",a.display="inline-block",a.fontSize=f()+"px",a.lineHeight=g,a.display=p)}),l.loadDelay)}t.$watch((function(){return[i[0].offsetWidth,n[0].offsetWidth].join("_")}),(function(){m()})),$(window).on("resize",l.debounce((function(){t.$apply(m)}),l.delay)),t.$on("$destroy",(function(){h&&e.cancel(h),$(window).off("resize")}))}}}angular.module("graphdb.framework.core.directives.fittext",[]).directive("fitText",n),n.$inject=["$timeout"]},96:function(e,t){function n(){return{transformToTrig:function(e){let t="";const n={};for(let t=0;t<e.length;t++){const r=e[t];if(void 0===r.context?r.context="":r.context=_.trim(r.context),angular.isUndefined(n[r.context])){const e=[];e.push(r),n[r.context]=e}else n[r.context].push(r)}const r=Object.keys(n);for(let e=0;e<r.length;e++){const l=r[e];t+=""===l?"\n{":"\n<"+l+"> {";const i=n[l];for(let e=0;e<i.length;e++){const n=i[e];t+="\n\t<"+n.subject+"> <"+n.predicate+"> ","uri"===n.object.type?t+="<"+n.object.value+"> .":t+='"""'+n.object.value+'"""'+(n.object.datatype?"^^<"+n.object.datatype+">":n.object.lang?"@"+n.object.lang:"")+" ."}t+="\n}"}return t},buildStatements:function(e,t){const n=[];if(!_.isEmpty(e.data)){const r=e.data[t],l=Object.keys(r);for(let e=0;e<l.length;e++){const i=l[e],o=r[i];for(let e=0;e<o.length;e++){const r=o[e];for(let e=0;e<r.graphs.length;e++){let l=r.graphs[e];"http://www.ontotext.com/explicit"===l&&(l=""),r.lang&&(r.datatype=""),r.datatype||(r.datatype=""),n.push({subject:t,predicate:i,object:{value:r.value,type:r.type,datatype:r.datatype,lang:r.lang},context:l})}}}}return n},getDatatypeOptions:function(){return[{value:"",label:"string"},{value:"http://www.w3.org/2001/XMLSchema#boolean",label:"boolean"},{value:"http://www.w3.org/2001/XMLSchema#decimal",label:"decimal"},{value:"http://www.w3.org/2001/XMLSchema#integer",label:"integer"},{value:"http://www.w3.org/2001/XMLSchema#double",label:"double"},{value:"http://www.w3.org/2001/XMLSchema#float",label:"float"},{value:"http://www.w3.org/2001/XMLSchema#date",label:"date"},{value:"http://www.w3.org/2001/XMLSchema#time",label:"time"},{value:"http://www.w3.org/2001/XMLSchema#dateTime",label:"date time"},{value:"http://www.w3.org/2001/XMLSchema#byte",label:"byte"},{value:"http://www.w3.org/2001/XMLSchema#short",label:"short"},{value:"http://www.w3.org/2001/XMLSchema#int",label:"int"},{value:"http://www.w3.org/2001/XMLSchema#long",label:"long"},{value:"http://www.w3.org/2001/XMLSchema#unsignedByte",label:"unsigned byte"},{value:"http://www.w3.org/2001/XMLSchema#unsignedShort",label:"unsigned short"},{value:"http://www.w3.org/2001/XMLSchema#unsignedInt",label:"unsigned int"},{value:"http://www.w3.org/2001/XMLSchema#unsignedLong",label:"unsigned long"},{value:"http://www.w3.org/2001/XMLSchema#positoveInteger",label:"positive integer"},{value:"http://www.w3.org/2001/XMLSchema#nonNegativeInteger",label:"non-negative integer"},{value:"http://www.w3.org/2001/XMLSchema#negativeInteger",label:"negative integer"},{value:"http://www.w3.org/2001/XMLSchema#nonPositiveInteger",label:"non-positive integer"},{value:"http://www.w3.org/2001/XMLSchema#gYear",label:"gYear"},{value:"http://www.w3.org/2001/XMLSchema#gMonth",label:"gMonth"},{value:"http://www.w3.org/2001/XMLSchema#gDay",label:"gDay"},{value:"http://www.w3.org/2001/XMLSchema#gYearMonth",label:"gYearMonth"},{value:"http://www.w3.org/2001/XMLSchema#gMonthDay",label:"gMonthDay"},{value:"http://www.w3.org/2001/XMLSchema#duration",label:"duration"},{value:"http://www.w3.org/2001/XMLSchema#hexBinary",label:"hex binary"},{value:"http://www.w3.org/2001/XMLSchema#base64Binary",label:"base64 binary"}]}}}angular.module("graphdb.framework.explore.services",[]).factory("StatementsService",n),n.$inject=[]},97:function(e,t,n){"use strict";n.r(t);n(26);angular.module("graphdb.framework.explore.directives",["graphdb.framework.utils.uriutils"]).directive("uri",["UriUtils",function(e){return{require:"ngModel",link:function(t,n,r,l){l.$parsers.unshift((function(t){if(!angular.isUndefined(t)&&t.length>0){const n=e.validateRdfUri(t);return l.$setValidity("searchStr",n),n?t:void 0}return l.$setValidity("searchStr",!0),t})),l.$formatters.unshift((function(t){return angular.isUndefined(t)||l.$setValidity("searchStr",e.validateRdfUri),t}))}}}])}}]);
@@ -0,0 +1 @@
1
+ (window.webpackJsonp=window.webpackJsonp||[]).push([[23],{109:function(e,t,n){"use strict";n.r(t);var r=n(298),i=n.n(r),a=n(308),o=n(301),s=n(302);n(10);function l(e,t,n,r,l,c,d,u,f,h,p,v,y){return{restrict:"AE",template:'<div id="classChart"></div>',scope:{classHierarchyData:"=",flattenedClassNames:"=",selectedClass:"=",currentSliderValue:"=",showClassInfoPanel:"=",showExternalElements:"=",hidePrefixes:"=",currentBrowserLimit:"="},link:function(d,g,m){!function(d,g){var m=d3.layout.pack().size([780,780]).value((function(e){return e.size})),x=d3.scale.linear().domain([0,4]).range(["hsl(19, 70%, 90%)","hsl(19, 70%, 50%)"]).interpolate(d3.interpolateHcl),w=d3.select("#classChart").insert("svg:svg","h2").attr("viewBox","0 0 800 800").attr("preserveAspectRatio","xMidYMid meet").on("dblclick.zoom",null);function S(){return w.append("svg:g").attr({id:"main-group",transform:"translate(400,400)"})}function C(){return"true"===p.get(v.CLASS_HIERARCHY_HIDE_PREFIXES)}function E(){var e=s.a.Export.getCSSRules("css/rdf-class-hierarchy-labels.css?v=2.4.1-RC2");d3.selectAll("#main-group").append("defs"),$("defs").append('<style type="text/css"><![CDATA['+e+"]]></style>"),d3.selectAll("g").style("opacity",1);var t=s.a.Export.generateBase64ImageSource("#classChart svg");d3.select(this).attr({href:t,download:"class-hierarchy-"+c.getActiveRepository()+".svg"})}d.hidePrefixes=C();var T,R,A=S();if(!d.classHierarchyData.classCount&&c.getActiveRepository()&&!c.isSystemRepository()){e.loader=!0,e.hierarchyError=!1;const t=p.get("classHierarchy-selectedGraph-"+c.getActiveRepository());n.getClassHierarchyData(null!==t?t.contextID.uri:"").success((function(t,n,r){e.loader=!1,207===n&&u.warning(y.instant("graphexplore.update.diagram"),y.instant("graphexplore.repository.data.changed")),d.classHierarchyData=t,d3.select("#download-svg").on("mouseover",E)})).error((function(t){e.loader=!1,e.hierarchyError=getError(t),u.error(y.instant("graphexplore.error.request.failed",{name:h,error:getError(t)}))}))}var H,P,I,b,k,F,L,D,N={};function z(n,s,c,u){I&&I(),b&&b(),d3.selectAll("#main-group").remove(),A=S(),a.a.SingleChild.addPlaceholders(n,!0),P=c||n;var p,v=m.nodes(n);P.isInFocusTransitive=!0,a.a.SingleChild.removePlaceholders(v),a.a.SingleChild.centerNodes(v),a.a.SingleChild.makePositionsRelativeToZero(v);var y=i()().attr("class","d3-tip").customPosition((function(e){return{top:"inherit",bottom:r.innerHeight-d3.event.clientY+"px",right:r.innerWidth-d3.event.clientX+"px"}})).html((function(e){return e.name}));w.call(y);var g=A.selectAll("circle").data(v).enter().append("g");s.doFade&&g.each((function(e){o.a.Transition.fadeIn(d3.select(this),550)}));var C,E=[],k=g.append("circle").attr("class",(function(e){return e.role})).attr("guide-selector",(function(e){return"class-"+e.name})).style("fill",(function(e){return e.children?x(e.depth):"#E0D0D0"})).each((function(e){if(e.circle=d3.select(this),e.name!==h){var t=e.name;E.push({name:t}),N[[t]]=e,e.circle.classed("rdf-class",!0),e.circle.on("mouseover",(function(){s.noPrefixes||e.textHidden?y.show(e):y.hide(e)})),e.circle.on("mouseout",y.hide)}})).on("gdb-focus",R).on("gdb-zoom",B);function F(e){d3.selectAll(".selected").classed("selected",e.selected=!1),e.circle.classed("selected",e.selected=!0),C=e}function L(){d.showClassInfoPanel=!1}E&&(E=_.uniqBy(E,"name"),d.flattenedClassNames=E);var D=o.a.Click.delayDblClick();d3.selectAll(".parent, .topLevelParent, .child, .root").call(D);R=function(e){B(e),e.name===h?(L(),d3.selectAll(".selected").classed("selected",!1)):(F(e),d.selectedClass=C,d.showClassInfoPanel=!0,d.$on("sidePanelClosed",(function(t){d3.selectAll(".selected").classed("selected",e.selected=!1)})))},D.on("click",(function(e){e.id&&r.history.pushState({id:e.id},"classHierarchyPage"+e.id,"hierarchy#"+e.id),y.hide(),R(e)})),D.on("dblclick",(function(t){t!==n&&(y.hide(),F(t),e.$broadcast("goToDomainRangeGraphView",C,P),d3.event.stopPropagation())}));var $=0;w.on("wheel",(function(){y.hide();var e=d3.event;e.preventDefault(),e.stopPropagation();var t=(new Date).getTime();if(t-$>100){$=t;var n="";e.deltaY<=-1?n="in":e.deltaY>=1&&(n="out");var i=e.target.__data__;if(i||(i=P),"in"===n){if(i!==P){for(;i.parent&&!i.parent.isInFocusTransitive;)i=i.parent;i.depth<P.depth&&(i=P)}if(i===P&&i.children){for(var a=i.children[0],o=1;o<i.children.length;o++)i.children[o].sortingRank>a.sortingRank&&(a=i.children[o]);a.children&&(i=a)}else i.children||(i=i.parent);B(i,!0)}else"out"===n&&(i=P.parent)&&B(i,!0);P.name===h&&r.history.replaceState({id:1},"classHierarchyPage1","hierarchy#1"),O()}}));var z=A.selectAll("text").data(v).enter().append("text").attr("class",(function(e){return e.children&&e.children.length?"label":"label child-label"})).each((function(e){e.textSel=d3.select(this)}));s.noPrefixes?(H!==n&&(z.each((function(e){var t=e.name.indexOf(":");e.name.indexOf("http://")>-1?e.noPrefixName=e.name:t>-1&&(e.noPrefixName=e.name.substring(t+1))})),H=n),z.style("font-size",(function(e){return o.a.Text.calcFontSize(e.noPrefixName,e.r)})).text((function(e){return o.a.Text.getTextWithElipsisIfNeeded(e.noPrefixName,e.r/3)}))):z.style("font-size",(function(e){return o.a.Text.calcFontSize(e.name,e.r)})).text((function(e){return o.a.Text.getTextWithElipsisIfNeeded(e.name,e.r/3)})),z.style("display",(function(e){return e.parent===n?(e.textHidden=this.textContent.indexOf("...")+3===this.textContent.length,null):(e.textHidden=!0,"none")})),s.doFade&&!s.keepPrevState&&z.each((function(e){o.a.Transition.fadeIn(d3.select(this),550)})),T=function(){function e(e){e&&k.each((function(t){e==t.id&&R(t)}))}var n=t.hash();r.onpopstate=function(t){t.state&&e(t.state.id)},e(n)};var U=A.selectAll("circle, text");function M(e,t){var n=800/e[2];p=e,U.attr("transform",(function(t){return"translate("+(t.x-e[0])*n+","+(t.y-e[1])*n+")"})),k.attr("r",(function(e){return e.r*n})),t&&z.each((function(e){e.fullName!==P.topLevelParentUri&&P.topLevelParentUri!==h||(e.textSel.style("display","none"),P.children&&P.children.length?_.each(P.children,(function(e){e.textSel.style("display","inline")})):P.textSel.style("display","inline"),P.parent&&_.each(P.parent.children,(function(e){e.name!==P.name&&e.textSel.style("display","inline")})))})),z.style("font-size",(function(e){return s.noPrefixes?o.a.Text.calcFontSize(e.noPrefixName,e.r*n):o.a.Text.calcFontSize(e.name,e.r*n)})).text((function(e){return s.noPrefixes?o.a.Text.getTextWithElipsisIfNeeded(e.noPrefixName,e.r*n/3):o.a.Text.getTextWithElipsisIfNeeded(e.name,e.r*n/3)}))}function V(e){var t=2*e+20;return 2*e/t<.3&&(t=2*e+2),t}function W(e){!e.isInFocusTransitive&&e.parent&&e.parent.isInFocusTransitive||(e.textHidden=!0,this.style.display="none")}function Y(e){!e.isInFocusTransitive&&e.parent&&e.parent.isInFocusTransitive&&(e.textHidden=this.textContent.indexOf("...")+3===this.textContent.length,this.style.display="")}function B(e,t){if(l((function(){d.showExternalElements=e.name===h})),P!==e&&(e.id&&r.history.replaceState({id:e.id},"classHierarchyPage"+e.id,"hierarchy#"+e.id),e.children||(e=e.parent,P!==e))){if(t&&(L(),d3.selectAll(".selected").classed("selected",!1)),P.parent)for(var n=P;n;)n.isInFocusTransitive=!1,n=n.parent;for(n=e;n;)n.isInFocusTransitive=n.children,n=n.parent;if(2*(P=e).r/(2*P.r+20)<.3||d.currentSliderValue>d.currentBrowserLimit)M([P.x,P.y,V(P.r)]),z.each((function(e){W.call(this,e),Y.call(this,e)}));else d3.transition().duration(f).tween("zoom",(function(e){var t=d3.interpolateZoom(p,[P.x,P.y,V(P.r)]);return function(e){M(t(e))}})).selectAll("text").each("start",W).each("end",Y)}}M([P.x,P.y,V(P.r)],u),I=d.$on("rootFocus",(function(){r.history.pushState({id:1},"classHierarchyPage1","hierarchy#1"),R(n)})),b=d.$on("classSearch",(function(e){R(e)}))}function O(){var t=d.classHierarchyData.classCount;let n=p.get(v.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE);(!n||n>t)&&(n=t,p.set(v.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE,n)),e.$broadcast("classCount",t,n)}window.addEventListener("resize",O),window.addEventListener("beforeunload",(function e(){window.removeEventListener("resize",O),window.removeEventListener("beforeunload",e)})),d.$watch("classHierarchyData",(function(){k&&k(),F&&F(),L&&L(),D&&D();var e=C();if(d.classHierarchyData.classCount){O();var t=angular.copy(d.classHierarchyData);var n,r,i=function(e){return m.nodes(e).sort((function(e,t){return e.sortingRank>t.sortingRank?-1:e.sortingRank<t.sortingRank||e.depth>t.depth?1:e.depth<t.depth?-1:0}))}(t);function a(e,t){var i={keepPrevState:!0,noPrefixes:C()};r=i.noPrefixes,z(n||e,i,P,!0),l((function(){p.set(v.CLASS_HIERARCHY_SWITCH_PREFIXES,t),T()}),70)}function o(e,i,o){if(e){p.set(v.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE,e),n={name:h,children:[]};for(var s=new Set,l=1;l<=e;l++)s.add(i[l].id),i[l].parent===i[0]&&n.children.push(i[l]);if(function e(t){if(t.children){for(var n=[],r=0;r<t.children.length;r++)s.has(t.children[r].id)&&n.push($.extend({},t.children[r]));t.children=n;for(r=0;r<t.children.length;r++)e(t.children[r])}}(n),o)r=angular.isUndefined(r)?C():r,z(n,{noPrefixes:r});else a(t)}}var s,c=p.get(v.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE);if(c)o(c,i);else{var u={doFade:!0,keepPrevState:!0,noPrefixes:C()};z(t,u),T()}k=d.$watch("hidePrefixes",(function(n){angular.isUndefined(n)||e?e=void 0:l((function(){!function(e){angular.isUndefined(e)||p.set(v.CLASS_HIERARCHY_HIDE_PREFIXES,e)}(n),a(t,!0)}),50)}),!0),F=d.$watch("currentSliderValue",(function(e){o(e,i,!0)}),!0),D=d.$on("onEnterKeypressSearchAction",(function(e){s&&R(s)})),L=d.$on("searchedClass",(function(e,t){(s=N[t.name])&&R(s)}))}}),!0)}(d)}}}angular.module("graphdb.framework.graphexplore.directives.class",["graphdb.framework.graphexplore.controllers.class","graphdb.framework.utils.localstorageadapter"]).constant("ZOOM_DURATION",500).constant("ROOT_OBJ_NAME","RDF Class Hierarchy").directive("rdfClassHierarchy",l),l.$inject=["$rootScope","$location","GraphDataRestService","$window","$timeout","$repositories","$licenseService","toastr","ZOOM_DURATION","ROOT_OBJ_NAME","LocalStorageAdapter","LSKeys","$translate"]},298:function(e,t,n){var r,i,a;i=[],void 0===(a="function"==typeof(r=function(){return function(){var e=function(){return"n"},t=function(){return[0,0]},n=function(){return" "},r=u(),i=null,a=null,o=null,s=null;function l(e){var t;i="svg"===(t=(t=e).node()).tagName.toLowerCase()?t:t.ownerSVGElement,a=i.createSVGPoint(),document.body.appendChild(r)}l.show=function(){var r=Array.prototype.slice.call(arguments);r[r.length-1]instanceof SVGElement&&(o=r.pop());var i,a=n.apply(this,r),u=t.apply(this,r),h=e.apply(this,r),p=f(),v=d.length,y=document.documentElement.scrollTop||document.body.scrollTop,g=document.documentElement.scrollLeft||document.body.scrollLeft,m=s.apply(this,r);for(p.html(a).style({opacity:1,"pointer-events":"all"});v--;)p.classed(d[v],!1);return i=c.get(h).apply(this),m?p.style(m):p.classed(h,!0).style({top:i.top+u[0]+y+"px",left:i.left+u[1]+g+"px"}),l},l.hide=function(){return f().style({opacity:0,"pointer-events":"none"}),l},l.attr=function(e,t){if(arguments.length<2&&"string"==typeof e)return f().attr(e);var n=Array.prototype.slice.call(arguments);return d3.selection.prototype.attr.apply(f(),n),l},l.style=function(e,t){if(arguments.length<2&&"string"==typeof e)return f().style(e);var n=Array.prototype.slice.call(arguments);return d3.selection.prototype.style.apply(f(),n),l},l.direction=function(t){return arguments.length?(e=null==t?t:d3.functor(t),l):e},l.offset=function(e){return arguments.length?(t=null==e?e:d3.functor(e),l):t},l.html=function(e){return arguments.length?(n=null==e?e:d3.functor(e),l):n},l.customPosition=function(e){return arguments.length?(s=null==e?e:d3.functor(e),l):s},l.destroy=function(){return r&&(f().remove(),r=null),l};var c=d3.map({n:function(){var e=h();return{top:e.n.y-r.offsetHeight,left:e.n.x-r.offsetWidth/2}},s:function(){var e=h();return{top:e.s.y,left:e.s.x-r.offsetWidth/2}},e:function(){var e=h();return{top:e.e.y-r.offsetHeight/2,left:e.e.x}},w:function(){var e=h();return{top:e.w.y-r.offsetHeight/2,left:e.w.x-r.offsetWidth}},nw:function(){var e=h();return{top:e.nw.y-r.offsetHeight,left:e.nw.x-r.offsetWidth}},ne:function(){var e=h();return{top:e.ne.y-r.offsetHeight,left:e.ne.x}},sw:function(){var e=h();return{top:e.sw.y,left:e.sw.x-r.offsetWidth}},se:function(){var e=h();return{top:e.se.y,left:e.e.x}}}),d=c.keys();function u(){var e=d3.select(document.createElement("div"));return e.style({position:"absolute",top:0,opacity:0,"pointer-events":"none","box-sizing":"border-box"}),e.node()}function f(){return null===r&&(r=u(),document.body.appendChild(r)),d3.select(r)}function h(){for(var e=o||d3.event.target;void 0===e.getScreenCTM&&"undefined"===e.parentNode;)e=e.parentNode;var t={},n=e.getScreenCTM(),r=e.getBBox(),i=r.width,s=r.height,l=r.x,c=r.y;return a.x=l,a.y=c,t.nw=a.matrixTransform(n),a.x+=i,t.ne=a.matrixTransform(n),a.y+=s,t.se=a.matrixTransform(n),a.x-=i,t.sw=a.matrixTransform(n),a.y-=s/2,t.w=a.matrixTransform(n),a.x+=i,t.e=a.matrixTransform(n),a.x-=i/2,a.y-=s/2,t.n=a.matrixTransform(n),a.y+=s,t.s=a.matrixTransform(n),t}return l}})?r.apply(t,i):r)||(e.exports=a)},301:function(e,t,n){"use strict";var r=r||{};r.Text=function(){function e(e,t,n,r){n=n||10;var i=t/3;return"string"==typeof e?(i*=10/(e.substring(0,t/3).length+1.5),i+=1,e.match(/[\u0900-\u0DFF\u1100-\u11FF\u2E80-\u2EFF\u3000-\u9FFF]/)&&(i*=.6),i<n&&(i=n),Math.round(i)):(i<n&&(i=n),Math.round(i))}return{calcFontSizeRaw:e,calcFontSize:function(t,n,r,i){return e(t,n,r)+"px"},getTextWithElipsisIfNeeded:function(e,t){return"string"==typeof e&&e.length>t?e.substring(0,t-3)+"...":e}}}(),r.Transition={fadeIn:function(e,t){e.style("opacity",0).transition().duration(t).style("opacity",1)},fadeOut:function(e,t){e.style("opacity",1).transition().duration(t).style("opacity",0)}},r.Click={delayDblClick:function(){var e=d3.dispatch("click","dblclick");return d3.rebind((function(t){var n,r=null;t.on("mousedown",(function(){n=d3.mouse(document.body),new Date})),t.on("mouseup",(function(t){var i,a;i=n,a=d3.mouse(document.body),Math.sqrt(Math.pow(i[0]-a[0],2),Math.pow(i[1]-a[1],2))>5||(r?(window.clearTimeout(r),r=null,e.dblclick(t)):r=window.setTimeout((d3.event,function(){e.click(t),r=null}),250))}))}),e,"on")}},t.a=r},302:function(e,t,n){"use strict";var r=n(297),i=i||{};i.Export={getCSSRules:function(e){const t=$('link[href="'+e+'"]')[0].sheet.rules;let n="";return _.each(t,(function(e){n+=e.cssText})),n},generateBase64ImageSource:function(e){e||(e="svg");const t=r.selectAll(e).attr("version","1.1").attr("xmlns","http://www.w3.org/2000/svg").node().parentNode.innerHTML;return"data:image/svg+xml;charset=utf-8;base64,"+btoa(unescape(encodeURIComponent(t)))}},t.a=i},308:function(e,t,n){"use strict";var r=r||{};r.SingleChild={addPlaceholders:function e(t,n){if(t.children){for(var r=0;r<t.children.length;r++)e(t.children[r]);if(1===t.children.length){var i=1.2*t.size;n&&(i=.1*t.children[0].size),t.children.push({name:"placeholder",size:i})}}},removePlaceholders:function e(t){for(var n=t.length-1;n>=0;n--){var r=t[n];"placeholder"===r.name?t.splice(n,1):r.children&&e(r.children)}},centerNodes:function(e){for(var t=0;t<e.length;t++){var n=e[t];if(n.children&&1===n.children.length){var r=n.x-n.children[0].x;n.children[0].x+=r,i(n.children[0],r)}}function i(e,t){if(e.children)for(var n=0;n<e.children.length;n++)e.children[n].x+=t,i(e.children[n],t)}},makePositionsRelativeToZero:function(e){for(var t=e[0].x,n=e[0].y,r=0;r<e.length;r++){var i=e[r];i.x-=t,i.y-=n}}},t.a=r}}]);