graphdb-workbench 2.1.1 → 2.1.2-RC1

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 (55) hide show
  1. package/dist/{12.cf2225402504b37eb28e.bundle.js → 12.c008cc99a0d358fd58b7.bundle.js} +2 -2
  2. package/dist/12.c008cc99a0d358fd58b7.bundle.js.map +1 -0
  3. package/dist/136.3199d393576be61f53fd.bundle.js +1 -1
  4. package/dist/136.3199d393576be61f53fd.bundle.js.map +1 -1
  5. package/dist/19.b5b3699a309774176fc3.bundle.js +1 -1
  6. package/dist/19.b5b3699a309774176fc3.bundle.js.map +1 -1
  7. package/dist/26.176ffe2071a8d5d382b6.bundle.js +1 -1
  8. package/dist/26.176ffe2071a8d5d382b6.bundle.js.map +1 -1
  9. package/dist/31.4ecdb66b2c224a63525e.bundle.js +1 -1
  10. package/dist/31.4ecdb66b2c224a63525e.bundle.js.map +1 -1
  11. package/dist/37.ef412d4cbc60967faa5e.bundle.js +1 -1
  12. package/dist/37.ef412d4cbc60967faa5e.bundle.js.map +1 -1
  13. package/dist/{60.4c94265e0d3417d76f01.bundle.js → 60.854353939d8597b39221.bundle.js} +2 -2
  14. package/dist/60.854353939d8597b39221.bundle.js.map +1 -0
  15. package/dist/{62.41c0ac4da8e49e4d4dd3.bundle.js → 62.efe6729fb3185cbab1b1.bundle.js} +2 -2
  16. package/dist/62.efe6729fb3185cbab1b1.bundle.js.map +1 -0
  17. package/dist/83.73515cde0a2215275d32.bundle.js +1 -1
  18. package/dist/83.73515cde0a2215275d32.bundle.js.map +1 -1
  19. package/dist/{bundle.6f3596bd4833bb17c6f7.bundle.js → bundle.595d7082ecc6c2683c9a.bundle.js} +3 -3
  20. package/dist/bundle.595d7082ecc6c2683c9a.bundle.js.map +1 -0
  21. package/dist/index.html +3 -3
  22. package/dist/js/angular/core/directives/rdfresourcesearch/templates/rdfResourceSearchTemplate.html +1 -1
  23. package/dist/pages/autocomplete.html +1 -1
  24. package/dist/pages/choose-repository-type.html +1 -1
  25. package/dist/pages/cluster-management/clusterInfo.html +3 -3
  26. package/dist/pages/create-index.html +4 -4
  27. package/dist/pages/dependencies.html +2 -2
  28. package/dist/pages/domainRangeInfo.html +2 -2
  29. package/dist/pages/edit.html +1 -1
  30. package/dist/pages/explore.html +1 -1
  31. package/dist/pages/export.html +1 -1
  32. package/dist/pages/find.html +1 -1
  33. package/dist/pages/graph-config/saveGraphConfig.html +11 -11
  34. package/dist/pages/graphs-visualizations.html +7 -7
  35. package/dist/pages/guides.html +1 -1
  36. package/dist/pages/import.html +1 -1
  37. package/dist/pages/jdbc-create.html +5 -5
  38. package/dist/pages/monitor/queries.html +1 -1
  39. package/dist/pages/monitor/resources.html +2 -2
  40. package/dist/pages/namespaces.html +2 -2
  41. package/dist/pages/plugins.html +1 -1
  42. package/dist/pages/rdfClassHierarchyInfo.html +7 -7
  43. package/dist/pages/rdfrank.html +2 -2
  44. package/dist/pages/repositories.html +2 -2
  45. package/dist/pages/repository.html +2 -2
  46. package/dist/pages/similarity-indexes.html +1 -1
  47. package/dist/pages/sparql-template-create.html +5 -5
  48. package/dist/pages/sparql.html +3 -3
  49. package/dist/pages/webapi.html +2 -2
  50. package/dist/res/swagger/index.html +27 -27
  51. package/package.json +1 -1
  52. package/dist/12.cf2225402504b37eb28e.bundle.js.map +0 -1
  53. package/dist/60.4c94265e0d3417d76f01.bundle.js.map +0 -1
  54. package/dist/62.41c0ac4da8e49e4d4dd3.bundle.js.map +0 -1
  55. package/dist/bundle.6f3596bd4833bb17c6f7.bundle.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["webpack:///./src/js/angular/graphexplore/controllers/rdf-class-hierarchy.controller.js"],"names":["RdfClassHierarchyCtlr","$scope","$rootScope","$location","$repositories","$licenseService","$window","toastr","GraphDataRestService","UiScrollService","RdfsLabelCommentService","$timeout","ModalService","bowser","LocalStorageAdapter","LSKeys","RDF4JRepositoriesRestService","$translate","classHierarchyData","instancesObj","instancesQueryObj","items","instancesNotFiltered","isWarningShowed","onopen","onclose","angular","noop","currentBrowserLimit","firefox","safari","msie","msedge","datasource","position","current","key","get","index","count","success","initLazyList","selectedGraph","allGraphs","initView","getActiveRepository","resolveGraphs","graphsInRepo","results","bindings","length","slice","setSelectedGraphFromCache","error","data","repositoryError","getError","instant","selGraphFromCache","some","graph","contextID","uri","set","initClassCountSlider","event","classCount","currentSliderValue","classCountSlider","options","ceil","classLimit","value","showExternalElements","floor","vertical","showSelectionBar","onChange","setNewCurrentSliderValue","CLASS_HIERARCHY_CURRENT_SLIDER_VALUE","chrome","warning","browser","name","s","CLASS_HIERARCHY_SWITCH_PREFIXES","window","$broadcast","lastTimeWheel","$","on","e","preventDefault","stopPropagation","now","Date","getTime","originalEvent","newValue","deltaY","$apply","goToDomainRangeGraphView","selectedClass","fullName","checkDomainRangeData","response","status","CLASS_HIERARCHY_LAST_SELECTED_CLASS","hash","path","search","refreshDiagramExternalElements","replace","showClassInfoPanel","clearClassHieararchyState","hidePrefixes","CLASS_HIERARCHY_HIDE_PREFIXES","undefined","fixToolbar","hasClassHierarchy","removeClass","$watch","_","each","item","revision","adapterContainer","adapter","remain","$on","isLicenseValid","currentActiveRepository","then","getClassHierarchyData","toggleClassInfoSidePanel","getActiveRepositoryNoError","isSystemRepository","confirmReloadClassHierarchy","openSimpleModal","title","message","result","loader","hierarchyError","reloadClassHierarchy","focusOnRoot","copyToClipboard","openCopyToClipboardModal","searchedClassCallback","selected","searchedClass","query","instancesFilterFunc","inst","resolvedUri","toLowerCase","indexOf","reload","localNameStartIdx","lastIndexOf","substring","encodedUri","encodeURIComponent","encodedQuery","viewInstancesUri","getRdfsLabelAndComment","rdfsLabel","label","rdfsComment","comment","expanded","instancesLoader","getClassInstances","obj","type","startsWith","endsWith","absUri","absUriNonEncoded","push","instancesSearchPlaceholder","prepareDataForClassInfoSidePanel","document","ready","click","hide","chosenGraph","getSelGraphValue","isAllGraphsSelected","module","controller","$inject"],"mappings":"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","file":"62.efe6729fb3185cbab1b1.bundle.js","sourcesContent":["import 'angular/utils/local-storage-adapter';\n\nconst modules = [\n 'pageslide-directive',\n 'ngAnimate',\n 'ui.scroll.jqlite',\n 'ui.scroll',\n 'angucomplete-alt',\n 'rzSlider',\n 'toastr',\n 'graphdb.framework.utils.localstorageadapter'\n];\n\nconst SAFARI_IE_EDGE_CLASS_LIMIT = 400;\nconst FIREFOX_CLASS_LIMIT = 50;\nconst CLASS_COUNT_THRESHOLD = 1500;\nconst CLASS_COUNT_THRESHOLD_IE = 25;\n\nangular\n .module('graphdb.framework.graphexplore.controllers.class', modules)\n .controller('RdfClassHierarchyCtlr', RdfClassHierarchyCtlr);\n\nRdfClassHierarchyCtlr.$inject = [\"$scope\", \"$rootScope\", \"$location\", \"$repositories\", \"$licenseService\", \"$window\", \"toastr\", \"GraphDataRestService\", \"UiScrollService\", \"RdfsLabelCommentService\", \"$timeout\", \"ModalService\", \"bowser\", \"LocalStorageAdapter\", \"LSKeys\", \"RDF4JRepositoriesRestService\", \"$translate\"];\n\nfunction RdfClassHierarchyCtlr($scope, $rootScope, $location, $repositories, $licenseService, $window, toastr, GraphDataRestService, UiScrollService, RdfsLabelCommentService, $timeout, ModalService, bowser, LocalStorageAdapter, LSKeys, RDF4JRepositoriesRestService, $translate) {\n $scope.classHierarchyData = {};\n $scope.instancesObj = {};\n $scope.instancesQueryObj = {};\n\n $scope.instancesObj.items = [];\n $scope.instancesNotFiltered = [];\n $scope.isWarningShowed = false;\n\n // Handle pageslide directive callbacks which incidentally appeared to be present in the angular's\n // scope, so we need to define our's and pass them to pageslide, otherwise it throws an error.\n $scope.onopen = $scope.onclose = () => angular.noop();\n\n $scope.currentBrowserLimit = 2000;\n if (bowser.firefox) {\n $scope.currentBrowserLimit = FIREFOX_CLASS_LIMIT;\n } else if (bowser.safari || bowser.msie || bowser.msedge) {\n $scope.currentBrowserLimit = SAFARI_IE_EDGE_CLASS_LIMIT;\n }\n\n // creating datasource for class instances data\n const datasource = {};\n let position = 0;\n let current = 0;\n $rootScope.key = \"\";\n datasource.get = function (index, count, success) {\n return UiScrollService.initLazyList(index, count, success, position, $scope.instancesObj.items);\n };\n\n //allGraphs is used to include all graphs in the chosen repository and represent the Class Hierarchy diagram,\n // while graphsInRepo is sliced to 1000 if there are more than 1000 graphs in the repository, and they are present\n // in the drop-down menu otherwise browsers crash.\n let selectedGraph = allGraphs;\n\n const initView = function () {\n if (!$scope.getActiveRepository()) {\n return;\n }\n return RDF4JRepositoriesRestService.resolveGraphs()\n .success(function (graphsInRepo) {\n $scope.graphsInRepo = graphsInRepo.results.bindings.length > 1002 ? graphsInRepo.results.bindings.slice(0, 1002) : graphsInRepo.results.bindings;\n setSelectedGraphFromCache();\n }).error(function (data) {\n $scope.repositoryError = getError(data);\n toastr.error(getError(data), $translate.instant('graphexplore.error.getting.graphs'));\n });\n };\n\n const setSelectedGraphFromCache = function () {\n const selGraphFromCache = LocalStorageAdapter.get(`classHierarchy-selectedGraph-${$repositories.getActiveRepository()}`);\n if (selGraphFromCache !== null && $scope.graphsInRepo.some(graph => graph.contextID.uri === selGraphFromCache.contextID.uri)) {\n selectedGraph = selGraphFromCache;\n } else {\n LocalStorageAdapter.set(`classHierarchy-selectedGraph-${$repositories.getActiveRepository()}`, selectedGraph);\n }\n };\n\n $rootScope.$watch(function () {\n return $rootScope.key;\n }, function () {\n position = 0;\n _.each($scope.instancesObj.items, function (item) {\n if ($rootScope.key > item) position++;\n });\n current++;\n });\n\n datasource.revision = function () {\n return current;\n };\n // adapter implementation for ui-scroll directive\n $scope.adapterContainer = {adapter: {remain: true}};\n\n\n // events\n $scope.$on('goToDomainRangeGraphView', onGoToDomainRangeGraphView);\n $scope.$on('classCount', initClassCountSlider);\n $scope.$on('repositoryIsSet', onRepositoryIsSet);\n\n // objects\n $scope.datasource = datasource;\n\n // functions\n $scope.goToDomainRangeGraphView = goToDomainRangeGraphView;\n $scope.toggleClassInfoSidePanel = toggleClassInfoSidePanel;\n $scope.getActiveRepositoryNoError = getActiveRepositoryNoError;\n $scope.isSystemRepository = isSystemRepository;\n $scope.confirmReloadClassHierarchy = confirmReloadClassHierarchy;\n $scope.focusOnRoot = focusOnRoot;\n $scope.copyToClipboard = copyToClipboard;\n\n $scope.searchedClassCallback = searchedClassCallback;\n\n $scope.instancesQueryObj.query = \"\";\n $scope.instancesFilterFunc = instancesFilterFunc;\n\n initView();\n\n $scope.$watch('instancesObj.items', function () {\n if ($scope.instancesObj.items.length > 0) {\n $timeout(function () {\n $scope.adapterContainer.adapter.reload();\n }, 30);\n }\n });\n\n $scope.$watch('selectedClass', function () {\n if ($scope.showClassInfoPanel) {\n prepareDataForClassInfoSidePanel($scope.selectedClass);\n }\n });\n\n function instancesFilterFunc(inst) {\n return inst.resolvedUri\n .toLowerCase()\n .indexOf($scope.instancesQueryObj.query.toLowerCase()) >= 0;\n }\n\n function searchedClassCallback(selected) {\n if (selected) {\n const searchedClass = {name: selected.title};\n $rootScope.$broadcast('searchedClass', searchedClass);\n }\n }\n\n function initClassCountSlider(event, classCount, currentSliderValue) {\n if ($scope.classCountSlider.options && $scope.classCountSlider.options.ceil !== classCount) {\n // Force reset of the slider if it exists and its class count (ceil) is different from\n // the broadcast class count.\n $scope.classCountSlider = {};\n }\n\n const showBrowserCompatibleClassLimitWarning = function (classLimit) {\n if (bowser.chrome) {\n toastr.warning($translate.instant('graphexplore.disabling.animations', {classLimit: classLimit}),\n $translate.instant('graphexplore.reducing.visual.effects'));\n } else {\n toastr.warning($translate.instant('graphexplore.browser.performance', {browser: bowser.name, classLimit: classLimit}),\n $translate.instant('graphexplore.reducing.visual.effects'));\n }\n };\n\n if (!$scope.classCountSlider.value) {\n $scope.showExternalElements = true;\n $scope.classCountSlider = {\n value: classCount,\n options: {\n floor: 1,\n ceil: classCount,\n vertical: true,\n showSelectionBar: true,\n onChange: function () {\n $timeout(setNewCurrentSliderValue, 100, true);\n }\n }\n };\n\n if (LocalStorageAdapter.get(LSKeys.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE) === null) {\n if (classCount > $scope.currentBrowserLimit) {\n showBrowserCompatibleClassLimitWarning($scope.currentBrowserLimit);\n }\n }\n }\n\n const s = LocalStorageAdapter.get(LSKeys.CLASS_HIERARCHY_SWITCH_PREFIXES);\n const noSwitchPrefixes = (s != null) && (s !== \"true\");\n if (noSwitchPrefixes) {\n $scope.showExternalElements = true;\n }\n\n if (currentSliderValue) {\n $scope.classCountSlider.value = currentSliderValue;\n } else if (classCount >= CLASS_COUNT_THRESHOLD) {\n $scope.classCountSlider.value = CLASS_COUNT_THRESHOLD;\n toastr.warning($translate.instant('graphexplore.class.count.slider', {count: CLASS_COUNT_THRESHOLD}), $translate.instant('graphexplore.reducing.class.count'));\n }\n\n if (classCount >= CLASS_COUNT_THRESHOLD_IE && (!(window.ActiveXObject) && \"ActiveXObject\" in window) && !$scope.isWarningShowed) {\n $scope.classCountSlider.value = CLASS_COUNT_THRESHOLD_IE;\n $scope.isWarningShowed = true;\n toastr.warning($translate.instant('graphexplore.class.count.browser', {count: CLASS_COUNT_THRESHOLD_IE}), $translate.instant('graphexplore.reducing.class.count'));\n }\n\n $timeout(function () {\n $scope.$broadcast('reCalcViewDimensions');\n }, 200);\n\n // set this before the slider is moved by the user as we need it\n setNewCurrentSliderValue();\n\n // Modify the slider with the mouse wheel\n let lastTimeWheel = 0;\n $('rzslider').on('wheel', function (e) {\n e.preventDefault();\n e.stopPropagation();\n\n // at least 100ms must have passed since last time we updated\n const now = new Date().getTime();\n if (now - lastTimeWheel > 100) {\n lastTimeWheel = now;\n } else {\n return;\n }\n\n e = e.originalEvent;\n\n let newValue = $scope.classCountSlider.value;\n if (e.deltaY <= -1) {\n newValue += 1;\n } else if (e.deltaY >= 1) {\n newValue -= 1;\n }\n\n if (newValue !== $scope.classCountSlider.value\n && newValue >= $scope.classCountSlider.options.floor\n && newValue <= $scope.classCountSlider.options.ceil) {\n $scope.$apply(function () {\n $scope.classCountSlider.value = newValue;\n $timeout(setNewCurrentSliderValue, 100, true);\n });\n }\n });\n }\n\n function setNewCurrentSliderValue() {\n $scope.currentSliderValue = $scope.classCountSlider.value;\n }\n\n function goToDomainRangeGraphView(selectedClass) {\n const uri = selectedClass.fullName;\n const name = selectedClass.name;\n\n GraphDataRestService.checkDomainRangeData(uri)\n .success(function (response, status) {\n if (status === 204) {\n toastr.warning($translate.instant('graphexplore.no.domain.range', {name: name}));\n } else {\n LocalStorageAdapter.set(LSKeys.CLASS_HIERARCHY_LAST_SELECTED_CLASS, $location.hash());\n $location\n .hash(\"\")\n .path(\"domain-range-graph\")\n .search(\"uri\", uri)\n .search(\"name\", name);\n }\n }).error(function () {\n toastr.error($translate.instant('graphexplore.error.request.failed', {name: name}));\n });\n }\n\n function onGoToDomainRangeGraphView(event, selectedClass) {\n goToDomainRangeGraphView(selectedClass);\n }\n\n function copyToClipboard(uri) {\n ModalService.openCopyToClipboardModal(uri);\n }\n\n function prepareDataForClassInfoSidePanel(selectedClass) {\n // generate SPARQL query for listing class instances in sparql view\n const uri = selectedClass.fullName;\n let name = selectedClass.name;\n\n // in case of no prefix available both name and uri are the same\n // so only take the local name of the uri a tab name for the SPARQL view\n if (name === uri) {\n const localNameStartIdx = name.lastIndexOf(\"#\");\n name = name.substring(localNameStartIdx + 1);\n }\n $scope.encodedUri = encodeURIComponent(uri);\n\n const query = \"prefix onto:<http://www.ontotext.com/>\\nselect ?s {\\n ?s a <\" + uri + \"> .\\n}\";\n\n const encodedQuery = encodeURIComponent(query);\n\n // generate url for redirecting to sparql view, opening a new tab, writing the generated query and executing it\n $scope.viewInstancesUri = 'sparql?name=' + name + '&infer=true&sameAs=false&query=' + encodedQuery + '&execute=true';\n\n GraphDataRestService.getRdfsLabelAndComment(uri)\n .success(function (response) {\n $scope.rdfsLabel = response.label;\n $scope.rdfsComment = response.comment;\n $scope.expanded = false;\n })\n .error(function () {\n toastr.error(\"Error getting rdfs:label and rdfs:comment\");\n });\n\n // clear instances search input field when changing classes\n $scope.instancesQueryObj.query = '';\n\n // get class instances for selected rdf class\n $scope.instancesLoader = true;\n GraphDataRestService.getClassInstances(uri)\n .success(function (response) {\n $scope.instancesObj.items = [];\n _.each(response, function (value, key) {\n const obj = {};\n // TODO extract in core function isTriple(str)\n obj.type = (value.startsWith(\"<<\") && value.endsWith(\">>\")) ? \"triple\": \"uri\";\n obj.absUri = encodeURIComponent(value);\n obj.absUriNonEncoded = value;\n obj.resolvedUri = key;\n $scope.instancesObj.items.push(obj);\n });\n $scope.instancesLoader = false;\n\n $scope.instancesSearchPlaceholder = $scope.instancesObj.items.length < 1000 ? \"Search class instances\" : \"Search first 1000 class instances\";\n $scope.instancesNotFiltered = $scope.instancesObj.items;\n })\n .error(function () {\n toastr.error($translate.instant('graphexplore.error.instances.request'));\n });\n\n }\n\n function toggleClassInfoSidePanel() {\n $scope.showClassInfoPanel = !$scope.showClassInfoPanel;\n $rootScope.$broadcast('sidePanelClosed');\n }\n\n function getActiveRepositoryNoError() {\n if (!$scope.repositoryError) {\n return $repositories.getActiveRepository();\n }\n }\n\n function isSystemRepository() {\n return $repositories.isSystemRepository();\n }\n\n // Hack needed to force hide prefix toggle tooltip in order not be\n // visible after icon is switched\n $(document).ready(function () {\n $(\".prefix-toggle\").click(function () {\n $(\".tooltip\").hide();\n });\n });\n\n function focusOnRoot() {\n $scope.$broadcast(\"rootFocus\");\n }\n\n function refreshDiagramExternalElements() {\n $location.replace().hash(\"1\");\n\n // clear old instances data from previous repository\n $scope.instancesObj.items = [];\n\n // delete old instance count slider and reinit with classes count values\n // appropriate for the newly activated repository\n $scope.showExternalElements = false;\n\n $scope.showClassInfoPanel = false;\n\n LocalStorageAdapter.clearClassHieararchyState();\n\n // reset all watched scope variables to undefined in order to stop unwanted triggering of watches\n $scope.hidePrefixes = LocalStorageAdapter.get(LSKeys.CLASS_HIERARCHY_HIDE_PREFIXES) === \"true\";\n $scope.currentSliderValue = undefined;\n $scope.classHierarchyData = {};\n\n // clear class search input field\n $rootScope.$broadcast('angucomplete-alt:clearInput');\n }\n\n function fixToolbar() {\n // For some reason angular behaves weirdly with the toolbar and its ng-show. Even though the condition\n // is updated, angular won't remove the ng-hide class and the toolbar will stay hidden.\n // Calling $apply(), $digest() or whatever doesn't help either so we have to resort to this instead.\n // The problem is easy to reproduce when viewing a deeper class and changing the repository.\n if ($scope.hasClassHierarchy()) {\n $timeout(function () {\n $('#toolbar').removeClass('ng-hide');\n }, 0);\n }\n }\n\n function reloadClassHierarchy() {\n refreshDiagramExternalElements();\n $scope.loader = true;\n $scope.hierarchyError = false;\n GraphDataRestService.reloadClassHierarchy(selectedGraph.contextID.uri)\n .success(function (response) {\n $scope.loader = false;\n $scope.classHierarchyData = response;\n fixToolbar();\n initClassCountSlider();\n })\n .error(function (response) {\n $scope.loader = false;\n $scope.hierarchyError = getError(response);\n toastr.error(getError(response), $translate.instant('graphexplore.error.rdf.class.request'));\n });\n }\n\n function confirmReloadClassHierarchy() {\n ModalService.openSimpleModal({\n title: $translate.instant('confirm.operation'),\n message: $translate.instant('graphexplore.calculating.hierarchy'),\n warning: true\n }).result\n .then(function () {\n reloadClassHierarchy();\n });\n }\n\n let currentActiveRepository = $repositories.getActiveRepository();\n function onRepositoryIsSet() {\n if (!$licenseService.isLicenseValid()) {\n return;\n }\n if (currentActiveRepository === $repositories.getActiveRepository()) {\n return;\n } else {\n currentActiveRepository = $repositories.getActiveRepository();\n }\n $scope.repositoryError = null;\n if (!currentActiveRepository) {\n return;\n }\n selectedGraph = allGraphs;\n initView()\n .then(getClassHierarchyData);\n }\n\n function getClassHierarchyData() {\n\n refreshDiagramExternalElements();\n\n if (!$scope.isSystemRepository() && $scope.isLicenseValid()) {\n $scope.hierarchyError = false;\n $scope.loader = true;\n GraphDataRestService.getClassHierarchyData(selectedGraph.contextID.uri)\n .success(function (response, status) {\n $scope.showExternalElements = true;\n $scope.loader = false;\n $scope.classHierarchyData = response;\n if (status === 207) {\n toastr.warning($translate.instant('graphexplore.update.diagram'), $translate.instant('graphexplore.repository.data.changed'));\n }\n fixToolbar();\n }).error(function (response) {\n $scope.loader = false;\n $scope.hierarchyError = getError(response);\n toastr.error(getError(response), $translate.instant('graphexplore.error.rdf.class.request'));\n });\n }\n }\n\n $scope.hasClassHierarchy = function () {\n return $scope.classHierarchyData.classCount && $scope.getActiveRepositoryNoError() && !$scope.isSystemRepository();\n };\n\n $scope.isLicenseValid = function () {\n return $licenseService.isLicenseValid();\n };\n\n\n $scope.chosenGraph = function (graph) {\n selectedGraph = graph;\n getClassHierarchyData();\n LocalStorageAdapter.set(`classHierarchy-selectedGraph-${$repositories.getActiveRepository()}`, selectedGraph);\n };\n\n $scope.getSelGraphValue = function () {\n return selectedGraph.contextID.value;\n };\n\n $scope.isAllGraphsSelected = function () {\n return $scope.getSelGraphValue() === 'all.graphs.label';\n };\n}\n"],"sourceRoot":""}
@@ -1,2 +1,2 @@
1
- (window.webpackJsonp=window.webpackJsonp||[]).push([[83],{79:function(t,e,i){"use strict";i.r(e);i(4),i(13);const r=angular.module("graphdb.framework.impex.import.directives",["graphdb.framework.utils.uriutils"]);r.directive("validateUri",["UriUtils",function(t){return{restrict:"A",require:"ngModel",link:function(e,i,r,a){a.$parsers.unshift((function(i){let r=!0;return"named"===e.target&&(r=t.isValidIri(i)),a.$setValidity("validateUri",r),i}))}}}]),r.directive("filesTable",(function(){return{restrict:"A",templateUrl:"js/angular/import/templates/filesTable.html"}})),r.directive("filesOntoLoader",(function(){return{link:function(t,e,i){t.$watch("file.status",(function(){"IMPORTING"!==t.file.status&&"UPLOADING"!==t.file.status||!$(e).has("object").length>0&&$(e).append('<object width="'+i.size+'" height="'+i.size+'" data="js/angular/templates/loader/ot-loader.svg?v=2.1.1">{{\'common.loading\' | translate}}</object>')}))}}}))}}]);
1
+ (window.webpackJsonp=window.webpackJsonp||[]).push([[83],{79:function(t,e,i){"use strict";i.r(e);i(4),i(13);const r=angular.module("graphdb.framework.impex.import.directives",["graphdb.framework.utils.uriutils"]);r.directive("validateUri",["UriUtils",function(t){return{restrict:"A",require:"ngModel",link:function(e,i,r,a){a.$parsers.unshift((function(i){let r=!0;return"named"===e.target&&(r=t.isValidIri(i)),a.$setValidity("validateUri",r),i}))}}}]),r.directive("filesTable",(function(){return{restrict:"A",templateUrl:"js/angular/import/templates/filesTable.html"}})),r.directive("filesOntoLoader",(function(){return{link:function(t,e,i){t.$watch("file.status",(function(){"IMPORTING"!==t.file.status&&"UPLOADING"!==t.file.status||!$(e).has("object").length>0&&$(e).append('<object width="'+i.size+'" height="'+i.size+'" data="js/angular/templates/loader/ot-loader.svg?v=2.1.2-RC1">{{\'common.loading\' | translate}}</object>')}))}}}))}}]);
2
2
  //# sourceMappingURL=83.73515cde0a2215275d32.bundle.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["webpack:///./src/js/angular/import/directives.js"],"names":["importDirectives","angular","module","directive","UriUtils","restrict","require","link","scope","element","attr","ctrl","$parsers","unshift","value","valid","target","isValidIri","$setValidity","templateUrl","$watch","file","status","$","has","length","append","size"],"mappings":"0FAAA,kBAGA,MAAMA,EAAmBC,QAAQC,OAAO,4CAA6C,CACjF,qCAGJF,EAAiBG,UAAU,cAAe,CAAC,WAAY,SAAUC,GAC7D,MAAO,CACHC,SAAU,IACVC,QAAS,UACTC,KAAM,SAAUC,EAAOC,EAASC,EAAMC,GAClCA,EAAKC,SAASC,SAAQ,SAAUC,GAC5B,IAAIC,GAAQ,EAQZ,MANqB,UAAjBP,EAAMQ,SACND,EAAQX,EAASa,WAAWH,IAGhCH,EAAKO,aAAa,cAAeH,GAE1BD,UAMvBd,EAAiBG,UAAU,cAAc,WACrC,MAAO,CACHE,SAAU,IACVc,YAAa,kDAIrBnB,EAAiBG,UAAU,mBAAmB,WAC1C,MAAO,CACHI,KAAM,SAAUC,EAAOC,EAASC,GAC5BF,EAAMY,OAAO,eAAe,WACE,cAAtBZ,EAAMa,KAAKC,QAAgD,cAAtBd,EAAMa,KAAKC,SAC3CC,EAAEd,GAASe,IAAI,UAAUC,OAAS,GACnCF,EAAEd,GAASiB,OAAO,kBAAoBhB,EAAKiB,KAAO,aAAejB,EAAKiB,KAAO","file":"83.73515cde0a2215275d32.bundle.js","sourcesContent":["import 'angular/core/services';\nimport 'angular/utils/uri-utils';\n\nconst importDirectives = angular.module('graphdb.framework.impex.import.directives', [\n 'graphdb.framework.utils.uriutils'\n]);\n\nimportDirectives.directive('validateUri', ['UriUtils', function (UriUtils) {\n return {\n restrict: 'A',\n require: 'ngModel',\n link: function (scope, element, attr, ctrl) {\n ctrl.$parsers.unshift(function (value) {\n let valid = true;\n\n if (scope.target === 'named') {\n valid = UriUtils.isValidIri(value);\n }\n\n ctrl.$setValidity('validateUri', valid);\n\n return value;\n });\n }\n };\n}]);\n\nimportDirectives.directive('filesTable', function () {\n return {\n restrict: 'A',\n templateUrl: 'js/angular/import/templates/filesTable.html'\n };\n});\n\nimportDirectives.directive('filesOntoLoader', function () {\n return {\n link: function (scope, element, attr) {\n scope.$watch('file.status', function () {\n if (scope.file.status === 'IMPORTING' || scope.file.status === 'UPLOADING') {\n if (!$(element).has('object').length > 0) {\n $(element).append('<object width=\"' + attr.size + '\" height=\"' + attr.size + '\" data=\"js/angular/templates/loader/ot-loader.svg?v=2.1.1\">{{\\'common.loading\\' | translate}}</object>');\n }\n }\n });\n }\n };\n});\n"],"sourceRoot":""}
1
+ {"version":3,"sources":["webpack:///./src/js/angular/import/directives.js"],"names":["importDirectives","angular","module","directive","UriUtils","restrict","require","link","scope","element","attr","ctrl","$parsers","unshift","value","valid","target","isValidIri","$setValidity","templateUrl","$watch","file","status","$","has","length","append","size"],"mappings":"0FAAA,kBAGA,MAAMA,EAAmBC,QAAQC,OAAO,4CAA6C,CACjF,qCAGJF,EAAiBG,UAAU,cAAe,CAAC,WAAY,SAAUC,GAC7D,MAAO,CACHC,SAAU,IACVC,QAAS,UACTC,KAAM,SAAUC,EAAOC,EAASC,EAAMC,GAClCA,EAAKC,SAASC,SAAQ,SAAUC,GAC5B,IAAIC,GAAQ,EAQZ,MANqB,UAAjBP,EAAMQ,SACND,EAAQX,EAASa,WAAWH,IAGhCH,EAAKO,aAAa,cAAeH,GAE1BD,UAMvBd,EAAiBG,UAAU,cAAc,WACrC,MAAO,CACHE,SAAU,IACVc,YAAa,kDAIrBnB,EAAiBG,UAAU,mBAAmB,WAC1C,MAAO,CACHI,KAAM,SAAUC,EAAOC,EAASC,GAC5BF,EAAMY,OAAO,eAAe,WACE,cAAtBZ,EAAMa,KAAKC,QAAgD,cAAtBd,EAAMa,KAAKC,SAC3CC,EAAEd,GAASe,IAAI,UAAUC,OAAS,GACnCF,EAAEd,GAASiB,OAAO,kBAAoBhB,EAAKiB,KAAO,aAAejB,EAAKiB,KAAO","file":"83.73515cde0a2215275d32.bundle.js","sourcesContent":["import 'angular/core/services';\nimport 'angular/utils/uri-utils';\n\nconst importDirectives = angular.module('graphdb.framework.impex.import.directives', [\n 'graphdb.framework.utils.uriutils'\n]);\n\nimportDirectives.directive('validateUri', ['UriUtils', function (UriUtils) {\n return {\n restrict: 'A',\n require: 'ngModel',\n link: function (scope, element, attr, ctrl) {\n ctrl.$parsers.unshift(function (value) {\n let valid = true;\n\n if (scope.target === 'named') {\n valid = UriUtils.isValidIri(value);\n }\n\n ctrl.$setValidity('validateUri', valid);\n\n return value;\n });\n }\n };\n}]);\n\nimportDirectives.directive('filesTable', function () {\n return {\n restrict: 'A',\n templateUrl: 'js/angular/import/templates/filesTable.html'\n };\n});\n\nimportDirectives.directive('filesOntoLoader', function () {\n return {\n link: function (scope, element, attr) {\n scope.$watch('file.status', function () {\n if (scope.file.status === 'IMPORTING' || scope.file.status === 'UPLOADING') {\n if (!$(element).has('object').length > 0) {\n $(element).append('<object width=\"' + attr.size + '\" height=\"' + attr.size + '\" data=\"js/angular/templates/loader/ot-loader.svg?v=2.1.2-RC1\">{{\\'common.loading\\' | translate}}</object>');\n }\n }\n });\n }\n };\n});\n"],"sourceRoot":""}