graphdb-workbench 2.7.0-RC3 → 2.7.0-RC5

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 (100) hide show
  1. package/README.md +1 -12
  2. package/dist/{10.c2b5d87a7e6f853df225.bundle.js → 10.ce305151da3c9af58aad.bundle.js} +1 -1
  3. package/dist/{11.019c95d9d3e48f128001.bundle.js → 11.e440b7bed78eefd4f85a.bundle.js} +1 -1
  4. package/dist/{12.3eba2ce927223d6beaae.bundle.js → 12.27901cde5137cef7ebd9.bundle.js} +1 -1
  5. package/dist/13.5b30668f0f8b090a74fb.bundle.js +1 -0
  6. package/dist/{14.d4c62f427432d74a286e.bundle.js → 14.58ab8f49a90296b65686.bundle.js} +1 -1
  7. package/dist/149.fa1d474cfaf6b767889b.bundle.js +1 -1
  8. package/dist/150.7d401b8223acd1b3e6e6.bundle.js +1 -0
  9. package/dist/{153.20647b70a0991741b133.bundle.js → 153.7249b1b2b0ab80c53e87.bundle.js} +1 -1
  10. package/dist/{17.f97ce9ca8c87ba2dc2f5.bundle.js → 17.61150aea9442c9814294.bundle.js} +2 -2
  11. package/dist/{18.fa5f92b1325d6c237490.bundle.js → 18.c922a4fb70ba4a120a7a.bundle.js} +1 -1
  12. package/dist/{183.d02eb491d82a20662078.bundle.js → 183.7768f56fc77e5a16d4ff.bundle.js} +1 -1
  13. package/dist/{19.d25fcec1a634b83a4ab5.bundle.js → 19.aa6e3b73dc45c5a3035e.bundle.js} +2 -2
  14. package/dist/{195.b79966a034a4bde84b69.bundle.js → 195.e2715a3321ecc8164188.bundle.js} +1 -1
  15. package/dist/{2.29a14f778c53393e96b5.bundle.js → 2.581f30abc14038706ded.bundle.js} +2 -2
  16. package/dist/{21.83559c0ea33f912ece16.bundle.js → 21.d96ddea8d7e8b867a63c.bundle.js} +1 -1
  17. package/dist/{22.0fa3c8910376d3560df6.bundle.js → 22.02e8b7b0709262b2e06c.bundle.js} +1 -1
  18. package/dist/{23.f80e6c86fdefaa8beb7b.bundle.js → 23.15edc73a618d1d6a9a01.bundle.js} +1 -1
  19. package/dist/{24.f18e0c402a2edbe15a21.bundle.js → 24.294d31e50bae2567c146.bundle.js} +1 -1
  20. package/dist/{25.5883938465085bed6a70.bundle.js → 25.1a1ee5e65c44791876c8.bundle.js} +1 -1
  21. package/dist/{27.a2d2a0aeca206f315ff4.bundle.js → 27.2045bafbfb60ed2b845c.bundle.js} +1 -1
  22. package/dist/{275.52fa7d7d23192c71c15d.bundle.js → 275.f6045911522b9f4e92c1.bundle.js} +1 -1
  23. package/dist/{28.d9a0920f543c599508f7.bundle.js → 28.8699576c7fe3a1d8fc03.bundle.js} +1 -1
  24. package/dist/29.15213e151364f5ecfcd5.bundle.js +1 -1
  25. package/dist/300.cef8eccb11324bcfdb36.bundle.js +1 -1
  26. package/dist/302.7a5d2ba28bd6479a77be.bundle.js +1 -1
  27. package/dist/303.e817b957f010153de97a.bundle.js +1 -1
  28. package/dist/304.fd2e766c67cd966f6751.bundle.js +1 -1
  29. package/dist/{32.1500547152b61817bf4b.bundle.js → 32.f778720d1f10edf95fe6.bundle.js} +1 -1
  30. package/dist/322.8933652e5daf83c24378.bundle.js +1 -0
  31. package/dist/{33.658b4b7dfd8907299bd2.bundle.js → 33.7de66dd3c9e2630bbe2f.bundle.js} +1 -1
  32. package/dist/333.9f051c77b4c6747b320c.bundle.js +1 -1
  33. package/dist/{34.b083f40f22c7cba13c9b.bundle.js → 34.5b8a3444a651893bb5a5.bundle.js} +1 -1
  34. package/dist/{35.6e98d4f02ec70ab9c18d.bundle.js → 35.cb6e9c691883bc18bee5.bundle.js} +1 -1
  35. package/dist/{36.514b83c5c76d798f194b.bundle.js → 36.75c914cb6b09164de5fc.bundle.js} +1 -1
  36. package/dist/{38.ee84d1f49e7b0dd1ab19.bundle.js → 38.f6041187665bc215d153.bundle.js} +1 -1
  37. package/dist/42.52befbab22e69bb433f4.bundle.js +1 -1
  38. package/dist/43.57ab2f400ac0185bdc0b.bundle.js +1 -0
  39. package/dist/44.7097ceaa507506d35977.bundle.js +1 -0
  40. package/dist/51.ebafb19025c2f912a73d.bundle.js +1 -1
  41. package/dist/{59.6f241e911b33e8f887bd.bundle.js → 59.53531269a8e4d1db4a18.bundle.js} +1 -1
  42. package/dist/{6.06c5378d91089fc0d3c0.bundle.js → 6.804dbf883e52a8933e16.bundle.js} +1 -1
  43. package/dist/{67.147b4b01815dbf0fb888.bundle.js → 67.d66b2a07784d748382b9.bundle.js} +1 -1
  44. package/dist/{68.bbb9167b9a325038c4c5.bundle.js → 68.522250906a7247f87fd2.bundle.js} +1 -1
  45. package/dist/{73.49f51849b45a708ecef3.bundle.js → 73.c2d512008af03be5b97f.bundle.js} +1 -1
  46. package/dist/76.ba3fe7e40f243d6c7c4a.bundle.js +1 -0
  47. package/dist/{8.02e89c644497d344f233.bundle.js → 8.af3c6a52fb5920ace418.bundle.js} +1 -1
  48. package/dist/{9.843879ddf6bab478ae3d.bundle.js → 9.deafb4fc416741d5d621.bundle.js} +1 -1
  49. package/dist/{96.6a570ad81b7588bffb76.bundle.js → 96.babb34b1317abe847f48.bundle.js} +1 -1
  50. package/dist/{bundle.a0c228dbfde457104657.bundle.js → bundle.85c062b8f26f60eeb6f8.bundle.js} +5 -5
  51. package/dist/css/bootstrap-graphdb-theme.css +1 -0
  52. package/dist/index.html +4 -4
  53. package/dist/js/angular/core/directives/autocomplete/templates/autocomplete.html +1 -1
  54. package/dist/js/angular/core/directives/operations-statuses-monitor/templates/operations-statuses-monitor.html +1 -1
  55. package/dist/js/angular/core/directives/rdfresourcesearch/templates/rdfResourceSearchTemplate.html +1 -1
  56. package/dist/js/angular/core/directives/yasgui-component/templates/yasgui-component.html +1 -1
  57. package/dist/js/angular/import/templates/import-resource-message.html +5 -5
  58. package/dist/js/angular/security/templates/user.html +1 -1
  59. package/dist/license-checker.json +2 -2
  60. package/dist/{main.98c547eac0aca6db48bb.css → main.12f182bd7790c4e4b110.css} +1 -1
  61. package/dist/pages/aclmanagement.html +2 -2
  62. package/dist/pages/autocomplete.html +1 -1
  63. package/dist/pages/choose-repository-type.html +1 -1
  64. package/dist/pages/cluster-management/clusterInfo.html +3 -3
  65. package/dist/pages/create-index.html +1 -1
  66. package/dist/pages/dependencies.html +1 -1
  67. package/dist/pages/domainRangeInfo.html +2 -2
  68. package/dist/pages/edit.html +1 -1
  69. package/dist/pages/explore.html +1 -1
  70. package/dist/pages/export.html +1 -1
  71. package/dist/pages/find.html +1 -1
  72. package/dist/pages/graph-config/saveGraphConfig.html +8 -8
  73. package/dist/pages/graphs-visualizations.html +7 -7
  74. package/dist/pages/guides.html +1 -1
  75. package/dist/pages/import.html +2 -2
  76. package/dist/pages/jdbc-create.html +1 -1
  77. package/dist/pages/monitor/backup-and-restore.html +1 -1
  78. package/dist/pages/monitor/queries.html +1 -1
  79. package/dist/pages/monitor/resources.html +1 -1
  80. package/dist/pages/namespaces.html +2 -2
  81. package/dist/pages/plugins.html +1 -1
  82. package/dist/pages/rdfClassHierarchyInfo.html +7 -7
  83. package/dist/pages/rdfrank.html +2 -2
  84. package/dist/pages/repositories.html +1 -1
  85. package/dist/pages/repository.html +1 -1
  86. package/dist/pages/similarity-indexes.html +1 -1
  87. package/dist/pages/sparql-editor.html +1 -1
  88. package/dist/pages/sparql-template-create.html +1 -1
  89. package/dist/pages/ux-test1.html +2 -2
  90. package/dist/pages/webapi.html +2 -2
  91. package/dist/res/swagger5/index.html +12 -12
  92. package/package.json +1 -13
  93. package/dist/13.d2b2f107c437155c7902.bundle.js +0 -1
  94. package/dist/150.35beaee434c36b8a57ed.bundle.js +0 -1
  95. package/dist/322.166a8d15dbebcaad2c0f.bundle.js +0 -1
  96. package/dist/43.aa5e0ebcdf8f97aa89fa.bundle.js +0 -1
  97. package/dist/44.dfaaad81b2f47956d038.bundle.js +0 -1
  98. package/dist/76.689c7abcb01082bcf286.bundle.js +0 -1
  99. /package/dist/{30.da81fc6adae87760bef3.bundle.js → 30.c8e21736ca2a4afad5e1.bundle.js} +0 -0
  100. /package/dist/{45.35f80633b00a33777b62.bundle.js → 45.a81310b7f09b158f7422.bundle.js} +0 -0
@@ -1 +1 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[24,33,195,203,222,223,258,273],{137:function(e,t,r){"use strict";r.r(t),r.d(t,"SparqlTemplateError",(function(){return a}));class a extends Error{}},138:function(e,t,r){"use strict";r.r(t),r.d(t,"DEFAULT_SPARQL_QUERY",(function(){return a})),r.d(t,"SparqlTemplateInfo",(function(){return n}));const a="PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>\nPREFIX ex: <http://example.com#>\nDELETE {\n ?subject ex:myPredicate ?oldValue .\n} INSERT {\n ?subject ex:myPredicate ?newValue .\n} WHERE {\n ?id rdf:type ex:MyType .\n ?subject ex:isRelatedTo ?id .\n}\n";class n{constructor(e=a,t=!0,r){this.query=e,this.templateID=r,this.isNewTemplate=t,this.templateExist=!1,this.isValidTemplateId=!0,this.isValidQuery=!0,this.isValidQueryMode=!0}}},235:function(e,t){angular.module("graphdb.framework.rest.sparql-templates.service",[]).factory("SparqlTemplatesRestService",r),r.$inject=["$http"];function r(e){return{getSparqlTemplates:function(t){return e.get(`rest/repositories/${t}/sparql-templates`)},getSparqlTemplate:function(t,r){return e.get(`rest/repositories/${r}/sparql-templates/configuration`,{params:{templateID:t}})},createSparqlTemplate:function(t,r){return e.post(`rest/repositories/${r}/sparql-templates`,{templateID:t.templateID,query:t.query})},updateSparqlTemplate:function(t,r){return e.put(`rest/repositories/${r}/sparql-templates`,t.query,{params:{templateID:t.templateID},headers:{"Content-Type":"text/plain"}})},deleteSparqlTemplate:function(t,r){return e.delete(`rest/repositories/${r}/sparql-templates`,{params:{templateID:t}})}}}},237:function(e,t,r){"use strict";r.r(t);r(7),r(26),r(28),r(68),r(29),r(15);var a=r(0),n=r(138),s=r(137),i=r(67),o=r(64),l=r(14);function p(e,t,r,a,n,s,i){e.pluginName="sparql-template",e.setPluginIsActive=function(t){e.pluginIsActive=t},e.getSparqlTemplates=function(){s.isLicenseValid()&&t.getActiveRepository()&&!t.isActiveRepoOntopType()&&!t.isActiveRepoFedXType()?r.getSparqlTemplates(t.getActiveRepository()).success((function(t){e.sparqlTemplateIds=t})).error((function(e){const t=getError(e);a.error(t,i.instant("sparql.template.get.templates.error"))})):e.sparqlTemplateIds=[]},e.$watch((function(){return t.getActiveRepository()}),(function(){e.getSparqlTemplates()})),e.deleteTemplate=function(s){n.openSimpleModal({title:i.instant("common.warning"),message:i.instant("sparql.template.delete.template.warning",{templateID:s}),warning:!0}).result.then((function(){r.deleteSparqlTemplate(s,t.getActiveRepository()).success((function(){a.success(s,i.instant("sparql.template.delete.template.success")),e.getSparqlTemplates()})).error((function(e){a.error(getError(e),i.instant("sparql.template.delete.template.failure",{templateID:s}))}))}))}}function c(e,t,r,p,c,m,u,d,f,g,q,T,h,I,y,w){e.initialQuery=n.DEFAULT_SPARQL_QUERY,e.sparqlTemplateInfo=new n.SparqlTemplateInfo(e.initialQuery),e.title="",e.saveOrUpdateExecuted=!1,e.isDirty=!1,e.language=w.getLanguage(),e.canEditActiveRepo=!1;let v=!0;e.saveTemplate=function(){e.saveOrUpdateExecuted=!0,$()||U();const t=e.sparqlTemplateInfo.isNewTemplate?S:P;x(e.sparqlTemplateInfo).then(Q).then(R).then(k).then(t).then(M).catch(e=>{e instanceof s.SparqlTemplateError||console.log(e)})},e.isTemplateIdValid=e=>q.isValidIri(e,e.toString()),e.markDirty=()=>{e.isDirty=!0},e.markPristine=()=>{e.isDirty=!1};const E=(t,r=n.DEFAULT_SPARQL_QUERY)=>{e.sparqlTemplateInfo.query=r,e.sparqlTemplateInfo.templateID=V(),e.sparqlTemplateInfo.isNewTemplate=!e.sparqlTemplateInfo.templateID,j(),e.yasguiConfig={showEditorTabs:!1,showToolbar:!1,showResultTabs:!1,showYasqeActionButtons:!1,showYasqeResizer:!1,yasqeActionButtons:l.DISABLE_YASQE_BUTTONS_CONFIGURATION,showQueryButton:!1,initialQuery:e.sparqlTemplateInfo.query,componentId:"sparql-template",prefixes:t,render:o.RenderingMode.YASQE,maxPersistentResponseSize:0,yasqeMode:e.canEditActiveRepo?i.YasqeMode.WRITE:i.YasqeMode.PROTECTED}},S=e=>D(e).then(b).then(A),D=t=>f.getSparqlTemplates(c.getActiveRepository()).then((function(r){return t.templateExist=r.data.find(t=>t===e.sparqlTemplateInfo.templateID),t})).catch((function(e){const t=getError(e);return p.error(t,h.instant("sparql.template.get.templates.error")),Promise.reject(new s.SparqlTemplateError("Failed to retrieve sparql templates."))})),R=e=>C().isQueryValid().then(t=>(e.isValidQuery=t,e.isValidQuery?e:Promise.reject(new s.SparqlTemplateError("Invalid query.")))),$=()=>e.sparqlTemplateInfo.isNewTemplate||e.isDirty,b=e=>new Promise((t,r)=>{if(e.templateExist){const n=Object(a.decodeHTML)(h.instant("sparql.template.existing.template.error",{templateID:e.templateID})),i=h.instant("common.confirm.save");L(i,n,()=>t(e),()=>r(new s.SparqlTemplateError("Save not confirmed.")))}else t(e)});function A(t){return f.createSparqlTemplate(t,c.getActiveRepository()).then((function(){return t.isNewTemplate=!1,e.markPristine(),p.success(t.templateID,h.instant("save.sparql.template.success.msg")),t})).catch((function(e){const r=getError(e);return p.error(r,h.instant("save.sparql.template.failure.msg",{templateID:t.templateID})),Promise.reject(new s.SparqlTemplateError("Failed to save the new template: "+t.templateID))}))}const P=t=>f.updateSparqlTemplate(t,c.getActiveRepository()).then((function(){return t.isNewTemplate=!1,e.markPristine(),p.success(e.sparqlTemplateInfo.templateID,h.instant("update.sparql.template.success.msg")),t})).catch((function(e){const r=getError(e);return p.error(r,h.instant("save.sparql.template.failure.msg",{templateID:t.templateID})),Promise.reject(new s.SparqlTemplateError("Failed to update the template: "+t.templateID))})),Q=e=>C().getQuery().then(t=>(e.query=t,e)),k=e=>C().getQueryMode().then(t=>(e.isValidQueryMode="update"===t,e.isValidQueryMode?e:Promise.reject(new s.SparqlTemplateError("Query mode is not valid.")))),x=t=>new Promise((r,a)=>{t.templateID?(t.isValidTemplateId=e.isTemplateIdValid(t.templateID),t.isValidTemplateId?r(t):a(new s.SparqlTemplateError("Template identifier is not valid."))):a(new s.SparqlTemplateError("A required template identifier is missing."))}),M=()=>{setTimeout((function(){U()}),1e3)},V=()=>{const e=r.hash()||"";return(r.search().templateID||"")+(e?"#"+e:"")},j=()=>{e.title=(e.sparqlTemplateInfo.templateID?h.instant("edit"):h.instant("common.create.btn"))+" "+h.instant("view.sparql.template.title")},U=()=>{r.url("/sparql-templates")},Y=(t,r)=>{e.queryIsRunning=t,e.loaderMessage=e.queryIsRunning?r:""},C=()=>l.YasguiComponentDirectiveUtil.getOntotextYasguiElement("#query-editor"),L=(e,t,r,a)=>{T.openSimpleModal({title:e,message:t,warning:!0}).result.then((function(){angular.isFunction(r)&&r()}),(function(){angular.isFunction(a)&&a()}))},F=()=>{window.removeEventListener("beforeunload",N),O.forEach(e=>e())},N=t=>{e.isDirty&&(t.returnValue=!0)},O=[];O.push(e.$on("queryChanged",(t,r)=>{r.dirty?e.markDirty():e.markPristine()})),O.push(t.$on("$translateChangeSuccess",()=>{e.language=w.getLanguage(),j()})),O.push(e.$on("$locationChangeStart",(t,a)=>{if(e.isDirty){t.preventDefault();const e=h.instant("common.confirm"),n=h.instant("jdbc.warning.unsaved.changes");L(e,n,()=>{F();const e=r.absUrl().length-r.url().length,t=a.substring(e);r.path(t)})}else F()})),O.push(y.subscribe("repositoryWillChangeEvent",t=>new Promise((function(r){if(e.sparqlTemplateInfo.isNewTemplate)return void r(t);const a=()=>{e.isDirty=!1,U(),r(t)};if(e.isDirty){const e=()=>{t.cancel=!0,r(t)},n=h.instant("common.confirm"),s=h.instant("jdbc.warning.unsaved.changes");L(n,s,a,e)}else a()})))),O.push(e.$on("$destroy",F)),window.addEventListener("beforeunload",N);const _=()=>{const t=`${h.instant("common.refreshing.namespaces")}. ${h.instant("common.extra.message")}`;Y(!0,t),e.sparqlTemplateInfo.templateID=V();const r=c.getActiveRepository();e.sparqlTemplateInfo.templateID?Promise.all([c.getPrefixes(r),f.getSparqlTemplate(e.sparqlTemplateInfo.templateID,r)]).then(([e,t])=>E(e,t.data)).finally(()=>Y(!1)):c.getPrefixes(r).then(e=>E(e)).finally(()=>Y(!1))};O.push(e.$watch(e.getActiveRepositoryObject,t=>{t&&(e.canEditActiveRepo=e.canWriteActiveRepo(),v?(_(),v=!1):U())}))}angular.module("graphdb.framework.sparql-template.controllers",["ui.bootstrap","graphdb.framework.core.services.repositories","graphdb.framework.rest.monitoring.service","toastr","graphdb.framework.utils.event-emitter-service"],["graphdb.framework.utils.notifications"]).controller("SparqlTemplatesCtrl",p).controller("SparqlTemplateCreateCtrl",c),p.$inject=["$scope","$repositories","SparqlTemplatesRestService","toastr","ModalService","$licenseService","$translate"],c.$inject=["$scope","$rootScope","$location","toastr","$repositories","$window","$timeout","$interval","SparqlTemplatesRestService","RDF4JRepositoriesRestService","UriUtils","ModalService","$translate","$q","EventEmitterService","$languageService"]},328:function(e,t,r){"use strict";r.r(t);r(7),r(25),r(140),r(26),r(237),r(235),r(29),r(91);angular.module("graphdb.framework.sparql-template",["toastr","ui.bootstrap","graphdb.framework.sparql-template.controllers","graphdb.framework.core.services.repositories","graphdb.framework.core.directives","graphdb.framework.rest.sparql-templates.service","graphdb.framework.utils.uriutils","graphdb.framework.core.directives.yasgui-component"])},64:function(e,t,r){"use strict";r.r(t),r.d(t,"RenderingMode",(function(){return a}));const a={YASGUI:"mode-yasgui",YASQE:"mode-yasqe",YASR:"mode-yasr"}},67:function(e,t,r){"use strict";r.r(t),r.d(t,"YasqeMode",(function(){return a}));const a={WRITE:"WRITE",READ:"READ",PROTECTED:"PROTECTED"}},68:function(e,t){function r(e,t){return{showToastMessageWithDelay:function(r){return new Promise(a=>{e.success(t.instant(r)),setTimeout(a,200)})}}}angular.module("graphdb.framework.utils.notifications",[]).factory("Notifications",r),r.$inject=["toastr","$translate"]}}]);
1
+ (window.webpackJsonp=window.webpackJsonp||[]).push([[24,33,195,203,222,223,258,273],{137:function(e,t,r){"use strict";r.r(t),r.d(t,"SparqlTemplateError",(function(){return a}));class a extends Error{}},138:function(e,t,r){"use strict";r.r(t),r.d(t,"DEFAULT_SPARQL_QUERY",(function(){return a})),r.d(t,"SparqlTemplateInfo",(function(){return n}));const a="PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>\nPREFIX ex: <http://example.com#>\nDELETE {\n ?subject ex:myPredicate ?oldValue .\n} INSERT {\n ?subject ex:myPredicate ?newValue .\n} WHERE {\n ?id rdf:type ex:MyType .\n ?subject ex:isRelatedTo ?id .\n}\n";class n{constructor(e=a,t=!0,r){this.query=e,this.templateID=r,this.isNewTemplate=t,this.templateExist=!1,this.isValidTemplateId=!0,this.isValidQuery=!0,this.isValidQueryMode=!0}}},235:function(e,t){angular.module("graphdb.framework.rest.sparql-templates.service",[]).factory("SparqlTemplatesRestService",r),r.$inject=["$http"];function r(e){return{getSparqlTemplates:function(t){return e.get(`rest/repositories/${t}/sparql-templates`)},getSparqlTemplate:function(t,r){return e.get(`rest/repositories/${r}/sparql-templates/configuration`,{params:{templateID:t}})},createSparqlTemplate:function(t,r){return e.post(`rest/repositories/${r}/sparql-templates`,{templateID:t.templateID,query:t.query})},updateSparqlTemplate:function(t,r){return e.put(`rest/repositories/${r}/sparql-templates`,t.query,{params:{templateID:t.templateID},headers:{"Content-Type":"text/plain"}})},deleteSparqlTemplate:function(t,r){return e.delete(`rest/repositories/${r}/sparql-templates`,{params:{templateID:t}})}}}},237:function(e,t,r){"use strict";r.r(t);r(7),r(26),r(28),r(68),r(29),r(15);var a=r(0),n=r(138),s=r(137),i=r(67),o=r(65),l=r(14);function p(e,t,r,a,n,s,i){e.pluginName="sparql-template",e.setPluginIsActive=function(t){e.pluginIsActive=t},e.getSparqlTemplates=function(){s.isLicenseValid()&&t.getActiveRepository()&&!t.isActiveRepoOntopType()&&!t.isActiveRepoFedXType()?r.getSparqlTemplates(t.getActiveRepository()).success((function(t){e.sparqlTemplateIds=t})).error((function(e){const t=getError(e);a.error(t,i.instant("sparql.template.get.templates.error"))})):e.sparqlTemplateIds=[]},e.$watch((function(){return t.getActiveRepository()}),(function(){e.getSparqlTemplates()})),e.deleteTemplate=function(s){n.openSimpleModal({title:i.instant("common.warning"),message:i.instant("sparql.template.delete.template.warning",{templateID:s}),warning:!0}).result.then((function(){r.deleteSparqlTemplate(s,t.getActiveRepository()).success((function(){a.success(s,i.instant("sparql.template.delete.template.success")),e.getSparqlTemplates()})).error((function(e){a.error(getError(e),i.instant("sparql.template.delete.template.failure",{templateID:s}))}))}))}}function c(e,t,r,p,c,m,u,d,f,g,q,T,h,I,y,w){e.initialQuery=n.DEFAULT_SPARQL_QUERY,e.sparqlTemplateInfo=new n.SparqlTemplateInfo(e.initialQuery),e.title="",e.saveOrUpdateExecuted=!1,e.isDirty=!1,e.language=w.getLanguage(),e.canEditActiveRepo=!1;let v=!0;e.saveTemplate=function(){e.saveOrUpdateExecuted=!0,$()||U();const t=e.sparqlTemplateInfo.isNewTemplate?S:P;x(e.sparqlTemplateInfo).then(Q).then(R).then(k).then(t).then(M).catch(e=>{e instanceof s.SparqlTemplateError||console.log(e)})},e.isTemplateIdValid=e=>q.isValidIri(e,e.toString()),e.markDirty=()=>{e.isDirty=!0},e.markPristine=()=>{e.isDirty=!1};const E=(t,r=n.DEFAULT_SPARQL_QUERY)=>{e.sparqlTemplateInfo.query=r,e.sparqlTemplateInfo.templateID=V(),e.sparqlTemplateInfo.isNewTemplate=!e.sparqlTemplateInfo.templateID,j(),e.yasguiConfig={showEditorTabs:!1,showToolbar:!1,showResultTabs:!1,showYasqeActionButtons:!1,showYasqeResizer:!1,yasqeActionButtons:l.DISABLE_YASQE_BUTTONS_CONFIGURATION,showQueryButton:!1,initialQuery:e.sparqlTemplateInfo.query,componentId:"sparql-template",prefixes:t,render:o.RenderingMode.YASQE,maxPersistentResponseSize:0,yasqeMode:e.canEditActiveRepo?i.YasqeMode.WRITE:i.YasqeMode.PROTECTED}},S=e=>D(e).then(b).then(A),D=t=>f.getSparqlTemplates(c.getActiveRepository()).then((function(r){return t.templateExist=r.data.find(t=>t===e.sparqlTemplateInfo.templateID),t})).catch((function(e){const t=getError(e);return p.error(t,h.instant("sparql.template.get.templates.error")),Promise.reject(new s.SparqlTemplateError("Failed to retrieve sparql templates."))})),R=e=>C().isQueryValid().then(t=>(e.isValidQuery=t,e.isValidQuery?e:Promise.reject(new s.SparqlTemplateError("Invalid query.")))),$=()=>e.sparqlTemplateInfo.isNewTemplate||e.isDirty,b=e=>new Promise((t,r)=>{if(e.templateExist){const n=Object(a.decodeHTML)(h.instant("sparql.template.existing.template.error",{templateID:e.templateID})),i=h.instant("common.confirm.save");L(i,n,()=>t(e),()=>r(new s.SparqlTemplateError("Save not confirmed.")))}else t(e)});function A(t){return f.createSparqlTemplate(t,c.getActiveRepository()).then((function(){return t.isNewTemplate=!1,e.markPristine(),p.success(t.templateID,h.instant("save.sparql.template.success.msg")),t})).catch((function(e){const r=getError(e);return p.error(r,h.instant("save.sparql.template.failure.msg",{templateID:t.templateID})),Promise.reject(new s.SparqlTemplateError("Failed to save the new template: "+t.templateID))}))}const P=t=>f.updateSparqlTemplate(t,c.getActiveRepository()).then((function(){return t.isNewTemplate=!1,e.markPristine(),p.success(e.sparqlTemplateInfo.templateID,h.instant("update.sparql.template.success.msg")),t})).catch((function(e){const r=getError(e);return p.error(r,h.instant("save.sparql.template.failure.msg",{templateID:t.templateID})),Promise.reject(new s.SparqlTemplateError("Failed to update the template: "+t.templateID))})),Q=e=>C().getQuery().then(t=>(e.query=t,e)),k=e=>C().getQueryMode().then(t=>(e.isValidQueryMode="update"===t,e.isValidQueryMode?e:Promise.reject(new s.SparqlTemplateError("Query mode is not valid.")))),x=t=>new Promise((r,a)=>{t.templateID?(t.isValidTemplateId=e.isTemplateIdValid(t.templateID),t.isValidTemplateId?r(t):a(new s.SparqlTemplateError("Template identifier is not valid."))):a(new s.SparqlTemplateError("A required template identifier is missing."))}),M=()=>{setTimeout((function(){U()}),1e3)},V=()=>{const e=r.hash()||"";return(r.search().templateID||"")+(e?"#"+e:"")},j=()=>{e.title=(e.sparqlTemplateInfo.templateID?h.instant("edit"):h.instant("common.create.btn"))+" "+h.instant("view.sparql.template.title")},U=()=>{r.url("/sparql-templates")},Y=(t,r)=>{e.queryIsRunning=t,e.loaderMessage=e.queryIsRunning?r:""},C=()=>l.YasguiComponentDirectiveUtil.getOntotextYasguiElement("#query-editor"),L=(e,t,r,a)=>{T.openSimpleModal({title:e,message:t,warning:!0}).result.then((function(){angular.isFunction(r)&&r()}),(function(){angular.isFunction(a)&&a()}))},F=()=>{window.removeEventListener("beforeunload",N),O.forEach(e=>e())},N=t=>{e.isDirty&&(t.returnValue=!0)},O=[];O.push(e.$on("queryChanged",(t,r)=>{r.dirty?e.markDirty():e.markPristine()})),O.push(t.$on("$translateChangeSuccess",()=>{e.language=w.getLanguage(),j()})),O.push(e.$on("$locationChangeStart",(t,a)=>{if(e.isDirty){t.preventDefault();const e=h.instant("common.confirm"),n=h.instant("jdbc.warning.unsaved.changes");L(e,n,()=>{F();const e=r.absUrl().length-r.url().length,t=a.substring(e);r.path(t)})}else F()})),O.push(y.subscribe("repositoryWillChangeEvent",t=>new Promise((function(r){if(e.sparqlTemplateInfo.isNewTemplate)return void r(t);const a=()=>{e.isDirty=!1,U(),r(t)};if(e.isDirty){const e=()=>{t.cancel=!0,r(t)},n=h.instant("common.confirm"),s=h.instant("jdbc.warning.unsaved.changes");L(n,s,a,e)}else a()})))),O.push(e.$on("$destroy",F)),window.addEventListener("beforeunload",N);const _=()=>{const t=`${h.instant("common.refreshing.namespaces")}. ${h.instant("common.extra.message")}`;Y(!0,t),e.sparqlTemplateInfo.templateID=V();const r=c.getActiveRepository();e.sparqlTemplateInfo.templateID?Promise.all([c.getPrefixes(r),f.getSparqlTemplate(e.sparqlTemplateInfo.templateID,r)]).then(([e,t])=>E(e,t.data)).finally(()=>Y(!1)):c.getPrefixes(r).then(e=>E(e)).finally(()=>Y(!1))};O.push(e.$watch(e.getActiveRepositoryObject,t=>{t&&(e.canEditActiveRepo=e.canWriteActiveRepo(),v?(_(),v=!1):U())}))}angular.module("graphdb.framework.sparql-template.controllers",["ui.bootstrap","graphdb.framework.core.services.repositories","graphdb.framework.rest.monitoring.service","toastr","graphdb.framework.utils.event-emitter-service"],["graphdb.framework.utils.notifications"]).controller("SparqlTemplatesCtrl",p).controller("SparqlTemplateCreateCtrl",c),p.$inject=["$scope","$repositories","SparqlTemplatesRestService","toastr","ModalService","$licenseService","$translate"],c.$inject=["$scope","$rootScope","$location","toastr","$repositories","$window","$timeout","$interval","SparqlTemplatesRestService","RDF4JRepositoriesRestService","UriUtils","ModalService","$translate","$q","EventEmitterService","$languageService"]},328:function(e,t,r){"use strict";r.r(t);r(7),r(25),r(140),r(26),r(237),r(235),r(29),r(91);angular.module("graphdb.framework.sparql-template",["toastr","ui.bootstrap","graphdb.framework.sparql-template.controllers","graphdb.framework.core.services.repositories","graphdb.framework.core.directives","graphdb.framework.rest.sparql-templates.service","graphdb.framework.utils.uriutils","graphdb.framework.core.directives.yasgui-component"])},65:function(e,t,r){"use strict";r.r(t),r.d(t,"RenderingMode",(function(){return a}));const a={YASGUI:"mode-yasgui",YASQE:"mode-yasqe",YASR:"mode-yasr"}},67:function(e,t,r){"use strict";r.r(t),r.d(t,"YasqeMode",(function(){return a}));const a={WRITE:"WRITE",READ:"READ",PROTECTED:"PROTECTED"}},68:function(e,t){function r(e,t){return{showToastMessageWithDelay:function(r){return new Promise(a=>{e.success(t.instant(r)),setTimeout(a,200)})}}}angular.module("graphdb.framework.utils.notifications",[]).factory("Notifications",r),r.$inject=["toastr","$translate"]}}]);
@@ -1 +1 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[25,169,170,171,195,203,273],{127:function(n,e,t){"use strict";t.r(e),t.d(e,"DEFAULT_SPARQL_QUERY",(function(){return o})),t.d(e,"JdbcConfigurationInfo",(function(){return i}));const o="PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>\n\n# Selects two variables to use as columns\nSELECT ?id ?label {\n ?id rdfs:label ?label\n # The following placeholder must be present in the query\n #!filter\n}";class i{constructor(n=o,e=!0,t){this.query=n,this.jdbcConfigurationName=t,this.isNewJdbcConfiguration=e,this.isValidQuery=!0,this.isValidQueryType=!0,this.hasUndefinedColumns=!1,this.isColumnsEmpty=!1,this.columns=[]}}},128:function(n,e,t){"use strict";t.r(e),t.d(e,"JdbcConfigurationError",(function(){return o}));class o extends Error{constructor(n,e){super(n),this.jdbcConfigurationInfo=e}}},129:function(n,e,t){"use strict";t.r(e),t.d(e,"JdbcColumn",(function(){return o})),t.d(e,"toJDBCColumns",(function(){return i})),t.d(e,"updateColumn",(function(){return r}));class o{constructor(){this.column_name="",this.column_type="",this.sparql_type="",this.nullable=!0}}const i=(n=[],e)=>n.map(n=>({column_name:n,column_type:e[n].column_type,nullable:!0,sparql_type:e[n].sparql_type})),r=(n,e)=>{n.column_type=e[n.column_name].column_type,n.sparql_type=e[n.column_name].sparql_type}},214:function(n,e,t){"use strict";t.r(e);t(26),t(28),t(68),t(7),t(15);var o=t(127),i=t(67),r=t(128),s=t(64),a=t(129),c=t(14),u=t(0);function l(n,e,t,o,i,r){n.getSqlConfigurations=function(){!e.getActiveRepository()||e.isActiveRepoOntopType()||e.isActiveRepoFedXType()?n.jdbcConfigurations=[]:t.getJdbcConfigurations().success((function(e){n.jdbcConfigurations=e})).error((function(n){const e=getError(n);o.error(e,r.instant("jdbc.not.get.SQL.msg"))}))},n.$watch((function(){return e.getActiveRepository()}),(function(){n.getSqlConfigurations()})),n.deleteConfiguration=function(e){i.openSimpleModal({title:r.instant("common.warning"),message:r.instant("jdbc.delete.sql.table.warning.msg",{name:e}),warning:!0}).result.then((function(){t.deleteJdbcConfiguration(e).success((function(){n.getSqlConfigurations()})).error((function(n){o.error(getError(n),r.instant("jdbc.not.delete.sql.msg"))}))}))}}function g(n,e,t,l,g,d,f,m,b,p,C,y,h,j,w,v){e.emptySparqlResponse='{"head": {"vars": []},"results": {"bindings": []}}',e.getSuggestionSqlType="",e.sqlTypes=[],e.activeTab=1,e.jdbcConfigurationInfo=new o.JdbcConfigurationInfo,e.jdbcConfigurationInfo.jdbcConfigurationName=l.search().name||"",e.saveOrUpdateExecuted=!1,e.jdbcConfigurationInfo.isNewJdbcConfiguration=!e.jdbcConfigurationInfo.jdbcConfigurationName,e.language=w.getLanguage(),e.isDirty=!1,e.prefixes=[],e.loadingControllerResources=!1,e.isQueryRunning=!1,e.canEditActiveRepo=!1;let E=!0;e.saveJdbcConfiguration=()=>{if(e.saveOrUpdateExecuted=!0,!e.jdbcConfigurationInfo.jdbcConfigurationName)return;if(!e.isDirty)return void V();const n=e.jdbcConfigurationInfo.isNewJdbcConfiguration?S:T;N(e.jdbcConfigurationInfo).then(_).then(D).then(M).then(n).catch(n=>{if(!(n instanceof r.JdbcConfigurationError)){const e=getError(n);g.error(e,j.instant("jdbc.not.saved.configuration"))}})},e.getPreview=()=>{e.activeTab=1,e.isQueryRunning=!0,N(e.jdbcConfigurationInfo).then(_).then(D).then(M).then(n=>(A({render:s.RenderingMode.YASQE,initialQuery:n.query}),n)).then(q).then(([n,e])=>{const t=n&&n.results.bindings&&n.results.bindings.length>0;let o=s.RenderingMode.YASGUI;t||(o=s.RenderingMode.YASQE,g.info(j.instant("jdbc.table.definition"),j.instant("jdbc.preview.sql"))),A({render:o,sparqlResponse:n,initialQuery:e.query})}).catch(n=>{n instanceof r.JdbcConfigurationError?n.jdbcConfigurationInfo&&(n.jdbcConfigurationInfo.isColumnsEmpty||n.jdbcConfigurationInfo.hasUndefinedColumns)&&(P(),e.activeTab=2):g.error(getError(n,0,100),j.instant("jdbc.not.show.preview"))}).finally(()=>{e.isQueryRunning=!1})},e.setActiveTab=n=>{e.activeTab=n;const t=e.jdbcConfigurationInfo.columns;2!==e.activeTab||t&&0!==t.length||N(e.jdbcConfigurationInfo).then(_).then(()=>{e.getColumnsSuggestions()})},e.setDirty=()=>{e.isDirty=!0},e.getTypeLabel=n=>{switch(n){case"iri":return"VARCHAR: IRI";case"string":return"VARCHAR: String";default:return n.indexOf(" ")>0?n:n.toUpperCase()}},e.selectColumnType=(n,t)=>{e.setDirty();const o=e.jdbcConfigurationInfo.columns.find(e=>e.column_name===n);o.column_type===e.getSuggestionSqlType&&M(e.jdbcConfigurationInfo).then(e=>p.getColumnsTypeSuggestion(e.query,[n])).then(n=>n.data).then(n=>{Object(a.updateColumn)(o,n),I(o.column_type,t)}).catch(n=>{g.error(getError(n),j.instant("jdbc.not.suggest.column.type"))})},e.deleteColumn=function(n,t){h.openSimpleModal({title:j.instant("common.warning"),message:j.instant("jdbc.warning.delete.column.msg",{columnName:n}),warning:!0}).result.then((function(){e.jdbcConfigurationInfo.columns.splice(t,1),e.setDirty()}))},e.getColumnsSuggestions=()=>{e.jdbcConfigurationInfo.columns&&e.jdbcConfigurationInfo.columns.length>0?h.openSimpleModal({title:j.instant("common.warning"),message:j.instant("jdbc.warning.column.type.msg"),warning:!0}).result.then((function(){P()})):P()},e.hasPrecision=n=>"iri"===n||"string"===n||"decimal"===n,e.containsColumnsWithPrecision=n=>n&&n.some(n=>e.hasPrecision(n.column_type)),e.containsColumnsWithScale=n=>n&&n.some(n=>L(n.column_type)),e.isLiteral=n=>"iri"!==n&&"unknown"!==n,e.containsNonLiteralColumnsOnly=n=>n&&n.every(n=>!e.isLiteral(n.column_type));const q=n=>{if(e.canWriteActiveRepo){const t=JSON.stringify({name:e.jdbcConfigurationInfo.jdbcConfigurationName,query:e.jdbcConfigurationInfo.query,columns:e.jdbcConfigurationInfo.columns||[]});return Promise.all([p.getNewSqlTablePreview(t).then(n=>n.data),Promise.resolve(n)])}return Promise.all([p.getExistingSqlTablePreview(e.jdbcConfigurationInfo.jdbcConfigurationName).then(n=>n.data),Promise.resolve(n)])},I=(n,e)=>{n===e?g.info(Object(u.decodeHTML)(j.instant("jdbc.same.suggested.sql.type",{type:n})),j.instant("jdbc.suggest.sql.type"),{allowHtml:!0}):g.success(Object(u.decodeHTML)(j.instant("jdbc.suggested.sql.type",{type:n})),j.instant("jdbc.suggest.sql.type"),{allowHtml:!0})},R=(n,t=new o.JdbcConfigurationInfo)=>{e.jdbcConfigurationInfo.columns=t.columns,e.jdbcConfigurationInfo.query=t.query,e.jdbcConfigurationInfo.jdbcConfigurationName=l.search().name||"",e.jdbcConfigurationInfo.isNewJdbcConfiguration=!e.jdbcConfigurationInfo.jdbcConfigurationName,e.prefixes=n,A(),x()},S=n=>{const t={name:n.jdbcConfigurationName,query:n.query,columns:n.columns};return p.createNewJdbcConfiguration(t).then(()=>{e.isDirty=!1,e.jdbcConfigurationInfo.isNewConfiguration=!1,g.success(j.instant("jdbc.saved.configuration")),k()})},T=n=>{const t={name:n.jdbcConfigurationName,query:n.query,columns:n.columns};p.updateJdbcConfiguration(t).then(()=>{e.isDirty=!1,e.jdbcConfigurationInfo.isNewConfiguration=!1,g.success(j.instant("jdbc.configuration.updated")),k()})},A=(n={})=>{const t={};angular.extend(t,e.yasguiConfig||J(),n),e.yasguiConfig=t},J=()=>({showEditorTabs:!1,showToolbar:!1,showResultTabs:!1,showQueryButton:!1,showResultInfo:!1,downloadAsOn:!1,showYasqeResizer:!1,initialQuery:e.jdbcConfigurationInfo.query,componentId:"jdbc-component",prefixes:e.prefixes,maxPersistentResponseSize:0,render:s.RenderingMode.YASQE,getCellContent:U,sparqlResponse:e.emptySparqlResponse,yasqeActionButtons:c.DISABLE_YASQE_BUTTONS_CONFIGURATION,yasqeMode:e.canEditActiveRepo?i.YasqeMode.WRITE:i.YasqeMode.PROTECTED}),N=n=>O().getQueryType().then(e=>(n.isValidQueryType="SELECT"===e,n.isValidQueryType?n:Promise.reject(new r.JdbcConfigurationError("Query type is not valid.")))),_=n=>O().isQueryValid().then(e=>(n.isValidQuery=e,n.isValidQuery?n:Promise.reject(new r.JdbcConfigurationError("Invalid query.")))),D=n=>{if(!n.columns||0===n.columns.length)return n.isColumnsEmpty=!0,g.error(j.instant("jdbc.warning.one.column.msg")),Promise.reject(new r.JdbcConfigurationError("There are not defined columns.",n));return e.jdbcConfigurationInfo.columns&&e.jdbcConfigurationInfo.columns.find(n=>"unknown"===n.column_type)?(n.hasUndefinedColumns=!0,Promise.reject(new r.JdbcConfigurationError("There are columns without defined type.",n))):Promise.resolve(n)},P=()=>{N(e.jdbcConfigurationInfo).then(_).then(M).then(Q).then($).then(n=>e.jdbcConfigurationInfo=n).catch(n=>{console.log(n)})},Q=n=>p.getColumnNames(n.query).then(e=>[n,e.data]).catch((function(n){g.error(getError(n),j.instant("jdbc.not.suggest.column.names"))})),$=([n,t])=>p.getColumnsTypeSuggestion(n.query,t).then((function(o){return n.columns=Object(a.toJDBCColumns)(t,o.data),n.isColumnsEmpty=n.columns.length,e.setDirty(),n})).catch((function(n){g.error(getError(n),j.instant("jdbc.not.suggest.column.types"))})),O=()=>c.YasguiComponentDirectiveUtil.getOntotextYasguiElement("#query-editor"),M=n=>O().getQuery().then(e=>(n.query=e,n)),L=n=>"decimal"===n,U=(n,e)=>{let t=n.value;t=t.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;");return"<div class = 'literal-cell'>"+("<p class='nonUri' style='border: none; background-color: transparent; padding: 0; margin: 0'>"+t+"</p>")+"</div>"},Y=(n,e,t,o)=>{h.openSimpleModal({title:n,message:e,warning:!0}).result.then((function(){angular.isFunction(t)&&t()}),(function(){angular.isFunction(o)&&o()}))},x=()=>{e.getSuggestionSqlType=j.instant("view.jdbc.create.get_suggestion_sql_type"),e.sqlTypes=["string","iri","boolean","byte","short","int","long","float","double","decimal","date","time","timestamp",e.getSuggestionSqlType]},k=()=>{setTimeout((function(){V()}),1e3)},V=()=>{l.url("/jdbc")},W=n=>{e.isDirty&&(n.returnValue=!0)},F=()=>{window.removeEventListener("beforeunload",W),B.forEach(n=>n())},B=[];B.push(t.$on("$translateChangeSuccess",()=>{e.language=w.getLanguage(),x()})),B.push(e.$on("$locationChangeStart",(n,t)=>{if(e.isDirty){n.preventDefault();const e=j.instant("common.confirm"),o=j.instant("jdbc.warning.unsaved.changes");Y(e,o,()=>{F();const n=l.absUrl().length-l.url().length,e=t.substring(n);l.path(e)})}else F()})),B.push(v.subscribe("repositoryWillChangeEvent",n=>new Promise((function(t){if(e.jdbcConfigurationInfo.isNewJdbcConfiguration)return void t(n);const o=()=>{e.isDirty=!1,V(),t(n)};if(e.isDirty){const e=()=>{n.cancel=!0,t(n)},i=j.instant("common.confirm"),r=j.instant("jdbc.warning.unsaved.changes");Y(i,r,o,e)}else o()})))),B.push(e.$on("$destroy",F)),window.addEventListener("beforeunload",W),B.push(e.$watch(e.getActiveRepositoryObject,n=>{n&&(e.canEditActiveRepo=e.canWriteActiveRepo(),E?((()=>{e.loadingControllerResources=!0;const n=d.getActiveRepository();e.jdbcConfigurationInfo.jdbcConfigurationName?Promise.all([d.getPrefixes(n),p.getJdbcConfiguration(e.jdbcConfigurationInfo.jdbcConfigurationName)]).then(([n,e])=>{R(n,e.data)}).finally(()=>e.loadingControllerResources=!1):d.getPrefixes(n).then(n=>R(n)).finally(()=>e.loadingControllerResources=!1)})(),E=!1):O().abortQuery().then(V))}))}angular.module("graphdb.framework.jdbc.controllers",["ui.bootstrap","graphdb.framework.core.services.repositories","graphdb.framework.rest.monitoring.service","toastr","graphdb.framework.utils.event-emitter-service"],["graphdb.framework.utils.notifications"]).controller("JdbcListCtrl",l).controller("JdbcCreateCtrl",g),l.$inject=["$scope","$repositories","JdbcRestService","toastr","ModalService","$translate"],g.$inject=["$q","$scope","$rootScope","$location","toastr","$repositories","$window","$timeout","$interval","JdbcRestService","RDF4JRepositoriesRestService","SparqlRestService","ModalService","$translate","$languageService","EventEmitterService"]},64:function(n,e,t){"use strict";t.r(e),t.d(e,"RenderingMode",(function(){return o}));const o={YASGUI:"mode-yasgui",YASQE:"mode-yasqe",YASR:"mode-yasr"}},67:function(n,e,t){"use strict";t.r(e),t.d(e,"YasqeMode",(function(){return o}));const o={WRITE:"WRITE",READ:"READ",PROTECTED:"PROTECTED"}},68:function(n,e){function t(n,e){return{showToastMessageWithDelay:function(t){return new Promise(o=>{n.success(e.instant(t)),setTimeout(o,200)})}}}angular.module("graphdb.framework.utils.notifications",[]).factory("Notifications",t),t.$inject=["toastr","$translate"]}}]);
1
+ (window.webpackJsonp=window.webpackJsonp||[]).push([[25,169,170,171,195,203,273],{127:function(n,e,t){"use strict";t.r(e),t.d(e,"DEFAULT_SPARQL_QUERY",(function(){return o})),t.d(e,"JdbcConfigurationInfo",(function(){return i}));const o="PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>\n\n# Selects two variables to use as columns\nSELECT ?id ?label {\n ?id rdfs:label ?label\n # The following placeholder must be present in the query\n #!filter\n}";class i{constructor(n=o,e=!0,t){this.query=n,this.jdbcConfigurationName=t,this.isNewJdbcConfiguration=e,this.isValidQuery=!0,this.isValidQueryType=!0,this.hasUndefinedColumns=!1,this.isColumnsEmpty=!1,this.columns=[]}}},128:function(n,e,t){"use strict";t.r(e),t.d(e,"JdbcConfigurationError",(function(){return o}));class o extends Error{constructor(n,e){super(n),this.jdbcConfigurationInfo=e}}},129:function(n,e,t){"use strict";t.r(e),t.d(e,"JdbcColumn",(function(){return o})),t.d(e,"toJDBCColumns",(function(){return i})),t.d(e,"updateColumn",(function(){return r}));class o{constructor(){this.column_name="",this.column_type="",this.sparql_type="",this.nullable=!0}}const i=(n=[],e)=>n.map(n=>({column_name:n,column_type:e[n].column_type,nullable:!0,sparql_type:e[n].sparql_type})),r=(n,e)=>{n.column_type=e[n.column_name].column_type,n.sparql_type=e[n.column_name].sparql_type}},214:function(n,e,t){"use strict";t.r(e);t(26),t(28),t(68),t(7),t(15);var o=t(127),i=t(67),r=t(128),s=t(65),a=t(129),c=t(14),u=t(0);function l(n,e,t,o,i,r){n.getSqlConfigurations=function(){!e.getActiveRepository()||e.isActiveRepoOntopType()||e.isActiveRepoFedXType()?n.jdbcConfigurations=[]:t.getJdbcConfigurations().success((function(e){n.jdbcConfigurations=e})).error((function(n){const e=getError(n);o.error(e,r.instant("jdbc.not.get.SQL.msg"))}))},n.$watch((function(){return e.getActiveRepository()}),(function(){n.getSqlConfigurations()})),n.deleteConfiguration=function(e){i.openSimpleModal({title:r.instant("common.warning"),message:r.instant("jdbc.delete.sql.table.warning.msg",{name:e}),warning:!0}).result.then((function(){t.deleteJdbcConfiguration(e).success((function(){n.getSqlConfigurations()})).error((function(n){o.error(getError(n),r.instant("jdbc.not.delete.sql.msg"))}))}))}}function g(n,e,t,l,g,d,f,m,b,p,C,y,h,j,w,v){e.emptySparqlResponse='{"head": {"vars": []},"results": {"bindings": []}}',e.getSuggestionSqlType="",e.sqlTypes=[],e.activeTab=1,e.jdbcConfigurationInfo=new o.JdbcConfigurationInfo,e.jdbcConfigurationInfo.jdbcConfigurationName=l.search().name||"",e.saveOrUpdateExecuted=!1,e.jdbcConfigurationInfo.isNewJdbcConfiguration=!e.jdbcConfigurationInfo.jdbcConfigurationName,e.language=w.getLanguage(),e.isDirty=!1,e.prefixes=[],e.loadingControllerResources=!1,e.isQueryRunning=!1,e.canEditActiveRepo=!1;let E=!0;e.saveJdbcConfiguration=()=>{if(e.saveOrUpdateExecuted=!0,!e.jdbcConfigurationInfo.jdbcConfigurationName)return;if(!e.isDirty)return void V();const n=e.jdbcConfigurationInfo.isNewJdbcConfiguration?S:T;N(e.jdbcConfigurationInfo).then(_).then(D).then(M).then(n).catch(n=>{if(!(n instanceof r.JdbcConfigurationError)){const e=getError(n);g.error(e,j.instant("jdbc.not.saved.configuration"))}})},e.getPreview=()=>{e.activeTab=1,e.isQueryRunning=!0,N(e.jdbcConfigurationInfo).then(_).then(D).then(M).then(n=>(A({render:s.RenderingMode.YASQE,initialQuery:n.query}),n)).then(q).then(([n,e])=>{const t=n&&n.results.bindings&&n.results.bindings.length>0;let o=s.RenderingMode.YASGUI;t||(o=s.RenderingMode.YASQE,g.info(j.instant("jdbc.table.definition"),j.instant("jdbc.preview.sql"))),A({render:o,sparqlResponse:n,initialQuery:e.query})}).catch(n=>{n instanceof r.JdbcConfigurationError?n.jdbcConfigurationInfo&&(n.jdbcConfigurationInfo.isColumnsEmpty||n.jdbcConfigurationInfo.hasUndefinedColumns)&&(P(),e.activeTab=2):g.error(getError(n,0,100),j.instant("jdbc.not.show.preview"))}).finally(()=>{e.isQueryRunning=!1})},e.setActiveTab=n=>{e.activeTab=n;const t=e.jdbcConfigurationInfo.columns;2!==e.activeTab||t&&0!==t.length||N(e.jdbcConfigurationInfo).then(_).then(()=>{e.getColumnsSuggestions()})},e.setDirty=()=>{e.isDirty=!0},e.getTypeLabel=n=>{switch(n){case"iri":return"VARCHAR: IRI";case"string":return"VARCHAR: String";default:return n.indexOf(" ")>0?n:n.toUpperCase()}},e.selectColumnType=(n,t)=>{e.setDirty();const o=e.jdbcConfigurationInfo.columns.find(e=>e.column_name===n);o.column_type===e.getSuggestionSqlType&&M(e.jdbcConfigurationInfo).then(e=>p.getColumnsTypeSuggestion(e.query,[n])).then(n=>n.data).then(n=>{Object(a.updateColumn)(o,n),I(o.column_type,t)}).catch(n=>{g.error(getError(n),j.instant("jdbc.not.suggest.column.type"))})},e.deleteColumn=function(n,t){h.openSimpleModal({title:j.instant("common.warning"),message:j.instant("jdbc.warning.delete.column.msg",{columnName:n}),warning:!0}).result.then((function(){e.jdbcConfigurationInfo.columns.splice(t,1),e.setDirty()}))},e.getColumnsSuggestions=()=>{e.jdbcConfigurationInfo.columns&&e.jdbcConfigurationInfo.columns.length>0?h.openSimpleModal({title:j.instant("common.warning"),message:j.instant("jdbc.warning.column.type.msg"),warning:!0}).result.then((function(){P()})):P()},e.hasPrecision=n=>"iri"===n||"string"===n||"decimal"===n,e.containsColumnsWithPrecision=n=>n&&n.some(n=>e.hasPrecision(n.column_type)),e.containsColumnsWithScale=n=>n&&n.some(n=>L(n.column_type)),e.isLiteral=n=>"iri"!==n&&"unknown"!==n,e.containsNonLiteralColumnsOnly=n=>n&&n.every(n=>!e.isLiteral(n.column_type));const q=n=>{if(e.canWriteActiveRepo){const t=JSON.stringify({name:e.jdbcConfigurationInfo.jdbcConfigurationName,query:e.jdbcConfigurationInfo.query,columns:e.jdbcConfigurationInfo.columns||[]});return Promise.all([p.getNewSqlTablePreview(t).then(n=>n.data),Promise.resolve(n)])}return Promise.all([p.getExistingSqlTablePreview(e.jdbcConfigurationInfo.jdbcConfigurationName).then(n=>n.data),Promise.resolve(n)])},I=(n,e)=>{n===e?g.info(Object(u.decodeHTML)(j.instant("jdbc.same.suggested.sql.type",{type:n})),j.instant("jdbc.suggest.sql.type"),{allowHtml:!0}):g.success(Object(u.decodeHTML)(j.instant("jdbc.suggested.sql.type",{type:n})),j.instant("jdbc.suggest.sql.type"),{allowHtml:!0})},R=(n,t=new o.JdbcConfigurationInfo)=>{e.jdbcConfigurationInfo.columns=t.columns,e.jdbcConfigurationInfo.query=t.query,e.jdbcConfigurationInfo.jdbcConfigurationName=l.search().name||"",e.jdbcConfigurationInfo.isNewJdbcConfiguration=!e.jdbcConfigurationInfo.jdbcConfigurationName,e.prefixes=n,A(),x()},S=n=>{const t={name:n.jdbcConfigurationName,query:n.query,columns:n.columns};return p.createNewJdbcConfiguration(t).then(()=>{e.isDirty=!1,e.jdbcConfigurationInfo.isNewConfiguration=!1,g.success(j.instant("jdbc.saved.configuration")),k()})},T=n=>{const t={name:n.jdbcConfigurationName,query:n.query,columns:n.columns};p.updateJdbcConfiguration(t).then(()=>{e.isDirty=!1,e.jdbcConfigurationInfo.isNewConfiguration=!1,g.success(j.instant("jdbc.configuration.updated")),k()})},A=(n={})=>{const t={};angular.extend(t,e.yasguiConfig||J(),n),e.yasguiConfig=t},J=()=>({showEditorTabs:!1,showToolbar:!1,showResultTabs:!1,showQueryButton:!1,showResultInfo:!1,downloadAsOn:!1,showYasqeResizer:!1,initialQuery:e.jdbcConfigurationInfo.query,componentId:"jdbc-component",prefixes:e.prefixes,maxPersistentResponseSize:0,render:s.RenderingMode.YASQE,getCellContent:U,sparqlResponse:e.emptySparqlResponse,yasqeActionButtons:c.DISABLE_YASQE_BUTTONS_CONFIGURATION,yasqeMode:e.canEditActiveRepo?i.YasqeMode.WRITE:i.YasqeMode.PROTECTED}),N=n=>O().getQueryType().then(e=>(n.isValidQueryType="SELECT"===e,n.isValidQueryType?n:Promise.reject(new r.JdbcConfigurationError("Query type is not valid.")))),_=n=>O().isQueryValid().then(e=>(n.isValidQuery=e,n.isValidQuery?n:Promise.reject(new r.JdbcConfigurationError("Invalid query.")))),D=n=>{if(!n.columns||0===n.columns.length)return n.isColumnsEmpty=!0,g.error(j.instant("jdbc.warning.one.column.msg")),Promise.reject(new r.JdbcConfigurationError("There are not defined columns.",n));return e.jdbcConfigurationInfo.columns&&e.jdbcConfigurationInfo.columns.find(n=>"unknown"===n.column_type)?(n.hasUndefinedColumns=!0,Promise.reject(new r.JdbcConfigurationError("There are columns without defined type.",n))):Promise.resolve(n)},P=()=>{N(e.jdbcConfigurationInfo).then(_).then(M).then(Q).then($).then(n=>e.jdbcConfigurationInfo=n).catch(n=>{console.log(n)})},Q=n=>p.getColumnNames(n.query).then(e=>[n,e.data]).catch((function(n){g.error(getError(n),j.instant("jdbc.not.suggest.column.names"))})),$=([n,t])=>p.getColumnsTypeSuggestion(n.query,t).then((function(o){return n.columns=Object(a.toJDBCColumns)(t,o.data),n.isColumnsEmpty=n.columns.length,e.setDirty(),n})).catch((function(n){g.error(getError(n),j.instant("jdbc.not.suggest.column.types"))})),O=()=>c.YasguiComponentDirectiveUtil.getOntotextYasguiElement("#query-editor"),M=n=>O().getQuery().then(e=>(n.query=e,n)),L=n=>"decimal"===n,U=(n,e)=>{let t=n.value;t=t.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;");return"<div class = 'literal-cell'>"+("<p class='nonUri' style='border: none; background-color: transparent; padding: 0; margin: 0'>"+t+"</p>")+"</div>"},Y=(n,e,t,o)=>{h.openSimpleModal({title:n,message:e,warning:!0}).result.then((function(){angular.isFunction(t)&&t()}),(function(){angular.isFunction(o)&&o()}))},x=()=>{e.getSuggestionSqlType=j.instant("view.jdbc.create.get_suggestion_sql_type"),e.sqlTypes=["string","iri","boolean","byte","short","int","long","float","double","decimal","date","time","timestamp",e.getSuggestionSqlType]},k=()=>{setTimeout((function(){V()}),1e3)},V=()=>{l.url("/jdbc")},W=n=>{e.isDirty&&(n.returnValue=!0)},F=()=>{window.removeEventListener("beforeunload",W),B.forEach(n=>n())},B=[];B.push(t.$on("$translateChangeSuccess",()=>{e.language=w.getLanguage(),x()})),B.push(e.$on("$locationChangeStart",(n,t)=>{if(e.isDirty){n.preventDefault();const e=j.instant("common.confirm"),o=j.instant("jdbc.warning.unsaved.changes");Y(e,o,()=>{F();const n=l.absUrl().length-l.url().length,e=t.substring(n);l.path(e)})}else F()})),B.push(v.subscribe("repositoryWillChangeEvent",n=>new Promise((function(t){if(e.jdbcConfigurationInfo.isNewJdbcConfiguration)return void t(n);const o=()=>{e.isDirty=!1,V(),t(n)};if(e.isDirty){const e=()=>{n.cancel=!0,t(n)},i=j.instant("common.confirm"),r=j.instant("jdbc.warning.unsaved.changes");Y(i,r,o,e)}else o()})))),B.push(e.$on("$destroy",F)),window.addEventListener("beforeunload",W),B.push(e.$watch(e.getActiveRepositoryObject,n=>{n&&(e.canEditActiveRepo=e.canWriteActiveRepo(),E?((()=>{e.loadingControllerResources=!0;const n=d.getActiveRepository();e.jdbcConfigurationInfo.jdbcConfigurationName?Promise.all([d.getPrefixes(n),p.getJdbcConfiguration(e.jdbcConfigurationInfo.jdbcConfigurationName)]).then(([n,e])=>{R(n,e.data)}).finally(()=>e.loadingControllerResources=!1):d.getPrefixes(n).then(n=>R(n)).finally(()=>e.loadingControllerResources=!1)})(),E=!1):O().abortQuery().then(V))}))}angular.module("graphdb.framework.jdbc.controllers",["ui.bootstrap","graphdb.framework.core.services.repositories","graphdb.framework.rest.monitoring.service","toastr","graphdb.framework.utils.event-emitter-service"],["graphdb.framework.utils.notifications"]).controller("JdbcListCtrl",l).controller("JdbcCreateCtrl",g),l.$inject=["$scope","$repositories","JdbcRestService","toastr","ModalService","$translate"],g.$inject=["$q","$scope","$rootScope","$location","toastr","$repositories","$window","$timeout","$interval","JdbcRestService","RDF4JRepositoriesRestService","SparqlRestService","ModalService","$translate","$languageService","EventEmitterService"]},65:function(n,e,t){"use strict";t.r(e),t.d(e,"RenderingMode",(function(){return o}));const o={YASGUI:"mode-yasgui",YASQE:"mode-yasqe",YASR:"mode-yasr"}},67:function(n,e,t){"use strict";t.r(e),t.d(e,"YasqeMode",(function(){return o}));const o={WRITE:"WRITE",READ:"READ",PROTECTED:"PROTECTED"}},68:function(n,e){function t(n,e){return{showToastMessageWithDelay:function(t){return new Promise(o=>{n.success(e.instant(t)),setTimeout(o,200)})}}}angular.module("graphdb.framework.utils.notifications",[]).factory("Notifications",t),t.$inject=["toastr","$translate"]}}]);
@@ -1 +1 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[27,75,160,195,203,273],{180:function(e,r,t){"use strict";t.r(r);t(68),t(10);var s=t(67),a=t(64),i=t(14),n=t(74),o=t(89);function u(e,r,t,u,p,c,d,h,g,y,l,Q,f,m,I,w){let R;e.newConfig=new n.GraphsConfig,e.revertConfig=void 0,e.page=1,e.totalPages=5,e.helpHidden=1===f.get(m.HIDE_GRAPH_CONFIG_HELP),e.isUpdate=!1,e.shared=!1,e.canEditActiveRepo=e.canWriteActiveRepo(),e.samples=[],e.tabConfig={inference:e.newConfig.startQueryIncludeInferred,sameAs:e.newConfig.startQuerySameAs},e.getAutocompletePromise=void 0,e.getNamespacesPromise=void 0,e.tabsViewModel=[{page:1,label:I.instant("starting.point.label"),type:"startGraphQuery"},{page:2,label:I.instant("graph.expansion"),type:"expandQuery"},{page:3,label:I.instant("node.basics"),type:"resourceQuery"},{page:4,label:I.instant("edge.basics"),type:"predicateLabelQuery"},{page:5,label:I.instant("node.extra"),type:"resourcePropertiesQuery"}];const _=y.configName,C=p.getActiveRepository();e.toggleHelp=r=>{void 0===r&&(r=f.get(m.HIDE_GRAPH_CONFIG_HELP)),1!==r?(f.set(m.HIDE_GRAPH_CONFIG_HELP,1),e.helpHidden=!0):(f.set(m.HIDE_GRAPH_CONFIG_HELP,0),e.helpHidden=!1)},e.fixedVisualCallback=(r,t)=>{e.newConfig.startIRI=r,e.newConfig.startIRILabel=t,R=!0},e.isDefaultGraph=e=>e.isDefaultGraph(),e.isUserGraph=e=>!e.isDefaultGraph(),e.getSampleName=(e,r)=>{if(!e)return"";const t=e.getPropertyDescription(r);return t||(e.id?"Copy of "+e.name:e.name)},e.createGraphConfig=e=>{h.createGraphConfig(e).success((async function(){await l.showToastMessageWithDelay("graphexplore.saved.new.config"),t.url("graphs-visualizations")})).error((function(e){u.error(getError(e),I.instant("graphexplore.error.could.not.create"))}))},e.updateGraphConfig=e=>{h.updateGraphConfig(e).success((async function(){await l.showToastMessageWithDelay("graphexplore.saved.config"),t.url("graphs-visualizations")})).error((function(e){u.error(getError(e),I.instant("graphexplore.error.could.not.save"))}))},e.goToPage=r=>{e.page!==r&&M(()=>{e.showEditor(),e.page=r})},e.goToPreviousPage=()=>{e.page>1&&e.goToPage(e.page-1),q()&&(R=!1)},e.goToNextPage=()=>{T(),e.newConfig.isStartMode(n.StartMode.NODE)&&!R||e.goToPage(e.page+1)},e.saveGraphConfig=()=>{T(),q()&&!R||(e.newConfig.startQueryIncludeInferred=e.tabConfig.inference,e.newConfig.startQuerySameAs=e.tabConfig.sameAs,M(()=>{e.newConfig.name?(e.queryEditorIsDirty=!1,e.isUpdate?e.updateGraphConfig(e.newConfig.toSavePayload()):e.createGraphConfig(e.newConfig.toSavePayload())):P(I.instant("graphexplore.provide.config.name"))}))},e.setQuery=async r=>{const t=r||" ";(await E()).setQuery(t),e.markDirty()},e.markDirty=async()=>{if(e.revertConfig){const r=e.revertConfig.getQueryType(e.page),t=await v();e.queryEditorIsDirty=r!==t}},e.showEditor=()=>{e.viewMode="yasr",A(),b()},e.showPreview=()=>{e.viewMode="editor",S()},e.revertEditor=()=>{e.setQuery(e.revertConfig.getQueryType(e.page)),e.queryEditorIsDirty=!1};const E=()=>i.YasguiComponentDirectiveUtil.getOntotextYasguiElementAsync("#query-editor"),S=async(r,t)=>{const s=await E(),a=await s.getQueryType();if(t&&"SELECT"!==a&&"CONSTRUCT"!==a&&"DESCRIBE"!==a)return void u.warning(I.instant("query.editor.warning.msg"));"update"!==await s.getQueryMode()?e.queryIsRunning||(e.viewMode="editor",D()):u.warning(I.instant("cannot.execute.update.error"))},D=async()=>{(await E()).query(a.RenderingMode.YASR)},b=async()=>(await E()).changeRenderMode(a.RenderingMode.YASQE),v=async()=>(await E()).getQuery(),A=async()=>(await E()).abortQuery(),M=async r=>{const t=await(async()=>{const r=await E();let t=await r.getQuery();return t=t.trim(),e.newConfig.updateModel(t,e.page)})();1===e.page?t.isStartMode(n.StartMode.NODE)&&!t.startIRI?P(I.instant("graphexplore.select.start.node")):t.isStartMode(n.StartMode.QUERY)&&!t.startGraphQuery?P(I.instant("graphexplore.provide.query")):t.isStartMode(n.StartMode.QUERY)?L(r,t.startGraphQuery,"graph"):r():2===e.page?L(r,t.expandQuery,"construct",["node"]):3===e.page?L(r,t.resourceQuery,"tuple",["node"],[],["type","label","comment","rank"]):4===e.page?L(r,t.predicateLabelQuery,"tuple",["edge"],["label"]):5===e.page&&L(r,t.resourcePropertiesQuery,"tuple",["node"],["property","value"])},G=()=>{e.tabConfig.inference=e.newConfig.startQueryIncludeInferred,e.tabConfig.sameAs=e.newConfig.startQuerySameAs,e.setQuery(e.newConfig.getQueryType(e.page))},P=e=>{u.warning(e)},x=()=>{e.getAutocompletePromise=g.checkAutocompleteStatus()},L=(e,r,t,s,a,i)=>{r?h.validateQuery(r,t,s,a,i).success(()=>{e()}).error(e=>{P(getError(e))}):e()},T=()=>{q()&&e.$broadcast("addStartFixedNodeAutomatically",{startIRI:e.newConfig.startIRI})},q=()=>1===e.page&&e.newConfig.isStartMode(n.StartMode.NODE),N=()=>{h.getGraphConfigSamples().success((function(r){e.samples=Object(o.mapGraphConfigSamplesToGraphConfigs)(r).filter(r=>!r.id||e.newConfig.id!==r.id||(e.revertConfig=r,!1))})).error((function(e){u.error(getError(e),I.instant("graphexplore.error.graph.configs"))})),x(),e.getNamespacesPromise=Q.getNamespaces(e.getActiveRepository())},Y={endpoint:()=>"repositories/"+p.getActiveRepository(),showEditorTabs:!1,showToolbar:!1,showResultTabs:!1,showYasqeActionButtons:!1,yasqeActionButtons:i.INFERRED_AND_SAME_AS_BUTTONS_CONFIGURATION,showQueryButton:!1,initialQuery:" ",componentId:"graphs-config",render:a.RenderingMode.YASQE,maxPersistentResponseSize:0,showYasqeResizer:!1,yasqeMode:s.YasqeMode.PROTECTED,infer:e.newConfig.startQueryIncludeInferred,sameAs:e.newConfig.startQuerySameAs},O=(r,t,s)=>{e.queryIsRunning=r},$=()=>{window.removeEventListener("beforeunload",U),H.forEach(e=>e())},U=r=>{e.queryEditorIsDirty&&(r.returnValue=!0)},H=[];H.push(e.$on("autocompleteStatus",x)),H.push(e.$on("$locationChangeStart",(r,s)=>{if(e.queryEditorIsDirty){r.preventDefault();((e,r,t,s)=>{w.openSimpleModal({title:e,message:r,warning:!0}).result.then((function(){angular.isFunction(t)&&t()}),(function(){angular.isFunction(s)&&s()}))})(I.instant("common.confirm"),I.instant("visual.config.warning.unsaved.changes"),()=>{$();const e=t.absUrl().length-t.url().length,r=s.substring(e);t.path(r)})}else $()})),H.push(e.$on("$destroy",$)),H.push(e.$watch(e.getActiveRepositoryObject,()=>{(e.newConfig.isStartMode(n.StartMode.QUERY)||e.page>1)&&(e.viewMode="yasr",A().then(b))})),window.addEventListener("beforeunload",U),e.$watch("newConfig.startMode",e=>{e===n.StartMode.QUERY&&G()}),e.$watch("page",r=>{(e.newConfig.isStartMode(n.StartMode.QUERY)||r>1)&&(e.showEditor(),G())}),p.getPrefixes(C).then(r=>(r=>{const t=e.$watch((function(){return e.getActiveRepositoryObject()}),(function(a){if(a){e.canEditActiveRepo=e.canWriteActiveRepo();const a=angular.extend({},Y,{prefixes:r,yasqeMode:e.canWriteActiveRepo()?s.YasqeMode.WRITE:s.YasqeMode.PROTECTED});e.yasguiConfig=a,t()}}))})(r)).finally(()=>O(!1)),_?(e.isUpdate=!0,h.getConfig(_).then((function(r){e.newConfig=r,N()})).catch(e=>{u.error(getError(e),I.instant("created.connector",{name:_}))})):(e.isUpdate=!1,N()),e.getActiveRepository()&&(O(!0,I.instant("common.refreshing.namespaces"),I.instant("common.extra.message")),p.getPrefixes(p.getActiveRepository()).then(r=>{e.namespaces=r}).catch((function(r){e.repositoryError=getError(r)})).finally((function(){O(!1)})))}angular.module("graphdb.framework.graphexplore.controllers.graphviz.config",["graphdb.framework.utils.notifications","graphdb.framework.utils.localstorageadapter"]).controller("GraphConfigCtrl",u),u.$inject=["$scope","$timeout","$location","toastr","$repositories","SparqlRestService","$filter","GraphConfigRestService","AutocompleteRestService","$routeParams","Notifications","RDF4JRepositoriesRestService","LocalStorageAdapter","LSKeys","$translate","ModalService"]},64:function(e,r,t){"use strict";t.r(r),t.d(r,"RenderingMode",(function(){return s}));const s={YASGUI:"mode-yasgui",YASQE:"mode-yasqe",YASR:"mode-yasr"}},67:function(e,r,t){"use strict";t.r(r),t.d(r,"YasqeMode",(function(){return s}));const s={WRITE:"WRITE",READ:"READ",PROTECTED:"PROTECTED"}},68:function(e,r){function t(e,r){return{showToastMessageWithDelay:function(t){return new Promise(s=>{e.success(r.instant(t)),setTimeout(s,200)})}}}angular.module("graphdb.framework.utils.notifications",[]).factory("Notifications",t),t.$inject=["toastr","$translate"]},74:function(e,r,t){"use strict";t.r(r),t.d(r,"StartMode",(function(){return s})),t.d(r,"GraphsConfig",(function(){return a}));const s={QUERY:"query",NODE:"node",SEARCH:"search"};class a{constructor(e,r,t=s.SEARCH,a,i=!0,n=!0,o,u,p,c,d,h,g,y,l,Q,f,m,I,w,R){this._id=e,this._name=r,this._startMode=t,this._owner=a,this._startQueryIncludeInferred=i,this._startQuerySameAs=n,this._startGraphQuery=o,this._startIRI=u,this._startIRILabel=p,this._expandQuery=c,this._resourceQuery=d,this._predicateLabelQuery=h,this._resourcePropertiesQuery=g,this._shared=y,this._description=l,this._hint=Q,this._startGraphQueryDescription=f,this._expandQueryDescription=m,this._resourceQueryDescription=I,this._predicateLabelQueryDescription=w,this._resourcePropertiesQueryDescription=R}isStartMode(e){return this.startMode===e}isDefaultGraph(){return"Minimal"===this.name||"Advanced"===this.name}getPropertyDescription(e){return this[e+"Description"]}getQueryType(e){let r;return this.isStartMode(s.QUERY)&&1===e?r=this.startGraphQuery:2===e?r=this.expandQuery:3===e?r=this.resourceQuery:4===e?r=this.predicateLabelQuery:5===e&&(r=this.resourcePropertiesQuery),r||""}updateModel(e,r){return this.isStartMode(s.QUERY)&&1===r?this.startGraphQuery=e:2===r?this.expandQuery=e:3===r?this.resourceQuery=e:4===r?this.predicateLabelQuery=e:5===r&&(this.resourcePropertiesQuery=e),this}toSavePayload(){return{id:this.id,name:this.name,startMode:this.startMode,owner:this.owner,startQueryIncludeInferred:this.startQueryIncludeInferred,startQuerySameAs:this.startQuerySameAs,startGraphQuery:this.startGraphQuery,startIRI:this.startIRI,startIRILabel:this.startIRILabel,expandQuery:this.expandQuery,resourceQuery:this.resourceQuery,predicateLabelQuery:this.predicateLabelQuery,resourcePropertiesQuery:this.resourcePropertiesQuery,shared:this.shared,description:this.description,hint:this.hint}}get id(){return this._id}set id(e){this._id=e}get name(){return this._name}set name(e){this._name=e}get startMode(){return this._startMode}set startMode(e){this._startMode=e}get owner(){return this._owner}set owner(e){this._owner=e}get startQueryIncludeInferred(){return this._startQueryIncludeInferred}set startQueryIncludeInferred(e){this._startQueryIncludeInferred=e}get startQuerySameAs(){return this._startQuerySameAs}set startQuerySameAs(e){this._startQuerySameAs=e}get startGraphQuery(){return this._startGraphQuery}set startGraphQuery(e){this._startGraphQuery=e}get startIRI(){return this._startIRI}set startIRI(e){this._startIRI=e}get startIRILabel(){return this._startIRILabel}set startIRILabel(e){this._startIRILabel=e}get expandQuery(){return this._expandQuery}set expandQuery(e){this._expandQuery=e}get resourceQuery(){return this._resourceQuery}set resourceQuery(e){this._resourceQuery=e}get predicateLabelQuery(){return this._predicateLabelQuery}set predicateLabelQuery(e){this._predicateLabelQuery=e}get resourcePropertiesQuery(){return this._resourcePropertiesQuery}set resourcePropertiesQuery(e){this._resourcePropertiesQuery=e}get shared(){return this._shared}set shared(e){this._shared=e}get description(){return this._description}set description(e){this._description=e}get hint(){return this._hint}set hint(e){this._hint=e}get startGraphQueryDescription(){return this._startGraphQueryDescription}set startGraphQueryDescription(e){this._startGraphQueryDescription=e}get expandQueryDescription(){return this._expandQueryDescription}set expandQueryDescription(e){this._expandQueryDescription=e}get resourceQueryDescription(){return this._resourceQueryDescription}set resourceQueryDescription(e){this._resourceQueryDescription=e}get predicateLabelQueryDescription(){return this._predicateLabelQueryDescription}set predicateLabelQueryDescription(e){this._predicateLabelQueryDescription=e}get resourcePropertiesQueryDescription(){return this._resourcePropertiesQueryDescription}set resourcePropertiesQueryDescription(e){this._resourcePropertiesQueryDescription=e}}},89:function(e,r,t){"use strict";t.r(r),t.d(r,"mapGraphsConfigResponseToModel",(function(){return a})),t.d(r,"mapGraphConfigSampleToGraphConfig",(function(){return i})),t.d(r,"mapGraphConfigSamplesToGraphConfigs",(function(){return n}));var s=t(74);const a=e=>new s.GraphsConfig(e.id,e.name,e.startMode,e.owner,e.startQueryIncludeInferred,e.startQuerySameAs,e.startGraphQuery,e.startIRI,e.startIRILabel,e.expandQuery,e.resourceQuery,e.predicateLabelQuery,e.resourcePropertiesQuery,e.shared,e.description,e.hint),i=e=>new s.GraphsConfig(e.id,e.name,e.startMode,e.owner,e.startQueryIncludeInferred,e.startQuerySameAs,e.startGraphQuery,e.startIRI,e.startIRILabel,e.expandQuery,e.resourceQuery,e.predicateLabelQuery,e.resourcePropertiesQuery,e.shared,e.description,e.hint,e.startGraphQueryDescription,e.expandQueryDescription,e.resourceQueryDescription,e.predicateLabelQueryDescription,e.resourcePropertiesQueryDescription),n=e=>e.map(e=>i(e))}}]);
1
+ (window.webpackJsonp=window.webpackJsonp||[]).push([[27,75,160,195,203,273],{180:function(e,r,t){"use strict";t.r(r);t(68),t(10);var s=t(67),a=t(65),i=t(14),n=t(74),o=t(89);function u(e,r,t,u,p,c,d,h,g,y,l,Q,f,m,I,w){let R;e.newConfig=new n.GraphsConfig,e.revertConfig=void 0,e.page=1,e.totalPages=5,e.helpHidden=1===f.get(m.HIDE_GRAPH_CONFIG_HELP),e.isUpdate=!1,e.shared=!1,e.canEditActiveRepo=e.canWriteActiveRepo(),e.samples=[],e.tabConfig={inference:e.newConfig.startQueryIncludeInferred,sameAs:e.newConfig.startQuerySameAs},e.getAutocompletePromise=void 0,e.getNamespacesPromise=void 0,e.tabsViewModel=[{page:1,label:I.instant("starting.point.label"),type:"startGraphQuery"},{page:2,label:I.instant("graph.expansion"),type:"expandQuery"},{page:3,label:I.instant("node.basics"),type:"resourceQuery"},{page:4,label:I.instant("edge.basics"),type:"predicateLabelQuery"},{page:5,label:I.instant("node.extra"),type:"resourcePropertiesQuery"}];const _=y.configName,C=p.getActiveRepository();e.toggleHelp=r=>{void 0===r&&(r=f.get(m.HIDE_GRAPH_CONFIG_HELP)),1!==r?(f.set(m.HIDE_GRAPH_CONFIG_HELP,1),e.helpHidden=!0):(f.set(m.HIDE_GRAPH_CONFIG_HELP,0),e.helpHidden=!1)},e.fixedVisualCallback=(r,t)=>{e.newConfig.startIRI=r,e.newConfig.startIRILabel=t,R=!0},e.isDefaultGraph=e=>e.isDefaultGraph(),e.isUserGraph=e=>!e.isDefaultGraph(),e.getSampleName=(e,r)=>{if(!e)return"";const t=e.getPropertyDescription(r);return t||(e.id?"Copy of "+e.name:e.name)},e.createGraphConfig=e=>{h.createGraphConfig(e).success((async function(){await l.showToastMessageWithDelay("graphexplore.saved.new.config"),t.url("graphs-visualizations")})).error((function(e){u.error(getError(e),I.instant("graphexplore.error.could.not.create"))}))},e.updateGraphConfig=e=>{h.updateGraphConfig(e).success((async function(){await l.showToastMessageWithDelay("graphexplore.saved.config"),t.url("graphs-visualizations")})).error((function(e){u.error(getError(e),I.instant("graphexplore.error.could.not.save"))}))},e.goToPage=r=>{e.page!==r&&M(()=>{e.showEditor(),e.page=r})},e.goToPreviousPage=()=>{e.page>1&&e.goToPage(e.page-1),q()&&(R=!1)},e.goToNextPage=()=>{T(),e.newConfig.isStartMode(n.StartMode.NODE)&&!R||e.goToPage(e.page+1)},e.saveGraphConfig=()=>{T(),q()&&!R||(e.newConfig.startQueryIncludeInferred=e.tabConfig.inference,e.newConfig.startQuerySameAs=e.tabConfig.sameAs,M(()=>{e.newConfig.name?(e.queryEditorIsDirty=!1,e.isUpdate?e.updateGraphConfig(e.newConfig.toSavePayload()):e.createGraphConfig(e.newConfig.toSavePayload())):P(I.instant("graphexplore.provide.config.name"))}))},e.setQuery=async r=>{const t=r||" ";(await E()).setQuery(t),e.markDirty()},e.markDirty=async()=>{if(e.revertConfig){const r=e.revertConfig.getQueryType(e.page),t=await v();e.queryEditorIsDirty=r!==t}},e.showEditor=()=>{e.viewMode="yasr",A(),b()},e.showPreview=()=>{e.viewMode="editor",S()},e.revertEditor=()=>{e.setQuery(e.revertConfig.getQueryType(e.page)),e.queryEditorIsDirty=!1};const E=()=>i.YasguiComponentDirectiveUtil.getOntotextYasguiElementAsync("#query-editor"),S=async(r,t)=>{const s=await E(),a=await s.getQueryType();if(t&&"SELECT"!==a&&"CONSTRUCT"!==a&&"DESCRIBE"!==a)return void u.warning(I.instant("query.editor.warning.msg"));"update"!==await s.getQueryMode()?e.queryIsRunning||(e.viewMode="editor",D()):u.warning(I.instant("cannot.execute.update.error"))},D=async()=>{(await E()).query(a.RenderingMode.YASR)},b=async()=>(await E()).changeRenderMode(a.RenderingMode.YASQE),v=async()=>(await E()).getQuery(),A=async()=>(await E()).abortQuery(),M=async r=>{const t=await(async()=>{const r=await E();let t=await r.getQuery();return t=t.trim(),e.newConfig.updateModel(t,e.page)})();1===e.page?t.isStartMode(n.StartMode.NODE)&&!t.startIRI?P(I.instant("graphexplore.select.start.node")):t.isStartMode(n.StartMode.QUERY)&&!t.startGraphQuery?P(I.instant("graphexplore.provide.query")):t.isStartMode(n.StartMode.QUERY)?L(r,t.startGraphQuery,"graph"):r():2===e.page?L(r,t.expandQuery,"construct",["node"]):3===e.page?L(r,t.resourceQuery,"tuple",["node"],[],["type","label","comment","rank"]):4===e.page?L(r,t.predicateLabelQuery,"tuple",["edge"],["label"]):5===e.page&&L(r,t.resourcePropertiesQuery,"tuple",["node"],["property","value"])},G=()=>{e.tabConfig.inference=e.newConfig.startQueryIncludeInferred,e.tabConfig.sameAs=e.newConfig.startQuerySameAs,e.setQuery(e.newConfig.getQueryType(e.page))},P=e=>{u.warning(e)},x=()=>{e.getAutocompletePromise=g.checkAutocompleteStatus()},L=(e,r,t,s,a,i)=>{r?h.validateQuery(r,t,s,a,i).success(()=>{e()}).error(e=>{P(getError(e))}):e()},T=()=>{q()&&e.$broadcast("addStartFixedNodeAutomatically",{startIRI:e.newConfig.startIRI})},q=()=>1===e.page&&e.newConfig.isStartMode(n.StartMode.NODE),N=()=>{h.getGraphConfigSamples().success((function(r){e.samples=Object(o.mapGraphConfigSamplesToGraphConfigs)(r).filter(r=>!r.id||e.newConfig.id!==r.id||(e.revertConfig=r,!1))})).error((function(e){u.error(getError(e),I.instant("graphexplore.error.graph.configs"))})),x(),e.getNamespacesPromise=Q.getNamespaces(e.getActiveRepository())},Y={endpoint:()=>"repositories/"+p.getActiveRepository(),showEditorTabs:!1,showToolbar:!1,showResultTabs:!1,showYasqeActionButtons:!1,yasqeActionButtons:i.INFERRED_AND_SAME_AS_BUTTONS_CONFIGURATION,showQueryButton:!1,initialQuery:" ",componentId:"graphs-config",render:a.RenderingMode.YASQE,maxPersistentResponseSize:0,showYasqeResizer:!1,yasqeMode:s.YasqeMode.PROTECTED,infer:e.newConfig.startQueryIncludeInferred,sameAs:e.newConfig.startQuerySameAs},O=(r,t,s)=>{e.queryIsRunning=r},$=()=>{window.removeEventListener("beforeunload",U),H.forEach(e=>e())},U=r=>{e.queryEditorIsDirty&&(r.returnValue=!0)},H=[];H.push(e.$on("autocompleteStatus",x)),H.push(e.$on("$locationChangeStart",(r,s)=>{if(e.queryEditorIsDirty){r.preventDefault();((e,r,t,s)=>{w.openSimpleModal({title:e,message:r,warning:!0}).result.then((function(){angular.isFunction(t)&&t()}),(function(){angular.isFunction(s)&&s()}))})(I.instant("common.confirm"),I.instant("visual.config.warning.unsaved.changes"),()=>{$();const e=t.absUrl().length-t.url().length,r=s.substring(e);t.path(r)})}else $()})),H.push(e.$on("$destroy",$)),H.push(e.$watch(e.getActiveRepositoryObject,()=>{(e.newConfig.isStartMode(n.StartMode.QUERY)||e.page>1)&&(e.viewMode="yasr",A().then(b))})),window.addEventListener("beforeunload",U),e.$watch("newConfig.startMode",e=>{e===n.StartMode.QUERY&&G()}),e.$watch("page",r=>{(e.newConfig.isStartMode(n.StartMode.QUERY)||r>1)&&(e.showEditor(),G())}),p.getPrefixes(C).then(r=>(r=>{const t=e.$watch((function(){return e.getActiveRepositoryObject()}),(function(a){if(a){e.canEditActiveRepo=e.canWriteActiveRepo();const a=angular.extend({},Y,{prefixes:r,yasqeMode:e.canWriteActiveRepo()?s.YasqeMode.WRITE:s.YasqeMode.PROTECTED});e.yasguiConfig=a,t()}}))})(r)).finally(()=>O(!1)),_?(e.isUpdate=!0,h.getConfig(_).then((function(r){e.newConfig=r,N()})).catch(e=>{u.error(getError(e),I.instant("created.connector",{name:_}))})):(e.isUpdate=!1,N()),e.getActiveRepository()&&(O(!0,I.instant("common.refreshing.namespaces"),I.instant("common.extra.message")),p.getPrefixes(p.getActiveRepository()).then(r=>{e.namespaces=r}).catch((function(r){e.repositoryError=getError(r)})).finally((function(){O(!1)})))}angular.module("graphdb.framework.graphexplore.controllers.graphviz.config",["graphdb.framework.utils.notifications","graphdb.framework.utils.localstorageadapter"]).controller("GraphConfigCtrl",u),u.$inject=["$scope","$timeout","$location","toastr","$repositories","SparqlRestService","$filter","GraphConfigRestService","AutocompleteRestService","$routeParams","Notifications","RDF4JRepositoriesRestService","LocalStorageAdapter","LSKeys","$translate","ModalService"]},65:function(e,r,t){"use strict";t.r(r),t.d(r,"RenderingMode",(function(){return s}));const s={YASGUI:"mode-yasgui",YASQE:"mode-yasqe",YASR:"mode-yasr"}},67:function(e,r,t){"use strict";t.r(r),t.d(r,"YasqeMode",(function(){return s}));const s={WRITE:"WRITE",READ:"READ",PROTECTED:"PROTECTED"}},68:function(e,r){function t(e,r){return{showToastMessageWithDelay:function(t){return new Promise(s=>{e.success(r.instant(t)),setTimeout(s,200)})}}}angular.module("graphdb.framework.utils.notifications",[]).factory("Notifications",t),t.$inject=["toastr","$translate"]},74:function(e,r,t){"use strict";t.r(r),t.d(r,"StartMode",(function(){return s})),t.d(r,"GraphsConfig",(function(){return a}));const s={QUERY:"query",NODE:"node",SEARCH:"search"};class a{constructor(e,r,t=s.SEARCH,a,i=!0,n=!0,o,u,p,c,d,h,g,y,l,Q,f,m,I,w,R){this._id=e,this._name=r,this._startMode=t,this._owner=a,this._startQueryIncludeInferred=i,this._startQuerySameAs=n,this._startGraphQuery=o,this._startIRI=u,this._startIRILabel=p,this._expandQuery=c,this._resourceQuery=d,this._predicateLabelQuery=h,this._resourcePropertiesQuery=g,this._shared=y,this._description=l,this._hint=Q,this._startGraphQueryDescription=f,this._expandQueryDescription=m,this._resourceQueryDescription=I,this._predicateLabelQueryDescription=w,this._resourcePropertiesQueryDescription=R}isStartMode(e){return this.startMode===e}isDefaultGraph(){return"Minimal"===this.name||"Advanced"===this.name}getPropertyDescription(e){return this[e+"Description"]}getQueryType(e){let r;return this.isStartMode(s.QUERY)&&1===e?r=this.startGraphQuery:2===e?r=this.expandQuery:3===e?r=this.resourceQuery:4===e?r=this.predicateLabelQuery:5===e&&(r=this.resourcePropertiesQuery),r||""}updateModel(e,r){return this.isStartMode(s.QUERY)&&1===r?this.startGraphQuery=e:2===r?this.expandQuery=e:3===r?this.resourceQuery=e:4===r?this.predicateLabelQuery=e:5===r&&(this.resourcePropertiesQuery=e),this}toSavePayload(){return{id:this.id,name:this.name,startMode:this.startMode,owner:this.owner,startQueryIncludeInferred:this.startQueryIncludeInferred,startQuerySameAs:this.startQuerySameAs,startGraphQuery:this.startGraphQuery,startIRI:this.startIRI,startIRILabel:this.startIRILabel,expandQuery:this.expandQuery,resourceQuery:this.resourceQuery,predicateLabelQuery:this.predicateLabelQuery,resourcePropertiesQuery:this.resourcePropertiesQuery,shared:this.shared,description:this.description,hint:this.hint}}get id(){return this._id}set id(e){this._id=e}get name(){return this._name}set name(e){this._name=e}get startMode(){return this._startMode}set startMode(e){this._startMode=e}get owner(){return this._owner}set owner(e){this._owner=e}get startQueryIncludeInferred(){return this._startQueryIncludeInferred}set startQueryIncludeInferred(e){this._startQueryIncludeInferred=e}get startQuerySameAs(){return this._startQuerySameAs}set startQuerySameAs(e){this._startQuerySameAs=e}get startGraphQuery(){return this._startGraphQuery}set startGraphQuery(e){this._startGraphQuery=e}get startIRI(){return this._startIRI}set startIRI(e){this._startIRI=e}get startIRILabel(){return this._startIRILabel}set startIRILabel(e){this._startIRILabel=e}get expandQuery(){return this._expandQuery}set expandQuery(e){this._expandQuery=e}get resourceQuery(){return this._resourceQuery}set resourceQuery(e){this._resourceQuery=e}get predicateLabelQuery(){return this._predicateLabelQuery}set predicateLabelQuery(e){this._predicateLabelQuery=e}get resourcePropertiesQuery(){return this._resourcePropertiesQuery}set resourcePropertiesQuery(e){this._resourcePropertiesQuery=e}get shared(){return this._shared}set shared(e){this._shared=e}get description(){return this._description}set description(e){this._description=e}get hint(){return this._hint}set hint(e){this._hint=e}get startGraphQueryDescription(){return this._startGraphQueryDescription}set startGraphQueryDescription(e){this._startGraphQueryDescription=e}get expandQueryDescription(){return this._expandQueryDescription}set expandQueryDescription(e){this._expandQueryDescription=e}get resourceQueryDescription(){return this._resourceQueryDescription}set resourceQueryDescription(e){this._resourceQueryDescription=e}get predicateLabelQueryDescription(){return this._predicateLabelQueryDescription}set predicateLabelQueryDescription(e){this._predicateLabelQueryDescription=e}get resourcePropertiesQueryDescription(){return this._resourcePropertiesQueryDescription}set resourcePropertiesQueryDescription(e){this._resourcePropertiesQueryDescription=e}}},89:function(e,r,t){"use strict";t.r(r),t.d(r,"mapGraphsConfigResponseToModel",(function(){return a})),t.d(r,"mapGraphConfigSampleToGraphConfig",(function(){return i})),t.d(r,"mapGraphConfigSamplesToGraphConfigs",(function(){return n}));var s=t(74);const a=e=>new s.GraphsConfig(e.id,e.name,e.startMode,e.owner,e.startQueryIncludeInferred,e.startQuerySameAs,e.startGraphQuery,e.startIRI,e.startIRILabel,e.expandQuery,e.resourceQuery,e.predicateLabelQuery,e.resourcePropertiesQuery,e.shared,e.description,e.hint),i=e=>new s.GraphsConfig(e.id,e.name,e.startMode,e.owner,e.startQueryIncludeInferred,e.startQuerySameAs,e.startGraphQuery,e.startIRI,e.startIRILabel,e.expandQuery,e.resourceQuery,e.predicateLabelQuery,e.resourcePropertiesQuery,e.shared,e.description,e.hint,e.startGraphQueryDescription,e.expandQueryDescription,e.resourceQueryDescription,e.predicateLabelQueryDescription,e.resourcePropertiesQueryDescription),n=e=>e.map(e=>i(e))}}]);
@@ -1 +1 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[275],{71:function(e,n,o){"use strict";o.r(n),o.d(n,"removeSpecialChars",(function(){return r})),o.d(n,"toBoolean",(function(){return c})),o.d(n,"toTitleCase",(function(){return i}));var t=o(65);const r=e=>e.replace(/[()']/g,""),c=e=>"string"==typeof e?"true"===e:Boolean(e),i=e=>e?Object(t.upperFirst)(e.toLowerCase()):e}}]);
1
+ (window.webpackJsonp=window.webpackJsonp||[]).push([[275],{71:function(e,n,o){"use strict";o.r(n),o.d(n,"removeSpecialChars",(function(){return r})),o.d(n,"toBoolean",(function(){return c})),o.d(n,"toTitleCase",(function(){return i}));var t=o(64);const r=e=>e.replace(/[()']/g,""),c=e=>"string"==typeof e?"true"===e:Boolean(e),i=e=>e?Object(t.upperFirst)(e.toLowerCase()):e}}]);
@@ -1 +1 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[28,242,275],{179:function(e,t,n){"use strict";n.r(t);n(7);var r=n(454),i=n(467),o=(n(10),n(90)),s=n(71);function a(e,t,n,a,c,l,d,u,p,f,h,g,m,y,x,v,I,S,w,k,L,C,b){e.languageChanged=!1,e.propertiesObj={},e.propertiesObj.items=[],e.propertiesQueryObj={},e.propertiesQueryObj.query="",e.propertiesSearchPlaceholder=C.instant("visual.search.instance.placeholder"),e.propertiesNotFiltered=[],e.searchVisible=!1,e.nodeSelected=!1,e.queryResultsMode=!1,e.embedded=f.search().embedded,e.openedNodeInfoPanel=void 0,e.invalidLimit=!1,e.INVALID_LINKS_MSG=C.instant("sidepanel.invalid.limit.links.msg"),e.INVALID_LINKS_TOOLTIP=C.instant("sidepanel.invalid.limit.links.tooltip"),e.datasource=void 0,e.adapterContainer={adapter:{remain:!0}},e.hasInitedRepository=!1,e.defaultSettings={linksLimit:20,includeInferred:!0,sameAsState:!0,languages:["en"],showLinksText:!0,preferredTypes:[],rejectedTypes:[],preferredPredicates:[],rejectedPredicates:["http://dbpedia.org/property/logo","http://dbpedia.org/property/hasPhotoCollection","http://dbpedia.org/property/website","http://dbpedia.org/property/homepage","http://dbpedia.org/ontology/thumbnail","http://xmlns.com/foaf/0.1/depiction","http://xmlns.com/foaf/0.1/homepage","http://xmlns.com/foaf/0.1/mbox","http://dbpedia.org/ontology/wikiPage*","http://dbpedia.org/property/wikiPage*","http://factforge.net/*"],preferredTypesOnly:!1,preferredPredicatesOnly:!1,includeSchema:!0},e.saveSettings=_.cloneDeep(e.defaultSettings),e.defaultGraphConfig={id:"default",name:"Easy graph",startMode:"search"},t.key="",e.onopen=e.onclose=()=>angular.noop(),e.goToHome=()=>{P(),f.url("graphs-visualizations")},e.shouldShowSettings=()=>e.configLoaded&&e.configLoaded.id===e.defaultGraphConfig.id,e.shouldDisableSameAs=()=>{const t=$("#sameAsCheck");return e.settings&&!e.settings.includeInferred&&t.prop("checked")&&(t.prop("checked",!1),e.settings.sameAsState=!1),e.settings&&!e.settings.includeInferred},e.propertiesFilterFunc=t=>t.key.toLowerCase().indexOf(e.propertiesQueryObj.query.toLowerCase())>=0,e.toggleMoreInfo=e=>{angular.element(e.currentTarget).parent().next().toggle(200),angular.element(e.currentTarget).children("span").toggleClass("icon-caret-down").toggleClass("icon-caret-up")},e.copyToClipboard=e=>{m.openCopyToClipboardModal(e)},e.resetSettings=()=>{e.settings=_.cloneDeep(e.defaultSettings),e.validateLinksLimit(),O()},e.changeLimit=t=>{let n=e.settings.linksLimit+t;n<1&&(n=1),n>1e3&&(n=1e3),e.settings.linksLimit=n},e.validateLinksLimit=()=>{e.invalidLimit=!o.NUMBER_PATTERN.test(e.settings.linksLimit)},e.showSettings=()=>{e.showInfoPanel=!0,e.showFilter=!0,e.showNodeInfo=!1,e.showPredicates=!1,e.saveSettings?e.settings=_.cloneDeep(e.saveSettings):e.settings=_.cloneDeep(e.defaultSettings),O()},e.updateSettings=()=>{e.invalidLimit?c.error(e.INVALID_LINKS_TOOLTIP,e.INVALID_LINKS_MSG):(e.saveSettings=e.settings,e.saveSettings.languages=_.map(e.saveSettings.languagesMap,(function(e){return e.text})),e.saveSettings.preferredTypes=_.map(e.saveSettings.preferredTypesMap,(function(e){return e.text})),e.saveSettings.rejectedTypes=_.map(e.saveSettings.rejectedTypesMap,(function(e){return e.text})),e.saveSettings.preferredPredicates=_.map(e.saveSettings.preferredPredicatesMap,(function(e){return e.text})),e.saveSettings.rejectedPredicates=_.map(e.saveSettings.rejectedPredicatesMap,(function(e){return e.text})),e.rootNodeIri?E(e.rootNodeIri):e.queryResultsMode&&f.search().query?G(f.search().query,f.search().sameAs,f.search().inference):"query"===e.configLoaded.startMode&&W(e.configLoaded),M(),e.showInfoPanel=!1,e.showFilter=!1,v.set(I.GRAPHS_VIZ,e.saveSettings))},e.getGraphConfigs=t=>{w.getGraphConfigs().success((function(n){e.graphConfigs=n,t&&t()})).error((function(e){c.error(getError(e),C.instant("graphexplore.error.graph.configs.short.msg"))}))},e.findConfigById=function(t){return t===e.defaultGraphConfig.id?e.defaultGraphConfig:$.grep(e.graphConfigs,(function(e){return e.id===t}))[0]},e.easyGraphSearch=t=>{e.configLoaded=e.defaultGraphConfig,e.openUri(t)},e.deleteConfig=t=>{m.openSimpleModal({title:C.instant("common.confirm"),message:C.instant("graphexplore.delete.graph",{configName:t.name}),warning:!0}).result.then((function(){w.deleteGraphConfig(t).success((function(){e.getGraphConfigs(),e.refreshSavedGraphs()})).error((function(e){c.error(getError(e),C.instant("graphexplore.error.cannot.delete.config"))}))}))},e.goToGraphConfig=e=>{N({config:e.id},{config:e}),P(),W(e)},e.replaceIRIWithPrefix=t=>{const n=e.namespaces,r=_.findLast(n,(function(e){return 0===t.indexOf(e.uri)}));return r?r.prefix+":"+t.substring(r.uri.length):t};const T=[];t.$on("$translateChangeSuccess",(function(){e.INVALID_LINKS_MSG=C.instant("sidepanel.invalid.limit.links.msg"),e.INVALID_LINKS_TOOLTIP=C.instant("sidepanel.invalid.limit.links.tooltip"),e.propertiesSearchPlaceholder=C.instant("visual.search.instance.placeholder")})),e.$on("autocompleteStatus",(function(){ce()})),e.$on("repositoryIsSet",(function(t,n){n.newRepo&&(e.hasInitedRepository=!1),ae(n.newRepo),n.newRepo&&(P(),$(".graph-visualization svg").empty(),f.search().query&&(e.goToHome(),R()))}));T.push(t.$watch(()=>t.key,()=>{q=0,_.each(e.propertiesObj.items,(function(e){t.key>e&&q++})),H++}));T.push(e.$watch("propertiesObj.items",()=>{angular.isDefined(e.propertiesObj.items)&&e.propertiesObj.items.length>0&&l((function(){e.adapterContainer.adapter.reload()}),500)}));e.$on("$destroy",()=>{T.forEach(e=>e())});const N=(t,n)=>{e.embedded&&(t.embedded=!0),f.search(t),f.state(n)},P=()=>{e.searchVisible=!1,e.nodeSelected=!1,e.configLoaded=null,e.queryResultsMode=!1,e.lastSavedGraphName=null,e.lastSavedGraphId=null,e.shared=!1,e.numberOfPinnedNodes=0,K={},Z=0},A=()=>b.isActive()?e.defaultSettings:e.saveSettings,M=()=>{A().showLinksText?d3.selectAll("svg .link-wrapper text").style("display","block"):d3.selectAll("svg .link-wrapper text").style("display","none")},O=()=>{e.settings.languagesMap=_.map(e.settings.languages,(function(e){return{text:e}})),e.settings.preferredTypesMap=_.map(e.settings.preferredTypes,(function(e){return{text:e}})),e.settings.rejectedTypesMap=_.map(e.settings.rejectedTypes,(function(e){return{text:e}})),e.settings.preferredPredicatesMap=_.map(e.settings.preferredPredicates,(function(e){return{text:e}})),e.settings.rejectedPredicatesMap=_.map(e.settings.rejectedPredicates,(function(e){return{text:e}}))},E=()=>{e.rootNodeIri&&e.$broadcast("onRootNodeChange",e.rootNodeIri)},R=()=>{f.search().query?(e.searchVisible=!1,e.queryResultsMode=!0,G(f.search().query,f.search().sameAs,f.search().inference)):e.$on("onRootNodeChange",(function(t,n){e.loading=!0;const r=A();angular.isDefined(n)&&(e.rootNodeIri=n,k.getInstanceNode({iri:n,config:e.configLoaded?e.configLoaded.id:e.defaultGraphConfig.id,languages:e.shouldShowSettings()?r.languages:[],includeInferred:r.includeInferred,sameAsState:r.sameAsState}).then((function(t){e.nodeSelected=!0,e.searchVisible=!1,null===t.data.types&&(t.data.types="greyColor"),se=new oe;const n=se.addNode(t.data,te/2,ne/2);ee=X,Ce(n,!0)})).catch((function(t){e.loading=!1,c.error(getError(t),C.instant("graphexplore.error.could.not.load.graph"))})))})),f.search().uri&&e.openUri(f.search().uri,!0),f.search().saved&&S.getSavedGraph(f.search().saved).success((function(t){e.loadSavedGraph(t)})).error((function(e){const t=getError(e);c.error(t,C.instant("graphexplore.error.could.not.open"))}))},G=(t,n,r)=>{const i=A(),o=void 0===n?i.sameAsState:!0===n,s=void 0===r?i.includeInferred:!0===r;e.loading=!0,k.updateGraph({query:t,linksLimit:i.linksLimit,languages:e.shouldShowSettings()?i.languages:[],includeInferred:s,sameAsState:o}).then((function(e){ke(e)}),(function(t){e.loading=!1,c.error(getError(t.data),C.instant("graphexplore.error.cannot.load.graph"))}))},j=(e,t)=>{const n=e.split(" ");return t?[n[0],n[1],n[2]].join(">"):[n[0],n[2]].join(">")},z=e=>[e.source.iri,e.target.iri].join(">"),D=e=>{if(e.isTriple){const t=document.getElementById(Object(s.removeSpecialChars)(j(e.iri)));if(t&&void 0!==t.__data__.x)return t.__data__.x}return e.x},F=e=>{if(e.isTriple){const t=document.getElementById(Object(s.removeSpecialChars)(j(e.iri)));if(t&&void 0!==t.__data__.y)return t.__data__.y}return e.y},B=e=>{const t=e.trim().split(" ");return`<<<${t[0]}> <${t[1]}> <${t[2]}>>>`},U=e=>{const t=e.source.isTriple?j(e.source.iri,!0):e.source.iri,n=e.target.isTriple?j(e.target.iri,!0):e.target.iri;return Object(s.removeSpecialChars)(`${t}>${n}>marker`)},W=t=>{e.configLoaded=t,"search"===t.startMode?e.searchVisible=!0:"node"===t.startMode&&t.startIRI?l((function(){e.openUri(t.startIRI,!0)}),0):"query"===t.startMode&&t.startGraphQuery&&(e.loading=!0,w.loadGraphForConfig(t,t.startQueryIncludeInferred,A().linksLimit,t.startQuerySameAs).then((function(e){ke(e)}),(function(t){e.loading=!1,c.error(getError(t),C.instant("graphexplore.error.graph.load"))})))},V=function(){var t,n;f.search().config?(t=f.search().config,n=R,t===e.defaultGraphConfig.id?W(e.defaultGraphConfig):w.getConfig(t).then(e=>{W(e),n()}).catch(e=>{c.error(getError(e),C.instant("graphexplore.error.could.not.load.config",{configId:t}))})):f.search().query||f.search().uri?(W(e.defaultGraphConfig),R()):R()};x.onpopstate=function(t){P(),t.state&&(t.state.config?(W(t.state.config),t.state.uri&&e.openUri(t.state.uri,!0)):t.state.savedGraph&&e.loadSavedGraph(t.state.savedGraph,!0))},e.embedded&&(f.search().query||f.search().uri||f.search().config||f.search().saved)&&(e.noGoHome=!0);let q=0,H=0,K={},Z=0;const Q=16,J=d3.zoom().scaleExtent([.1,10]);let Y;const X=d3.zoomIdentity.translate(0,-70).scale(1);J.on("zoom",(function(e){b.isActive()||(ee=e.transform,Y.attr("transform",ee))}));let ee=X;const te=1e3,ne=1e3;let re,ie;function oe(){this.nodes=[],this.links=[],this.tripleNodes=new Map,this.tripleLinksCopy=new Map,this.addNode=function(e,t,n){return e.x=t,e.y=n,this.nodes.push(e),e},this.computeConnectedness=function(){const e={},t={};_.each(this.links,(function(n){const r=n.source.iri,i=n.target.iri,o=_.min([r,i])+"|"+_.max([r,i]);t[o]||(t[o]=1,e[r]=(e[r]||0)+1,e[i]=(e[i]||0)+1)})),_.each(this.links,(function(t){e[t.source.iri]>1&&e[t.target.iri]>1?t.connectedness=Math.min(5,Math.max(e[t.source.iri],e[t.target.iri])-1):t.connectedness=0}))},this.addAndMatchLinks=function(e){const t=this.nodes;Array.prototype.push.apply(this.links,function(e,t){return _.map(e,(function(e){let n,r;n=e.isTripleSource?Ae(e.source):_.find(t,(function(t){return t.iri===e.source})),r=e.isTripleTarget?Ae(e.target):_.find(t,(function(t){return t.iri===e.target}));let i={source:n,target:r,predicates:e.predicates};if(e.isTripleSource||e.isTripleTarget){let e=`${i.source.isTriple?j(i.source.iri):i.source.iri}>${i.target.isTriple?j(i.target.iri):i.target.iri}`;if(se.tripleLinksCopy.has(e)){let t=se.tripleLinksCopy.get(e);return t[0].predicates.push(...i.predicates),t.push(i),se.tripleLinksCopy.set(e,t),null}se.tripleLinksCopy.set(e,[i])}return i}))}(e,t));for(let e of se.tripleLinksCopy.keys())1===se.tripleLinksCopy.get(e).length&&se.tripleLinksCopy.delete(e);this.links=this.links.filter(e=>null!==e),this.computeConnectedness()};const t=function(e,t){return n(e,t).length};function n(e,t){return _.filter(t,(function(t){return t.source.iri===e.iri||t.target.iri===e.iri}))}this.countLinks=t,this.linksTypes=function(e,t){const r=n(e,t),i=_.map(r,(function(t){return t.source.iri===e.iri?t.target.types:t.source.types}));return _.uniq(_.flatten(i))},this.linksPredicates=function(e,t){const r=n(e,t),i=_.map(r,(function(e){return e.predicates}));return _.uniq(_.flatten(i))},this.removeTriples=function(e){let t=[];this.tripleNodes.size>0&&e.forEach(e=>{this.tripleNodes.has(e)&&(this.tripleNodes.delete(e),this.links=_.reject(this.links,(function(n){let r=e.split(">"),i=j(n.source.iri),o=j(n.target.iri);if(i===e&&se.tripleNodes.delete(o)){let e=o.split(">");t.push({source:e[0],target:e[1]})}let s=i===e||o===e||n.source.iri===r[0]&&n.target.iri===r[1];return s&&(se.tripleLinksCopy.delete(`${i}>${o}`),se.tripleLinksCopy.delete(`${o}>${i}`)),s})))}),t.forEach(e=>{this.links=_.reject(this.links,(function(t){return t.source.iri===e.source&&t.target.iri===e.target}))})},this.removeNode=function(n){let r=[];this.links=_.reject(this.links,(function(e){let t=e.source.iri===n.iri||e.target.iri===n.iri;return t&&(e.target.isTriple&&r.push(j(e.target.iri)),e.source.isTriple||e.target.isTriple||r.push([e.source.iri,e.target.iri].join(">"))),t})),this.removeTriples(r);const i=this.links;this.nodes=_.reject(this.nodes,(function(e){return 0===t(e,i)})),0===this.nodes.length&&(e.nodeSelected=!1),this.computeConnectedness()},this.removeNodeLeafLinks=function(e){let r=[],i=this.links;this.links=_.reject(this.links,(function(o){let s=o.source.iri===e.iri&&1===t(o.target,i)&&!o.target.isTriple||o.target.iri===e.iri&&1===t(o.source,i)&&!o.source.isTriple;if(!s){let r;if(o.source.iri!==e.iri||2!==t(o.target,i)||o.target.isTriple?o.target.iri!==e.iri||2!==t(o.source,i)||o.source.isTriple||(r=n(o.source,i)):r=n(o.target,i),!r)return!1;s=(r[0].source.iri===e.iri||r[0].target.iri)&&(r[1].source.iri===e.iri||r[1].target.iri)}return s&&(o.target.isTriple&&r.push(j(o.target.iri)),o.source.isTriple||o.target.isTriple||r.push([o.source.iri,o.target.iri].join(">"))),s})),this.removeTriples(r),i=this.links,this.nodes=_.reject(this.nodes,(function(n){return 0===t(n,i)&&n.iri!==e.iri})),this.computeConnectedness()},this.addTriple=function(e,t,n){e.x=t,e.y=n,e.weight=0;let r=j(e.iri);if(this.tripleNodes.has(r)){let t=this.tripleNodes.get(r);t.push(e),this.tripleNodes.set(r,t)}else e.weight=10,this.tripleNodes.set(r,[e])},this.copyState=function(){const e=_.map(this.nodes,(function(e){return{iri:e.iri,isTriple:e.isTriple,size:e.size,labels:_.cloneDeep(e.labels),types:_.cloneDeep(e.types),rdfRank:e.rdfRank,x:e.x,y:e.y,fixed:e.fixed}})),t=JSON.stringify(Array.from(this.tripleNodes.entries())),n=JSON.stringify(Array.from(this.tripleLinksCopy.entries()));return{nodes:e,links:_.map(this.links,(function(e){return{source:e.source.iri,isTripleSource:e.source.isTriple,target:e.target.iri,isTripleTarget:e.target.isTriple,predicates:e.predicates}})),tripleNodes:t,tripleLinksCopy:n,colorIndex:Z,type2color:K,transform:ee}},this.restoreState=function(t){e.nodeSelected=!0,e.searchVisible=!1,this.nodes=_.cloneDeep(t.nodes),this.tripleNodes=t.tripleNodes?new Map(JSON.parse(t.tripleNodes)):new Map,this.links=[],this.addAndMatchLinks(t.links),this.tripleLinksCopy=t.tripleLinksCopy?new Map(JSON.parse(t.tripleLinksCopy)):new Map,_.each(this.nodes,(function(t){t.fixed&&e.numberOfPinnedNodes++})),angular.isDefined(t.colorIndex)&&angular.isDefined(t.type2color)&&(Z=t.colorIndex,K=_.cloneDeep(t.type2color)),angular.isDefined(t.transform)&&(ee=d3.zoomIdentity.translate(t.transform.x,t.transform.y).scale(t.transform.k)),xe()}}e.datasource={get:function(t,n,r){return g.initLazyList(t,n,r,q,e.propertiesObj.items)},revision:function(){return H}},p.when(h.getPrincipal()).then(t=>(t=>{const n=t.appSettings;e.defaultSettings.includeInferred=n.DEFAULT_INFERENCE,e.defaultSettings.sameAsState=n.DEFAULT_INFERENCE&&n.DEFAULT_SAMEAS,e.defaultSettings.includeSchema=n.DEFAULT_VIS_GRAPH_SCHEMA;const r=v.get(I.GRAPHS_VIZ);if(r&&"object"==typeof r)try{e.saveSettings=r,void 0===e.saveSettings.includeSchema&&(e.saveSettings.includeSchema=e.defaultSettings.includeSchema,e.saveSettings.rejectedPredicates=[...e.saveSettings.rejectedPredicates,...e.defaultSettings.rejectedPredicates].unique())}catch(t){e.saveSettings=_.cloneDeep(e.defaultSettings),v.set(I.GRAPHS_VIZ,e.saveSettings)}else e.saveSettings=_.cloneDeep(e.defaultSettings)})(t)),e.showInfoPanel=!1;let se=new oe;function ae(t){!n.getActiveRepository()||e.hasInitedRepository&&!t||(e.hasInitedRepository=!0,t||e.getGraphConfigs(V),e.getNamespacesPromise=L.getNamespaces(e.getActiveRepository()).success((function(t){const n=_.map(t.results.bindings,(function(e){return{uri:e.namespace.value,prefix:e.prefix.value}}));e.namespaces=_.sortBy(n,(function(e){return e.uri.length})),ce()})).error((function(e){c.error(getError(e),C.instant("graphexplore.error.view.will.not.work"))})))}function ce(){a.isLicenseValid()&&(e.getAutocompletePromise=u.checkAutocompleteStatus())}e.addedTag=function(t){return t.text.indexOf(":")<0?(c.warning(C.instant("graphexplore.absolute.prefixed.iri")),null):(t.text=function(e,t){if(!/^<?(http|urn).*>?/.test(e)){const n=e.split(":"),r=n[0],i=n[1];if(!angular.isUndefined(i)){const e=d.getNamespaceUriForPrefix(t,r);if(e)return e+i}}return e}(t.text,e.namespaces),e.pageslideExpanded=!0,t)},e.validateTag=function(e,t,n){if(e.text.indexOf(":")<0)return n?c.warning(C.instant("graphexplore.absolute.prefixed.iri.option"),t):c.warning(C.instant("graphexplore.absolute.prefixed.iri"),t),!1;const r=e.text.indexOf("*");if(r>=0){if(!n)return c.warning(C.instant("graphexplore.wildcards.not.allowed"),t),!1;if(r<e.text.length-1)return c.warning(C.instant("graphexplore.wildcards.last.char"),t),!1}return!0},e.getTagClass=function(e){return e.endsWith("*")?"tag-item-wildcard":null},e.getActiveRepository=function(){return n.getActiveRepository()},e.isLicenseValid=function(){return a.isLicenseValid()},ae();const le=d3.scaleLinear().domain([0,9]).range(["hsl(0, 100%, 75%)","hsl(360, 90%, 82%)"]).interpolate(d3.interpolateHslLong),de=d3.scaleLinear().domain([0,9]).range(["hsl(180, 50%, 75%)","hsl(540, 40%, 82%)"]).interpolate(d3.interpolateHslLong);e.getColor=function(e){angular.isUndefined(K[e])&&(K[e]=Z,Z++);const t=K[e];return t>39?"#c2c2c2":t%2==0?le(t/2):de(t/2)};const ue=d3.forceX(te/2).strength(.005),pe=d3.forceY(ne/2).strength(.005),fe=d3.forceSimulation().force("x",ue).force("y",pe),he=d3.select(".main-container .graph-visualization").append("svg").attr("viewBox","0 0 "+te+" "+ne).attr("preserveAspectRatio","xMidYMid meet");he.append("rect").attr("width",10*te).attr("height",10*ne).attr("x",-(10*te-te)/2).attr("y",-(10*ne-ne)/2).style("fill","none").style("pointer-events","all").call(J).on("click",(function(e){e.stopPropagation(),be(),fe.stop()}));let ge=0,me=0;const ye=new function(){this.state=!1,this.setLoadingState=function(e){this.state=e},this.getLoadingState=function(){return this.state},this.init=function(e,t){d3.select(t).append("circle").attr("cx",(function(){return e.x})).attr("cy",(function(){return e.y})).attr("class","loader-container").attr("r",(function(){return e.size})).style("fill","fff").style("opacity","0.7"),d3.select(t).append("image").attr("xlink:href","js/angular/templates/loader/ot-loader.svg?v=2.7.0-RC3").attr("x",(function(){return e.x-e.size+5})).attr("y",(function(){return e.y-e.size})).attr("width",(function(){return 2*e.size})).attr("height",(function(){return 2*e.size})).attr("class","node-loader")}};function xe(t){d3.selectAll("svg g").remove(),d3.selectAll(".d3-tip").remove(),d3.selectAll(".menu-events").remove(),Y=he.append("g").attr("class","nodes-container").attr("transform",(function(){return angular.isDefined(ee)&&!t?ee:""}));const n=Object(i.a)().attr("class","d3-tip").customPosition((function(){const e=re.getBoundingClientRect();return{top:e.bottom+10+"px",left:e.left-30+"px"}})).html((function(t){let n="";return t.fixed&&(n+='<i class="icon-pin"></i>&nbsp;&nbsp;'),t.types.length>0?n+=_.join(_.map(t.types,(function(t){return e.replaceIRIWithPrefix(t)}))," · "):n+="<i>No types</i>",n})),o=function(e){let t="";return t+=_.join(_.map(e.predicates,(function(t,n){if(0===n)return Oe(t);if(n<10)return" · "+Oe(t);if(10===n){const t=function(e){return e.predicates.length-10}(e),n=t>1?t+" predicates":t+" predicate";return" · "+C.instant("graphexplore.tip.text",{textToShow:n})}})),""),t};let a;const d=Object(i.a)().attr("class","d3-tip").customPosition((function(e){const t=a.getBoundingClientRect(),n=function(e){const t=o(e),n=document.createElement("canvas").getContext("2d");return n.font="13px Arial",e.predicates.length<10?n.measureText(t).width:n.measureText(t).width/2}(e);return{top:t.top-30+"px",left:t.left-30+"px",width:n+"px"}})).html((function(e){return o(e)}));const u=function(){l.cancel(void 0),l.cancel(ge),re=null,n.hide(),me=l((function(){be()}),500)};he.call(n);he.call(d);let p=he.selectAll(".link"),f=he.selectAll(".node");const h=d3.forceCollide(e=>e.size+5).strength(.5),g=d3.forceManyBody().strength(-300),m=d3.forceCenter(te/2,ne/2);fe.nodes(se.nodes).force("charge",g).force("collide",h).force("center",m).force("link",d3.forceLink(se.links).distance((function(e){return e.source.isTriple||e.target.isTriple?0:function(e){const t=$("<span></span>"),n=e.predicates[0].split("/"),r=n[n.length-1];t.addClass("predicate-text").text(r),$("body").append(t);const i=t.width()+2*e.source.size+2*e.target.size+50;return t.remove(),.75*i}(e)+30*e.connectedness}))),Y.append("defs").selectAll("marker").data(se.links).enter().append("marker").attr("class","arrow-marker").attr("id",(function(e){return U(e)})).attr("viewBox","0 -5 10 10").attr("refX",(function(e){return e.target.isTriple?11:e.target.size+11})).attr("refY",0).attr("markerWidth",10).attr("markerHeight",10).attr("orient","auto").append("path").attr("d","M0,-5L10,0L0,5 L10,0 L0, -5"),p=Y.selectAll(".link").data(se.links).enter().append("g").attr("class","link-wrapper").attr("id",(function(e){return Object(s.removeSpecialChars)(z(e))})).append("line").attr("class","link").style("stroke-width",1).style("fill","transparent").style("marker-end",(function(e){return`url(#${U(e)})`}));const y=Y.selectAll(".link-wrapper").append("text").text((function(e){return Me(e)})).attr("class",(function(e){return e.predicates.length>1||se.tripleNodes.has(z(e))?"predicates":"predicate"})).attr("dy","-0.5em").style("text-anchor","middle").style("display",A().showLinksText?"":"none").on("mouseover",(function(e,t){e.stopPropagation(),function(e,t){l.cancel(void 0);const n=a=e.target;l((function(){a===n&&t.predicates.length>1&&d.show(t,a)}),300)}(e,t)})).on("mouseout",(function(){l.cancel(void 0),a=null,d.hide()})).on("click",(function(t,n){t.stopPropagation(),function(t,n){Pe();const r=z(n);if(1===n.predicates.length&&se.tripleNodes.has(r)){ie=null;const e=se.tripleNodes.get(r)[0];if(Se(e,this,t.button)){const t={};t.iri=e.iri,t.pred=Oe(e.iri.split(" ")[1]),_e(t)}return}!function(t){if(e.showNodeInfo=!1,e.showPredicates=t.predicates.length>1,e.showFilter=!1,e.showInfoPanel=!1,ie===t)return e.showNodeInfo=!1,e.showInfoPanel=!1,void(ie=null);ie=t,e.showPredicates&&(e.predicates=_.map(t.predicates,(function(e){const n=function(e,t){const n=z(t);return se.tripleNodes.has(n)?se.tripleNodes.get(n).findIndex(t=>t.iri.indexOf(e)>=0):-1}(e,t),r=n>-1;return{value:Oe(e),partOfTriple:r,linkId:r?z(t):"",nodeIndex:n}})),e.showInfoPanel=!0)}(n)}(t,n)}));let x,v=0,I=null,S=null;const w=function(t,n,r){let i=r||this.parentNode;Array.isArray(r)&&(i=r[n]);se.countLinks(t,se.links)<=A().linksLimit?Ce(t,!1,i):c.info(C.instant("graphexplore.increase.limit"),C.instant("graphexplore.node.at.max")),e.closeInfoPanel()};function k(e,t){let n,r,i,o,s=!0;if("down"===t)n=2*e.size,r=e.size/3,i=.8,o=.3;else if("down-fixed"===t)n=2*e.size,r=e.size,i=.8,o=.66;else if("up"===t)n=e.size/3,r=2*e.size,i=.3,o=.8;else{if("fixed"!==t)return;n=e.size,i=.66,s=!1}let a=Y.selectAll(".node-wrapper").filter((function(t){return t===e})).append("text").text("").classed("icon-any pinned",!0).style("font-size",n+"px").attr("x",(function(e){return e.x})).attr("y",(function(e){return e.y})).attr("opacity",i);"fixed"!==t&&"down-fixed"!==t||(e.pin=a),s&&(a=a.transition().duration(1e3).style("font-size",(function(){return r+"px"})).attr("opacity",o),"down-fixed"!==t&&a.remove())}const L=d3.drag().subject((function(e){return e})).on("start",(function(e,t){if(b.isActive())return;0===e.sourceEvent.button&&(t.fixedBeforeDrag=t.fixed,t.isBeingDragged=!0,t.beginDragging=!0,be(),d3.select(this).classed("dragging",!0),fe.alphaTarget(.3).restart())})).on("drag",(function(t,n){n.isBeingDragged&&(n.fx=t.x,n.fy=t.y,n.fixed?n.beginDragging&&k(n,"fixed"):(e.numberOfPinnedNodes++,n.fixed=!0,k(n,"down-fixed")),n.pinWasFixed=!0,n.beginDragging=null)})).on("end",(function(e,t){t.isBeingDragged&&(t.pinWasFixed&&(t.pinWasFixed=null,d3.select(".pinned").remove()),t.isBeingDragged=!1,d3.select(this).classed("dragging",!1));fe.alphaTarget(0)}));f=Y.selectAll(".node").data(se.nodes).enter().append("g").attr("class","node-wrapper").attr("id",(function(e){return e.iri})).append("circle").attr("class","node").attr("r",(function(e){return e.size})).style("fill",(function(t){return"greyColor"===t.types?"c2c2c2":e.getColor(t.types[0])})).on("mouseover",(function(t,r){r.isBeingDragged||(l.cancel(me),ge=l(()=>{(function(t,n){if(e.showInfoPanel)return!1;(Ie.closeIcon||Ie.expandIcon||Ie.focusIcon||Ie.copyURIIcon)&&Ie.removeIcons();if(fe.alpha()<.1)return Ie.initIcons(t,n.parentNode),fe.stop(),ve(),!0;return!1})(r,this)&&function(e,t){l.cancel(void 0);const r=re=t.target;l((function(){re===r&&n.show(e,re)}),300)}(r,t)},400))})).on("mouseout",u).on("click",(function(t,n){if(t.button&&0!==t.button)return;const r=this;if(I&&S===r)return l.cancel(I),I=null,void w(n,0,r.parentNode);S=r,u(),e.showPredicates=!1,b.isActive()||(l.cancel(I),I=l((function(){Se(n,r,t),I=null}),540))})).on("touchstart",(e,t)=>function(e){v=0,x=l((function(){v<5&&we(e),x=null}),1e3)}(t)).on("touchmove",(function(){v++})).on("touchend",(function(){l.cancel(x),x=null})).on("contextmenu",(function(t,r){t.shiftKey||(t.preventDefault(),be(),e.closeInfoPanel(),r.fixed?(e.numberOfPinnedNodes--,r.fixed=!1,r.fx=null,r.fy=null,k(r,"up"),fe.alpha(1).restart()):(e.numberOfPinnedNodes++,r.fixed=!0,k(r,"down")),function(e){re&&n.show(e,re)}(r))})).on("gdb-expand-node",(e,t)=>w(t,0,e.srcElement.parentNode)).on("gdb-show-node-info",(e,t)=>Te(t)).call(L);const T=Y.selectAll(".node-wrapper").append("foreignObject").style("pointer-events","none").attr("width",(function(e){return 2*e.size*1.75}));Y.insert("g").attr("class","menu-events"),(e=>{e.each((function(e){e.fontSize=r.a.Text.calcFontSizeRaw(e.labels[0].label,e.size,Q,!0)})).attr("height",(function(e){return 3*e.fontSize})).append("xhtml:div").attr("class","node-label-body").style("font-size",(function(e){return e.fontSize+"px"})).append("xhtml:div").text((function(e){return e.labels[0].label})),l((function(){$(".node-label-body div").each((function(e,t){let n=t.textContent.substring(0,t.textContent.length-1);let r=0;for(;r<200&&(t.scrollHeight>t.clientHeight||t.scrollWidth>t.clientWidth);)n=n.substring(0,n.length-1),t.textContent=n+"…",r++}))}),50)})(T),fe.on("tick",(function(){p.attr("x1",(function(e){return D(e.source)})).attr("y1",(function(e){return F(e.source)})).attr("x2",(function(e){return D(e.target)})).attr("y2",(function(e){return F(e.target)})),y.attr("x",(function(e){let t=D(e.source),n=D(e.target);return e.x=.5*(t+n)})).attr("y",(function(e){let t=F(e.source),n=F(e.target);return e.y=.5*(t+n)})).attr("transform",(function(e){return"rotate("+function(e,t){const n={x:D(e.source),y:F(e.source)},r={x:D(e.target),y:F(e.target)};if(t)return 180*Math.atan2(r.y-n.y,r.x-n.x)/Math.PI;{const e=180*Math.atan2(r.y-n.y,r.x-n.x)/Math.PI;return e<=90&&e>=-90?e:(e>0?-1:1)*(180-Math.abs(e))}}(e,e.direction)+", "+e.x+", "+e.y+")"})),f.attr("cx",(function(e){return e.x})).attr("cy",(function(e){return e.y})),Y.select(".node-loader").attr("x",(function(e){return e.x-e.size+3})).attr("y",(function(e){return e.y-e.size})),Y.select(".loader-container").attr("cx",(function(e){return e.x})).attr("cy",(function(e){return e.y})),T.attr("x",(function(e){return e.x-1.75*e.size})).attr("y",(function(e){return e.y-3*e.fontSize/2})),d3.select(".pinned").attr("x",(function(e){return e.x})).attr("y",(function(e){return e.y})),ve()})),angular.isDefined(ye)&&ye.setLoadingState(!1),e.loading&&(e.loading=!1),d3.selectAll(".link-wrapper").each((function(){const e=$(this).attr("id").split(">")[0],t=$(this).attr("id").split(">")[1];d3.selectAll(".link").each((function(n){const r=Object(s.removeSpecialChars)(n.source.iri),i=Object(s.removeSpecialChars)(n.target.iri);if(r===t&&i===e){let e=r;e+=">",e+=i;const t=document.createTextNode(" ⟶");document.getElementById(e).lastChild.appendChild(t),n.direction="double"}}))})),d3.selectAll(".d3-actions-tip").remove(),fe.alpha(.3).restart()}function ve(){t.d3alpha=fe.alpha()}const Ie=new function(){function n(e,t){return"translate("+(t.x-14+(t.size+15)*Math.cos(e*Math.PI/180-Math.PI/2))+","+(t.y-14+(t.size+15)*Math.sin(e*Math.PI/180-Math.PI/2))+")"}this.closeIcon=void 0,this.expandIcon=void 0,this.collapseIcon=void 0,this.focusIcon=void 0,this.copyURIIcon=void 0,this.actionsTip=void 0,this.removeIcons=function(){this.closeIcon.remove("g"),this.expandIcon&&this.expandIcon.remove("g"),this.collapseIcon&&this.collapseIcon.remove("g"),this.focusIcon.remove("g"),this.copyURIIcon.remove("g"),this.closeIcon=void 0,this.expandIcon=void 0,this.collapseIcon=void 0,this.focusIcon=void 0,this.copyURIIcon=void 0,this.expandedState=!1},this.expandedState=!1,this.initIcons=function(r,o){const s=Object(i.a)().attr("class","d3-tip d3-actions-tip").customPosition((function(e,t){const n=t.target.getBoundingClientRect();return{top:n.top-20+"px",left:n.right+10+"px"}})).html((function(e){return e}));he.call(s);r.isExpanded?(this.collapseIcon=d3.select(".menu-events").append("g").attr("class","collapse-icon").attr("name","collapse").attr("transform",(function(){return n(20,r)})),this.collapseIcon.append("circle").attr("cx",14).attr("cy",14).attr("r",13).style("fill","#eee"),this.collapseIcon.append("path").attr("d","M22.67,12a.59.59,0,0,1-.53.65l-6.88.72H15.2a.59.59,0,0,1-.59-.65l.72-6.88A.58.58,0,0,1,16,5.33a.59.59,0,0,1,.53.65L16,11.11,21.3,5.79a.64.64,0,0,1,.91.91L16.89,12,22,11.49A.59.59,0,0,1,22.67,12ZM12.59,14.75l-6.75.85a.59.59,0,0,0-.51.66.58.58,0,0,0,.66.51l4.95-.62-5.2,5.2a.64.64,0,1,0,.91.91l5.2-5.2L11.23,22a.59.59,0,0,0,.51.66h.07a.59.59,0,0,0,.59-.52l.85-6.75a.59.59,0,0,0-.17-.49A.58.58,0,0,0,12.59,14.75Z").style("fill","var(--primary-color)"),this.collapseIcon.on("click",(function(){var e;(e=r).isExpanded=!1,se.removeNodeLeafLinks(e),xe()})).on("mouseover",(function(e){s.show(this.getAttribute("name"),e),l.cancel(ge),l.cancel(me)})).on("mouseout",(function(){s.hide(),me=l((function(){be()}),500)}))):(this.expandIcon=d3.select(".menu-events").append("g").attr("class","expand-icon").attr("name","expand").attr("transform",(function(){return n(20,r)})),this.expandIcon.append("circle").attr("cx",14).attr("cy",14).attr("r",13).style("fill","#eee"),this.expandIcon.append("path").attr("d","M22.37,6.28l-.72,6.88a.59.59,0,0,1-.59.53H21a.59.59,0,0,1-.53-.65L21,7.9l-5.32,5.32a.64.64,0,0,1-.91-.91L20.1,7,15,7.53a.59.59,0,0,1-.12-1.18l6.88-.72a.59.59,0,0,1,.65.65ZM12.89,20.34,7.95,21l5.2-5.2a.64.64,0,0,0-.91-.91L7,20.05l.62-4.95A.59.59,0,0,0,6.48,15l-.85,6.75a.59.59,0,0,0,.59.67h.07L13,21.52a.59.59,0,1,0-.15-1.18Z").style("fill","var(--primary-color)"),this.expandIcon.on("click",(function(){Ce(r,!1,o)})).on("mouseover",(function(e){s.show(this.getAttribute("name"),e),l.cancel(me),l.cancel(ge)})).on("mouseout",(function(){s.hide(),me=l((function(){be()}),500)}))),this.focusIcon=d3.select(".menu-events").append("g").attr("class","focus-icon").attr("name","focus").attr("transform",(function(){return n(20,r)})),this.focusIcon.append("circle").attr("cx",14).attr("cy",14).attr("r",13).style("fill","#eee"),this.focusIcon.append("path").attr("d","M14.2,23.81a9.8,9.8,0,1,1,6.93-2.87h0A9.74,9.74,0,0,1,14.2,23.81Zm0-18.17a8.37,8.37,0,1,0,5.92,14.29h0A8.37,8.37,0,0,0,14.2,5.64Zm1.42,6.95a2,2,0,1,0,0,2.85A2,2,0,0,0,15.62,12.59Z").style("fill","var(--primary-color)"),this.focusIcon.on("click",(function(){t.$broadcast("onRootNodeChange",r.iri)})).on("mouseover",(function(e){s.show(this.getAttribute("name"),e),l.cancel(me),l.cancel(ge)})).on("mouseout",(function(){s.hide(),me=l((function(){be()}),500)})),this.copyURIIcon=d3.select(".menu-events").append("g").attr("class","icon-link").attr("name","link").attr("transform",(function(){return n(20,r)})),this.copyURIIcon.append("circle").attr("cx",14).attr("cy",14).attr("r",13).style("fill","#eee"),this.copyURIIcon.append("path").attr("d","M 13.457031 10.164062 C 13.648438 10.164062 13.820312 10.242188 13.941406 10.363281 L 15.492188 11.859375 C 15.984375 12.332031 16.292969 12.992188 16.292969 13.714844 C 16.292969 14.441406 15.984375 15.097656 15.492188 15.574219 L 10.394531 20.496094 C 9.902344 20.972656 9.222656 21.265625 8.472656 21.265625 C 7.71875 21.265625 7.039062 20.972656 6.546875 20.496094 L 4.996094 19 C 4.507812 18.523438 4.203125 17.867188 4.203125 17.144531 C 4.203125 16.421875 4.507812 15.765625 4.996094 15.289062 L 7.542969 12.824219 C 7.667969 12.707031 7.84375 12.628906 8.035156 12.628906 C 8.417969 12.628906 8.726562 12.929688 8.726562 13.300781 C 8.726562 13.484375 8.648438 13.652344 8.523438 13.773438 L 5.976562 16.234375 C 5.738281 16.46875 5.589844 16.792969 5.589844 17.148438 C 5.589844 17.503906 5.738281 17.824219 5.976562 18.058594 L 7.527344 19.566406 C 7.773438 19.792969 8.105469 19.929688 8.472656 19.929688 C 8.835938 19.929688 9.167969 19.792969 9.414062 19.566406 L 14.511719 14.644531 C 14.753906 14.410156 14.90625 14.089844 14.90625 13.730469 C 14.90625 13.375 14.753906 13.054688 14.511719 12.820312 L 12.964844 11.324219 C 12.839844 11.203125 12.761719 11.039062 12.761719 10.855469 C 12.761719 10.488281 13.070312 10.1875 13.449219 10.1875 Z M 17.082031 3.976562 C 17.082031 3.976562 17.085938 3.976562 17.085938 3.976562 C 17.824219 3.976562 18.492188 4.261719 18.980469 4.722656 L 20.535156 6.203125 C 21.042969 6.679688 21.355469 7.34375 21.355469 8.082031 C 21.355469 8.792969 21.058594 9.441406 20.582031 9.914062 L 18.0625 12.402344 C 17.9375 12.527344 17.761719 12.605469 17.566406 12.605469 C 17.183594 12.605469 16.875 12.304688 16.875 11.9375 C 16.875 11.753906 16.949219 11.589844 17.070312 11.46875 L 19.605469 8.984375 C 19.847656 8.75 19.996094 8.429688 19.996094 8.070312 C 19.996094 7.714844 19.847656 7.394531 19.605469 7.160156 L 18.019531 5.667969 C 17.773438 5.445312 17.4375 5.304688 17.070312 5.300781 C 16.703125 5.304688 16.367188 5.453125 16.128906 5.691406 L 11.085938 10.667969 C 10.84375 10.898438 10.695312 11.222656 10.695312 11.578125 C 10.695312 11.933594 10.84375 12.257812 11.085938 12.488281 L 12.675781 13.980469 C 12.804688 14.101562 12.882812 14.273438 12.882812 14.457031 C 12.882812 14.828125 12.574219 15.128906 12.191406 15.128906 C 12.003906 15.128906 11.832031 15.054688 11.707031 14.9375 L 10.140625 13.457031 C 9.636719 12.980469 9.324219 12.316406 9.324219 11.582031 C 9.324219 10.863281 9.621094 10.214844 10.101562 9.742188 L 15.140625 4.765625 C 15.625 4.285156 16.304688 3.980469 17.054688 3.976562 Z M 17.082031 3.976562").style("fill","var(--primary-color)"),this.copyURIIcon.on("click",(function(){e.copyToClipboard(r.iri),be(),s.hide()})).on("mouseover",(function(e){s.show("<div style='text-align: center;'><b>Copy to ClipBoard</b><br>"+r.iri+"</div>",e),l.cancel(me),l.cancel(ge)})).on("mouseout",(function(){s.hide(),me=l((function(){be()}),500)})),this.closeIcon=d3.select(".menu-events").append("g").attr("class","close-icon").attr("name","remove").attr("transform",(function(){return n(20,r)})),this.closeIcon.append("circle").attr("cx",14).attr("cy",14).attr("r",13).style("fill","#eee"),this.closeIcon.append("path").attr("d","M14.94,14l5.87-5.87a.66.66,0,1,0-.94-.94L14,13.06,8.13,7.19a.66.66,0,0,0-.94.94L13.06,14,7.19,19.87a.66.66,0,1,0,.94.94L14,14.94l5.87,5.87a.66.66,0,1,0,.94-.94Z").style("fill","var(--primary-color)"),this.closeIcon.on("click",(function(){we(r)})).on("mouseover",(function(e){s.show(this.getAttribute("name"),e),l.cancel(me),l.cancel(ge)})).on("mouseout",(function(){s.hide(),me=l((function(){be()}),500)})),this.animateMenu(r)},this.animateMenu=function(e){const t=d3.easeSin;let r=0;let i=20;this.expandIcon&&this.expandIcon.transition().duration(100).style("opacity",1).ease(t).attr("transform",(function(){return n(i,e)})).delay(r+=35),this.collapseIcon&&this.collapseIcon.transition().duration(100).style("opacity",1).ease(t).attr("transform",(function(){return n(i,e)})).delay(r+=35),this.copyURIIcon.transition().duration(100).style("opacity",1).ease(t).attr("transform",(function(){return i+=30,n(i,e)})).delay(r+=35),this.focusIcon.transition().duration(100).style("opacity",1).ease(t).attr("transform",(function(){return i+=30,n(i,e)})).delay(r+=35),this.closeIcon.transition().duration(100).style("opacity",1).ease(t).attr("transform",(function(){return i+=30,n(i,e)})).delay(r+=35),this.expandedState=!0}};function Se(n,r,i){return e.showInfoPanel=!1,e.showPredicates=!1,e.showNodeInfo=!1,i.shiftKey&&(i.ctrlKey||i.metaKey)?(t.$broadcast("onRootNodeChange",n.iri),!1):i.ctrlKey||i.metaKey?(we(n),!1):void 0!==e.openedNodeInfoPanel&&e.openedNodeInfoPanel===n?(e.pageslideExpanded=!1,e.openedNodeInfoPanel=void 0,!1):(Te(n),!0)}function we(e){se.removeNode(e),xe()}function ke(t){!function(t){e.nodeSelected=!0,null===t.data.types&&(t.data.types="greyColor"),se=new oe,ee=X}(t),Le(t)}function Le(t,n,r){let i=t.data;i=_.filter(i,(function(e){return-1===_.findIndex(se.links,(function(t){return e.source===t.source.iri&&e.target===t.target.iri}))}));const o=[],s=se.tripleLinksCopy.values();for(let e=0;e<se.tripleLinksCopy.size;e++){s.next().value.forEach(e=>{o.push(e)})}i=_.filter(i,(function(e){return-1===_.findIndex(o,(function(t){return e.source===t.source.iri&&e.target===t.target.iri}))})),i=_.filter(i,(function(e){return e.source!==e.target}));const a=((e,t)=>{const n=t.map(t=>t[e]);return t.filter((t,r)=>n.indexOf(t[e])===r)})("iri",_.union(_.flatten(_.map(t.data,(function(e){return[{iri:e.source,isTriple:e.isTripleSource},{iri:e.target,isTriple:e.isTripleTarget}]}))))),l=_.map(se.nodes,(function(e){return{iri:e.iri,isTriple:Boolean(e.isTriple)}})),d=se.tripleNodes.values();for(let e=0;e<se.tripleNodes.size;e++){d.next().value.forEach(e=>{l.push({iri:e.iri,isTriple:e.isTriple})})}const u=_.reject(a,(function(e){return _.some(l,e)}));if(0===u.length)(r||0===i.length)&&c.info(C.instant("graphexplore.error.node.connections")),se.addAndMatchLinks(i),xe();else{const t=[],r=[],o=A();_.forEach(u,(function(n,i){t.push(k.getInstanceNode({iri:n.isTriple?B(n.iri):n.iri,config:e.configLoaded.id,languages:e.shouldShowSettings()?o.languages:[],includeInferred:o.includeInferred,sameAsState:o.sameAsState}).then((function(e){r[i]=e.data})))})),p.all(t).then((function(){_.forEach(r,(function(e,t){const i=2*Math.PI*t/r.length,o=(n?n.x:0)+Math.cos(i)*ne/3,s=(n?n.y:0)+Math.sin(i)*ne/3;e.isTriple?se.addTriple(e,o,s):se.addNode(e,o,s)})),se.addAndMatchLinks(i),n&&(n.isExpanded=!0),xe()}))}}function Ce(t,n,r){if(ye.getLoadingState())return;ye.init(t,r);const i=A(),o=t.iri;k.getInstanceNodeLinks({iri:o,linksLimit:i.linksLimit,includeInferred:i.includeInferred,config:e.configLoaded.id,preferredTypes:e.shouldShowSettings()?i.preferredTypes:[],rejectedTypes:e.shouldShowSettings()?i.rejectedTypes:[],preferredPredicates:e.shouldShowSettings()?i.preferredPredicates:[],rejectedPredicates:e.shouldShowSettings()?i.rejectedPredicates:[],preferredTypesOnly:e.shouldShowSettings()?i.preferredTypesOnly:[],preferredPredicatesOnly:e.shouldShowSettings()?i.preferredPredicatesOnly:[],languages:e.shouldShowSettings()?i.languages:[],sameAsState:i.sameAsState,includeSchema:i.includeSchema}).then((function(e){Le(e,t,n)}),(function(t){const n=getError(t.data);c.error(n,C.instant("graphexplore.error.exploring.node")),e.loading=!1,ye.setLoadingState(!1)}))}function be(){angular.isDefined(Ie)&&Ie.expandedState&&Ie.removeIcons()}function Te(t){fe.stop(),e.openedNodeInfoPanel=t,e.showNodeInfo=!0,e.showFilter=!1,e.showPredicates=!1,e.nodeLabels=t.labels,e.nodeTypes=t.types,e.rdfRank=t.rdfRank,e.nodeIri=t.iri,e.resourceType=t.isTriple?"triple":"uri",e.encodedIri=t.isTriple?encodeURIComponent(B(t.iri)):encodeURIComponent(t.iri),e.showInfoPanel=!0,e.rdfsLabel=t.labels[0].label,e.rdfsComment=t.comment,e.expanded=!1,e.propertiesQueryObj.query="",e.dataNodeKeysQuery="";const n=A();k.getProperties({iri:t.isTriple?B(t.iri):t.iri,config:e.configLoaded.id,languages:e.shouldShowSettings()?n.languages:[],includeInferred:n.includeInferred,sameAsState:n.sameAsState,rejectedPredicates:e.shouldShowSettings()?n.rejectedPredicates:[]}).then((function(t){e.data=_.mapKeys(t.data,(function(t,n){return e.replaceIRIWithPrefix(n)})),e.propertiesObj.items=[],_.forEach(e.data,(function(t,n){e.propertiesObj.items.push({key:n,value:t})})),e.nodeImage=void 0,e.propertiesNotFiltered=e.propertiesObj.items;const n=_.find(e.propertiesObj.items,(function(e){return"image"===e.key}));n&&(e.nodeImage=n.value[0].v),e.propertiesObj.items=_.reject(e.propertiesObj.items,(function(e){return"image"===e.key})),e.propertiesNotFiltered=e.propertiesObj.items}),(function(e){c.warning(getError(e.data),"Error")}))}function _e(e){Ne("predicate","var(--primary-color-dark)",e),Ne("predicates","var(--primary-color-dark)",e);const t=document.getElementsByClassName("link");t&&_.each(t,(function(t){const n=t.__data__;(n.source.iri.indexOf(e.iri)>=0||n.target.iri.indexOf(e.iri)>=0)&&(t.style.stroke="var(--primary-color-dark)",t.style.strokeWidth=4)}));const n=document.getElementsByClassName("arrow-marker");n&&_.each(n,(function(t){const n=t.__data__;(n.source.iri.indexOf(e.iri)>=0||n.target.iri.indexOf(e.iri)>=0)&&(t.style.stroke="var(--primary-color-dark)",t.__data__.target.isTriple||t.setAttribute("refX","23"))}))}function Ne(e,t,n){const r=document.getElementsByClassName(e);r&&_.each(r,(function(e){const r=e.__data__;n?((r.source.iri.indexOf(n.iri)>=0||r.target.iri.indexOf(n.iri)>=0)&&(e.style.fill=t),j(n.iri)===z(r)&&(e.textContent=n.pred,e.style.fill=t),n.oppLinkIRI&&n.oppLinkIRI===z(r)&&(e.textContent=n.oppTriplePred,e.style.fill=t)):(e.style.fill=t,e.textContent=Me(r))}))}function Pe(){_.each(e.predicates,(function(e){const t=document.getElementById(e.linkId+e.nodeIndex);t&&(t.style.fontWeight="normal")}));const t=document.getElementsByClassName("link");t&&_.each(t,(function(e){e.style.stroke="#999",e.style.strokeWidth=1})),Ne("predicate",""),Ne("predicates","");const n=document.getElementsByClassName("arrow-marker");n&&_.each(n,(function(e){e.style.stroke="#999",e.__data__.target.isTriple||e.setAttribute("refX","59")}))}function Ae(e){const t=j(e);if(se.tripleNodes.has(t))return se.tripleNodes.get(t).find(t=>t.iri===e)}function Me(e){return e.predicates.length>1?e.predicates.length+" predicates":Oe(e.predicates[0])}function Oe(t){const n=e.replaceIRIWithPrefix(t);return n.length===t.length?t.split("/")[t.split("/").length-1]:n}e.toggleSidePanel=function(){e.pageslideExpanded=!e.pageslideExpanded},e.closeInfoPanel=function(){e.pageslideExpanded=!1,e.openedNodeInfoPanel=void 0,e.predicates=[],ie=null,l((function(){e.showInfoPanel=!1}))},e.clickLink=function(t){if(se.tripleNodes.has(t.linkId)){Pe();const n=se.tripleNodes.get(t.linkId)[t.nodeIndex];Te(n),e.showPredicates=!0;const r=document.getElementById(t.linkId+t.nodeIndex);r&&(r.style.fontWeight="bold");const i={},o=se.tripleLinksCopy.values();for(let e=0;e<se.tripleLinksCopy.size;e++){const e=o.next().value;e.length>1&&e.every(t=>t.source.iri===n.iri?(i.iri=e[0].source.iri,t.target.isTriple&&(i.oppLinkIRI=j(t.target.iri),i.oppTriplePred=Oe(t.target.iri.split(" ")[1])),i.pred=Oe(n.iri.split(" ")[1]),1===t.predicates.length&&(i.linkPred=t.predicates[0]),!1):t.target.iri!==n.iri||(i.iri=e[0].target.iri,t.source.isTriple&&(i.oppLinkIRI=j(t.source.iri),i.oppTriplePred=Oe(t.source.iri.split(" ")[1])),i.pred=Oe(n.iri.split(" ")[1]),1===t.predicates.length&&(i.linkPred=t.predicates[0]),!1))}i.iri||(i.iri=n.iri,i.pred=Oe(n.iri.split(" ")[1])),_e(i)}},e.splitPredicate=function(e){return e.split("/")[e.split("/").length-1]},e.getActiveRepository=function(){return n.getActiveRepository()},e.isLoadingLocation=function(){return n.isLoadingLocation()},e.hasActiveLocation=function(){return n.hasActiveLocation()},e.rotate=function(e){be();const t=10*(e?1:-1)*Math.PI/180,n=Math.cos(t),r=Math.sin(t),i=te/2,o=ne/2;d3.selectAll(".node-wrapper").each((function(e){e.x=i+(n*(e.x-i)+r*(e.y-o)),e.y=o+(-r*(e.x-i)+n*(e.y-o)),e.fixed&&(e.fx=e.x,e.fy=e.y)})),fe.alpha(1).restart()},e.openUri=function(t,n){if(!n){const n={};e.configLoaded.id!==e.defaultGraphConfig.id&&(n.config=e.configLoaded.id),n.uri=t,N(n,{uri:t,config:e.configLoaded})}e.$broadcast("onRootNodeChange",t)},e.saveOrUpdateGraph=function(){const t=JSON.stringify(se.copyState()),n={id:e.lastSavedGraphId,name:e.lastSavedGraphName,data:t,shared:e.shared};n.id?e.saveGraphModal("update",n):e.saveGraphModal("new",n)},e.renameSavedGraph=function(t){e.saveGraphModal("rename",{id:t.id,name:t.name,config:t.config,shared:t.shared})};const Ee=function(t){S.editSavedGraph(t).success((function(){e.lastSavedGraphName=t.name,e.shared=t.shared,e.refreshSavedGraphs(),c.success(C.instant("graphexplore.saved.graph.was.edited",{name:t.name}))})).error((function(e){const t=getError(e);c.error(t,C.instant("graphexplore.error.cannot.edit"))}))};e.saveGraphModal=function(t,n,r){y.open({templateUrl:"js/angular/graphexplore/templates/modal/save-graph.html",controller:"SaveGraphModalCtrl",resolve:{data:function(){return{mode:t,graph:n,graphExists:r,shared:n.shared}}}}).result.then((function(t){if(t.restart)e.saveGraphModal(t.mode,t.graph,!1);else switch(t.mode){case"new":!function(t){e.configLoaded&&(t.config=e.configLoaded.id),S.addNewSavedGraph(t).success((function(n,r,i){e.lastSavedGraphName=t.name,e.lastSavedGraphId=i()["x-saved-graph-id"],e.shared=t.shared,e.refreshSavedGraphs(),c.success(C.instant("graphexplore.saved.graph",{name:t.name}))})).error((function(n,r){if(422===r)e.saveGraphModal("new",t,!0);else{const e=getError(n);c.error(e,C.instant("graphexplore.error.cannot.create.graph"))}}))}(t.graph);break;case"update":case"rename":Ee(t.graph)}}))},e.refreshSavedGraphs=function(){S.getSavedGraphs().success((function(t){e.savedGraphs=t})).error((function(e){const t=getError(e);c.error(t,C.instant("graphexplore.error.getting.saved.graphs"))}))},e.loadSavedGraph=function(t,n){t.owner?(e.lastSavedGraphName=t.name,e.lastSavedGraphId=t.id,e.shared=t.shared,e.configLoaded=e.findConfigById(t.config)):(e.lastSavedGraphName=null,e.lastSavedGraphId=null,e.shared=t.shared),e.configLoaded||(e.configLoaded=e.defaultGraphConfig),f.url("?saved="+t.id),se.restoreState(JSON.parse(t.data)),n||N({saved:t.id},{savedGraph:t})},e.copyToClipboardSavedGraph=function(t){const n=[location.protocol,"//",location.host,location.pathname,"?saved=",t.id].join("");e.copyToClipboard(n)},e.deleteSavedGraph=function(t){m.openSimpleModal({title:C.instant("common.confirm"),message:C.instant("graphexplore.confirm.delete.graph",{graphName:t.name}),warning:!0}).result.then((function(){!function(t){S.deleteSavedGraph(t).success((function(){e.refreshSavedGraphs(),c.success(C.instant("graphexplore.saved.graph.was.deleted",{name:t.name}))})).error((function(e){const t=getError(e);c.error(t,C.instant("graphexplore.error.cannot.delete"))}))}(t)}))},e.openIRI=function(t,n){return n.shiftKey?e.$broadcast("onRootNodeChange",t):window.open(t,"_blank"),!1},e.togglePinAllNodes=function(){be();const t=angular.isUndefined(e.numberOfPinnedNodes)||e.numberOfPinnedNodes<=0;e.numberOfPinnedNodes=0,d3.selectAll(".node").each((function(n){n.fixed=t,t?(e.numberOfPinnedNodes++,n.fx=n.x,n.fy=n.y):(n.fx=null,n.fy=null)})),fe.alpha(1).restart()},$("body").on("keydown",(function(t){!b.isActive()&&"input"!==t.target.nodeName&&e.nodeSelected&&(37===t.keyCode?e.rotate(!0):39===t.keyCode&&e.rotate(!1))})),e.getLiteralFromPropValue=function(e){return e.substring(e.indexOf(":")+1)}}function c(e,t,n,r){switch(e.mode=n.mode,e.graph=_.cloneDeep(n.graph),e.graphExists=n.graphExists,e.mode){case"new":e.title=r.instant("graphexplore.create.new.graph"),e.okButtonText=r.instant("common.create.btn");break;case"update":e.title=r.instant("graphexplore.update"),e.okButtonText=r.instant("common.save.btn");break;case"rename":e.title=r.instant("graphexplore.rename"),e.okButtonText=r.instant("common.save.btn")}e.ok=function(){e.form.$valid&&t.close({graph:e.graph,mode:e.mode})},e.saveNew=function(){e.graph.name=e.graph.name+" (new)",t.close({graph:e.graph,mode:"new",restart:!0})},e.cancel=function(){t.dismiss("cancel")}}angular.module("graphdb.framework.graphexplore.controllers.graphviz",["ui.scroll.jqlite","ui.scroll","toastr","ui.bootstrap","ngTagsInput","graphdb.framework.utils.localstorageadapter"]).controller("GraphsVisualizationsCtrl",a).controller("SaveGraphModalCtrl",c).config(["$uibTooltipProvider",function(e){e.options({appendToBody:!0})}]),a.$inject=["$scope","$rootScope","$repositories","$licenseService","toastr","$timeout","ClassInstanceDetailsService","AutocompleteRestService","$q","$location","$jwtAuth","UiScrollService","ModalService","$uibModal","$window","LocalStorageAdapter","LSKeys","SavedGraphsRestService","GraphConfigRestService","GraphDataRestService","RDF4JRepositoriesRestService","$translate","GuidesService"],c.$inject=["$scope","$uibModalInstance","data","$translate"]},444:function(e,t,n){var r,i;r=[n(452)],void 0===(i=function(){function e(e,t){return e.each((function(){var e=t.apply(this,arguments),n=select(this);for(var r in e)n.attr(r,e[r])}))}function t(e,t){for(var n in t)e.attr(n,t[n]);return e}return"undefined"==typeof d3&&(d3=n(452)),d3.selection.prototype.attrs=function(n){return("function"==typeof n?e:t)(this,n)},d3.selection.prototype.moveToFront=function(){return this.each((function(){d3.select(this.parentNode.appendChild(this))}))},d3.selection.prototype.moveToBack=function(){return this.each((function(){const e=this.parentNode.firstChild;e&&this.parentNode.insertBefore(this,e)}))},d3}.apply(t,r))||(e.exports=i)},454:function(e,t,n){"use strict";n(444);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=function(){const e=function(e,n){let r,i=1,o=arguments.length;for(;++i<o;)r=arguments[i],e[r]=t(e,n,n[r]);return e};function t(e,t,n){return function(){var r=n.apply(t,arguments);return r===t?e:r}}return{delayDblClick:function(){var t=d3.dispatch("click","dblclick");return e((function(e){var n,r=null;e.on("mousedown",(function(){n=d3.pointer(document.body),+new Date})),e.on("mouseup",(function(e,i){var o,s,a;(s=n,a=d3.pointer(document.body),Math.sqrt(Math.pow(s[0]-a[0],2),Math.pow(s[1]-a[1],2))>5)||(r?(window.clearTimeout(r),r=null,t.call("dblclick",e,e,i)):r=window.setTimeout((o=e,function(){t.call("click",o,o,i),r=null}),250))}))}),t,"on")}}}(),t.a=r},467:function(e,t,n){"use strict";t.a=function(){var e=function(){return"n"},t=function(){return[0,0]},n=function(){return" "},r=u(),i=null,o=null,s=null,a=null;function c(e){var t;i="svg"===(t=(t=e).node()).tagName.toLowerCase()?t:t.ownerSVGElement,o=i.createSVGPoint(),document.body.appendChild(r)}c.show=function(){var r=Array.prototype.slice.call(arguments);r[r.length-1]instanceof SVGElement&&(s=r.pop());var i,o=n.apply(this,r),u=t.apply(this,r),f=e.apply(this,r),h=p(),g=d.length,m=document.documentElement.scrollTop||document.body.scrollTop,y=document.documentElement.scrollLeft||document.body.scrollLeft,x=a.apply(this,r);for(h.html(o).style("opacity",1).style("pointer-events","all");g--;)h.classed(d[g],!1);const v=r.filter(e=>e instanceof Event);return i=l.get(f).apply(this,v),x?Object.keys(x).forEach((function(e){h.style(e,x[e])})):h.classed(f,!0).style("top",i.top+u[0]+m+"px").style("left",i.left+u[1]+y+"px"),c},c.hide=function(){return p().style("opacity",0).style("pointer-events","none"),c},c.attr=function(e,t){if(arguments.length<2&&"string"==typeof e)return p().attr(e);var n=Array.prototype.slice.call(arguments);return d3.selection.prototype.attr.apply(p(),n),c},c.style=function(e,t){if(arguments.length<2&&"string"==typeof e)return p().style(e);var n=Array.prototype.slice.call(arguments);return d3.selection.prototype.style.apply(p(),n),c},c.direction=function(t){return arguments.length?(e=null==t?t:h(t),c):e},c.offset=function(e){return arguments.length?(t=null==e?e:h(e),c):t},c.html=function(e){return arguments.length?(n=null==e?e:h(e),c):n},c.customPosition=function(e){return arguments.length?(a=null==e?e:h(e),c):a},c.destroy=function(){return r&&(p().remove(),r=null),c};var l=new Map(Object.entries({n:function(e){var t=f(e);return{top:t.n.y-r.offsetHeight,left:t.n.x-r.offsetWidth/2}},s:function(e){var t=f(e);return{top:t.s.y,left:t.s.x-r.offsetWidth/2}},e:function(e){var t=f(e);return{top:t.e.y-r.offsetHeight/2,left:t.e.x}},w:function(e){var t=f(e);return{top:t.w.y-r.offsetHeight/2,left:t.w.x-r.offsetWidth}},nw:function(e){var t=f(e);return{top:t.nw.y-r.offsetHeight,left:t.nw.x-r.offsetWidth}},ne:function(e){var t=f(e);return{top:t.ne.y-r.offsetHeight,left:t.ne.x}},sw:function(e){var t=f(e);return{top:t.sw.y,left:t.sw.x-r.offsetWidth}},se:function(e){var t=f(e);return{top:t.se.y,left:t.e.x}}})),d=l.keys();function u(){var e=d3.select(document.createElement("div"));return e.style("position","absolute").style("top",0).style("opacity",0).style("pointer-events","none").style("box-sizing","border-box"),e.node()}function p(){return null===r&&(r=u(),document.body.appendChild(r)),d3.select(r)}function f(e){for(var t=s||e.target;void 0===t.getScreenCTM&&"undefined"===t.parentNode;)t=t.parentNode;var n={},r=t.getScreenCTM(),i=t.getBBox(),a=i.width,c=i.height,l=i.x,d=i.y;return o.x=l,o.y=d,n.nw=o.matrixTransform(r),o.x+=a,n.ne=o.matrixTransform(r),o.y+=c,n.se=o.matrixTransform(r),o.x-=a,n.sw=o.matrixTransform(r),o.y-=c/2,n.w=o.matrixTransform(r),o.x+=a,n.e=o.matrixTransform(r),o.x-=a/2,o.y-=c/2,n.n=o.matrixTransform(r),o.y+=c,n.s=o.matrixTransform(r),n}function h(e){return"function"==typeof e?e:function(){return e}}return c}},71:function(e,t,n){"use strict";n.r(t),n.d(t,"removeSpecialChars",(function(){return i})),n.d(t,"toBoolean",(function(){return o})),n.d(t,"toTitleCase",(function(){return s}));var r=n(65);const i=e=>e.replace(/[()']/g,""),o=e=>"string"==typeof e?"true"===e:Boolean(e),s=e=>e?Object(r.upperFirst)(e.toLowerCase()):e},90:function(e,t,n){"use strict";n.r(t),n.d(t,"STATIC_RULESETS",(function(){return r})),n.d(t,"REPOSITORY_TYPES",(function(){return i})),n.d(t,"FILENAME_PATTERN",(function(){return o})),n.d(t,"NUMBER_PATTERN",(function(){return s}));const r=[{id:"empty",name:"No inference"},{id:"rdfs-optimized",name:"RDFS (Optimized)"},{id:"rdfs",name:"RDFS"},{id:"rdfsplus-optimized",name:"RDFS-Plus (Optimized)"},{id:"owl-horst-optimized",name:"OWL-Horst (Optimized)"},{id:"owl-horst",name:"OWL-Horst"},{id:"owl2-ql-optimized",name:"OWL2-QL (Optimized)"},{id:"owl2-ql",name:"OWL2-QL"},{id:"owl-max-optimized",name:"OWL-Max (Optimized)"},{id:"owl-max",name:"OWL-Max"},{id:"owl2-rl-optimized",name:"OWL2-RL (Optimized)"},{id:"owl2-rl",name:"OWL2-RL"}],i={graphdbRepo:"graphdb",free:"free",eeWorker:"worker",eeMaster:"master",ontop:"ontop",se:"se",fedx:"fedx"},o=new RegExp("^[a-zA-Z0-9-_]+$"),s=new RegExp("^[0-9]+$")}}]);
1
+ (window.webpackJsonp=window.webpackJsonp||[]).push([[28,242,275],{179:function(e,t,n){"use strict";n.r(t);n(7);var r=n(454),i=n(467),o=(n(10),n(90)),s=n(71);function a(e,t,n,a,c,l,d,u,p,f,h,g,m,y,x,v,I,S,w,k,L,C,b){e.languageChanged=!1,e.propertiesObj={},e.propertiesObj.items=[],e.propertiesQueryObj={},e.propertiesQueryObj.query="",e.propertiesSearchPlaceholder=C.instant("visual.search.instance.placeholder"),e.propertiesNotFiltered=[],e.searchVisible=!1,e.nodeSelected=!1,e.queryResultsMode=!1,e.embedded=f.search().embedded,e.openedNodeInfoPanel=void 0,e.invalidLimit=!1,e.INVALID_LINKS_MSG=C.instant("sidepanel.invalid.limit.links.msg"),e.INVALID_LINKS_TOOLTIP=C.instant("sidepanel.invalid.limit.links.tooltip"),e.datasource=void 0,e.adapterContainer={adapter:{remain:!0}},e.hasInitedRepository=!1,e.defaultSettings={linksLimit:20,includeInferred:!0,sameAsState:!0,languages:["en"],showLinksText:!0,preferredTypes:[],rejectedTypes:[],preferredPredicates:[],rejectedPredicates:["http://dbpedia.org/property/logo","http://dbpedia.org/property/hasPhotoCollection","http://dbpedia.org/property/website","http://dbpedia.org/property/homepage","http://dbpedia.org/ontology/thumbnail","http://xmlns.com/foaf/0.1/depiction","http://xmlns.com/foaf/0.1/homepage","http://xmlns.com/foaf/0.1/mbox","http://dbpedia.org/ontology/wikiPage*","http://dbpedia.org/property/wikiPage*","http://factforge.net/*"],preferredTypesOnly:!1,preferredPredicatesOnly:!1,includeSchema:!0},e.saveSettings=_.cloneDeep(e.defaultSettings),e.defaultGraphConfig={id:"default",name:"Easy graph",startMode:"search"},t.key="",e.onopen=e.onclose=()=>angular.noop(),e.goToHome=()=>{P(),f.url("graphs-visualizations")},e.shouldShowSettings=()=>e.configLoaded&&e.configLoaded.id===e.defaultGraphConfig.id,e.shouldDisableSameAs=()=>{const t=$("#sameAsCheck");return e.settings&&!e.settings.includeInferred&&t.prop("checked")&&(t.prop("checked",!1),e.settings.sameAsState=!1),e.settings&&!e.settings.includeInferred},e.propertiesFilterFunc=t=>t.key.toLowerCase().indexOf(e.propertiesQueryObj.query.toLowerCase())>=0,e.toggleMoreInfo=e=>{angular.element(e.currentTarget).parent().next().toggle(200),angular.element(e.currentTarget).children("span").toggleClass("icon-caret-down").toggleClass("icon-caret-up")},e.copyToClipboard=e=>{m.openCopyToClipboardModal(e)},e.resetSettings=()=>{e.settings=_.cloneDeep(e.defaultSettings),e.validateLinksLimit(),O()},e.changeLimit=t=>{let n=e.settings.linksLimit+t;n<1&&(n=1),n>1e3&&(n=1e3),e.settings.linksLimit=n},e.validateLinksLimit=()=>{e.invalidLimit=!o.NUMBER_PATTERN.test(e.settings.linksLimit)},e.showSettings=()=>{e.showInfoPanel=!0,e.showFilter=!0,e.showNodeInfo=!1,e.showPredicates=!1,e.saveSettings?e.settings=_.cloneDeep(e.saveSettings):e.settings=_.cloneDeep(e.defaultSettings),O()},e.updateSettings=()=>{e.invalidLimit?c.error(e.INVALID_LINKS_TOOLTIP,e.INVALID_LINKS_MSG):(e.saveSettings=e.settings,e.saveSettings.languages=_.map(e.saveSettings.languagesMap,(function(e){return e.text})),e.saveSettings.preferredTypes=_.map(e.saveSettings.preferredTypesMap,(function(e){return e.text})),e.saveSettings.rejectedTypes=_.map(e.saveSettings.rejectedTypesMap,(function(e){return e.text})),e.saveSettings.preferredPredicates=_.map(e.saveSettings.preferredPredicatesMap,(function(e){return e.text})),e.saveSettings.rejectedPredicates=_.map(e.saveSettings.rejectedPredicatesMap,(function(e){return e.text})),e.rootNodeIri?E(e.rootNodeIri):e.queryResultsMode&&f.search().query?G(f.search().query,f.search().sameAs,f.search().inference):"query"===e.configLoaded.startMode&&W(e.configLoaded),M(),e.showInfoPanel=!1,e.showFilter=!1,v.set(I.GRAPHS_VIZ,e.saveSettings))},e.getGraphConfigs=t=>{w.getGraphConfigs().success((function(n){e.graphConfigs=n,t&&t()})).error((function(e){c.error(getError(e),C.instant("graphexplore.error.graph.configs.short.msg"))}))},e.findConfigById=function(t){return t===e.defaultGraphConfig.id?e.defaultGraphConfig:$.grep(e.graphConfigs,(function(e){return e.id===t}))[0]},e.easyGraphSearch=t=>{e.configLoaded=e.defaultGraphConfig,e.openUri(t)},e.deleteConfig=t=>{m.openSimpleModal({title:C.instant("common.confirm"),message:C.instant("graphexplore.delete.graph",{configName:t.name}),warning:!0}).result.then((function(){w.deleteGraphConfig(t).success((function(){e.getGraphConfigs(),e.refreshSavedGraphs()})).error((function(e){c.error(getError(e),C.instant("graphexplore.error.cannot.delete.config"))}))}))},e.goToGraphConfig=e=>{N({config:e.id},{config:e}),P(),W(e)},e.replaceIRIWithPrefix=t=>{const n=e.namespaces,r=_.findLast(n,(function(e){return 0===t.indexOf(e.uri)}));return r?r.prefix+":"+t.substring(r.uri.length):t};const T=[];t.$on("$translateChangeSuccess",(function(){e.INVALID_LINKS_MSG=C.instant("sidepanel.invalid.limit.links.msg"),e.INVALID_LINKS_TOOLTIP=C.instant("sidepanel.invalid.limit.links.tooltip"),e.propertiesSearchPlaceholder=C.instant("visual.search.instance.placeholder")})),e.$on("autocompleteStatus",(function(){ce()})),e.$on("repositoryIsSet",(function(t,n){n.newRepo&&(e.hasInitedRepository=!1),ae(n.newRepo),n.newRepo&&(P(),$(".graph-visualization svg").empty(),f.search().query&&(e.goToHome(),R()))}));T.push(t.$watch(()=>t.key,()=>{q=0,_.each(e.propertiesObj.items,(function(e){t.key>e&&q++})),H++}));T.push(e.$watch("propertiesObj.items",()=>{angular.isDefined(e.propertiesObj.items)&&e.propertiesObj.items.length>0&&l((function(){e.adapterContainer.adapter.reload()}),500)}));e.$on("$destroy",()=>{T.forEach(e=>e())});const N=(t,n)=>{e.embedded&&(t.embedded=!0),f.search(t),f.state(n)},P=()=>{e.searchVisible=!1,e.nodeSelected=!1,e.configLoaded=null,e.queryResultsMode=!1,e.lastSavedGraphName=null,e.lastSavedGraphId=null,e.shared=!1,e.numberOfPinnedNodes=0,K={},Z=0},A=()=>b.isActive()?e.defaultSettings:e.saveSettings,M=()=>{A().showLinksText?d3.selectAll("svg .link-wrapper text").style("display","block"):d3.selectAll("svg .link-wrapper text").style("display","none")},O=()=>{e.settings.languagesMap=_.map(e.settings.languages,(function(e){return{text:e}})),e.settings.preferredTypesMap=_.map(e.settings.preferredTypes,(function(e){return{text:e}})),e.settings.rejectedTypesMap=_.map(e.settings.rejectedTypes,(function(e){return{text:e}})),e.settings.preferredPredicatesMap=_.map(e.settings.preferredPredicates,(function(e){return{text:e}})),e.settings.rejectedPredicatesMap=_.map(e.settings.rejectedPredicates,(function(e){return{text:e}}))},E=()=>{e.rootNodeIri&&e.$broadcast("onRootNodeChange",e.rootNodeIri)},R=()=>{f.search().query?(e.searchVisible=!1,e.queryResultsMode=!0,G(f.search().query,f.search().sameAs,f.search().inference)):e.$on("onRootNodeChange",(function(t,n){e.loading=!0;const r=A();angular.isDefined(n)&&(e.rootNodeIri=n,k.getInstanceNode({iri:n,config:e.configLoaded?e.configLoaded.id:e.defaultGraphConfig.id,languages:e.shouldShowSettings()?r.languages:[],includeInferred:r.includeInferred,sameAsState:r.sameAsState}).then((function(t){e.nodeSelected=!0,e.searchVisible=!1,null===t.data.types&&(t.data.types="greyColor"),se=new oe;const n=se.addNode(t.data,te/2,ne/2);ee=X,Ce(n,!0)})).catch((function(t){e.loading=!1,c.error(getError(t),C.instant("graphexplore.error.could.not.load.graph"))})))})),f.search().uri&&e.openUri(f.search().uri,!0),f.search().saved&&S.getSavedGraph(f.search().saved).success((function(t){e.loadSavedGraph(t)})).error((function(e){const t=getError(e);c.error(t,C.instant("graphexplore.error.could.not.open"))}))},G=(t,n,r)=>{const i=A(),o=void 0===n?i.sameAsState:!0===n,s=void 0===r?i.includeInferred:!0===r;e.loading=!0,k.updateGraph({query:t,linksLimit:i.linksLimit,languages:e.shouldShowSettings()?i.languages:[],includeInferred:s,sameAsState:o}).then((function(e){ke(e)}),(function(t){e.loading=!1,c.error(getError(t.data),C.instant("graphexplore.error.cannot.load.graph"))}))},j=(e,t)=>{const n=e.split(" ");return t?[n[0],n[1],n[2]].join(">"):[n[0],n[2]].join(">")},z=e=>[e.source.iri,e.target.iri].join(">"),D=e=>{if(e.isTriple){const t=document.getElementById(Object(s.removeSpecialChars)(j(e.iri)));if(t&&void 0!==t.__data__.x)return t.__data__.x}return e.x},F=e=>{if(e.isTriple){const t=document.getElementById(Object(s.removeSpecialChars)(j(e.iri)));if(t&&void 0!==t.__data__.y)return t.__data__.y}return e.y},B=e=>{const t=e.trim().split(" ");return`<<<${t[0]}> <${t[1]}> <${t[2]}>>>`},U=e=>{const t=e.source.isTriple?j(e.source.iri,!0):e.source.iri,n=e.target.isTriple?j(e.target.iri,!0):e.target.iri;return Object(s.removeSpecialChars)(`${t}>${n}>marker`)},W=t=>{e.configLoaded=t,"search"===t.startMode?e.searchVisible=!0:"node"===t.startMode&&t.startIRI?l((function(){e.openUri(t.startIRI,!0)}),0):"query"===t.startMode&&t.startGraphQuery&&(e.loading=!0,w.loadGraphForConfig(t,t.startQueryIncludeInferred,A().linksLimit,t.startQuerySameAs).then((function(e){ke(e)}),(function(t){e.loading=!1,c.error(getError(t),C.instant("graphexplore.error.graph.load"))})))},V=function(){var t,n;f.search().config?(t=f.search().config,n=R,t===e.defaultGraphConfig.id?W(e.defaultGraphConfig):w.getConfig(t).then(e=>{W(e),n()}).catch(e=>{c.error(getError(e),C.instant("graphexplore.error.could.not.load.config",{configId:t}))})):f.search().query||f.search().uri?(W(e.defaultGraphConfig),R()):R()};x.onpopstate=function(t){P(),t.state&&(t.state.config?(W(t.state.config),t.state.uri&&e.openUri(t.state.uri,!0)):t.state.savedGraph&&e.loadSavedGraph(t.state.savedGraph,!0))},e.embedded&&(f.search().query||f.search().uri||f.search().config||f.search().saved)&&(e.noGoHome=!0);let q=0,H=0,K={},Z=0;const Q=16,J=d3.zoom().scaleExtent([.1,10]);let Y;const X=d3.zoomIdentity.translate(0,-70).scale(1);J.on("zoom",(function(e){b.isActive()||(ee=e.transform,Y.attr("transform",ee))}));let ee=X;const te=1e3,ne=1e3;let re,ie;function oe(){this.nodes=[],this.links=[],this.tripleNodes=new Map,this.tripleLinksCopy=new Map,this.addNode=function(e,t,n){return e.x=t,e.y=n,this.nodes.push(e),e},this.computeConnectedness=function(){const e={},t={};_.each(this.links,(function(n){const r=n.source.iri,i=n.target.iri,o=_.min([r,i])+"|"+_.max([r,i]);t[o]||(t[o]=1,e[r]=(e[r]||0)+1,e[i]=(e[i]||0)+1)})),_.each(this.links,(function(t){e[t.source.iri]>1&&e[t.target.iri]>1?t.connectedness=Math.min(5,Math.max(e[t.source.iri],e[t.target.iri])-1):t.connectedness=0}))},this.addAndMatchLinks=function(e){const t=this.nodes;Array.prototype.push.apply(this.links,function(e,t){return _.map(e,(function(e){let n,r;n=e.isTripleSource?Ae(e.source):_.find(t,(function(t){return t.iri===e.source})),r=e.isTripleTarget?Ae(e.target):_.find(t,(function(t){return t.iri===e.target}));let i={source:n,target:r,predicates:e.predicates};if(e.isTripleSource||e.isTripleTarget){let e=`${i.source.isTriple?j(i.source.iri):i.source.iri}>${i.target.isTriple?j(i.target.iri):i.target.iri}`;if(se.tripleLinksCopy.has(e)){let t=se.tripleLinksCopy.get(e);return t[0].predicates.push(...i.predicates),t.push(i),se.tripleLinksCopy.set(e,t),null}se.tripleLinksCopy.set(e,[i])}return i}))}(e,t));for(let e of se.tripleLinksCopy.keys())1===se.tripleLinksCopy.get(e).length&&se.tripleLinksCopy.delete(e);this.links=this.links.filter(e=>null!==e),this.computeConnectedness()};const t=function(e,t){return n(e,t).length};function n(e,t){return _.filter(t,(function(t){return t.source.iri===e.iri||t.target.iri===e.iri}))}this.countLinks=t,this.linksTypes=function(e,t){const r=n(e,t),i=_.map(r,(function(t){return t.source.iri===e.iri?t.target.types:t.source.types}));return _.uniq(_.flatten(i))},this.linksPredicates=function(e,t){const r=n(e,t),i=_.map(r,(function(e){return e.predicates}));return _.uniq(_.flatten(i))},this.removeTriples=function(e){let t=[];this.tripleNodes.size>0&&e.forEach(e=>{this.tripleNodes.has(e)&&(this.tripleNodes.delete(e),this.links=_.reject(this.links,(function(n){let r=e.split(">"),i=j(n.source.iri),o=j(n.target.iri);if(i===e&&se.tripleNodes.delete(o)){let e=o.split(">");t.push({source:e[0],target:e[1]})}let s=i===e||o===e||n.source.iri===r[0]&&n.target.iri===r[1];return s&&(se.tripleLinksCopy.delete(`${i}>${o}`),se.tripleLinksCopy.delete(`${o}>${i}`)),s})))}),t.forEach(e=>{this.links=_.reject(this.links,(function(t){return t.source.iri===e.source&&t.target.iri===e.target}))})},this.removeNode=function(n){let r=[];this.links=_.reject(this.links,(function(e){let t=e.source.iri===n.iri||e.target.iri===n.iri;return t&&(e.target.isTriple&&r.push(j(e.target.iri)),e.source.isTriple||e.target.isTriple||r.push([e.source.iri,e.target.iri].join(">"))),t})),this.removeTriples(r);const i=this.links;this.nodes=_.reject(this.nodes,(function(e){return 0===t(e,i)})),0===this.nodes.length&&(e.nodeSelected=!1),this.computeConnectedness()},this.removeNodeLeafLinks=function(e){let r=[],i=this.links;this.links=_.reject(this.links,(function(o){let s=o.source.iri===e.iri&&1===t(o.target,i)&&!o.target.isTriple||o.target.iri===e.iri&&1===t(o.source,i)&&!o.source.isTriple;if(!s){let r;if(o.source.iri!==e.iri||2!==t(o.target,i)||o.target.isTriple?o.target.iri!==e.iri||2!==t(o.source,i)||o.source.isTriple||(r=n(o.source,i)):r=n(o.target,i),!r)return!1;s=(r[0].source.iri===e.iri||r[0].target.iri)&&(r[1].source.iri===e.iri||r[1].target.iri)}return s&&(o.target.isTriple&&r.push(j(o.target.iri)),o.source.isTriple||o.target.isTriple||r.push([o.source.iri,o.target.iri].join(">"))),s})),this.removeTriples(r),i=this.links,this.nodes=_.reject(this.nodes,(function(n){return 0===t(n,i)&&n.iri!==e.iri})),this.computeConnectedness()},this.addTriple=function(e,t,n){e.x=t,e.y=n,e.weight=0;let r=j(e.iri);if(this.tripleNodes.has(r)){let t=this.tripleNodes.get(r);t.push(e),this.tripleNodes.set(r,t)}else e.weight=10,this.tripleNodes.set(r,[e])},this.copyState=function(){const e=_.map(this.nodes,(function(e){return{iri:e.iri,isTriple:e.isTriple,size:e.size,labels:_.cloneDeep(e.labels),types:_.cloneDeep(e.types),rdfRank:e.rdfRank,x:e.x,y:e.y,fixed:e.fixed}})),t=JSON.stringify(Array.from(this.tripleNodes.entries())),n=JSON.stringify(Array.from(this.tripleLinksCopy.entries()));return{nodes:e,links:_.map(this.links,(function(e){return{source:e.source.iri,isTripleSource:e.source.isTriple,target:e.target.iri,isTripleTarget:e.target.isTriple,predicates:e.predicates}})),tripleNodes:t,tripleLinksCopy:n,colorIndex:Z,type2color:K,transform:ee}},this.restoreState=function(t){e.nodeSelected=!0,e.searchVisible=!1,this.nodes=_.cloneDeep(t.nodes),this.tripleNodes=t.tripleNodes?new Map(JSON.parse(t.tripleNodes)):new Map,this.links=[],this.addAndMatchLinks(t.links),this.tripleLinksCopy=t.tripleLinksCopy?new Map(JSON.parse(t.tripleLinksCopy)):new Map,_.each(this.nodes,(function(t){t.fixed&&e.numberOfPinnedNodes++})),angular.isDefined(t.colorIndex)&&angular.isDefined(t.type2color)&&(Z=t.colorIndex,K=_.cloneDeep(t.type2color)),angular.isDefined(t.transform)&&(ee=d3.zoomIdentity.translate(t.transform.x,t.transform.y).scale(t.transform.k)),xe()}}e.datasource={get:function(t,n,r){return g.initLazyList(t,n,r,q,e.propertiesObj.items)},revision:function(){return H}},p.when(h.getPrincipal()).then(t=>(t=>{const n=t.appSettings;e.defaultSettings.includeInferred=n.DEFAULT_INFERENCE,e.defaultSettings.sameAsState=n.DEFAULT_INFERENCE&&n.DEFAULT_SAMEAS,e.defaultSettings.includeSchema=n.DEFAULT_VIS_GRAPH_SCHEMA;const r=v.get(I.GRAPHS_VIZ);if(r&&"object"==typeof r)try{e.saveSettings=r,void 0===e.saveSettings.includeSchema&&(e.saveSettings.includeSchema=e.defaultSettings.includeSchema,e.saveSettings.rejectedPredicates=[...e.saveSettings.rejectedPredicates,...e.defaultSettings.rejectedPredicates].unique())}catch(t){e.saveSettings=_.cloneDeep(e.defaultSettings),v.set(I.GRAPHS_VIZ,e.saveSettings)}else e.saveSettings=_.cloneDeep(e.defaultSettings)})(t)),e.showInfoPanel=!1;let se=new oe;function ae(t){!n.getActiveRepository()||e.hasInitedRepository&&!t||(e.hasInitedRepository=!0,t||e.getGraphConfigs(V),e.getNamespacesPromise=L.getNamespaces(e.getActiveRepository()).success((function(t){const n=_.map(t.results.bindings,(function(e){return{uri:e.namespace.value,prefix:e.prefix.value}}));e.namespaces=_.sortBy(n,(function(e){return e.uri.length})),ce()})).error((function(e){c.error(getError(e),C.instant("graphexplore.error.view.will.not.work"))})))}function ce(){a.isLicenseValid()&&(e.getAutocompletePromise=u.checkAutocompleteStatus())}e.addedTag=function(t){return t.text.indexOf(":")<0?(c.warning(C.instant("graphexplore.absolute.prefixed.iri")),null):(t.text=function(e,t){if(!/^<?(http|urn).*>?/.test(e)){const n=e.split(":"),r=n[0],i=n[1];if(!angular.isUndefined(i)){const e=d.getNamespaceUriForPrefix(t,r);if(e)return e+i}}return e}(t.text,e.namespaces),e.pageslideExpanded=!0,t)},e.validateTag=function(e,t,n){if(e.text.indexOf(":")<0)return n?c.warning(C.instant("graphexplore.absolute.prefixed.iri.option"),t):c.warning(C.instant("graphexplore.absolute.prefixed.iri"),t),!1;const r=e.text.indexOf("*");if(r>=0){if(!n)return c.warning(C.instant("graphexplore.wildcards.not.allowed"),t),!1;if(r<e.text.length-1)return c.warning(C.instant("graphexplore.wildcards.last.char"),t),!1}return!0},e.getTagClass=function(e){return e.endsWith("*")?"tag-item-wildcard":null},e.getActiveRepository=function(){return n.getActiveRepository()},e.isLicenseValid=function(){return a.isLicenseValid()},ae();const le=d3.scaleLinear().domain([0,9]).range(["hsl(0, 100%, 75%)","hsl(360, 90%, 82%)"]).interpolate(d3.interpolateHslLong),de=d3.scaleLinear().domain([0,9]).range(["hsl(180, 50%, 75%)","hsl(540, 40%, 82%)"]).interpolate(d3.interpolateHslLong);e.getColor=function(e){angular.isUndefined(K[e])&&(K[e]=Z,Z++);const t=K[e];return t>39?"#c2c2c2":t%2==0?le(t/2):de(t/2)};const ue=d3.forceX(te/2).strength(.005),pe=d3.forceY(ne/2).strength(.005),fe=d3.forceSimulation().force("x",ue).force("y",pe),he=d3.select(".main-container .graph-visualization").append("svg").attr("viewBox","0 0 "+te+" "+ne).attr("preserveAspectRatio","xMidYMid meet");he.append("rect").attr("width",10*te).attr("height",10*ne).attr("x",-(10*te-te)/2).attr("y",-(10*ne-ne)/2).style("fill","none").style("pointer-events","all").call(J).on("click",(function(e){e.stopPropagation(),be(),fe.stop()}));let ge=0,me=0;const ye=new function(){this.state=!1,this.setLoadingState=function(e){this.state=e},this.getLoadingState=function(){return this.state},this.init=function(e,t){d3.select(t).append("circle").attr("cx",(function(){return e.x})).attr("cy",(function(){return e.y})).attr("class","loader-container").attr("r",(function(){return e.size})).style("fill","fff").style("opacity","0.7"),d3.select(t).append("image").attr("xlink:href","js/angular/templates/loader/ot-loader.svg?v=2.7.0-RC5").attr("x",(function(){return e.x-e.size+5})).attr("y",(function(){return e.y-e.size})).attr("width",(function(){return 2*e.size})).attr("height",(function(){return 2*e.size})).attr("class","node-loader")}};function xe(t){d3.selectAll("svg g").remove(),d3.selectAll(".d3-tip").remove(),d3.selectAll(".menu-events").remove(),Y=he.append("g").attr("class","nodes-container").attr("transform",(function(){return angular.isDefined(ee)&&!t?ee:""}));const n=Object(i.a)().attr("class","d3-tip").customPosition((function(){const e=re.getBoundingClientRect();return{top:e.bottom+10+"px",left:e.left-30+"px"}})).html((function(t){let n="";return t.fixed&&(n+='<i class="icon-pin"></i>&nbsp;&nbsp;'),t.types.length>0?n+=_.join(_.map(t.types,(function(t){return e.replaceIRIWithPrefix(t)}))," · "):n+="<i>No types</i>",n})),o=function(e){let t="";return t+=_.join(_.map(e.predicates,(function(t,n){if(0===n)return Oe(t);if(n<10)return" · "+Oe(t);if(10===n){const t=function(e){return e.predicates.length-10}(e),n=t>1?t+" predicates":t+" predicate";return" · "+C.instant("graphexplore.tip.text",{textToShow:n})}})),""),t};let a;const d=Object(i.a)().attr("class","d3-tip").customPosition((function(e){const t=a.getBoundingClientRect(),n=function(e){const t=o(e),n=document.createElement("canvas").getContext("2d");return n.font="13px Arial",e.predicates.length<10?n.measureText(t).width:n.measureText(t).width/2}(e);return{top:t.top-30+"px",left:t.left-30+"px",width:n+"px"}})).html((function(e){return o(e)}));const u=function(){l.cancel(void 0),l.cancel(ge),re=null,n.hide(),me=l((function(){be()}),500)};he.call(n);he.call(d);let p=he.selectAll(".link"),f=he.selectAll(".node");const h=d3.forceCollide(e=>e.size+5).strength(.5),g=d3.forceManyBody().strength(-300),m=d3.forceCenter(te/2,ne/2);fe.nodes(se.nodes).force("charge",g).force("collide",h).force("center",m).force("link",d3.forceLink(se.links).distance((function(e){return e.source.isTriple||e.target.isTriple?0:function(e){const t=$("<span></span>"),n=e.predicates[0].split("/"),r=n[n.length-1];t.addClass("predicate-text").text(r),$("body").append(t);const i=t.width()+2*e.source.size+2*e.target.size+50;return t.remove(),.75*i}(e)+30*e.connectedness}))),Y.append("defs").selectAll("marker").data(se.links).enter().append("marker").attr("class","arrow-marker").attr("id",(function(e){return U(e)})).attr("viewBox","0 -5 10 10").attr("refX",(function(e){return e.target.isTriple?11:e.target.size+11})).attr("refY",0).attr("markerWidth",10).attr("markerHeight",10).attr("orient","auto").append("path").attr("d","M0,-5L10,0L0,5 L10,0 L0, -5"),p=Y.selectAll(".link").data(se.links).enter().append("g").attr("class","link-wrapper").attr("id",(function(e){return Object(s.removeSpecialChars)(z(e))})).append("line").attr("class","link").style("stroke-width",1).style("fill","transparent").style("marker-end",(function(e){return`url(#${U(e)})`}));const y=Y.selectAll(".link-wrapper").append("text").text((function(e){return Me(e)})).attr("class",(function(e){return e.predicates.length>1||se.tripleNodes.has(z(e))?"predicates":"predicate"})).attr("dy","-0.5em").style("text-anchor","middle").style("display",A().showLinksText?"":"none").on("mouseover",(function(e,t){e.stopPropagation(),function(e,t){l.cancel(void 0);const n=a=e.target;l((function(){a===n&&t.predicates.length>1&&d.show(t,a)}),300)}(e,t)})).on("mouseout",(function(){l.cancel(void 0),a=null,d.hide()})).on("click",(function(t,n){t.stopPropagation(),function(t,n){Pe();const r=z(n);if(1===n.predicates.length&&se.tripleNodes.has(r)){ie=null;const e=se.tripleNodes.get(r)[0];if(Se(e,this,t.button)){const t={};t.iri=e.iri,t.pred=Oe(e.iri.split(" ")[1]),_e(t)}return}!function(t){if(e.showNodeInfo=!1,e.showPredicates=t.predicates.length>1,e.showFilter=!1,e.showInfoPanel=!1,ie===t)return e.showNodeInfo=!1,e.showInfoPanel=!1,void(ie=null);ie=t,e.showPredicates&&(e.predicates=_.map(t.predicates,(function(e){const n=function(e,t){const n=z(t);return se.tripleNodes.has(n)?se.tripleNodes.get(n).findIndex(t=>t.iri.indexOf(e)>=0):-1}(e,t),r=n>-1;return{value:Oe(e),partOfTriple:r,linkId:r?z(t):"",nodeIndex:n}})),e.showInfoPanel=!0)}(n)}(t,n)}));let x,v=0,I=null,S=null;const w=function(t,n,r){let i=r||this.parentNode;Array.isArray(r)&&(i=r[n]);se.countLinks(t,se.links)<=A().linksLimit?Ce(t,!1,i):c.info(C.instant("graphexplore.increase.limit"),C.instant("graphexplore.node.at.max")),e.closeInfoPanel()};function k(e,t){let n,r,i,o,s=!0;if("down"===t)n=2*e.size,r=e.size/3,i=.8,o=.3;else if("down-fixed"===t)n=2*e.size,r=e.size,i=.8,o=.66;else if("up"===t)n=e.size/3,r=2*e.size,i=.3,o=.8;else{if("fixed"!==t)return;n=e.size,i=.66,s=!1}let a=Y.selectAll(".node-wrapper").filter((function(t){return t===e})).append("text").text("").classed("icon-any pinned",!0).style("font-size",n+"px").attr("x",(function(e){return e.x})).attr("y",(function(e){return e.y})).attr("opacity",i);"fixed"!==t&&"down-fixed"!==t||(e.pin=a),s&&(a=a.transition().duration(1e3).style("font-size",(function(){return r+"px"})).attr("opacity",o),"down-fixed"!==t&&a.remove())}const L=d3.drag().subject((function(e){return e})).on("start",(function(e,t){if(b.isActive())return;0===e.sourceEvent.button&&(t.fixedBeforeDrag=t.fixed,t.isBeingDragged=!0,t.beginDragging=!0,be(),d3.select(this).classed("dragging",!0),fe.alphaTarget(.3).restart())})).on("drag",(function(t,n){n.isBeingDragged&&(n.fx=t.x,n.fy=t.y,n.fixed?n.beginDragging&&k(n,"fixed"):(e.numberOfPinnedNodes++,n.fixed=!0,k(n,"down-fixed")),n.pinWasFixed=!0,n.beginDragging=null)})).on("end",(function(e,t){t.isBeingDragged&&(t.pinWasFixed&&(t.pinWasFixed=null,d3.select(".pinned").remove()),t.isBeingDragged=!1,d3.select(this).classed("dragging",!1));fe.alphaTarget(0)}));f=Y.selectAll(".node").data(se.nodes).enter().append("g").attr("class","node-wrapper").attr("id",(function(e){return e.iri})).append("circle").attr("class","node").attr("r",(function(e){return e.size})).style("fill",(function(t){return"greyColor"===t.types?"c2c2c2":e.getColor(t.types[0])})).on("mouseover",(function(t,r){r.isBeingDragged||(l.cancel(me),ge=l(()=>{(function(t,n){if(e.showInfoPanel)return!1;(Ie.closeIcon||Ie.expandIcon||Ie.focusIcon||Ie.copyURIIcon)&&Ie.removeIcons();if(fe.alpha()<.1)return Ie.initIcons(t,n.parentNode),fe.stop(),ve(),!0;return!1})(r,this)&&function(e,t){l.cancel(void 0);const r=re=t.target;l((function(){re===r&&n.show(e,re)}),300)}(r,t)},400))})).on("mouseout",u).on("click",(function(t,n){if(t.button&&0!==t.button)return;const r=this;if(I&&S===r)return l.cancel(I),I=null,void w(n,0,r.parentNode);S=r,u(),e.showPredicates=!1,b.isActive()||(l.cancel(I),I=l((function(){Se(n,r,t),I=null}),540))})).on("touchstart",(e,t)=>function(e){v=0,x=l((function(){v<5&&we(e),x=null}),1e3)}(t)).on("touchmove",(function(){v++})).on("touchend",(function(){l.cancel(x),x=null})).on("contextmenu",(function(t,r){t.shiftKey||(t.preventDefault(),be(),e.closeInfoPanel(),r.fixed?(e.numberOfPinnedNodes--,r.fixed=!1,r.fx=null,r.fy=null,k(r,"up"),fe.alpha(1).restart()):(e.numberOfPinnedNodes++,r.fixed=!0,k(r,"down")),function(e){re&&n.show(e,re)}(r))})).on("gdb-expand-node",(e,t)=>w(t,0,e.srcElement.parentNode)).on("gdb-show-node-info",(e,t)=>Te(t)).call(L);const T=Y.selectAll(".node-wrapper").append("foreignObject").style("pointer-events","none").attr("width",(function(e){return 2*e.size*1.75}));Y.insert("g").attr("class","menu-events"),(e=>{e.each((function(e){e.fontSize=r.a.Text.calcFontSizeRaw(e.labels[0].label,e.size,Q,!0)})).attr("height",(function(e){return 3*e.fontSize})).append("xhtml:div").attr("class","node-label-body").style("font-size",(function(e){return e.fontSize+"px"})).append("xhtml:div").text((function(e){return e.labels[0].label})),l((function(){$(".node-label-body div").each((function(e,t){let n=t.textContent.substring(0,t.textContent.length-1);let r=0;for(;r<200&&(t.scrollHeight>t.clientHeight||t.scrollWidth>t.clientWidth);)n=n.substring(0,n.length-1),t.textContent=n+"…",r++}))}),50)})(T),fe.on("tick",(function(){p.attr("x1",(function(e){return D(e.source)})).attr("y1",(function(e){return F(e.source)})).attr("x2",(function(e){return D(e.target)})).attr("y2",(function(e){return F(e.target)})),y.attr("x",(function(e){let t=D(e.source),n=D(e.target);return e.x=.5*(t+n)})).attr("y",(function(e){let t=F(e.source),n=F(e.target);return e.y=.5*(t+n)})).attr("transform",(function(e){return"rotate("+function(e,t){const n={x:D(e.source),y:F(e.source)},r={x:D(e.target),y:F(e.target)};if(t)return 180*Math.atan2(r.y-n.y,r.x-n.x)/Math.PI;{const e=180*Math.atan2(r.y-n.y,r.x-n.x)/Math.PI;return e<=90&&e>=-90?e:(e>0?-1:1)*(180-Math.abs(e))}}(e,e.direction)+", "+e.x+", "+e.y+")"})),f.attr("cx",(function(e){return e.x})).attr("cy",(function(e){return e.y})),Y.select(".node-loader").attr("x",(function(e){return e.x-e.size+3})).attr("y",(function(e){return e.y-e.size})),Y.select(".loader-container").attr("cx",(function(e){return e.x})).attr("cy",(function(e){return e.y})),T.attr("x",(function(e){return e.x-1.75*e.size})).attr("y",(function(e){return e.y-3*e.fontSize/2})),d3.select(".pinned").attr("x",(function(e){return e.x})).attr("y",(function(e){return e.y})),ve()})),angular.isDefined(ye)&&ye.setLoadingState(!1),e.loading&&(e.loading=!1),d3.selectAll(".link-wrapper").each((function(){const e=$(this).attr("id").split(">")[0],t=$(this).attr("id").split(">")[1];d3.selectAll(".link").each((function(n){const r=Object(s.removeSpecialChars)(n.source.iri),i=Object(s.removeSpecialChars)(n.target.iri);if(r===t&&i===e){let e=r;e+=">",e+=i;const t=document.createTextNode(" ⟶");document.getElementById(e).lastChild.appendChild(t),n.direction="double"}}))})),d3.selectAll(".d3-actions-tip").remove(),fe.alpha(.3).restart()}function ve(){t.d3alpha=fe.alpha()}const Ie=new function(){function n(e,t){return"translate("+(t.x-14+(t.size+15)*Math.cos(e*Math.PI/180-Math.PI/2))+","+(t.y-14+(t.size+15)*Math.sin(e*Math.PI/180-Math.PI/2))+")"}this.closeIcon=void 0,this.expandIcon=void 0,this.collapseIcon=void 0,this.focusIcon=void 0,this.copyURIIcon=void 0,this.actionsTip=void 0,this.removeIcons=function(){this.closeIcon.remove("g"),this.expandIcon&&this.expandIcon.remove("g"),this.collapseIcon&&this.collapseIcon.remove("g"),this.focusIcon.remove("g"),this.copyURIIcon.remove("g"),this.closeIcon=void 0,this.expandIcon=void 0,this.collapseIcon=void 0,this.focusIcon=void 0,this.copyURIIcon=void 0,this.expandedState=!1},this.expandedState=!1,this.initIcons=function(r,o){const s=Object(i.a)().attr("class","d3-tip d3-actions-tip").customPosition((function(e,t){const n=t.target.getBoundingClientRect();return{top:n.top-20+"px",left:n.right+10+"px"}})).html((function(e){return e}));he.call(s);r.isExpanded?(this.collapseIcon=d3.select(".menu-events").append("g").attr("class","collapse-icon").attr("name","collapse").attr("transform",(function(){return n(20,r)})),this.collapseIcon.append("circle").attr("cx",14).attr("cy",14).attr("r",13).style("fill","#eee"),this.collapseIcon.append("path").attr("d","M22.67,12a.59.59,0,0,1-.53.65l-6.88.72H15.2a.59.59,0,0,1-.59-.65l.72-6.88A.58.58,0,0,1,16,5.33a.59.59,0,0,1,.53.65L16,11.11,21.3,5.79a.64.64,0,0,1,.91.91L16.89,12,22,11.49A.59.59,0,0,1,22.67,12ZM12.59,14.75l-6.75.85a.59.59,0,0,0-.51.66.58.58,0,0,0,.66.51l4.95-.62-5.2,5.2a.64.64,0,1,0,.91.91l5.2-5.2L11.23,22a.59.59,0,0,0,.51.66h.07a.59.59,0,0,0,.59-.52l.85-6.75a.59.59,0,0,0-.17-.49A.58.58,0,0,0,12.59,14.75Z").style("fill","var(--primary-color)"),this.collapseIcon.on("click",(function(){var e;(e=r).isExpanded=!1,se.removeNodeLeafLinks(e),xe()})).on("mouseover",(function(e){s.show(this.getAttribute("name"),e),l.cancel(ge),l.cancel(me)})).on("mouseout",(function(){s.hide(),me=l((function(){be()}),500)}))):(this.expandIcon=d3.select(".menu-events").append("g").attr("class","expand-icon").attr("name","expand").attr("transform",(function(){return n(20,r)})),this.expandIcon.append("circle").attr("cx",14).attr("cy",14).attr("r",13).style("fill","#eee"),this.expandIcon.append("path").attr("d","M22.37,6.28l-.72,6.88a.59.59,0,0,1-.59.53H21a.59.59,0,0,1-.53-.65L21,7.9l-5.32,5.32a.64.64,0,0,1-.91-.91L20.1,7,15,7.53a.59.59,0,0,1-.12-1.18l6.88-.72a.59.59,0,0,1,.65.65ZM12.89,20.34,7.95,21l5.2-5.2a.64.64,0,0,0-.91-.91L7,20.05l.62-4.95A.59.59,0,0,0,6.48,15l-.85,6.75a.59.59,0,0,0,.59.67h.07L13,21.52a.59.59,0,1,0-.15-1.18Z").style("fill","var(--primary-color)"),this.expandIcon.on("click",(function(){Ce(r,!1,o)})).on("mouseover",(function(e){s.show(this.getAttribute("name"),e),l.cancel(me),l.cancel(ge)})).on("mouseout",(function(){s.hide(),me=l((function(){be()}),500)}))),this.focusIcon=d3.select(".menu-events").append("g").attr("class","focus-icon").attr("name","focus").attr("transform",(function(){return n(20,r)})),this.focusIcon.append("circle").attr("cx",14).attr("cy",14).attr("r",13).style("fill","#eee"),this.focusIcon.append("path").attr("d","M14.2,23.81a9.8,9.8,0,1,1,6.93-2.87h0A9.74,9.74,0,0,1,14.2,23.81Zm0-18.17a8.37,8.37,0,1,0,5.92,14.29h0A8.37,8.37,0,0,0,14.2,5.64Zm1.42,6.95a2,2,0,1,0,0,2.85A2,2,0,0,0,15.62,12.59Z").style("fill","var(--primary-color)"),this.focusIcon.on("click",(function(){t.$broadcast("onRootNodeChange",r.iri)})).on("mouseover",(function(e){s.show(this.getAttribute("name"),e),l.cancel(me),l.cancel(ge)})).on("mouseout",(function(){s.hide(),me=l((function(){be()}),500)})),this.copyURIIcon=d3.select(".menu-events").append("g").attr("class","icon-link").attr("name","link").attr("transform",(function(){return n(20,r)})),this.copyURIIcon.append("circle").attr("cx",14).attr("cy",14).attr("r",13).style("fill","#eee"),this.copyURIIcon.append("path").attr("d","M 13.457031 10.164062 C 13.648438 10.164062 13.820312 10.242188 13.941406 10.363281 L 15.492188 11.859375 C 15.984375 12.332031 16.292969 12.992188 16.292969 13.714844 C 16.292969 14.441406 15.984375 15.097656 15.492188 15.574219 L 10.394531 20.496094 C 9.902344 20.972656 9.222656 21.265625 8.472656 21.265625 C 7.71875 21.265625 7.039062 20.972656 6.546875 20.496094 L 4.996094 19 C 4.507812 18.523438 4.203125 17.867188 4.203125 17.144531 C 4.203125 16.421875 4.507812 15.765625 4.996094 15.289062 L 7.542969 12.824219 C 7.667969 12.707031 7.84375 12.628906 8.035156 12.628906 C 8.417969 12.628906 8.726562 12.929688 8.726562 13.300781 C 8.726562 13.484375 8.648438 13.652344 8.523438 13.773438 L 5.976562 16.234375 C 5.738281 16.46875 5.589844 16.792969 5.589844 17.148438 C 5.589844 17.503906 5.738281 17.824219 5.976562 18.058594 L 7.527344 19.566406 C 7.773438 19.792969 8.105469 19.929688 8.472656 19.929688 C 8.835938 19.929688 9.167969 19.792969 9.414062 19.566406 L 14.511719 14.644531 C 14.753906 14.410156 14.90625 14.089844 14.90625 13.730469 C 14.90625 13.375 14.753906 13.054688 14.511719 12.820312 L 12.964844 11.324219 C 12.839844 11.203125 12.761719 11.039062 12.761719 10.855469 C 12.761719 10.488281 13.070312 10.1875 13.449219 10.1875 Z M 17.082031 3.976562 C 17.082031 3.976562 17.085938 3.976562 17.085938 3.976562 C 17.824219 3.976562 18.492188 4.261719 18.980469 4.722656 L 20.535156 6.203125 C 21.042969 6.679688 21.355469 7.34375 21.355469 8.082031 C 21.355469 8.792969 21.058594 9.441406 20.582031 9.914062 L 18.0625 12.402344 C 17.9375 12.527344 17.761719 12.605469 17.566406 12.605469 C 17.183594 12.605469 16.875 12.304688 16.875 11.9375 C 16.875 11.753906 16.949219 11.589844 17.070312 11.46875 L 19.605469 8.984375 C 19.847656 8.75 19.996094 8.429688 19.996094 8.070312 C 19.996094 7.714844 19.847656 7.394531 19.605469 7.160156 L 18.019531 5.667969 C 17.773438 5.445312 17.4375 5.304688 17.070312 5.300781 C 16.703125 5.304688 16.367188 5.453125 16.128906 5.691406 L 11.085938 10.667969 C 10.84375 10.898438 10.695312 11.222656 10.695312 11.578125 C 10.695312 11.933594 10.84375 12.257812 11.085938 12.488281 L 12.675781 13.980469 C 12.804688 14.101562 12.882812 14.273438 12.882812 14.457031 C 12.882812 14.828125 12.574219 15.128906 12.191406 15.128906 C 12.003906 15.128906 11.832031 15.054688 11.707031 14.9375 L 10.140625 13.457031 C 9.636719 12.980469 9.324219 12.316406 9.324219 11.582031 C 9.324219 10.863281 9.621094 10.214844 10.101562 9.742188 L 15.140625 4.765625 C 15.625 4.285156 16.304688 3.980469 17.054688 3.976562 Z M 17.082031 3.976562").style("fill","var(--primary-color)"),this.copyURIIcon.on("click",(function(){e.copyToClipboard(r.iri),be(),s.hide()})).on("mouseover",(function(e){s.show("<div style='text-align: center;'><b>Copy to ClipBoard</b><br>"+r.iri+"</div>",e),l.cancel(me),l.cancel(ge)})).on("mouseout",(function(){s.hide(),me=l((function(){be()}),500)})),this.closeIcon=d3.select(".menu-events").append("g").attr("class","close-icon").attr("name","remove").attr("transform",(function(){return n(20,r)})),this.closeIcon.append("circle").attr("cx",14).attr("cy",14).attr("r",13).style("fill","#eee"),this.closeIcon.append("path").attr("d","M14.94,14l5.87-5.87a.66.66,0,1,0-.94-.94L14,13.06,8.13,7.19a.66.66,0,0,0-.94.94L13.06,14,7.19,19.87a.66.66,0,1,0,.94.94L14,14.94l5.87,5.87a.66.66,0,1,0,.94-.94Z").style("fill","var(--primary-color)"),this.closeIcon.on("click",(function(){we(r)})).on("mouseover",(function(e){s.show(this.getAttribute("name"),e),l.cancel(me),l.cancel(ge)})).on("mouseout",(function(){s.hide(),me=l((function(){be()}),500)})),this.animateMenu(r)},this.animateMenu=function(e){const t=d3.easeSin;let r=0;let i=20;this.expandIcon&&this.expandIcon.transition().duration(100).style("opacity",1).ease(t).attr("transform",(function(){return n(i,e)})).delay(r+=35),this.collapseIcon&&this.collapseIcon.transition().duration(100).style("opacity",1).ease(t).attr("transform",(function(){return n(i,e)})).delay(r+=35),this.copyURIIcon.transition().duration(100).style("opacity",1).ease(t).attr("transform",(function(){return i+=30,n(i,e)})).delay(r+=35),this.focusIcon.transition().duration(100).style("opacity",1).ease(t).attr("transform",(function(){return i+=30,n(i,e)})).delay(r+=35),this.closeIcon.transition().duration(100).style("opacity",1).ease(t).attr("transform",(function(){return i+=30,n(i,e)})).delay(r+=35),this.expandedState=!0}};function Se(n,r,i){return e.showInfoPanel=!1,e.showPredicates=!1,e.showNodeInfo=!1,i.shiftKey&&(i.ctrlKey||i.metaKey)?(t.$broadcast("onRootNodeChange",n.iri),!1):i.ctrlKey||i.metaKey?(we(n),!1):void 0!==e.openedNodeInfoPanel&&e.openedNodeInfoPanel===n?(e.pageslideExpanded=!1,e.openedNodeInfoPanel=void 0,!1):(Te(n),!0)}function we(e){se.removeNode(e),xe()}function ke(t){!function(t){e.nodeSelected=!0,null===t.data.types&&(t.data.types="greyColor"),se=new oe,ee=X}(t),Le(t)}function Le(t,n,r){let i=t.data;i=_.filter(i,(function(e){return-1===_.findIndex(se.links,(function(t){return e.source===t.source.iri&&e.target===t.target.iri}))}));const o=[],s=se.tripleLinksCopy.values();for(let e=0;e<se.tripleLinksCopy.size;e++){s.next().value.forEach(e=>{o.push(e)})}i=_.filter(i,(function(e){return-1===_.findIndex(o,(function(t){return e.source===t.source.iri&&e.target===t.target.iri}))})),i=_.filter(i,(function(e){return e.source!==e.target}));const a=((e,t)=>{const n=t.map(t=>t[e]);return t.filter((t,r)=>n.indexOf(t[e])===r)})("iri",_.union(_.flatten(_.map(t.data,(function(e){return[{iri:e.source,isTriple:e.isTripleSource},{iri:e.target,isTriple:e.isTripleTarget}]}))))),l=_.map(se.nodes,(function(e){return{iri:e.iri,isTriple:Boolean(e.isTriple)}})),d=se.tripleNodes.values();for(let e=0;e<se.tripleNodes.size;e++){d.next().value.forEach(e=>{l.push({iri:e.iri,isTriple:e.isTriple})})}const u=_.reject(a,(function(e){return _.some(l,e)}));if(0===u.length)(r||0===i.length)&&c.info(C.instant("graphexplore.error.node.connections")),se.addAndMatchLinks(i),xe();else{const t=[],r=[],o=A();_.forEach(u,(function(n,i){t.push(k.getInstanceNode({iri:n.isTriple?B(n.iri):n.iri,config:e.configLoaded.id,languages:e.shouldShowSettings()?o.languages:[],includeInferred:o.includeInferred,sameAsState:o.sameAsState}).then((function(e){r[i]=e.data})))})),p.all(t).then((function(){_.forEach(r,(function(e,t){const i=2*Math.PI*t/r.length,o=(n?n.x:0)+Math.cos(i)*ne/3,s=(n?n.y:0)+Math.sin(i)*ne/3;e.isTriple?se.addTriple(e,o,s):se.addNode(e,o,s)})),se.addAndMatchLinks(i),n&&(n.isExpanded=!0),xe()}))}}function Ce(t,n,r){if(ye.getLoadingState())return;ye.init(t,r);const i=A(),o=t.iri;k.getInstanceNodeLinks({iri:o,linksLimit:i.linksLimit,includeInferred:i.includeInferred,config:e.configLoaded.id,preferredTypes:e.shouldShowSettings()?i.preferredTypes:[],rejectedTypes:e.shouldShowSettings()?i.rejectedTypes:[],preferredPredicates:e.shouldShowSettings()?i.preferredPredicates:[],rejectedPredicates:e.shouldShowSettings()?i.rejectedPredicates:[],preferredTypesOnly:e.shouldShowSettings()?i.preferredTypesOnly:[],preferredPredicatesOnly:e.shouldShowSettings()?i.preferredPredicatesOnly:[],languages:e.shouldShowSettings()?i.languages:[],sameAsState:i.sameAsState,includeSchema:i.includeSchema}).then((function(e){Le(e,t,n)}),(function(t){const n=getError(t.data);c.error(n,C.instant("graphexplore.error.exploring.node")),e.loading=!1,ye.setLoadingState(!1)}))}function be(){angular.isDefined(Ie)&&Ie.expandedState&&Ie.removeIcons()}function Te(t){fe.stop(),e.openedNodeInfoPanel=t,e.showNodeInfo=!0,e.showFilter=!1,e.showPredicates=!1,e.nodeLabels=t.labels,e.nodeTypes=t.types,e.rdfRank=t.rdfRank,e.nodeIri=t.iri,e.resourceType=t.isTriple?"triple":"uri",e.encodedIri=t.isTriple?encodeURIComponent(B(t.iri)):encodeURIComponent(t.iri),e.showInfoPanel=!0,e.rdfsLabel=t.labels[0].label,e.rdfsComment=t.comment,e.expanded=!1,e.propertiesQueryObj.query="",e.dataNodeKeysQuery="";const n=A();k.getProperties({iri:t.isTriple?B(t.iri):t.iri,config:e.configLoaded.id,languages:e.shouldShowSettings()?n.languages:[],includeInferred:n.includeInferred,sameAsState:n.sameAsState,rejectedPredicates:e.shouldShowSettings()?n.rejectedPredicates:[]}).then((function(t){e.data=_.mapKeys(t.data,(function(t,n){return e.replaceIRIWithPrefix(n)})),e.propertiesObj.items=[],_.forEach(e.data,(function(t,n){e.propertiesObj.items.push({key:n,value:t})})),e.nodeImage=void 0,e.propertiesNotFiltered=e.propertiesObj.items;const n=_.find(e.propertiesObj.items,(function(e){return"image"===e.key}));n&&(e.nodeImage=n.value[0].v),e.propertiesObj.items=_.reject(e.propertiesObj.items,(function(e){return"image"===e.key})),e.propertiesNotFiltered=e.propertiesObj.items}),(function(e){c.warning(getError(e.data),"Error")}))}function _e(e){Ne("predicate","var(--primary-color-dark)",e),Ne("predicates","var(--primary-color-dark)",e);const t=document.getElementsByClassName("link");t&&_.each(t,(function(t){const n=t.__data__;(n.source.iri.indexOf(e.iri)>=0||n.target.iri.indexOf(e.iri)>=0)&&(t.style.stroke="var(--primary-color-dark)",t.style.strokeWidth=4)}));const n=document.getElementsByClassName("arrow-marker");n&&_.each(n,(function(t){const n=t.__data__;(n.source.iri.indexOf(e.iri)>=0||n.target.iri.indexOf(e.iri)>=0)&&(t.style.stroke="var(--primary-color-dark)",t.__data__.target.isTriple||t.setAttribute("refX","23"))}))}function Ne(e,t,n){const r=document.getElementsByClassName(e);r&&_.each(r,(function(e){const r=e.__data__;n?((r.source.iri.indexOf(n.iri)>=0||r.target.iri.indexOf(n.iri)>=0)&&(e.style.fill=t),j(n.iri)===z(r)&&(e.textContent=n.pred,e.style.fill=t),n.oppLinkIRI&&n.oppLinkIRI===z(r)&&(e.textContent=n.oppTriplePred,e.style.fill=t)):(e.style.fill=t,e.textContent=Me(r))}))}function Pe(){_.each(e.predicates,(function(e){const t=document.getElementById(e.linkId+e.nodeIndex);t&&(t.style.fontWeight="normal")}));const t=document.getElementsByClassName("link");t&&_.each(t,(function(e){e.style.stroke="#999",e.style.strokeWidth=1})),Ne("predicate",""),Ne("predicates","");const n=document.getElementsByClassName("arrow-marker");n&&_.each(n,(function(e){e.style.stroke="#999",e.__data__.target.isTriple||e.setAttribute("refX","59")}))}function Ae(e){const t=j(e);if(se.tripleNodes.has(t))return se.tripleNodes.get(t).find(t=>t.iri===e)}function Me(e){return e.predicates.length>1?e.predicates.length+" predicates":Oe(e.predicates[0])}function Oe(t){const n=e.replaceIRIWithPrefix(t);return n.length===t.length?t.split("/")[t.split("/").length-1]:n}e.toggleSidePanel=function(){e.pageslideExpanded=!e.pageslideExpanded},e.closeInfoPanel=function(){e.pageslideExpanded=!1,e.openedNodeInfoPanel=void 0,e.predicates=[],ie=null,l((function(){e.showInfoPanel=!1}))},e.clickLink=function(t){if(se.tripleNodes.has(t.linkId)){Pe();const n=se.tripleNodes.get(t.linkId)[t.nodeIndex];Te(n),e.showPredicates=!0;const r=document.getElementById(t.linkId+t.nodeIndex);r&&(r.style.fontWeight="bold");const i={},o=se.tripleLinksCopy.values();for(let e=0;e<se.tripleLinksCopy.size;e++){const e=o.next().value;e.length>1&&e.every(t=>t.source.iri===n.iri?(i.iri=e[0].source.iri,t.target.isTriple&&(i.oppLinkIRI=j(t.target.iri),i.oppTriplePred=Oe(t.target.iri.split(" ")[1])),i.pred=Oe(n.iri.split(" ")[1]),1===t.predicates.length&&(i.linkPred=t.predicates[0]),!1):t.target.iri!==n.iri||(i.iri=e[0].target.iri,t.source.isTriple&&(i.oppLinkIRI=j(t.source.iri),i.oppTriplePred=Oe(t.source.iri.split(" ")[1])),i.pred=Oe(n.iri.split(" ")[1]),1===t.predicates.length&&(i.linkPred=t.predicates[0]),!1))}i.iri||(i.iri=n.iri,i.pred=Oe(n.iri.split(" ")[1])),_e(i)}},e.splitPredicate=function(e){return e.split("/")[e.split("/").length-1]},e.getActiveRepository=function(){return n.getActiveRepository()},e.isLoadingLocation=function(){return n.isLoadingLocation()},e.hasActiveLocation=function(){return n.hasActiveLocation()},e.rotate=function(e){be();const t=10*(e?1:-1)*Math.PI/180,n=Math.cos(t),r=Math.sin(t),i=te/2,o=ne/2;d3.selectAll(".node-wrapper").each((function(e){e.x=i+(n*(e.x-i)+r*(e.y-o)),e.y=o+(-r*(e.x-i)+n*(e.y-o)),e.fixed&&(e.fx=e.x,e.fy=e.y)})),fe.alpha(1).restart()},e.openUri=function(t,n){if(!n){const n={};e.configLoaded.id!==e.defaultGraphConfig.id&&(n.config=e.configLoaded.id),n.uri=t,N(n,{uri:t,config:e.configLoaded})}e.$broadcast("onRootNodeChange",t)},e.saveOrUpdateGraph=function(){const t=JSON.stringify(se.copyState()),n={id:e.lastSavedGraphId,name:e.lastSavedGraphName,data:t,shared:e.shared};n.id?e.saveGraphModal("update",n):e.saveGraphModal("new",n)},e.renameSavedGraph=function(t){e.saveGraphModal("rename",{id:t.id,name:t.name,config:t.config,shared:t.shared})};const Ee=function(t){S.editSavedGraph(t).success((function(){e.lastSavedGraphName=t.name,e.shared=t.shared,e.refreshSavedGraphs(),c.success(C.instant("graphexplore.saved.graph.was.edited",{name:t.name}))})).error((function(e){const t=getError(e);c.error(t,C.instant("graphexplore.error.cannot.edit"))}))};e.saveGraphModal=function(t,n,r){y.open({templateUrl:"js/angular/graphexplore/templates/modal/save-graph.html",controller:"SaveGraphModalCtrl",resolve:{data:function(){return{mode:t,graph:n,graphExists:r,shared:n.shared}}}}).result.then((function(t){if(t.restart)e.saveGraphModal(t.mode,t.graph,!1);else switch(t.mode){case"new":!function(t){e.configLoaded&&(t.config=e.configLoaded.id),S.addNewSavedGraph(t).success((function(n,r,i){e.lastSavedGraphName=t.name,e.lastSavedGraphId=i()["x-saved-graph-id"],e.shared=t.shared,e.refreshSavedGraphs(),c.success(C.instant("graphexplore.saved.graph",{name:t.name}))})).error((function(n,r){if(422===r)e.saveGraphModal("new",t,!0);else{const e=getError(n);c.error(e,C.instant("graphexplore.error.cannot.create.graph"))}}))}(t.graph);break;case"update":case"rename":Ee(t.graph)}}))},e.refreshSavedGraphs=function(){S.getSavedGraphs().success((function(t){e.savedGraphs=t})).error((function(e){const t=getError(e);c.error(t,C.instant("graphexplore.error.getting.saved.graphs"))}))},e.loadSavedGraph=function(t,n){t.owner?(e.lastSavedGraphName=t.name,e.lastSavedGraphId=t.id,e.shared=t.shared,e.configLoaded=e.findConfigById(t.config)):(e.lastSavedGraphName=null,e.lastSavedGraphId=null,e.shared=t.shared),e.configLoaded||(e.configLoaded=e.defaultGraphConfig),f.url("?saved="+t.id),se.restoreState(JSON.parse(t.data)),n||N({saved:t.id},{savedGraph:t})},e.copyToClipboardSavedGraph=function(t){const n=[location.protocol,"//",location.host,location.pathname,"?saved=",t.id].join("");e.copyToClipboard(n)},e.deleteSavedGraph=function(t){m.openSimpleModal({title:C.instant("common.confirm"),message:C.instant("graphexplore.confirm.delete.graph",{graphName:t.name}),warning:!0}).result.then((function(){!function(t){S.deleteSavedGraph(t).success((function(){e.refreshSavedGraphs(),c.success(C.instant("graphexplore.saved.graph.was.deleted",{name:t.name}))})).error((function(e){const t=getError(e);c.error(t,C.instant("graphexplore.error.cannot.delete"))}))}(t)}))},e.openIRI=function(t,n){return n.shiftKey?e.$broadcast("onRootNodeChange",t):window.open(t,"_blank"),!1},e.togglePinAllNodes=function(){be();const t=angular.isUndefined(e.numberOfPinnedNodes)||e.numberOfPinnedNodes<=0;e.numberOfPinnedNodes=0,d3.selectAll(".node").each((function(n){n.fixed=t,t?(e.numberOfPinnedNodes++,n.fx=n.x,n.fy=n.y):(n.fx=null,n.fy=null)})),fe.alpha(1).restart()},$("body").on("keydown",(function(t){!b.isActive()&&"input"!==t.target.nodeName&&e.nodeSelected&&(37===t.keyCode?e.rotate(!0):39===t.keyCode&&e.rotate(!1))})),e.getLiteralFromPropValue=function(e){return e.substring(e.indexOf(":")+1)}}function c(e,t,n,r){switch(e.mode=n.mode,e.graph=_.cloneDeep(n.graph),e.graphExists=n.graphExists,e.mode){case"new":e.title=r.instant("graphexplore.create.new.graph"),e.okButtonText=r.instant("common.create.btn");break;case"update":e.title=r.instant("graphexplore.update"),e.okButtonText=r.instant("common.save.btn");break;case"rename":e.title=r.instant("graphexplore.rename"),e.okButtonText=r.instant("common.save.btn")}e.ok=function(){e.form.$valid&&t.close({graph:e.graph,mode:e.mode})},e.saveNew=function(){e.graph.name=e.graph.name+" (new)",t.close({graph:e.graph,mode:"new",restart:!0})},e.cancel=function(){t.dismiss("cancel")}}angular.module("graphdb.framework.graphexplore.controllers.graphviz",["ui.scroll.jqlite","ui.scroll","toastr","ui.bootstrap","ngTagsInput","graphdb.framework.utils.localstorageadapter"]).controller("GraphsVisualizationsCtrl",a).controller("SaveGraphModalCtrl",c).config(["$uibTooltipProvider",function(e){e.options({appendToBody:!0})}]),a.$inject=["$scope","$rootScope","$repositories","$licenseService","toastr","$timeout","ClassInstanceDetailsService","AutocompleteRestService","$q","$location","$jwtAuth","UiScrollService","ModalService","$uibModal","$window","LocalStorageAdapter","LSKeys","SavedGraphsRestService","GraphConfigRestService","GraphDataRestService","RDF4JRepositoriesRestService","$translate","GuidesService"],c.$inject=["$scope","$uibModalInstance","data","$translate"]},444:function(e,t,n){var r,i;r=[n(452)],void 0===(i=function(){function e(e,t){return e.each((function(){var e=t.apply(this,arguments),n=select(this);for(var r in e)n.attr(r,e[r])}))}function t(e,t){for(var n in t)e.attr(n,t[n]);return e}return"undefined"==typeof d3&&(d3=n(452)),d3.selection.prototype.attrs=function(n){return("function"==typeof n?e:t)(this,n)},d3.selection.prototype.moveToFront=function(){return this.each((function(){d3.select(this.parentNode.appendChild(this))}))},d3.selection.prototype.moveToBack=function(){return this.each((function(){const e=this.parentNode.firstChild;e&&this.parentNode.insertBefore(this,e)}))},d3}.apply(t,r))||(e.exports=i)},454:function(e,t,n){"use strict";n(444);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=function(){const e=function(e,n){let r,i=1,o=arguments.length;for(;++i<o;)r=arguments[i],e[r]=t(e,n,n[r]);return e};function t(e,t,n){return function(){var r=n.apply(t,arguments);return r===t?e:r}}return{delayDblClick:function(){var t=d3.dispatch("click","dblclick");return e((function(e){var n,r=null;e.on("mousedown",(function(){n=d3.pointer(document.body),+new Date})),e.on("mouseup",(function(e,i){var o,s,a;(s=n,a=d3.pointer(document.body),Math.sqrt(Math.pow(s[0]-a[0],2),Math.pow(s[1]-a[1],2))>5)||(r?(window.clearTimeout(r),r=null,t.call("dblclick",e,e,i)):r=window.setTimeout((o=e,function(){t.call("click",o,o,i),r=null}),250))}))}),t,"on")}}}(),t.a=r},467:function(e,t,n){"use strict";t.a=function(){var e=function(){return"n"},t=function(){return[0,0]},n=function(){return" "},r=u(),i=null,o=null,s=null,a=null;function c(e){var t;i="svg"===(t=(t=e).node()).tagName.toLowerCase()?t:t.ownerSVGElement,o=i.createSVGPoint(),document.body.appendChild(r)}c.show=function(){var r=Array.prototype.slice.call(arguments);r[r.length-1]instanceof SVGElement&&(s=r.pop());var i,o=n.apply(this,r),u=t.apply(this,r),f=e.apply(this,r),h=p(),g=d.length,m=document.documentElement.scrollTop||document.body.scrollTop,y=document.documentElement.scrollLeft||document.body.scrollLeft,x=a.apply(this,r);for(h.html(o).style("opacity",1).style("pointer-events","all");g--;)h.classed(d[g],!1);const v=r.filter(e=>e instanceof Event);return i=l.get(f).apply(this,v),x?Object.keys(x).forEach((function(e){h.style(e,x[e])})):h.classed(f,!0).style("top",i.top+u[0]+m+"px").style("left",i.left+u[1]+y+"px"),c},c.hide=function(){return p().style("opacity",0).style("pointer-events","none"),c},c.attr=function(e,t){if(arguments.length<2&&"string"==typeof e)return p().attr(e);var n=Array.prototype.slice.call(arguments);return d3.selection.prototype.attr.apply(p(),n),c},c.style=function(e,t){if(arguments.length<2&&"string"==typeof e)return p().style(e);var n=Array.prototype.slice.call(arguments);return d3.selection.prototype.style.apply(p(),n),c},c.direction=function(t){return arguments.length?(e=null==t?t:h(t),c):e},c.offset=function(e){return arguments.length?(t=null==e?e:h(e),c):t},c.html=function(e){return arguments.length?(n=null==e?e:h(e),c):n},c.customPosition=function(e){return arguments.length?(a=null==e?e:h(e),c):a},c.destroy=function(){return r&&(p().remove(),r=null),c};var l=new Map(Object.entries({n:function(e){var t=f(e);return{top:t.n.y-r.offsetHeight,left:t.n.x-r.offsetWidth/2}},s:function(e){var t=f(e);return{top:t.s.y,left:t.s.x-r.offsetWidth/2}},e:function(e){var t=f(e);return{top:t.e.y-r.offsetHeight/2,left:t.e.x}},w:function(e){var t=f(e);return{top:t.w.y-r.offsetHeight/2,left:t.w.x-r.offsetWidth}},nw:function(e){var t=f(e);return{top:t.nw.y-r.offsetHeight,left:t.nw.x-r.offsetWidth}},ne:function(e){var t=f(e);return{top:t.ne.y-r.offsetHeight,left:t.ne.x}},sw:function(e){var t=f(e);return{top:t.sw.y,left:t.sw.x-r.offsetWidth}},se:function(e){var t=f(e);return{top:t.se.y,left:t.e.x}}})),d=l.keys();function u(){var e=d3.select(document.createElement("div"));return e.style("position","absolute").style("top",0).style("opacity",0).style("pointer-events","none").style("box-sizing","border-box"),e.node()}function p(){return null===r&&(r=u(),document.body.appendChild(r)),d3.select(r)}function f(e){for(var t=s||e.target;void 0===t.getScreenCTM&&"undefined"===t.parentNode;)t=t.parentNode;var n={},r=t.getScreenCTM(),i=t.getBBox(),a=i.width,c=i.height,l=i.x,d=i.y;return o.x=l,o.y=d,n.nw=o.matrixTransform(r),o.x+=a,n.ne=o.matrixTransform(r),o.y+=c,n.se=o.matrixTransform(r),o.x-=a,n.sw=o.matrixTransform(r),o.y-=c/2,n.w=o.matrixTransform(r),o.x+=a,n.e=o.matrixTransform(r),o.x-=a/2,o.y-=c/2,n.n=o.matrixTransform(r),o.y+=c,n.s=o.matrixTransform(r),n}function h(e){return"function"==typeof e?e:function(){return e}}return c}},71:function(e,t,n){"use strict";n.r(t),n.d(t,"removeSpecialChars",(function(){return i})),n.d(t,"toBoolean",(function(){return o})),n.d(t,"toTitleCase",(function(){return s}));var r=n(64);const i=e=>e.replace(/[()']/g,""),o=e=>"string"==typeof e?"true"===e:Boolean(e),s=e=>e?Object(r.upperFirst)(e.toLowerCase()):e},90:function(e,t,n){"use strict";n.r(t),n.d(t,"STATIC_RULESETS",(function(){return r})),n.d(t,"REPOSITORY_TYPES",(function(){return i})),n.d(t,"FILENAME_PATTERN",(function(){return o})),n.d(t,"NUMBER_PATTERN",(function(){return s}));const r=[{id:"empty",name:"No inference"},{id:"rdfs-optimized",name:"RDFS (Optimized)"},{id:"rdfs",name:"RDFS"},{id:"rdfsplus-optimized",name:"RDFS-Plus (Optimized)"},{id:"owl-horst-optimized",name:"OWL-Horst (Optimized)"},{id:"owl-horst",name:"OWL-Horst"},{id:"owl2-ql-optimized",name:"OWL2-QL (Optimized)"},{id:"owl2-ql",name:"OWL2-QL"},{id:"owl-max-optimized",name:"OWL-Max (Optimized)"},{id:"owl-max",name:"OWL-Max"},{id:"owl2-rl-optimized",name:"OWL2-RL (Optimized)"},{id:"owl2-rl",name:"OWL2-RL"}],i={graphdbRepo:"graphdb",free:"free",eeWorker:"worker",eeMaster:"master",ontop:"ontop",se:"se",fedx:"fedx"},o=new RegExp("^[a-zA-Z0-9-_]+$"),s=new RegExp("^[0-9]+$")}}]);
@@ -1 +1 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[29],{181:function(e,t,n){"use strict";n.r(t);var r=n(467),a=n(494),i=n(454),o=n(455);n(10);function s(e,t,n,s,c,l,d,u,f,h,p,y,v){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,x,w=d3.pack().size([780,780]),S=d3.scaleLinear().domain([0,4]).range(["hsl(19, 70%, 90%)","hsl(19, 70%, 50%)"]).interpolate(d3.interpolateHcl),C=d3.select("#classChart").insert("svg:svg","h2").attr("viewBox","0 0 800 800").attr("preserveAspectRatio","xMidYMid meet").on("dblclick.zoom",null);function E(){return C.append("svg:g").attrs({id:"main-group",transform:"translate(400,400)"})}function T(){return"true"===p.get(y.CLASS_HIERARCHY_HIDE_PREFIXES)}function R(){var e=o.a.Export.getCSSRules("css/rdf-class-hierarchy-labels.css?v=2.7.0-RC3");d3.selectAll("#main-group").append("defs"),$("defs").append('<style type="text/css"><![CDATA['+e+"]]></style>"),d3.selectAll("g").style("opacity",1);var t=o.a.Export.generateBase64ImageSource("#classChart svg");d3.select(this).attrs({href:t,download:"class-hierarchy-"+l.getActiveRepository()+".svg"})}d.hidePrefixes=T();var A,H,P=E();if(!d.classHierarchyData.classCount&&l.getActiveRepository()&&!l.isSystemRepository()){e.loader=!0,e.hierarchyError=!1;const t=p.get("classHierarchy-selectedGraph-"+l.getActiveRepository());n.getClassHierarchyData(null!==t?t.contextID.uri:"").success((function(t,n,r){e.loader=!1,207===n&&u.warning(v.instant("graphexplore.update.diagram"),v.instant("graphexplore.repository.data.changed")),d.classHierarchyData=t,d3.select("#download-svg").on("mouseover",R)})).error((function(t){e.loader=!1,e.hierarchyError=getError(t),u.error(v.instant("graphexplore.error.request.failed",{name:h,error:getError(t)}))}))}var I,b,k,L,N,D,F,z={};function O(n,o,l,u){b&&b(),k&&k(),d3.selectAll("#main-group").remove(),P=E(),a.a.SingleChild.addPlaceholders(n,!0),(x=d3.hierarchy(n)).sum((function(e){return e.size})),I=l||x,w(x);var p,y=x.descendants();I.isInFocusTransitive=!0,a.a.SingleChild.removePlaceholders(y),a.a.SingleChild.centerNodes(y),a.a.SingleChild.makePositionsRelativeToZero(y),m||(m=Object(r.a)().attr("class","d3-tip").customPosition((function(e,t){return{top:"inherit",bottom:s.innerHeight-t.clientY+"px",right:s.innerWidth-t.clientX+"px"}})).html((function(e){return e.data.name})),C.call(m));var v=P.selectAll("circle").data(y).enter().append("g");o.doFade&&v.each((function(e){i.a.Transition.fadeIn(d3.select(this),550)}));var g,T=[],R=v.append("circle").attr("class",(function(e){return e.data.role})).attr("guide-selector",(function(e){return"class-"+e.data.name})).style("fill",(function(e){return e.children?S(e.depth):"#E0D0D0"})).each((function(e){if(e.circle=d3.select(this),e.data.name!==h){var t=e.data.name;T.push({name:t}),z[[t]]=e,e.circle.classed("rdf-class",!0),e.circle.on("mouseover",(function(t){o.noPrefixes||e.textHidden?m.show(e,t):m.hide(e)})),e.circle.on("mouseout",m.hide)}})).on("gdb-focus",(e,t)=>H(t)).on("gdb-zoom",(e,t)=>W(t));function L(e){d3.selectAll(".selected").classed("selected",e.selected=!1),e.circle.classed("selected",e.selected=!0),g=e}function N(){d.showClassInfoPanel=!1}T&&(T=_.uniqBy(T,"name"),d.flattenedClassNames=T);var D=i.a.Click.delayDblClick();d3.selectAll(".parent, .topLevelParent, .child, .root").call(D),H=function(e){W(e),e.data.name===h?(N(),d3.selectAll(".selected").classed("selected",!1)):(L(e),d.selectedClass=g,d.showClassInfoPanel=!0,d.$on("sidePanelClosed",(function(t){d3.selectAll(".selected").classed("selected",e.selected=!1)})))},D.on("click",(function(e,t){t.data.id&&s.history.pushState({id:t.data.id},"classHierarchyPage"+t.data.id,"hierarchy#"+t.data.id),m.hide(),H(t)})),D.on("dblclick",(function(t,r){r!==n&&(m.hide(),L(r),e.$broadcast("goToDomainRangeGraphView",g,I),t.stopPropagation())}));var F=0;C.on("wheel",(function(e){m.hide(),e.preventDefault(),e.stopPropagation();var t=(new Date).getTime();if(t-F>100){F=t;var n="";e.deltaY<=-1?n="in":e.deltaY>=1&&(n="out");var r=e.target.__data__;if(r||(r=I),"in"===n){if(r!==I){for(;r.parent&&!r.parent.isInFocusTransitive;)r=r.parent;r.depth<I.depth&&(r=I)}if(r===I&&r.children){for(var a=r.children[0],i=1;i<r.children.length;i++)r.children[i].sortingRank>a.sortingRank&&(a=r.children[i]);a.children&&(r=a)}else r.children||(r=r.parent);W(r,!0)}else"out"===n&&(r=I.parent)&&W(r,!0);I.data.name===h&&s.history.replaceState({id:1},"classHierarchyPage1","hierarchy#1"),U()}}));var $=P.selectAll("text").data(y).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)}));o.noPrefixes?($.each((function(e){var t=e.data.name.indexOf(":");e.data.name.indexOf("http://")>-1?e.noPrefixName=e.data.name:t>-1&&(e.noPrefixName=e.data.name.substring(t+1))})),$.style("font-size",(function(e){return i.a.Text.calcFontSize(e.noPrefixName,e.r)})).text((function(e){return i.a.Text.getTextWithElipsisIfNeeded(e.noPrefixName,e.r/3)}))):$.style("font-size",(function(e){return i.a.Text.calcFontSize(e.data.name,e.r)})).text((function(e){return i.a.Text.getTextWithElipsisIfNeeded(e.data.name,e.r/3)})),$.style("display",(function(e){return e.parent&&e.parent.data===I.data?(e.textHidden=this.textContent.indexOf("...")+3===this.textContent.length,null):(e.textHidden=!0,"none")})),o.doFade&&!o.keepPrevState&&$.each((function(e){i.a.Transition.fadeIn(d3.select(this),550)})),A=function(){function e(e){e&&R.each((function(t){+e===t.data.id&&H(t)}))}var n=t.hash();s.onpopstate=function(t){t.state&&e(t.state.id)},e(n)};var O=P.selectAll("circle, text");function M(e,t){var n=800/e[2];p=e,O.attr("transform",(function(t){return"translate("+(t.x-e[0])*n+","+(t.y-e[1])*n+")"})),R.attr("r",(function(e){return e.r*n})),t&&$.each((function(e){e.data.fullName!==I.data.topLevelParentUri&&I.data.topLevelParentUri!==h||(e.textSel.style("display","none"),I.children&&I.children.length?_.each(I.children,(function(e){e.textSel.style("display","inline")})):I.textSel.style("display","inline"),I.parent&&_.each(I.parent.children,(function(e){e.data.name!==I.data.name&&e.textSel.style("display","inline")})))})),$.style("font-size",(function(e){return o.noPrefixes?i.a.Text.calcFontSize(e.noPrefixName,e.r*n):i.a.Text.calcFontSize(e.data.name,e.r*n)})).text((function(e){return o.noPrefixes?i.a.Text.getTextWithElipsisIfNeeded(e.noPrefixName,e.r*n/3):i.a.Text.getTextWithElipsisIfNeeded(e.data.name,e.r*n/3)}))}function V(e){var t=2*e+20;return 2*e/t<.3&&(t=2*e+2),t}function B(e){!e.isInFocusTransitive&&e.parent&&e.parent.isInFocusTransitive?(e.textHidden=this.textContent.indexOf("...")+3===this.textContent.length,this.style.display=""):(e.textHidden=!0,this.style.display="none")}function W(e,t){if(c((function(){d.showExternalElements=e.data.name===h})),I!==e&&(e.data.id&&s.history.replaceState({id:e.data.id},"classHierarchyPage"+e.data.id,"hierarchy#"+e.data.id),e.children||(e=e.parent,I!==e))){if(t&&(N(),d3.selectAll(".selected").classed("selected",!1)),I.parent)for(var n=I;n;)n.isInFocusTransitive=!1,n=n.parent;for(n=e;n;)n.isInFocusTransitive=!!n.children,n=n.parent;if(2*(I=e).r/(2*I.r+20)<.3||d.currentSliderValue>d.currentBrowserLimit)M([I.x,I.y,V(I.r)]),$.each((function(e){B.call(this,e)}));else d3.transition().duration(f).tween("zoom",(function(e){var t=d3.interpolateZoom(p,[I.x,I.y,V(I.r)]);return function(e){M(t(e))}})).selectAll("text").each(B)}}M([I.x,I.y,V(I.r)],u),b=d.$on("rootFocus",(function(){s.history.pushState({id:1},"classHierarchyPage1","hierarchy#1"),H(x)})),k=d.$on("classSearch",(function(e){H(e)}))}function U(){const t=d.classHierarchyData.classCount;let n=p.get(y.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE);(!n||n>t)&&(n=t,p.set(y.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE,n)),e.$broadcast("classCount",t,n)}window.addEventListener("resize",U),window.addEventListener("beforeunload",(function e(){window.removeEventListener("resize",U),window.removeEventListener("beforeunload",e)})),d.$watch("classHierarchyData",(function(){L&&L(),N&&N(),D&&D(),F&&F();var e=T();if(d.classHierarchyData.classCount){U();var t=_.cloneDeep(d.classHierarchyData);var n,r,a=function(e){return e.descendants().sort((function(e,t){return e.data.sortingRank>t.data.sortingRank?-1:e.data.sortingRank<t.data.sortingRank||e.data.depth>t.data.depth?1:e.data.depth<t.data.depth?-1:0}))}(d3.hierarchy(t));function i(e,t){const a={keepPrevState:!0,noPrefixes:T()};r=a.noPrefixes,O(n||e,a,I,!0),c((function(){p.set(y.CLASS_HIERARCHY_SWITCH_PREFIXES,t),A()}),70)}function o(e,a,o){if(!e)return;p.set(y.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE,e),n={name:h,children:[]};const s=new Set;for(let t=1;t<=e;t++)s.add(a[t].data.id),a[t].parent===a[0]&&n.children.push(a[t].data);if(function e(t){if(!t.children)return;const n=[];for(const e of t.children)s.has(e.id)&&n.push($.extend({},e));t.children=n;for(const n of t.children)e(n)}(n),o){r=angular.isUndefined(r)?T():r;O(n,{noPrefixes:r})}else i(t)}var s,l=p.get(y.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE);if(l)o(l,a);else{var u={doFade:!0,keepPrevState:!0,noPrefixes:T()};O(t,u),A()}L=d.$watch("hidePrefixes",(function(n){angular.isUndefined(n)||e?e=void 0:c((function(){!function(e){angular.isUndefined(e)||p.set(y.CLASS_HIERARCHY_HIDE_PREFIXES,e)}(n),i(t,!0)}),50)}),!0),N=d.$watch("currentSliderValue",(function(e){o(e,a,!0)}),!0),F=d.$on("onEnterKeypressSearchAction",(function(e){s&&H(s)})),D=d.$on("searchedClass",(function(e,t){(s=z[t.name])&&H(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",s),s.$inject=["$rootScope","$location","GraphDataRestService","$window","$timeout","$repositories","$licenseService","toastr","ZOOM_DURATION","ROOT_OBJ_NAME","LocalStorageAdapter","LSKeys","$translate"]},444:function(e,t,n){var r,a;r=[n(452)],void 0===(a=function(){function e(e,t){return e.each((function(){var e=t.apply(this,arguments),n=select(this);for(var r in e)n.attr(r,e[r])}))}function t(e,t){for(var n in t)e.attr(n,t[n]);return e}return"undefined"==typeof d3&&(d3=n(452)),d3.selection.prototype.attrs=function(n){return("function"==typeof n?e:t)(this,n)},d3.selection.prototype.moveToFront=function(){return this.each((function(){d3.select(this.parentNode.appendChild(this))}))},d3.selection.prototype.moveToBack=function(){return this.each((function(){const e=this.parentNode.firstChild;e&&this.parentNode.insertBefore(this,e)}))},d3}.apply(t,r))||(e.exports=a)},454:function(e,t,n){"use strict";n(444);var r=r||{};r.Text=function(){function e(e,t,n,r){n=n||10;var a=t/3;return"string"==typeof e?(a*=10/(e.substring(0,t/3).length+1.5),a+=1,e.match(/[\u0900-\u0DFF\u1100-\u11FF\u2E80-\u2EFF\u3000-\u9FFF]/)&&(a*=.6),a<n&&(a=n),Math.round(a)):(a<n&&(a=n),Math.round(a))}return{calcFontSizeRaw:e,calcFontSize:function(t,n,r,a){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=function(){const e=function(e,n){let r,a=1,i=arguments.length;for(;++a<i;)r=arguments[a],e[r]=t(e,n,n[r]);return e};function t(e,t,n){return function(){var r=n.apply(t,arguments);return r===t?e:r}}return{delayDblClick:function(){var t=d3.dispatch("click","dblclick");return e((function(e){var n,r=null;e.on("mousedown",(function(){n=d3.pointer(document.body),+new Date})),e.on("mouseup",(function(e,a){var i,o,s;(o=n,s=d3.pointer(document.body),Math.sqrt(Math.pow(o[0]-s[0],2),Math.pow(o[1]-s[1],2))>5)||(r?(window.clearTimeout(r),r=null,t.call("dblclick",e,e,a)):r=window.setTimeout((i=e,function(){t.call("click",i,i,a),r=null}),250))}))}),t,"on")}}}(),t.a=r},455:function(e,t,n){"use strict";n(444);var r=r||{};r.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=d3.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=r},467:function(e,t,n){"use strict";t.a=function(){var e=function(){return"n"},t=function(){return[0,0]},n=function(){return" "},r=u(),a=null,i=null,o=null,s=null;function c(e){var t;a="svg"===(t=(t=e).node()).tagName.toLowerCase()?t:t.ownerSVGElement,i=a.createSVGPoint(),document.body.appendChild(r)}c.show=function(){var r=Array.prototype.slice.call(arguments);r[r.length-1]instanceof SVGElement&&(o=r.pop());var a,i=n.apply(this,r),u=t.apply(this,r),h=e.apply(this,r),p=f(),y=d.length,v=document.documentElement.scrollTop||document.body.scrollTop,g=document.documentElement.scrollLeft||document.body.scrollLeft,m=s.apply(this,r);for(p.html(i).style("opacity",1).style("pointer-events","all");y--;)p.classed(d[y],!1);const x=r.filter(e=>e instanceof Event);return a=l.get(h).apply(this,x),m?Object.keys(m).forEach((function(e){p.style(e,m[e])})):p.classed(h,!0).style("top",a.top+u[0]+v+"px").style("left",a.left+u[1]+g+"px"),c},c.hide=function(){return f().style("opacity",0).style("pointer-events","none"),c},c.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),c},c.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),c},c.direction=function(t){return arguments.length?(e=null==t?t:p(t),c):e},c.offset=function(e){return arguments.length?(t=null==e?e:p(e),c):t},c.html=function(e){return arguments.length?(n=null==e?e:p(e),c):n},c.customPosition=function(e){return arguments.length?(s=null==e?e:p(e),c):s},c.destroy=function(){return r&&(f().remove(),r=null),c};var l=new Map(Object.entries({n:function(e){var t=h(e);return{top:t.n.y-r.offsetHeight,left:t.n.x-r.offsetWidth/2}},s:function(e){var t=h(e);return{top:t.s.y,left:t.s.x-r.offsetWidth/2}},e:function(e){var t=h(e);return{top:t.e.y-r.offsetHeight/2,left:t.e.x}},w:function(e){var t=h(e);return{top:t.w.y-r.offsetHeight/2,left:t.w.x-r.offsetWidth}},nw:function(e){var t=h(e);return{top:t.nw.y-r.offsetHeight,left:t.nw.x-r.offsetWidth}},ne:function(e){var t=h(e);return{top:t.ne.y-r.offsetHeight,left:t.ne.x}},sw:function(e){var t=h(e);return{top:t.sw.y,left:t.sw.x-r.offsetWidth}},se:function(e){var t=h(e);return{top:t.se.y,left:t.e.x}}})),d=l.keys();function u(){var e=d3.select(document.createElement("div"));return e.style("position","absolute").style("top",0).style("opacity",0).style("pointer-events","none").style("box-sizing","border-box"),e.node()}function f(){return null===r&&(r=u(),document.body.appendChild(r)),d3.select(r)}function h(e){for(var t=o||e.target;void 0===t.getScreenCTM&&"undefined"===t.parentNode;)t=t.parentNode;var n={},r=t.getScreenCTM(),a=t.getBBox(),s=a.width,c=a.height,l=a.x,d=a.y;return i.x=l,i.y=d,n.nw=i.matrixTransform(r),i.x+=s,n.ne=i.matrixTransform(r),i.y+=c,n.se=i.matrixTransform(r),i.x-=s,n.sw=i.matrixTransform(r),i.y-=c/2,n.w=i.matrixTransform(r),i.x+=s,n.e=i.matrixTransform(r),i.x-=s/2,i.y-=c/2,n.n=i.matrixTransform(r),i.y+=c,n.s=i.matrixTransform(r),n}function p(e){return"function"==typeof e?e:function(){return e}}return c}},494: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 a=1.2*t.size;n&&(a=.1*t.children[0].size),t.children.push({name:"placeholder",size:a})}}},removePlaceholders:function e(t){for(var n=t.length-1;n>=0;n--){var r=t[n];"placeholder"===r.data.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,a(n.children[0],r)}}function a(e,t){if(e.children)for(var n=0;n<e.children.length;n++)e.children[n].x+=t,a(e.children[n],t)}},makePositionsRelativeToZero:function(e){for(var t=e[0].x,n=e[0].y,r=0;r<e.length;r++){var a=e[r];a.x-=t,a.y-=n}}},t.a=r}}]);
1
+ (window.webpackJsonp=window.webpackJsonp||[]).push([[29],{181:function(e,t,n){"use strict";n.r(t);var r=n(467),a=n(494),i=n(454),o=n(455);n(10);function s(e,t,n,s,c,l,d,u,f,h,p,y,v){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,x,w=d3.pack().size([780,780]),S=d3.scaleLinear().domain([0,4]).range(["hsl(19, 70%, 90%)","hsl(19, 70%, 50%)"]).interpolate(d3.interpolateHcl),C=d3.select("#classChart").insert("svg:svg","h2").attr("viewBox","0 0 800 800").attr("preserveAspectRatio","xMidYMid meet").on("dblclick.zoom",null);function E(){return C.append("svg:g").attrs({id:"main-group",transform:"translate(400,400)"})}function T(){return"true"===p.get(y.CLASS_HIERARCHY_HIDE_PREFIXES)}function R(){var e=o.a.Export.getCSSRules("css/rdf-class-hierarchy-labels.css?v=2.7.0-RC5");d3.selectAll("#main-group").append("defs"),$("defs").append('<style type="text/css"><![CDATA['+e+"]]></style>"),d3.selectAll("g").style("opacity",1);var t=o.a.Export.generateBase64ImageSource("#classChart svg");d3.select(this).attrs({href:t,download:"class-hierarchy-"+l.getActiveRepository()+".svg"})}d.hidePrefixes=T();var A,H,P=E();if(!d.classHierarchyData.classCount&&l.getActiveRepository()&&!l.isSystemRepository()){e.loader=!0,e.hierarchyError=!1;const t=p.get("classHierarchy-selectedGraph-"+l.getActiveRepository());n.getClassHierarchyData(null!==t?t.contextID.uri:"").success((function(t,n,r){e.loader=!1,207===n&&u.warning(v.instant("graphexplore.update.diagram"),v.instant("graphexplore.repository.data.changed")),d.classHierarchyData=t,d3.select("#download-svg").on("mouseover",R)})).error((function(t){e.loader=!1,e.hierarchyError=getError(t),u.error(v.instant("graphexplore.error.request.failed",{name:h,error:getError(t)}))}))}var I,b,k,L,N,D,F,z={};function O(n,o,l,u){b&&b(),k&&k(),d3.selectAll("#main-group").remove(),P=E(),a.a.SingleChild.addPlaceholders(n,!0),(x=d3.hierarchy(n)).sum((function(e){return e.size})),I=l||x,w(x);var p,y=x.descendants();I.isInFocusTransitive=!0,a.a.SingleChild.removePlaceholders(y),a.a.SingleChild.centerNodes(y),a.a.SingleChild.makePositionsRelativeToZero(y),m||(m=Object(r.a)().attr("class","d3-tip").customPosition((function(e,t){return{top:"inherit",bottom:s.innerHeight-t.clientY+"px",right:s.innerWidth-t.clientX+"px"}})).html((function(e){return e.data.name})),C.call(m));var v=P.selectAll("circle").data(y).enter().append("g");o.doFade&&v.each((function(e){i.a.Transition.fadeIn(d3.select(this),550)}));var g,T=[],R=v.append("circle").attr("class",(function(e){return e.data.role})).attr("guide-selector",(function(e){return"class-"+e.data.name})).style("fill",(function(e){return e.children?S(e.depth):"#E0D0D0"})).each((function(e){if(e.circle=d3.select(this),e.data.name!==h){var t=e.data.name;T.push({name:t}),z[[t]]=e,e.circle.classed("rdf-class",!0),e.circle.on("mouseover",(function(t){o.noPrefixes||e.textHidden?m.show(e,t):m.hide(e)})),e.circle.on("mouseout",m.hide)}})).on("gdb-focus",(e,t)=>H(t)).on("gdb-zoom",(e,t)=>W(t));function L(e){d3.selectAll(".selected").classed("selected",e.selected=!1),e.circle.classed("selected",e.selected=!0),g=e}function N(){d.showClassInfoPanel=!1}T&&(T=_.uniqBy(T,"name"),d.flattenedClassNames=T);var D=i.a.Click.delayDblClick();d3.selectAll(".parent, .topLevelParent, .child, .root").call(D),H=function(e){W(e),e.data.name===h?(N(),d3.selectAll(".selected").classed("selected",!1)):(L(e),d.selectedClass=g,d.showClassInfoPanel=!0,d.$on("sidePanelClosed",(function(t){d3.selectAll(".selected").classed("selected",e.selected=!1)})))},D.on("click",(function(e,t){t.data.id&&s.history.pushState({id:t.data.id},"classHierarchyPage"+t.data.id,"hierarchy#"+t.data.id),m.hide(),H(t)})),D.on("dblclick",(function(t,r){r!==n&&(m.hide(),L(r),e.$broadcast("goToDomainRangeGraphView",g,I),t.stopPropagation())}));var F=0;C.on("wheel",(function(e){m.hide(),e.preventDefault(),e.stopPropagation();var t=(new Date).getTime();if(t-F>100){F=t;var n="";e.deltaY<=-1?n="in":e.deltaY>=1&&(n="out");var r=e.target.__data__;if(r||(r=I),"in"===n){if(r!==I){for(;r.parent&&!r.parent.isInFocusTransitive;)r=r.parent;r.depth<I.depth&&(r=I)}if(r===I&&r.children){for(var a=r.children[0],i=1;i<r.children.length;i++)r.children[i].sortingRank>a.sortingRank&&(a=r.children[i]);a.children&&(r=a)}else r.children||(r=r.parent);W(r,!0)}else"out"===n&&(r=I.parent)&&W(r,!0);I.data.name===h&&s.history.replaceState({id:1},"classHierarchyPage1","hierarchy#1"),U()}}));var $=P.selectAll("text").data(y).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)}));o.noPrefixes?($.each((function(e){var t=e.data.name.indexOf(":");e.data.name.indexOf("http://")>-1?e.noPrefixName=e.data.name:t>-1&&(e.noPrefixName=e.data.name.substring(t+1))})),$.style("font-size",(function(e){return i.a.Text.calcFontSize(e.noPrefixName,e.r)})).text((function(e){return i.a.Text.getTextWithElipsisIfNeeded(e.noPrefixName,e.r/3)}))):$.style("font-size",(function(e){return i.a.Text.calcFontSize(e.data.name,e.r)})).text((function(e){return i.a.Text.getTextWithElipsisIfNeeded(e.data.name,e.r/3)})),$.style("display",(function(e){return e.parent&&e.parent.data===I.data?(e.textHidden=this.textContent.indexOf("...")+3===this.textContent.length,null):(e.textHidden=!0,"none")})),o.doFade&&!o.keepPrevState&&$.each((function(e){i.a.Transition.fadeIn(d3.select(this),550)})),A=function(){function e(e){e&&R.each((function(t){+e===t.data.id&&H(t)}))}var n=t.hash();s.onpopstate=function(t){t.state&&e(t.state.id)},e(n)};var O=P.selectAll("circle, text");function M(e,t){var n=800/e[2];p=e,O.attr("transform",(function(t){return"translate("+(t.x-e[0])*n+","+(t.y-e[1])*n+")"})),R.attr("r",(function(e){return e.r*n})),t&&$.each((function(e){e.data.fullName!==I.data.topLevelParentUri&&I.data.topLevelParentUri!==h||(e.textSel.style("display","none"),I.children&&I.children.length?_.each(I.children,(function(e){e.textSel.style("display","inline")})):I.textSel.style("display","inline"),I.parent&&_.each(I.parent.children,(function(e){e.data.name!==I.data.name&&e.textSel.style("display","inline")})))})),$.style("font-size",(function(e){return o.noPrefixes?i.a.Text.calcFontSize(e.noPrefixName,e.r*n):i.a.Text.calcFontSize(e.data.name,e.r*n)})).text((function(e){return o.noPrefixes?i.a.Text.getTextWithElipsisIfNeeded(e.noPrefixName,e.r*n/3):i.a.Text.getTextWithElipsisIfNeeded(e.data.name,e.r*n/3)}))}function V(e){var t=2*e+20;return 2*e/t<.3&&(t=2*e+2),t}function B(e){!e.isInFocusTransitive&&e.parent&&e.parent.isInFocusTransitive?(e.textHidden=this.textContent.indexOf("...")+3===this.textContent.length,this.style.display=""):(e.textHidden=!0,this.style.display="none")}function W(e,t){if(c((function(){d.showExternalElements=e.data.name===h})),I!==e&&(e.data.id&&s.history.replaceState({id:e.data.id},"classHierarchyPage"+e.data.id,"hierarchy#"+e.data.id),e.children||(e=e.parent,I!==e))){if(t&&(N(),d3.selectAll(".selected").classed("selected",!1)),I.parent)for(var n=I;n;)n.isInFocusTransitive=!1,n=n.parent;for(n=e;n;)n.isInFocusTransitive=!!n.children,n=n.parent;if(2*(I=e).r/(2*I.r+20)<.3||d.currentSliderValue>d.currentBrowserLimit)M([I.x,I.y,V(I.r)]),$.each((function(e){B.call(this,e)}));else d3.transition().duration(f).tween("zoom",(function(e){var t=d3.interpolateZoom(p,[I.x,I.y,V(I.r)]);return function(e){M(t(e))}})).selectAll("text").each(B)}}M([I.x,I.y,V(I.r)],u),b=d.$on("rootFocus",(function(){s.history.pushState({id:1},"classHierarchyPage1","hierarchy#1"),H(x)})),k=d.$on("classSearch",(function(e){H(e)}))}function U(){const t=d.classHierarchyData.classCount;let n=p.get(y.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE);(!n||n>t)&&(n=t,p.set(y.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE,n)),e.$broadcast("classCount",t,n)}window.addEventListener("resize",U),window.addEventListener("beforeunload",(function e(){window.removeEventListener("resize",U),window.removeEventListener("beforeunload",e)})),d.$watch("classHierarchyData",(function(){L&&L(),N&&N(),D&&D(),F&&F();var e=T();if(d.classHierarchyData.classCount){U();var t=_.cloneDeep(d.classHierarchyData);var n,r,a=function(e){return e.descendants().sort((function(e,t){return e.data.sortingRank>t.data.sortingRank?-1:e.data.sortingRank<t.data.sortingRank||e.data.depth>t.data.depth?1:e.data.depth<t.data.depth?-1:0}))}(d3.hierarchy(t));function i(e,t){const a={keepPrevState:!0,noPrefixes:T()};r=a.noPrefixes,O(n||e,a,I,!0),c((function(){p.set(y.CLASS_HIERARCHY_SWITCH_PREFIXES,t),A()}),70)}function o(e,a,o){if(!e)return;p.set(y.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE,e),n={name:h,children:[]};const s=new Set;for(let t=1;t<=e;t++)s.add(a[t].data.id),a[t].parent===a[0]&&n.children.push(a[t].data);if(function e(t){if(!t.children)return;const n=[];for(const e of t.children)s.has(e.id)&&n.push($.extend({},e));t.children=n;for(const n of t.children)e(n)}(n),o){r=angular.isUndefined(r)?T():r;O(n,{noPrefixes:r})}else i(t)}var s,l=p.get(y.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE);if(l)o(l,a);else{var u={doFade:!0,keepPrevState:!0,noPrefixes:T()};O(t,u),A()}L=d.$watch("hidePrefixes",(function(n){angular.isUndefined(n)||e?e=void 0:c((function(){!function(e){angular.isUndefined(e)||p.set(y.CLASS_HIERARCHY_HIDE_PREFIXES,e)}(n),i(t,!0)}),50)}),!0),N=d.$watch("currentSliderValue",(function(e){o(e,a,!0)}),!0),F=d.$on("onEnterKeypressSearchAction",(function(e){s&&H(s)})),D=d.$on("searchedClass",(function(e,t){(s=z[t.name])&&H(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",s),s.$inject=["$rootScope","$location","GraphDataRestService","$window","$timeout","$repositories","$licenseService","toastr","ZOOM_DURATION","ROOT_OBJ_NAME","LocalStorageAdapter","LSKeys","$translate"]},444:function(e,t,n){var r,a;r=[n(452)],void 0===(a=function(){function e(e,t){return e.each((function(){var e=t.apply(this,arguments),n=select(this);for(var r in e)n.attr(r,e[r])}))}function t(e,t){for(var n in t)e.attr(n,t[n]);return e}return"undefined"==typeof d3&&(d3=n(452)),d3.selection.prototype.attrs=function(n){return("function"==typeof n?e:t)(this,n)},d3.selection.prototype.moveToFront=function(){return this.each((function(){d3.select(this.parentNode.appendChild(this))}))},d3.selection.prototype.moveToBack=function(){return this.each((function(){const e=this.parentNode.firstChild;e&&this.parentNode.insertBefore(this,e)}))},d3}.apply(t,r))||(e.exports=a)},454:function(e,t,n){"use strict";n(444);var r=r||{};r.Text=function(){function e(e,t,n,r){n=n||10;var a=t/3;return"string"==typeof e?(a*=10/(e.substring(0,t/3).length+1.5),a+=1,e.match(/[\u0900-\u0DFF\u1100-\u11FF\u2E80-\u2EFF\u3000-\u9FFF]/)&&(a*=.6),a<n&&(a=n),Math.round(a)):(a<n&&(a=n),Math.round(a))}return{calcFontSizeRaw:e,calcFontSize:function(t,n,r,a){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=function(){const e=function(e,n){let r,a=1,i=arguments.length;for(;++a<i;)r=arguments[a],e[r]=t(e,n,n[r]);return e};function t(e,t,n){return function(){var r=n.apply(t,arguments);return r===t?e:r}}return{delayDblClick:function(){var t=d3.dispatch("click","dblclick");return e((function(e){var n,r=null;e.on("mousedown",(function(){n=d3.pointer(document.body),+new Date})),e.on("mouseup",(function(e,a){var i,o,s;(o=n,s=d3.pointer(document.body),Math.sqrt(Math.pow(o[0]-s[0],2),Math.pow(o[1]-s[1],2))>5)||(r?(window.clearTimeout(r),r=null,t.call("dblclick",e,e,a)):r=window.setTimeout((i=e,function(){t.call("click",i,i,a),r=null}),250))}))}),t,"on")}}}(),t.a=r},455:function(e,t,n){"use strict";n(444);var r=r||{};r.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=d3.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=r},467:function(e,t,n){"use strict";t.a=function(){var e=function(){return"n"},t=function(){return[0,0]},n=function(){return" "},r=u(),a=null,i=null,o=null,s=null;function c(e){var t;a="svg"===(t=(t=e).node()).tagName.toLowerCase()?t:t.ownerSVGElement,i=a.createSVGPoint(),document.body.appendChild(r)}c.show=function(){var r=Array.prototype.slice.call(arguments);r[r.length-1]instanceof SVGElement&&(o=r.pop());var a,i=n.apply(this,r),u=t.apply(this,r),h=e.apply(this,r),p=f(),y=d.length,v=document.documentElement.scrollTop||document.body.scrollTop,g=document.documentElement.scrollLeft||document.body.scrollLeft,m=s.apply(this,r);for(p.html(i).style("opacity",1).style("pointer-events","all");y--;)p.classed(d[y],!1);const x=r.filter(e=>e instanceof Event);return a=l.get(h).apply(this,x),m?Object.keys(m).forEach((function(e){p.style(e,m[e])})):p.classed(h,!0).style("top",a.top+u[0]+v+"px").style("left",a.left+u[1]+g+"px"),c},c.hide=function(){return f().style("opacity",0).style("pointer-events","none"),c},c.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),c},c.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),c},c.direction=function(t){return arguments.length?(e=null==t?t:p(t),c):e},c.offset=function(e){return arguments.length?(t=null==e?e:p(e),c):t},c.html=function(e){return arguments.length?(n=null==e?e:p(e),c):n},c.customPosition=function(e){return arguments.length?(s=null==e?e:p(e),c):s},c.destroy=function(){return r&&(f().remove(),r=null),c};var l=new Map(Object.entries({n:function(e){var t=h(e);return{top:t.n.y-r.offsetHeight,left:t.n.x-r.offsetWidth/2}},s:function(e){var t=h(e);return{top:t.s.y,left:t.s.x-r.offsetWidth/2}},e:function(e){var t=h(e);return{top:t.e.y-r.offsetHeight/2,left:t.e.x}},w:function(e){var t=h(e);return{top:t.w.y-r.offsetHeight/2,left:t.w.x-r.offsetWidth}},nw:function(e){var t=h(e);return{top:t.nw.y-r.offsetHeight,left:t.nw.x-r.offsetWidth}},ne:function(e){var t=h(e);return{top:t.ne.y-r.offsetHeight,left:t.ne.x}},sw:function(e){var t=h(e);return{top:t.sw.y,left:t.sw.x-r.offsetWidth}},se:function(e){var t=h(e);return{top:t.se.y,left:t.e.x}}})),d=l.keys();function u(){var e=d3.select(document.createElement("div"));return e.style("position","absolute").style("top",0).style("opacity",0).style("pointer-events","none").style("box-sizing","border-box"),e.node()}function f(){return null===r&&(r=u(),document.body.appendChild(r)),d3.select(r)}function h(e){for(var t=o||e.target;void 0===t.getScreenCTM&&"undefined"===t.parentNode;)t=t.parentNode;var n={},r=t.getScreenCTM(),a=t.getBBox(),s=a.width,c=a.height,l=a.x,d=a.y;return i.x=l,i.y=d,n.nw=i.matrixTransform(r),i.x+=s,n.ne=i.matrixTransform(r),i.y+=c,n.se=i.matrixTransform(r),i.x-=s,n.sw=i.matrixTransform(r),i.y-=c/2,n.w=i.matrixTransform(r),i.x+=s,n.e=i.matrixTransform(r),i.x-=s/2,i.y-=c/2,n.n=i.matrixTransform(r),i.y+=c,n.s=i.matrixTransform(r),n}function p(e){return"function"==typeof e?e:function(){return e}}return c}},494: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 a=1.2*t.size;n&&(a=.1*t.children[0].size),t.children.push({name:"placeholder",size:a})}}},removePlaceholders:function e(t){for(var n=t.length-1;n>=0;n--){var r=t[n];"placeholder"===r.data.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,a(n.children[0],r)}}function a(e,t){if(e.children)for(var n=0;n<e.children.length;n++)e.children[n].x+=t,a(e.children[n],t)}},makePositionsRelativeToZero:function(e){for(var t=e[0].x,n=e[0].y,r=0;r<e.length;r++){var a=e[r];a.x-=t,a.y-=n}}},t.a=r}}]);