graphdb-workbench 3.2.0-RC1 → 3.2.0-RC2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{38644.763094ed8176a107ad43.bundle.js → 38644.08569e93394c46036f53.bundle.js} +2 -2
- package/dist/{38644.763094ed8176a107ad43.bundle.js.map → 38644.08569e93394c46036f53.bundle.js.map} +1 -1
- package/dist/{39518.7dd8fe04651f2fdbc846.bundle.js → 39518.2923a17f1d69e5a0d957.bundle.js} +2 -2
- package/dist/{39518.7dd8fe04651f2fdbc846.bundle.js.map → 39518.2923a17f1d69e5a0d957.bundle.js.map} +1 -1
- package/dist/{53174.4a1ebee9fa3f2bcebf90.bundle.js → 53174.42c4b8519fa16f6eedc1.bundle.js} +2 -2
- package/dist/53174.42c4b8519fa16f6eedc1.bundle.js.map +1 -0
- package/dist/60560.1a6c5df198a1426b0fb7.bundle.js +2 -0
- package/dist/60560.1a6c5df198a1426b0fb7.bundle.js.map +1 -0
- package/dist/{67888.00b7ea58032ed4b8bfcb.bundle.js → 67888.d6afafad6e3a017cb8b3.bundle.js} +2 -2
- package/dist/{67888.00b7ea58032ed4b8bfcb.bundle.js.map → 67888.d6afafad6e3a017cb8b3.bundle.js.map} +1 -1
- package/dist/{7815.182dcef7161cdc589db7.bundle.js → 7815.49f59c286fc0d0b306ab.bundle.js} +2 -2
- package/dist/{7815.182dcef7161cdc589db7.bundle.js.map → 7815.49f59c286fc0d0b306ab.bundle.js.map} +1 -1
- package/dist/82206.d593f5b11aa103af5e3d.bundle.js +2 -0
- package/dist/82206.d593f5b11aa103af5e3d.bundle.js.map +1 -0
- package/dist/{82926.d6c48c23b6e1f89b3d8a.bundle.js → 82926.51d23e16d60e02dc4133.bundle.js} +2 -2
- package/dist/{82926.d6c48c23b6e1f89b3d8a.bundle.js.map → 82926.51d23e16d60e02dc4133.bundle.js.map} +1 -1
- package/dist/94519.783661f9e08288cddc88.bundle.js +2 -0
- package/dist/94519.783661f9e08288cddc88.bundle.js.map +1 -0
- package/dist/{99448.30713a59be1313c4b089.bundle.js → 99448.8c045dc098cc67d199aa.bundle.js} +2 -2
- package/dist/{99448.30713a59be1313c4b089.bundle.js.map → 99448.8c045dc098cc67d199aa.bundle.js.map} +1 -1
- package/dist/css/bootstrap-graphdb-theme.css +1 -1
- package/dist/css/clustermanagement.css +1 -1
- package/dist/css/graphql/graphql-playground.css +1 -1
- package/dist/css/graphs-vizualizations.css +1 -1
- package/dist/css/lib/ontotext-yasgui-web-component.css +1 -1
- package/dist/css/repositories.css +1 -1
- package/dist/css/shepherd-custom.css +1 -1
- package/dist/css/shuttle-multiselect.css +1 -1
- package/dist/i18n/locale-en.json +4 -4
- package/dist/i18n/locale-fr.json +4 -4
- package/dist/index.html +9 -9
- package/dist/js/angular/clustermanagement/templates/cluster-nodes-configuration.html +1 -1
- package/dist/js/angular/core/directives/autocomplete/templates/autocomplete.html +1 -1
- package/dist/js/angular/core/directives/dynamic-form/templates/dynamic-form.html +1 -1
- package/dist/js/angular/core/directives/operations-statuses-monitor/templates/operations-statuses-monitor.html +1 -1
- package/dist/js/angular/core/directives/rdfresourcesearch/templates/rdfResourceSearchTemplate.html +1 -1
- package/dist/js/angular/core/directives/shuttle-multiselect/templates/shuttle-multiselect.html +1 -1
- package/dist/js/angular/core/directives/yasgui-component/templates/yasgui-component.html +1 -1
- package/dist/js/angular/core/templates/cookie-policy/cookie-consent.html +1 -1
- package/dist/js/angular/core/templates/cookie-policy/cookie-policy.html +1 -1
- package/dist/js/angular/core/templates/editable-content/editable-content.html +1 -1
- package/dist/js/angular/core/templates/markdown-content/markdown-content.html +1 -1
- package/dist/js/angular/core/templates/search-resource-input.html +1 -1
- package/dist/js/angular/graphql/templates/create-graphql-endpoint.html +2 -2
- package/dist/js/angular/graphql/templates/graphql-endpoint-management.html +1 -1
- package/dist/js/angular/graphql/templates/graphql-playground.html +1 -1
- package/dist/js/angular/graphql/templates/modal/endpoint-configuration-modal.html +1 -1
- package/dist/js/angular/graphql/templates/modal/endpoint-generation-failure-result-modal.html +1 -1
- package/dist/js/angular/graphql/templates/modal/import-endpoint-definition-modal.html +1 -1
- package/dist/js/angular/security/templates/user.html +5 -5
- package/dist/js/angular/ttyg/templates/agent-list.html +1 -1
- package/dist/js/angular/ttyg/templates/agent-select-menu.html +1 -1
- package/dist/js/angular/ttyg/templates/chat-item-detail.html +1 -1
- package/dist/js/angular/ttyg/templates/chat-list.html +1 -1
- package/dist/js/angular/ttyg/templates/chat-panel.html +1 -1
- package/dist/js/angular/ttyg/templates/modal/agent-instructions-explain-modal.html +1 -1
- package/dist/js/angular/ttyg/templates/modal/agent-settings-modal.html +3 -3
- package/dist/js/angular/ttyg/templates/modal/external-integration-configuration-modal.html +1 -1
- package/dist/js/angular/ttyg/templates/no-agents-view.html +1 -1
- package/dist/js/angular/ttyg/templates/ttyg.html +1 -1
- package/dist/legacyWorkbench.f089c68483807d9f2f74.js +3 -0
- package/dist/{legacyWorkbench.59130589967739705b23.js.map → legacyWorkbench.f089c68483807d9f2f74.js.map} +1 -1
- package/dist/{main.1183256fc7ce9d0d3fa3.js → main.f4b1fbec182d8427ee8a.js} +3 -3
- package/dist/{main.1183256fc7ce9d0d3fa3.js.map → main.f4b1fbec182d8427ee8a.js.map} +1 -1
- package/dist/pages/aclmanagement.html +2 -2
- package/dist/pages/autocomplete.html +1 -1
- package/dist/pages/choose-repository-type.html +1 -1
- package/dist/pages/cluster-management/clusterInfo.html +3 -3
- package/dist/pages/create-index.html +1 -1
- package/dist/pages/createConnector.html +3 -0
- package/dist/pages/dependencies.html +1 -1
- package/dist/pages/domainRangeInfo.html +2 -2
- package/dist/pages/edit.html +1 -1
- package/dist/pages/explore.html +1 -1
- package/dist/pages/export.html +1 -1
- package/dist/pages/find.html +1 -1
- package/dist/pages/graph-config/saveGraphConfig.html +8 -8
- package/dist/pages/graphs-visualizations.html +7 -7
- package/dist/pages/guides.html +1 -1
- package/dist/pages/home.html +1 -1
- package/dist/pages/import.html +2 -2
- package/dist/pages/jdbc-create.html +1 -1
- package/dist/pages/jdbc.html +1 -1
- package/dist/pages/login.html +1 -1
- package/dist/pages/monitor/backup-and-restore.html +1 -1
- package/dist/pages/monitor/queries.html +1 -1
- package/dist/pages/monitor/resources.html +1 -1
- package/dist/pages/namespaces.html +2 -2
- package/dist/pages/plugins.html +1 -1
- package/dist/pages/rdfClassHierarchyInfo.html +7 -7
- package/dist/pages/rdfrank.html +2 -2
- package/dist/pages/repositories.html +1 -1
- package/dist/pages/repository.html +1 -1
- package/dist/pages/similarity-indexes.html +1 -1
- package/dist/pages/sparql-editor.html +1 -1
- package/dist/pages/sparql-template-create.html +1 -1
- package/dist/pages/sparql-templates.html +1 -1
- package/dist/pages/ux-test1.html +3 -2
- package/dist/pages/webapi.html +2 -2
- package/dist/res/swagger5/index.html +11 -11
- package/dist/shared-components/cjs/onto-cookie-consent_2.cjs.entry.js +1 -1
- package/dist/shared-components/cjs/onto-footer_5.cjs.entry.js +1 -1
- package/dist/shared-components/cjs/onto-language-selector_9.cjs.entry.js +1 -1
- package/dist/shared-components/collection/components/onto-cookie-consent/onto-cookie-consent.css +1 -1
- package/dist/shared-components/collection/components/onto-navbar/onto-navbar.css +1 -1
- package/dist/shared-components/collection/components/onto-operations-notification/onto-operations-notification.css +1 -1
- package/dist/shared-components/esm/onto-cookie-consent_2.entry.js +1 -1
- package/dist/shared-components/esm/onto-footer_5.entry.js +1 -1
- package/dist/shared-components/esm/onto-language-selector_9.entry.js +1 -1
- package/dist/shared-components/shared-components/{p-79cc3329.entry.js → p-46732fef.entry.js} +1 -1
- package/dist/shared-components/shared-components/p-6ca5791e.entry.js +1 -0
- package/dist/shared-components/shared-components/p-7df9e540.entry.js +1 -0
- package/dist/shared-components/shared-components/shared-components.esm.js +1 -1
- package/dist/styleguide.bc9dcbaac347a57319f2.js +2 -0
- package/dist/styleguide.bc9dcbaac347a57319f2.js.map +1 -0
- package/package.json +1 -1
- package/dist/53174.4a1ebee9fa3f2bcebf90.bundle.js.map +0 -1
- package/dist/60560.0a055f16e4792468aabb.bundle.js +0 -2
- package/dist/60560.0a055f16e4792468aabb.bundle.js.map +0 -1
- package/dist/82206.cebb3d642554cf3e0113.bundle.js +0 -2
- package/dist/82206.cebb3d642554cf3e0113.bundle.js.map +0 -1
- package/dist/94519.32958f75080cd121b880.bundle.js +0 -2
- package/dist/94519.32958f75080cd121b880.bundle.js.map +0 -1
- package/dist/legacyWorkbench.59130589967739705b23.js +0 -3
- package/dist/shared-components/shared-components/p-09a97d11.entry.js +0 -1
- package/dist/shared-components/shared-components/p-12b2f278.entry.js +0 -1
- package/dist/styleguide.26e57b17e3dafc7b6bbe.js +0 -2
- package/dist/styleguide.26e57b17e3dafc7b6bbe.js.map +0 -1
- /package/dist/{legacyWorkbench.59130589967739705b23.js.LICENSE.txt → legacyWorkbench.f089c68483807d9f2f74.js.LICENSE.txt} +0 -0
- /package/dist/{main.1183256fc7ce9d0d3fa3.js.LICENSE.txt → main.f4b1fbec182d8427ee8a.js.LICENSE.txt} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const __webpack_esm_id__=99448;export const __webpack_esm_ids__=[99448];export const __webpack_esm_modules__={64088:(e,t,n)=>{n.d(t,{A:()=>r});var a=a||{};a.SingleChild={addPlaceholders:function e(t,n){if(t.children){for(var a=0;a<t.children.length;a++)e(t.children[a]);if(1===t.children.length){var r=1.2*t.size;n&&(r=.1*t.children[0].size),t.children.push({name:"placeholder",size:r})}}},removePlaceholders:function e(t){for(var n=t.length-1;n>=0;n--){var a=t[n];"placeholder"===a.data.name?t.splice(n,1):a.children&&e(a.children)}},centerNodes:function(e){for(var t=0;t<e.length;t++){var n=e[t];if(n.children&&1===n.children.length){var a=n.x-n.children[0].x;n.children[0].x+=a,r(n.children[0],a)}}function r(e,t){if(e.children)for(var n=0;n<e.children.length;n++)e.children[n].x+=t,r(e.children[n],t)}},makePositionsRelativeToZero:function(e){for(var t=e[0].x,n=e[0].y,a=0;a<e.length;a++){var r=e[a];r.x-=t,r.y-=n}}};const r=a},88141:(e,t,n)=>{n.d(t,{A:()=>i}),n(62979);const a={selectAll:n(93462).selectAll};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=a.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)))}};const i=r},99448:(e,t,n)=>{var a=n(75468),r=n(64088),i=n(19935),s=n(93462),c=n(88141);function l(e,t,n,l,o,d,h,u,f,p,g,v,x){return{restrict:"AE",template:'<div id="classChart"></div>',scope:{classHierarchyData:"=",flattenedClassNames:"=",selectedClass:"=",currentSliderValue:"=",showClassInfoPanel:"=",showExternalElements:"=",hidePrefixes:"=",currentBrowserLimit:"="},link:function(h,m,y){!function(h){let m=!1;var y,A,S=s.pack().size([780,780]),C=s.scaleLinear().domain([0,4]).range(["hsl(19, 70%, 90%)","hsl(19, 70%, 50%)"]).interpolate(s.interpolateHcl),R=s.select("#classChart").insert("svg:svg","h2").attr("viewBox","0 0 800 800").attr("preserveAspectRatio","xMidYMid meet").on("dblclick.zoom",null);function E(){return R.append("svg:g").attrs({id:"main-group",transform:"translate(400,400)"})}function P(){return"true"===g.get(v.CLASS_HIERARCHY_HIDE_PREFIXES)}function w(){var e=c.A.Export.getCSSRules("css/rdf-class-hierarchy-labels.css?v=3.2.0-RC1");s.selectAll("#main-group").append("defs"),$("defs").append('<style type="text/css"><![CDATA['+e+"]]></style>"),s.selectAll("g").style("opacity",1);var t=c.A.Export.generateBase64ImageSource("#classChart svg");s.select(this).attrs({href:t,download:"class-hierarchy-"+d.getActiveRepository()+".svg"})}h.hidePrefixes=P();var H,I,T=E();if(!h.classHierarchyData.classCount&&d.getActiveRepository()&&!d.isSystemRepository()){e.loader=!0,e.hierarchyError=!1;const t=g.get(`classHierarchy-selectedGraph-${d.getActiveRepository()}`);n.getClassHierarchyData(null!==t?t.contextID.uri:"").success(function(t,n,a){e.loader=!1,207===n&&u.warning(x.instant("graphexplore.update.diagram"),x.instant("graphexplore.repository.data.changed")),h.classHierarchyData=t,s.select("#download-svg").on("mouseover",w)}).error(function(t){e.loader=!1,e.hierarchyError=getError(t),u.error(x.instant("graphexplore.error.request.failed",{name:p,error:getError(t)}))})}var L,D,k,N,b,F,z,O={};function U(n,c,d,u){D&&D(),k&&k(),s.selectAll("#main-group").remove(),T=E(),r.A.SingleChild.addPlaceholders(n,!0),(A=s.hierarchy(n)).sum(function(e){return e.size}),L=d||A,S(A);var g,v=A.descendants();L.isInFocusTransitive=!0,r.A.SingleChild.removePlaceholders(v),r.A.SingleChild.centerNodes(v),r.A.SingleChild.makePositionsRelativeToZero(v),y||(y=(0,a.A)().attr("class","d3-tip").customPosition(function(e,t){return{top:"inherit",bottom:l.innerHeight-t.clientY+"px",right:l.innerWidth-t.clientX+"px"}}).html(function(e){return e.data.name}),R.call(y));var x=T.selectAll("circle").data(v).enter().append("g");c.doFade&&x.each(function(e){i.A.Transition.fadeIn(s.select(this),550)});var P,w=[],N=x.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?C(e.depth):"#E0D0D0"}).each(function(e){if(e.circle=s.select(this),e.data.name!==p){var t=e.data.name;w.push({name:t}),O[[t]]=e,e.circle.classed("rdf-class",!0),e.circle.on("mouseover",function(t){c.noPrefixes||e.textHidden?y.show(e,t):y.hide(e)}),e.circle.on("mouseout",y.hide)}}).on("gdb-focus",(e,t)=>I(t)).on("gdb-zoom",(e,t)=>Z(t));function b(e){s.selectAll(".selected").classed("selected",e.selected=!1),e.circle.classed("selected",e.selected=!0),P=e}function $(){h.showClassInfoPanel=!1}w&&(w=_.uniqBy(w,"name"),h.flattenedClassNames=w);var F=i.A.Click.delayDblClick();s.selectAll(".parent, .topLevelParent, .child, .root").call(F),I=function(e){Z(e),e.data.name===p?($(),s.selectAll(".selected").classed("selected",!1)):(b(e),m||(h.selectedClass=P,h.showClassInfoPanel=!0),h.$on("sidePanelClosed",function(t){s.selectAll(".selected").classed("selected",e.selected=!1)}))},F.on("click",function(e,t){t.data.id&&l.history.pushState({id:t.data.id},"classHierarchyPage"+t.data.id,"hierarchy#"+t.data.id),y.hide(),I(t)}),F.on("dblclick",function(t,a){a!==n&&(y.hide(),b(a),e.$broadcast("goToDomainRangeGraphView",P,L),t.stopPropagation())});var z=0;R.on("wheel",function(e){y.hide(),e.preventDefault(),e.stopPropagation();var t=(new Date).getTime();if(t-z>100){z=t;var n="";e.deltaY<=-1?n="in":e.deltaY>=1&&(n="out");var a=e.target.__data__;if(a||(a=L),"in"===n){if(a!==L){for(;a.parent&&!a.parent.isInFocusTransitive;)a=a.parent;a.depth<L.depth&&(a=L)}if(a===L&&a.children){for(var r=a.children[0],i=1;i<a.children.length;i++)a.children[i].sortingRank>r.sortingRank&&(r=a.children[i]);r.children&&(a=r)}else a.children||(a=a.parent);Z(a,!0)}else"out"===n&&(a=L.parent)&&Z(a,!0);L.data.name===p&&l.history.replaceState({id:1},"classHierarchyPage1","hierarchy#1"),Y()}});var U=T.selectAll("text").data(v).enter().append("text").attr("class",function(e){return e.children&&e.children.length?"label":"label child-label"}).each(function(e){e.textSel=s.select(this)});c.noPrefixes?(U.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))}),U.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)})):U.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)}),U.style("display",function(e){return e.parent&&e.parent.data===L.data?(e.textHidden=this.textContent.indexOf("...")+3===this.textContent.length,null):(e.textHidden=!0,"none")}),c.doFade&&!c.keepPrevState&&U.each(function(e){i.A.Transition.fadeIn(s.select(this),550)}),H=function(){function e(e){e&&N.each(function(t){+e===t.data.id&&I(t)})}var n=t.hash();l.onpopstate=function(t){t.state&&e(t.state.id)},e(n)};var B=T.selectAll("circle, text");function V(e,t){var n=800/e[2];g=e,B.attr("transform",function(t){return"translate("+(t.x-e[0])*n+","+(t.y-e[1])*n+")"}),N.attr("r",function(e){return e.r*n}),t&&U.each(function(e){e.data.fullName!==L.data.topLevelParentUri&&L.data.topLevelParentUri!==p||(e.textSel.style("display","none"),L.children&&L.children.length?_.each(L.children,function(e){e.textSel.style("display","inline")}):L.textSel.style("display","inline"),L.parent&&_.each(L.parent.children,function(e){e.data.name!==L.data.name&&e.textSel.style("display","inline")}))}),U.style("font-size",function(e){return c.noPrefixes?i.A.Text.calcFontSize(e.noPrefixName,e.r*n):i.A.Text.calcFontSize(e.data.name,e.r*n)}).text(function(e){return c.noPrefixes?i.A.Text.getTextWithElipsisIfNeeded(e.noPrefixName,e.r*n/3):i.A.Text.getTextWithElipsisIfNeeded(e.data.name,e.r*n/3)})}function M(e){var t=2*e+20;return 2*e/t<.3&&(t=2*e+2),t}function W(e){!e.isInFocusTransitive&&e.parent&&e.parent.isInFocusTransitive?(e.textHidden=this.textContent.indexOf("...")+3===this.textContent.length,this.style.display=""):(e.textHidden=!0,this.style.display="none")}function Z(e,t){if(o(function(){h.showExternalElements=e.data.name===p}),L!==e&&(e.data.id&&l.history.replaceState({id:e.data.id},"classHierarchyPage"+e.data.id,"hierarchy#"+e.data.id),e.children||(e=e.parent,L!==e))){if(t&&($(),s.selectAll(".selected").classed("selected",!1)),L.parent)for(var n=L;n;)n.isInFocusTransitive=!1,n=n.parent;for(n=e;n;)n.isInFocusTransitive=!!n.children,n=n.parent;2*(L=e).r/(2*L.r+20)<.3||h.currentSliderValue>h.currentBrowserLimit?(V([L.x,L.y,M(L.r)]),U.each(function(e){W.call(this,e)})):s.transition().duration(f).tween("zoom",function(e){var t=s.interpolateZoom(g,[L.x,L.y,M(L.r)]);return function(e){V(t(e))}}).selectAll("text").each(W)}}V([L.x,L.y,M(L.r)],u),D=h.$on("rootFocus",function(){l.history.pushState({id:1},"classHierarchyPage1","hierarchy#1"),I(A)}),k=h.$on("classSearch",function(e){I(e)})}function Y(){const t=h.classHierarchyData.classCount;let n=g.get(v.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE);(!n||n>t)&&(n=t,g.set(v.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE,n)),e.$broadcast("classCount",t,n)}window.addEventListener("resize",Y),window.addEventListener("beforeunload",function e(){window.removeEventListener("resize",Y),window.removeEventListener("beforeunload",e)}),h.$watch("classHierarchyData",function(){N&&N(),b&&b(),F&&F(),z&&z();var e=P();if(h.classHierarchyData.classCount){Y();var t=_.cloneDeep(h.classHierarchyData);var n,a,r=s.hierarchy(t).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});function d(e,t){const r={keepPrevState:!0,noPrefixes:P()};a=r.noPrefixes,U(n||e,r,L,!0),o(()=>{g.set(v.CLASS_HIERARCHY_SWITCH_PREFIXES,t),H(),m=!1},70)}function u(e,r,i){if(!e)return;g.set(v.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE,e),n={name:p,children:[]};const s=new Set;for(let t=1;t<=e;t++)s.add(r[t].data.id),r[t].parent===r[0]&&n.children.push(r[t].data);(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),i?(a=angular.isUndefined(a)?P():a,U(n,{noPrefixes:a})):d(t)}var i,c=g.get(v.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE);if(c)u(c,r);else{var l={doFade:!0,keepPrevState:!0,noPrefixes:P()};U(t,l),H()}N=h.$watch("hidePrefixes",function(n){angular.isUndefined(n)||e?e=void 0:o(function(){m=!0,function(e){angular.isUndefined(e)||g.set(v.CLASS_HIERARCHY_HIDE_PREFIXES,e)}(n),d(t,!0)},50)},!0),b=h.$watch("currentSliderValue",function(e){u(e,r,!0)},!0),z=h.$on("onEnterKeypressSearchAction",function(e){i&&I(i)}),F=h.$on("searchedClass",function(e,t){(i=O[t.name])&&I(i)})}},!0)}(h)}}}n(32150),angular.module("graphdb.framework.graphexplore.directives.class",["graphdb.framework.graphexplore.controllers.class","graphdb.framework.utils.localstorageadapter"]).constant("ZOOM_DURATION",500).constant("ROOT_OBJ_NAME","RDF Class Hierarchy").directive("rdfClassHierarchy",l),l.$inject=["$rootScope","$location","GraphDataRestService","$window","$timeout","$repositories","$licenseService","toastr","ZOOM_DURATION","ROOT_OBJ_NAME","LocalStorageAdapter","LSKeys","$translate"]}};
|
|
2
|
-
//# sourceMappingURL=99448.
|
|
1
|
+
export const __webpack_esm_id__=99448;export const __webpack_esm_ids__=[99448];export const __webpack_esm_modules__={64088:(e,t,n)=>{n.d(t,{A:()=>r});var a=a||{};a.SingleChild={addPlaceholders:function e(t,n){if(t.children){for(var a=0;a<t.children.length;a++)e(t.children[a]);if(1===t.children.length){var r=1.2*t.size;n&&(r=.1*t.children[0].size),t.children.push({name:"placeholder",size:r})}}},removePlaceholders:function e(t){for(var n=t.length-1;n>=0;n--){var a=t[n];"placeholder"===a.data.name?t.splice(n,1):a.children&&e(a.children)}},centerNodes:function(e){for(var t=0;t<e.length;t++){var n=e[t];if(n.children&&1===n.children.length){var a=n.x-n.children[0].x;n.children[0].x+=a,r(n.children[0],a)}}function r(e,t){if(e.children)for(var n=0;n<e.children.length;n++)e.children[n].x+=t,r(e.children[n],t)}},makePositionsRelativeToZero:function(e){for(var t=e[0].x,n=e[0].y,a=0;a<e.length;a++){var r=e[a];r.x-=t,r.y-=n}}};const r=a},88141:(e,t,n)=>{n.d(t,{A:()=>i}),n(62979);const a={selectAll:n(93462).selectAll};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=a.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)))}};const i=r},99448:(e,t,n)=>{var a=n(75468),r=n(64088),i=n(19935),s=n(93462),c=n(88141);function l(e,t,n,l,o,d,h,u,f,p,g,v,x){return{restrict:"AE",template:'<div id="classChart"></div>',scope:{classHierarchyData:"=",flattenedClassNames:"=",selectedClass:"=",currentSliderValue:"=",showClassInfoPanel:"=",showExternalElements:"=",hidePrefixes:"=",currentBrowserLimit:"="},link:function(h,m,y){!function(h){let m=!1;var y,A,S=s.pack().size([780,780]),C=s.scaleLinear().domain([0,4]).range(["hsl(19, 70%, 90%)","hsl(19, 70%, 50%)"]).interpolate(s.interpolateHcl),R=s.select("#classChart").insert("svg:svg","h2").attr("viewBox","0 0 800 800").attr("preserveAspectRatio","xMidYMid meet").on("dblclick.zoom",null);function E(){return R.append("svg:g").attrs({id:"main-group",transform:"translate(400,400)"})}function P(){return"true"===g.get(v.CLASS_HIERARCHY_HIDE_PREFIXES)}function w(){var e=c.A.Export.getCSSRules("css/rdf-class-hierarchy-labels.css?v=3.2.0-RC2");s.selectAll("#main-group").append("defs"),$("defs").append('<style type="text/css"><![CDATA['+e+"]]></style>"),s.selectAll("g").style("opacity",1);var t=c.A.Export.generateBase64ImageSource("#classChart svg");s.select(this).attrs({href:t,download:"class-hierarchy-"+d.getActiveRepository()+".svg"})}h.hidePrefixes=P();var H,I,T=E();if(!h.classHierarchyData.classCount&&d.getActiveRepository()&&!d.isSystemRepository()){e.loader=!0,e.hierarchyError=!1;const t=g.get(`classHierarchy-selectedGraph-${d.getActiveRepository()}`);n.getClassHierarchyData(null!==t?t.contextID.uri:"").success(function(t,n,a){e.loader=!1,207===n&&u.warning(x.instant("graphexplore.update.diagram"),x.instant("graphexplore.repository.data.changed")),h.classHierarchyData=t,s.select("#download-svg").on("mouseover",w)}).error(function(t){e.loader=!1,e.hierarchyError=getError(t),u.error(x.instant("graphexplore.error.request.failed",{name:p,error:getError(t)}))})}var L,D,k,N,b,F,z,O={};function U(n,c,d,u){D&&D(),k&&k(),s.selectAll("#main-group").remove(),T=E(),r.A.SingleChild.addPlaceholders(n,!0),(A=s.hierarchy(n)).sum(function(e){return e.size}),L=d||A,S(A);var g,v=A.descendants();L.isInFocusTransitive=!0,r.A.SingleChild.removePlaceholders(v),r.A.SingleChild.centerNodes(v),r.A.SingleChild.makePositionsRelativeToZero(v),y||(y=(0,a.A)().attr("class","d3-tip").customPosition(function(e,t){return{top:"inherit",bottom:l.innerHeight-t.clientY+"px",right:l.innerWidth-t.clientX+"px"}}).html(function(e){return e.data.name}),R.call(y));var x=T.selectAll("circle").data(v).enter().append("g");c.doFade&&x.each(function(e){i.A.Transition.fadeIn(s.select(this),550)});var P,w=[],N=x.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?C(e.depth):"#E0D0D0"}).each(function(e){if(e.circle=s.select(this),e.data.name!==p){var t=e.data.name;w.push({name:t}),O[[t]]=e,e.circle.classed("rdf-class",!0),e.circle.on("mouseover",function(t){c.noPrefixes||e.textHidden?y.show(e,t):y.hide(e)}),e.circle.on("mouseout",y.hide)}}).on("gdb-focus",(e,t)=>I(t)).on("gdb-zoom",(e,t)=>Z(t));function b(e){s.selectAll(".selected").classed("selected",e.selected=!1),e.circle.classed("selected",e.selected=!0),P=e}function $(){h.showClassInfoPanel=!1}w&&(w=_.uniqBy(w,"name"),h.flattenedClassNames=w);var F=i.A.Click.delayDblClick();s.selectAll(".parent, .topLevelParent, .child, .root").call(F),I=function(e){Z(e),e.data.name===p?($(),s.selectAll(".selected").classed("selected",!1)):(b(e),m||(h.selectedClass=P,h.showClassInfoPanel=!0),h.$on("sidePanelClosed",function(t){s.selectAll(".selected").classed("selected",e.selected=!1)}))},F.on("click",function(e,t){t.data.id&&l.history.pushState({id:t.data.id},"classHierarchyPage"+t.data.id,"hierarchy#"+t.data.id),y.hide(),I(t)}),F.on("dblclick",function(t,a){a!==n&&(y.hide(),b(a),e.$broadcast("goToDomainRangeGraphView",P,L),t.stopPropagation())});var z=0;R.on("wheel",function(e){y.hide(),e.preventDefault(),e.stopPropagation();var t=(new Date).getTime();if(t-z>100){z=t;var n="";e.deltaY<=-1?n="in":e.deltaY>=1&&(n="out");var a=e.target.__data__;if(a||(a=L),"in"===n){if(a!==L){for(;a.parent&&!a.parent.isInFocusTransitive;)a=a.parent;a.depth<L.depth&&(a=L)}if(a===L&&a.children){for(var r=a.children[0],i=1;i<a.children.length;i++)a.children[i].sortingRank>r.sortingRank&&(r=a.children[i]);r.children&&(a=r)}else a.children||(a=a.parent);Z(a,!0)}else"out"===n&&(a=L.parent)&&Z(a,!0);L.data.name===p&&l.history.replaceState({id:1},"classHierarchyPage1","hierarchy#1"),Y()}});var U=T.selectAll("text").data(v).enter().append("text").attr("class",function(e){return e.children&&e.children.length?"label":"label child-label"}).each(function(e){e.textSel=s.select(this)});c.noPrefixes?(U.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))}),U.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)})):U.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)}),U.style("display",function(e){return e.parent&&e.parent.data===L.data?(e.textHidden=this.textContent.indexOf("...")+3===this.textContent.length,null):(e.textHidden=!0,"none")}),c.doFade&&!c.keepPrevState&&U.each(function(e){i.A.Transition.fadeIn(s.select(this),550)}),H=function(){function e(e){e&&N.each(function(t){+e===t.data.id&&I(t)})}var n=t.hash();l.onpopstate=function(t){t.state&&e(t.state.id)},e(n)};var B=T.selectAll("circle, text");function V(e,t){var n=800/e[2];g=e,B.attr("transform",function(t){return"translate("+(t.x-e[0])*n+","+(t.y-e[1])*n+")"}),N.attr("r",function(e){return e.r*n}),t&&U.each(function(e){e.data.fullName!==L.data.topLevelParentUri&&L.data.topLevelParentUri!==p||(e.textSel.style("display","none"),L.children&&L.children.length?_.each(L.children,function(e){e.textSel.style("display","inline")}):L.textSel.style("display","inline"),L.parent&&_.each(L.parent.children,function(e){e.data.name!==L.data.name&&e.textSel.style("display","inline")}))}),U.style("font-size",function(e){return c.noPrefixes?i.A.Text.calcFontSize(e.noPrefixName,e.r*n):i.A.Text.calcFontSize(e.data.name,e.r*n)}).text(function(e){return c.noPrefixes?i.A.Text.getTextWithElipsisIfNeeded(e.noPrefixName,e.r*n/3):i.A.Text.getTextWithElipsisIfNeeded(e.data.name,e.r*n/3)})}function M(e){var t=2*e+20;return 2*e/t<.3&&(t=2*e+2),t}function W(e){!e.isInFocusTransitive&&e.parent&&e.parent.isInFocusTransitive?(e.textHidden=this.textContent.indexOf("...")+3===this.textContent.length,this.style.display=""):(e.textHidden=!0,this.style.display="none")}function Z(e,t){if(o(function(){h.showExternalElements=e.data.name===p}),L!==e&&(e.data.id&&l.history.replaceState({id:e.data.id},"classHierarchyPage"+e.data.id,"hierarchy#"+e.data.id),e.children||(e=e.parent,L!==e))){if(t&&($(),s.selectAll(".selected").classed("selected",!1)),L.parent)for(var n=L;n;)n.isInFocusTransitive=!1,n=n.parent;for(n=e;n;)n.isInFocusTransitive=!!n.children,n=n.parent;2*(L=e).r/(2*L.r+20)<.3||h.currentSliderValue>h.currentBrowserLimit?(V([L.x,L.y,M(L.r)]),U.each(function(e){W.call(this,e)})):s.transition().duration(f).tween("zoom",function(e){var t=s.interpolateZoom(g,[L.x,L.y,M(L.r)]);return function(e){V(t(e))}}).selectAll("text").each(W)}}V([L.x,L.y,M(L.r)],u),D=h.$on("rootFocus",function(){l.history.pushState({id:1},"classHierarchyPage1","hierarchy#1"),I(A)}),k=h.$on("classSearch",function(e){I(e)})}function Y(){const t=h.classHierarchyData.classCount;let n=g.get(v.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE);(!n||n>t)&&(n=t,g.set(v.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE,n)),e.$broadcast("classCount",t,n)}window.addEventListener("resize",Y),window.addEventListener("beforeunload",function e(){window.removeEventListener("resize",Y),window.removeEventListener("beforeunload",e)}),h.$watch("classHierarchyData",function(){N&&N(),b&&b(),F&&F(),z&&z();var e=P();if(h.classHierarchyData.classCount){Y();var t=_.cloneDeep(h.classHierarchyData);var n,a,r=s.hierarchy(t).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});function d(e,t){const r={keepPrevState:!0,noPrefixes:P()};a=r.noPrefixes,U(n||e,r,L,!0),o(()=>{g.set(v.CLASS_HIERARCHY_SWITCH_PREFIXES,t),H(),m=!1},70)}function u(e,r,i){if(!e)return;g.set(v.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE,e),n={name:p,children:[]};const s=new Set;for(let t=1;t<=e;t++)s.add(r[t].data.id),r[t].parent===r[0]&&n.children.push(r[t].data);(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),i?(a=angular.isUndefined(a)?P():a,U(n,{noPrefixes:a})):d(t)}var i,c=g.get(v.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE);if(c)u(c,r);else{var l={doFade:!0,keepPrevState:!0,noPrefixes:P()};U(t,l),H()}N=h.$watch("hidePrefixes",function(n){angular.isUndefined(n)||e?e=void 0:o(function(){m=!0,function(e){angular.isUndefined(e)||g.set(v.CLASS_HIERARCHY_HIDE_PREFIXES,e)}(n),d(t,!0)},50)},!0),b=h.$watch("currentSliderValue",function(e){u(e,r,!0)},!0),z=h.$on("onEnterKeypressSearchAction",function(e){i&&I(i)}),F=h.$on("searchedClass",function(e,t){(i=O[t.name])&&I(i)})}},!0)}(h)}}}n(32150),angular.module("graphdb.framework.graphexplore.directives.class",["graphdb.framework.graphexplore.controllers.class","graphdb.framework.utils.localstorageadapter"]).constant("ZOOM_DURATION",500).constant("ROOT_OBJ_NAME","RDF Class Hierarchy").directive("rdfClassHierarchy",l),l.$inject=["$rootScope","$location","GraphDataRestService","$window","$timeout","$repositories","$licenseService","toastr","ZOOM_DURATION","ROOT_OBJ_NAME","LocalStorageAdapter","LSKeys","$translate"]}};
|
|
2
|
+
//# sourceMappingURL=99448.8c045dc098cc67d199aa.bundle.js.map
|
package/dist/{99448.30713a59be1313c4b089.bundle.js.map → 99448.8c045dc098cc67d199aa.bundle.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"99448.30713a59be1313c4b089.bundle.js","mappings":"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","sources":["webpack://root-config/./packages/legacy-workbench/src/js/lib/common/circle-packing.js","webpack://root-config/./packages/legacy-workbench/src/js/lib/common/svg-export.js","webpack://root-config/./packages/legacy-workbench/src/js/angular/graphexplore/directives/rdf-class-hierarchy.directive.js"],"sourcesContent":["var CirclePacking = CirclePacking || {};\n\nCirclePacking.SingleChild = function () {\n /*\n Functions that enable single child circles to display properly, see\n http://stackoverflow.com/questions/22307486/d3-js-packed-circle-layout-how-to-adjust-child-radius\n */\n function addPlaceholders(node, first) {\n if (node.children) {\n for (var i = 0; i < node.children.length; i++) {\n var child = node.children[i];\n addPlaceholders(child);\n }\n\n if (node.children.length === 1) {\n var placeholderSize = node.size * 1.2;\n if (first) {\n placeholderSize = node.children[0].size * 0.1;\n }\n node.children.push({\n name: 'placeholder', size: placeholderSize,\n // children: []\n });\n }\n }\n }\n\n function removePlaceholders(nodes) {\n for (var i = nodes.length - 1; i >= 0; i--) {\n var node = nodes[i];\n\n if (node.data.name === 'placeholder') {\n nodes.splice(i, 1);\n } else {\n if (node.children) {\n removePlaceholders(node.children);\n }\n }\n }\n }\n\n function centerNodes(nodes) {\n for (var i = 0; i < nodes.length; i++) {\n var node = nodes[i];\n\n if (node.children) {\n if (node.children.length === 1) {\n var offset = node.x - node.children[0].x;\n node.children[0].x += offset;\n reposition(node.children[0], offset);\n }\n }\n }\n\n function reposition(node, offset) {\n if (node.children) {\n for (var i = 0; i < node.children.length; i++) {\n node.children[i].x += offset;\n reposition(node.children[i], offset);\n }\n }\n }\n }\n\n function makePositionsRelativeToZero(nodes) {\n //use this to have vis centered at 0,0,0 (easier for positioning)\n var offsetX = nodes[0].x;\n var offsetY = nodes[0].y;\n\n for (var i = 0; i < nodes.length; i++) {\n\n var node = nodes[i];\n\n node.x -= offsetX;\n node.y -= offsetY;\n }\n }\n\n return {\n addPlaceholders: addPlaceholders,\n removePlaceholders: removePlaceholders,\n centerNodes: centerNodes,\n makePositionsRelativeToZero: makePositionsRelativeToZero\n }\n}();\n\nexport default CirclePacking;\n","import 'lib/d3.patch.js'\nimport {selectAll} from 'd3';\n\nconst d3 = {selectAll};\nvar SVG = SVG || {};\n\nSVG.Export = function () {\n function getCSSRules(cssSourceFilePath) {\n const cssRules = $('link[href=\"' + cssSourceFilePath + '\"]')[0].sheet.rules;\n let cssStr = \"\";\n _.each(cssRules, function (value) {\n cssStr += value.cssText;\n });\n return cssStr;\n }\n\n function generateBase64ImageSource(svgSelectorClass) {\n if (!svgSelectorClass) {\n svgSelectorClass = \"svg\";\n }\n // add needed xml namespace\n const exportSvg = d3.selectAll(svgSelectorClass)\n .attr(\"version\", \"1.1\")\n .attr(\"xmlns\", \"http://www.w3.org/2000/svg\")\n .node().parentNode.innerHTML;\n\n // convert selected html to base64\n return \"data:image/svg+xml;charset=utf-8;base64,\" + btoa(unescape(encodeURIComponent(exportSvg)));\n }\n\n return {\n getCSSRules: getCSSRules,\n generateBase64ImageSource: generateBase64ImageSource\n };\n}();\n\nexport default SVG;\n","import d3tip from 'lib/d3-tip/d3-tip-patch';\nimport CirclePacking from 'lib/common/circle-packing';\nimport D3 from 'lib/common/d3-utils';\nimport * as d3 from 'd3';\nimport SVG from 'lib/common/svg-export';\nimport 'angular/utils/local-storage-adapter';\n\nangular\n .module('graphdb.framework.graphexplore.directives.class', [\n 'graphdb.framework.graphexplore.controllers.class',\n 'graphdb.framework.utils.localstorageadapter'\n ])\n .constant(\"ZOOM_DURATION\", 500)\n .constant(\"ROOT_OBJ_NAME\", \"RDF Class Hierarchy\")\n .directive('rdfClassHierarchy', classHierarchyDirective);\n\nclassHierarchyDirective.$inject = ['$rootScope', '$location', 'GraphDataRestService', '$window', '$timeout', '$repositories', '$licenseService', 'toastr', 'ZOOM_DURATION', 'ROOT_OBJ_NAME', 'LocalStorageAdapter', 'LSKeys', '$translate'];\n\nfunction classHierarchyDirective($rootScope, $location, GraphDataRestService, $window, $timeout, $repositories, $licenseService, toastr, ZOOM_DURATION, ROOT_OBJ_NAME, LocalStorageAdapter, LSKeys, $translate) {\n return {\n restrict: 'AE',\n template: '<div id=\"classChart\"></div>',\n scope: {\n classHierarchyData: '=',\n flattenedClassNames: '=',\n selectedClass: '=',\n currentSliderValue: '=',\n showClassInfoPanel: '=',\n showExternalElements: '=',\n hidePrefixes: '=',\n currentBrowserLimit: '='\n },\n link: linkFunc\n };\n\n function linkFunc(scope, element, attrs) {\n renderCirclePacking(scope, element);\n }\n\n function renderCirclePacking(scope, element) {\n /**\n * A boolean flag that determines whether the opening of the side info panel\n * should be suppressed when focusing on the chart while a class is selected.\n */\n let suppressPanelOpen = false;\n\n var width = 800,\n height = 800,\n diameter = height,\n margin = 20,\n tip,\n rootHierarchy;\n\n var packLayout = d3.pack()\n .size([diameter - margin, diameter - margin]);\n\n var color = d3.scaleLinear()\n .domain([0, 4])\n .range([\"hsl(19, 70%, 90%)\", \"hsl(19, 70%, 50%)\"])\n .interpolate(d3.interpolateHcl);\n\n var svg = d3.select(\"#classChart\")\n .insert(\"svg:svg\", \"h2\")\n .attr(\"viewBox\", \"0 0 \" + width + \" \" + height)\n .attr(\"preserveAspectRatio\", \"xMidYMid meet\")\n .on(\"dblclick.zoom\", null);\n\n function appendMainGroup() {\n return svg.append(\"svg:g\")\n .attrs({\n id: \"main-group\",\n transform: \"translate(\" + width / 2 + \",\" + height / 2 + \")\"\n });\n }\n\n function savePrefixesState(hidePrefixes) {\n if (!angular.isUndefined(hidePrefixes)) {\n LocalStorageAdapter.set(LSKeys.CLASS_HIERARCHY_HIDE_PREFIXES, hidePrefixes);\n }\n }\n\n function getPrefixesState() {\n return LocalStorageAdapter.get(LSKeys.CLASS_HIERARCHY_HIDE_PREFIXES) === \"true\";\n }\n\n /*\n * Prepares SVG document image export by adding xml namespaces and\n * additional style information\n */\n function prepareForSVGImageExport() {\n // get css rules for the diagram\n var cssRules = SVG.Export.getCSSRules(\"css/rdf-class-hierarchy-labels.css?v=3.2.0-RC1\");\n // inline css rules in a defs tag\n d3.selectAll(\"#main-group\")\n .append(\"defs\");\n $(\"defs\").append('<style type=\"text/css\"><![CDATA[' + cssRules + ']]></style>');\n\n // switch opacity to visible\n d3.selectAll(\"g\")\n .style(\"opacity\", 1);\n\n // convert selected html to base64\n var imgSrc = SVG.Export.generateBase64ImageSource(\"#classChart svg\");\n\n // set the binary image and a name for the downloadable file on the export button\n d3.select(this).attrs({\n href: imgSrc,\n download: \"class-hierarchy-\" + $repositories.getActiveRepository() + \".svg\"\n });\n }\n\n scope.hidePrefixes = getPrefixesState();\n\n var g = appendMainGroup();\n\n if (!scope.classHierarchyData.classCount && $repositories.getActiveRepository() && !$repositories.isSystemRepository()) {\n $rootScope.loader = true;\n $rootScope.hierarchyError = false;\n const selGraphFromCache = LocalStorageAdapter.get(`classHierarchy-selectedGraph-${$repositories.getActiveRepository()}`);\n GraphDataRestService.getClassHierarchyData(selGraphFromCache !== null ? selGraphFromCache.contextID.uri : \"\")\n .success(function (response, status, headers) {\n $rootScope.loader = false;\n if (status === 207) {\n toastr.warning($translate.instant('graphexplore.update.diagram'), $translate.instant('graphexplore.repository.data.changed'));\n }\n scope.classHierarchyData = response;\n\n d3.select(\"#download-svg\")\n .on(\"mouseover\", prepareForSVGImageExport);\n\n }).error(function (response) {\n $rootScope.loader = false;\n $rootScope.hierarchyError = getError(response);\n toastr.error($translate.instant('graphexplore.error.request.failed', {name: ROOT_OBJ_NAME, error: getError(response)}));\n });\n }\n\n\n var autoZoomToPreviousState,\n doFocus;\n\n var focus,\n rootFocusEvent,\n classSearchEvent,\n flattenedClassData = {};\n\n function drawDiagram(root, config, newFocus, switchPrefixes) {\n if (rootFocusEvent) rootFocusEvent();\n if (classSearchEvent) classSearchEvent();\n // remove old group tag containing the diagram\n d3.selectAll(\"#main-group\").remove();\n\n // append new empty group tag in order to rerender new diagram\n g = appendMainGroup();\n\n // fix for single child classes\n CirclePacking.SingleChild.addPlaceholders(root, true);\n\n rootHierarchy = d3.hierarchy(root);\n rootHierarchy.sum(function (d) {\n return d.size;\n })\n focus = newFocus ? newFocus : rootHierarchy;\n\n packLayout(rootHierarchy)\n\n var nodes = rootHierarchy.descendants(),\n view;\n\n focus.isInFocusTransitive = true;\n\n // fixes for single child classes\n CirclePacking.SingleChild.removePlaceholders(nodes);\n CirclePacking.SingleChild.centerNodes(nodes);\n CirclePacking.SingleChild.makePositionsRelativeToZero(nodes);\n\n if (!tip) {\n tip = d3tip()\n .attr('class', 'd3-tip')\n .customPosition(function (d, event) {\n return {\n top: 'inherit',\n bottom: ($window.innerHeight - event.clientY) + 'px',\n right: ($window.innerWidth - event.clientX) + 'px'\n };\n })\n .html(function (d) {\n return d.data.name;\n });\n svg.call(tip);\n }\n\n var circleGroup = g.selectAll(\"circle\")\n .data(nodes)\n .enter().append(\"g\");\n\n if (config.doFade) {\n circleGroup.each(function (d) {\n D3.Transition.fadeIn(d3.select(this), 550);\n });\n }\n\n var flattenedClassNames = [];\n\n var circle = circleGroup\n .append(\"circle\")\n .attr(\"class\", function (d) {\n return d.data.role;\n })\n .attr(\"guide-selector\", function (d) {\n return \"class-\" + d.data.name;\n })\n .style(\"fill\", function (d) {\n //return colors[d.depth % 6];\n return d.children ? color(d.depth) : \"#E0D0D0\";\n })\n .each(function (d) {\n d.circle = d3.select(this);\n if (d.data.name !== ROOT_OBJ_NAME) {\n var key = d.data.name;\n flattenedClassNames.push({name: key});\n flattenedClassData[[key]] = d;\n\n d.circle.classed(\"rdf-class\", true);\n d.circle.on('mouseover', function (event) {\n if (config.noPrefixes) {\n tip.show(d, event);\n } else if (!d.textHidden) {\n tip.hide(d);\n } else {\n tip.show(d, event);\n }\n });\n d.circle.on('mouseout', tip.hide);\n }\n })\n // custom event used when user is following a guide\n .on(\"gdb-focus\", (event, d) => doFocus(d))\n .on(\"gdb-zoom\", (event, d) => zoom(d));\n\n\n if (flattenedClassNames) {\n flattenedClassNames = _.uniqBy(flattenedClassNames, 'name');\n scope.flattenedClassNames = flattenedClassNames;\n }\n\n var selectedClass;\n\n function getCurrentClassDataAndMarkSelected(obj) {\n d3.selectAll(\".selected\").classed(\"selected\", obj.selected = false);\n obj.circle.classed(\"selected\", obj.selected = true);\n selectedClass = obj;\n }\n\n function showClassInfoPanel() {\n scope.selectedClass = selectedClass;\n scope.showClassInfoPanel = true;\n }\n\n function closeClassInfoPanel() {\n scope.showClassInfoPanel = false;\n }\n\n function goToDomainRangeGraphView() {\n $rootScope.$broadcast('goToDomainRangeGraphView', selectedClass, focus);\n }\n\n var clickCancel = D3.Click.delayDblClick();\n d3.selectAll(\".parent, .topLevelParent, .child, .root\")\n .call(clickCancel);\n\n doFocus = function (obj) {\n zoom(obj);\n\n if (obj.data.name === ROOT_OBJ_NAME) {\n closeClassInfoPanel();\n d3.selectAll(\".selected\").classed(\"selected\", false);\n } else {\n getCurrentClassDataAndMarkSelected(obj);\n if (!suppressPanelOpen) {\n showClassInfoPanel();\n }\n\n // FIXME: is it ok to bind this event handler every time and not just once?\n scope.$on('sidePanelClosed', function (event) {\n d3.selectAll(\".selected\").classed(\"selected\", obj.selected = false);\n });\n }\n\n\n //do not stop event propagation here\n };\n\n clickCancel.on(\"click\", function (event, obj) {\n // add clicked class to browser history\n if (obj.data.id) {\n $window.history.pushState({id: obj.data.id}, \"classHierarchyPage\" + obj.data.id, \"hierarchy#\" + obj.data.id);\n }\n\n //hide current d3-tip tooltip\n tip.hide();\n\n doFocus(obj);\n });\n\n clickCancel.on(\"dblclick\", function (event, obj) {\n if (obj === root) {\n return;\n }\n // hide current d3-tip tooltip in order not to appear in the next view\n tip.hide();\n getCurrentClassDataAndMarkSelected(obj);\n goToDomainRangeGraphView();\n\n event.stopPropagation();\n });\n\n var lastTimeWheel = 0;\n svg.on('wheel', function (event) {\n // hide current d3-tip tooltip\n tip.hide();\n\n event.preventDefault();\n event.stopPropagation();\n\n // at least 100ms must have passed since last time we updated\n var now = new Date().getTime();\n if (now - lastTimeWheel > 100) {\n lastTimeWheel = now;\n } else {\n return;\n }\n\n var direction = '';\n if (event.deltaY <= -1) {\n direction = 'in';\n } else if (event.deltaY >= 1) {\n direction = 'out';\n }\n\n var obj = event.target.__data__;\n\n if (!obj) {\n // scroll outside the big circle\n obj = focus;\n }\n\n if (direction === 'in') {\n // determine object to zoom to\n\n if (obj !== focus) {\n // consider the object on which the scroll event occurred\n // and find the furthest parent that has no focused children\n while (obj.parent && !obj.parent.isInFocusTransitive) {\n obj = obj.parent;\n }\n if (obj.depth < focus.depth) {\n // however if that parent is of lower depth than the focus we ignore it\n obj = focus;\n }\n }\n\n if (obj === focus && obj.children) {\n // if object is in focus and it has children we zoom to its biggest child\n // TODO: sort children on backend\n var newobj = obj.children[0];\n for (var i = 1; i < obj.children.length; i++) {\n if (obj.children[i].sortingRank > newobj.sortingRank) {\n newobj = obj.children[i];\n }\n }\n if (newobj.children) {\n // Use the child only if it has children\n obj = newobj;\n }\n } else if (!obj.children) {\n // If node has no children use its parent instead\n obj = obj.parent;\n }\n\n zoom(obj, true);\n } else if (direction === 'out') {\n // zooming out simply goes one parent up\n obj = focus.parent;\n if (obj) {\n zoom(obj, true);\n }\n }\n\n if (focus.data.name === ROOT_OBJ_NAME) {\n $window.history.replaceState({id: 1}, \"classHierarchyPage1\", \"hierarchy#1\");\n }\n\n // redraw slider on zoom out\n sendSliderData();\n });\n\n var text = g.selectAll(\"text\")\n .data(nodes)\n .enter().append(\"text\")\n .attr(\"class\", function (d) {\n return d.children && d.children.length ? \"label\" : \"label child-label\";\n })\n .each(function (d) {\n d.textSel = d3.select(this);\n });\n\n function trimPrefixes(d) {\n var idx = d.data.name.indexOf(\":\");\n var absUriIdx = d.data.name.indexOf(\"http://\");\n if (absUriIdx > -1) {\n // if we have no prefix available ignore\n d.noPrefixName = d.data.name;\n } else if (idx > -1) {\n d.noPrefixName = d.data.name.substring(idx + 1);\n }\n }\n\n if (config.noPrefixes) {\n text.each(trimPrefixes);\n text\n .style(\"font-size\", function (d) {\n return D3.Text.calcFontSize(d.noPrefixName, d.r);\n })\n .text(function (d) {\n return D3.Text.getTextWithElipsisIfNeeded(d.noPrefixName, d.r / 3);\n });\n } else {\n text\n .style(\"font-size\", function (d) {\n return D3.Text.calcFontSize(d.data.name, d.r);\n })\n .text(function (d) {\n return D3.Text.getTextWithElipsisIfNeeded(d.data.name, d.r / 3);\n })\n }\n\n // TODO: make this use the full version (same as zoom)\n text.style(\"display\", function (d) {\n if (d.parent && d.parent.data === focus.data) {\n d.textHidden = this.textContent.indexOf(\"...\") + 3 === this.textContent.length;\n return null;\n } else {\n d.textHidden = true;\n return \"none\";\n }\n });\n\n if (config.doFade && !config.keepPrevState) {\n text.each(function (d) {\n D3.Transition.fadeIn(d3.select(this), 550);\n });\n }\n\n autoZoomToPreviousState = function () {\n function focusOnCurrentClass(focusHistoryId) {\n if (focusHistoryId) {\n circle.each(function (d) {\n if (+focusHistoryId === d.data.id) {\n doFocus(d);\n }\n });\n }\n }\n\n var focusHistoryId = $location.hash();\n\n $window.onpopstate = function (event) {\n if (event.state) {\n var focusHistoryId = event.state.id;\n focusOnCurrentClass(focusHistoryId);\n }\n };\n\n focusOnCurrentClass(focusHistoryId);\n };\n\n var node = g.selectAll(\"circle, text\");\n\n function zoomTo(v, switchPrefixes) {\n var k = diameter / v[2];\n view = v;\n\n node.attr(\"transform\", function (d) {\n return \"translate(\" + (d.x - v[0]) * k + \",\" + (d.y - v[1]) * k + \")\";\n });\n\n circle.attr(\"r\", function (d) {\n return d.r * k;\n });\n\n function switchPrefixesInPlace(d) {\n // if uris match with the topLevelParentUri of the focused element\n // or your focus is a top level parent hide its label and if it is not\n // a child element show all of its child labels. If it is a child element\n // only show its label.\n if (d.data.fullName === focus.data.topLevelParentUri || focus.data.topLevelParentUri === ROOT_OBJ_NAME) {\n d.textSel.style(\"display\", \"none\");\n if (focus.children && focus.children.length) {\n _.each(focus.children, function (c) {\n c.textSel.style(\"display\", \"inline\");\n });\n } else {\n focus.textSel.style(\"display\", \"inline\");\n }\n\n // in order to show prefixes of siblings check if the focused\n // element has a parent and show all of its children except\n // for the name of the focused element because you need to see\n // its children\n if (focus.parent) {\n _.each(focus.parent.children, function (c) {\n if (c.data.name !== focus.data.name) {\n c.textSel.style(\"display\", \"inline\");\n }\n });\n }\n }\n }\n\n if (switchPrefixes) {\n text.each(switchPrefixesInPlace);\n }\n\n text\n .style(\"font-size\", function (d) {\n if (config.noPrefixes) {\n return D3.Text.calcFontSize(d.noPrefixName, d.r * k);\n }\n return D3.Text.calcFontSize(d.data.name, d.r * k);\n })\n .text(function (d) {\n if (config.noPrefixes) {\n return D3.Text.getTextWithElipsisIfNeeded(d.noPrefixName, d.r * k / 3);\n }\n return D3.Text.getTextWithElipsisIfNeeded(d.data.name, d.r * k / 3);\n });\n }\n\n\n function adjustRadius(r) {\n var newr = r * 2 + margin;\n if (r * 2 / newr < 0.3) {\n // for very small circles we need to adjust\n newr = r * 2 + 2;\n }\n return newr;\n }\n\n zoomTo([focus.x, focus.y, adjustRadius(focus.r)], switchPrefixes);\n\n function textUpdate(d) {\n if (d.isInFocusTransitive || !(d.parent && d.parent.isInFocusTransitive)) {\n // hide labels of classes that are in focus (including children) OR whose parents aren't in focus\n d.textHidden = true;\n this.style.display = \"none\";\n } else {\n // show all other labels\n d.textHidden = this.textContent.indexOf(\"...\") + 3 === this.textContent.length;\n this.style.display = \"\";\n }\n }\n\n function zoom(d, shouldClosePanel) {\n // use empty timeout to force the following code to be executed on the next $digest cycle\n // in order to avoid '$digest in progress' error\n $timeout(function () {\n scope.showExternalElements = (d.data.name === ROOT_OBJ_NAME);\n });\n\n if (focus === d) {\n // Node is already zoomed to\n // Important to return before we modify the history, otherwise we choke the browser\n return;\n }\n\n if (d.data.id) {\n $window.history.replaceState({id: d.data.id}, \"classHierarchyPage\" + d.data.id, \"hierarchy#\" + d.data.id);\n }\n\n if (!d.children) {\n // No children - zoom to parent instead\n d = d.parent;\n if (focus === d) {\n // Parent is already zoomed to\n return;\n }\n }\n\n if (shouldClosePanel) {\n closeClassInfoPanel();\n d3.selectAll(\".selected\").classed(\"selected\", false);\n }\n\n if (focus.parent) {\n var p = focus;\n while (p) {\n p.isInFocusTransitive = false;\n p = p.parent;\n }\n }\n\n var p = d;\n while (p) {\n p.isInFocusTransitive = !!p.children;\n p = p.parent;\n }\n\n focus = d;\n\n var isVerySmallCircle = focus.r * 2 / (focus.r * 2 + margin) < 0.3;\n\n if (isVerySmallCircle || scope.currentSliderValue > scope.currentBrowserLimit) {\n // no fancy animation for slower browsers if above the limit or if zooming to a very small circle\n zoomTo([focus.x, focus.y, adjustRadius(focus.r)]);\n\n text.each(function (d) {\n textUpdate.call(this, d)\n });\n } else {\n // the fancy version for faster browsers\n var transition = d3.transition()\n .duration(ZOOM_DURATION)\n .tween(\"zoom\", function (d) {\n var i = d3.interpolateZoom(view, [focus.x, focus.y, adjustRadius(focus.r)]);\n return function (t) {\n zoomTo(i(t));\n };\n });\n\n transition.selectAll(\"text\")\n // Experimental: hide texts to be hidden on \"start\", show texts to be shown on \"end\"\n .each(textUpdate)\n }\n }\n\n rootFocusEvent = scope.$on('rootFocus', function () {\n $window.history.pushState({id: 1}, \"classHierarchyPage1\", \"hierarchy#1\");\n doFocus(rootHierarchy);\n });\n\n classSearchEvent = scope.$on('classSearch', function (selectedClass) {\n doFocus(selectedClass);\n });\n }\n\n function sendSliderData() {\n const currentClassCount = scope.classHierarchyData.classCount;\n let currentSliderValue = LocalStorageAdapter.get(LSKeys.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE);\n\n if (!currentSliderValue || currentSliderValue > currentClassCount) {\n currentSliderValue = currentClassCount;\n LocalStorageAdapter.set(LSKeys.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE, currentSliderValue);\n }\n\n $rootScope.$broadcast(\"classCount\", currentClassCount, currentSliderValue);\n }\n\n window.addEventListener('resize', sendSliderData);\n\n window.addEventListener('beforeunload', removeResizeListener);\n\n function removeResizeListener() {\n window.removeEventListener('resize', sendSliderData);\n window.removeEventListener('beforeunload', removeResizeListener);\n }\n\n var prefixesWatch,\n currentClassCountWatch,\n searchedClassBroadcast,\n onEnterClassSearchBroadcast;\n\n scope.$watch('classHierarchyData', function () {\n // when data changes unregister watchers by calling them\n if (prefixesWatch) prefixesWatch();\n if (currentClassCountWatch) currentClassCountWatch();\n if (searchedClassBroadcast) searchedClassBroadcast();\n if (onEnterClassSearchBroadcast) onEnterClassSearchBroadcast();\n\n // get initial state of prefixes (hidden or not) when changing repositories\n // in order to avoid triggering an unwanted prefixes watch\n var initialPrefixesState = getPrefixesState();\n\n if (scope.classHierarchyData.classCount) {\n sendSliderData();\n\n var rootData = _.cloneDeep(scope.classHierarchyData);\n\n var root = d3.hierarchy(rootData);\n\n function sortRoot(root) {\n // add all classes to a flat array, add parent information\n // and sort according to instancesCount DESC, depth ASC\n\n return root.descendants()\n .sort(function (a, b) {\n if (a.data.sortingRank > b.data.sortingRank) {\n return -1;\n } else if (a.data.sortingRank < b.data.sortingRank) {\n return 1;\n } else if (a.data.depth > b.data.depth) {\n return 1;\n } else if (a.data.depth < b.data.depth) {\n return -1;\n } else {\n return 0;\n }\n });\n }\n\n var sortedChildren = sortRoot(root);\n\n // we start with an empty new rootData\n var filteredRootData;\n var noPrefixesGlobal;\n\n\n function restoreDiagramState(currentRootData, switchPrefixes) {\n const prefixesConfig = {\n keepPrevState: true,\n noPrefixes: getPrefixesState()\n };\n\n // get noPrefixes flag from drawDiagram configuration params\n noPrefixesGlobal = prefixesConfig.noPrefixes;\n\n if (filteredRootData) {\n drawDiagram(filteredRootData, prefixesConfig, focus, true);\n } else {\n drawDiagram(currentRootData, prefixesConfig, focus, true);\n }\n\n $timeout(() => {\n LocalStorageAdapter.set(LSKeys.CLASS_HIERARCHY_SWITCH_PREFIXES, switchPrefixes);\n autoZoomToPreviousState();\n // Need to set this to false to enable the info panel to work when selecting a class.\n // The panel opening will be suppressed only when the prefixes are toggled.\n suppressPanelOpen = false;\n }, 70);\n }\n\n function redrawFilteredDiagram(currentSliderValue, sortedChildrenArray, useSlider) {\n if (!currentSliderValue) {\n return;\n }\n\n LocalStorageAdapter.set(LSKeys.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE, currentSliderValue);\n\n filteredRootData = {\n name: ROOT_OBJ_NAME,\n children: []\n };\n\n // walk through the given count of (sortedChildrenArray) classes\n // - record the id of each class we've seen\n // - add the rootData level classes to the new rootData\n const addedIds = new Set();\n for (let k = 1; k <= currentSliderValue; k++) {\n addedIds.add(sortedChildrenArray[k].data.id);\n if (sortedChildrenArray[k].parent === sortedChildrenArray[0]) { // i.e. the parent is the \"class hierarchy\"\n filteredRootData.children.push(sortedChildrenArray[k].data);\n }\n }\n\n // walk through all the classes in the new rootData and only keep those that have an \"added id\"\n // we create separate copies of the arrays in order not to contaminate the original data\n // we also copy each class's object ($.extend ...) for the same reason\n function fixChildren(node) {\n if (!node.children) {\n return;\n }\n const newChildren = [];\n for (const child of node.children) {\n if (addedIds.has(child.id)) {\n newChildren.push($.extend({}, child));\n }\n }\n node.children = newChildren;\n for (const child of node.children) {\n fixChildren(child);\n }\n }\n\n fixChildren(filteredRootData);\n\n if (useSlider) {\n // redraw diagram when slider value changes and persist current state\n // in local storage\n noPrefixesGlobal = angular.isUndefined(noPrefixesGlobal) ? getPrefixesState() : noPrefixesGlobal;\n const redrawConfig = {\n noPrefixes: noPrefixesGlobal\n };\n drawDiagram(filteredRootData, redrawConfig);\n } else {\n // if the user returns to the diagram with back browser button\n // read the saved state (show/hide prefixes, current slider value)\n // from local storage and render the diagram according to the saved metrics\n restoreDiagramState(rootData);\n }\n }\n\n var currentSliderValue = LocalStorageAdapter.get(LSKeys.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE);\n if (currentSliderValue) {\n redrawFilteredDiagram(currentSliderValue, sortedChildren);\n } else {\n var basicConfig = {\n doFade: true,\n keepPrevState: true,\n noPrefixes: getPrefixesState()\n };\n drawDiagram(rootData, basicConfig);\n autoZoomToPreviousState();\n }\n\n prefixesWatch = scope.$watch('hidePrefixes', function (hidePrefixes) {\n if (angular.isUndefined(hidePrefixes) || initialPrefixesState) {\n initialPrefixesState = undefined;\n return;\n }\n // if digest overflows a possible fix might be wrapping this in $timeout\n $timeout(function () {\n suppressPanelOpen = true;\n savePrefixesState(hidePrefixes);\n restoreDiagramState(rootData, true);\n }, 50);\n }, true);\n\n currentClassCountWatch = scope.$watch('currentSliderValue', function (currentSliderValue) {\n redrawFilteredDiagram(currentSliderValue, sortedChildren, true);\n }, true);\n\n // we handle this event for the cases where we already have searched for a given class and\n // hit enter again on the already selected class in order again react and zoom to it again\n // if we are not at the moment\n var currentSearchedClass;\n onEnterClassSearchBroadcast = scope.$on('onEnterKeypressSearchAction', function (event) {\n if (currentSearchedClass) {\n doFocus(currentSearchedClass);\n }\n });\n\n searchedClassBroadcast = scope.$on('searchedClass', function (event, searchedClass) {\n currentSearchedClass = flattenedClassData[searchedClass.name];\n if (currentSearchedClass) {\n doFocus(currentSearchedClass);\n }\n });\n }\n }, true);\n }\n}\n"],"names":["CirclePacking","SingleChild","addPlaceholders","node","first","children","i","length","placeholderSize","size","push","name","removePlaceholders","nodes","data","splice","centerNodes","offset","x","reposition","makePositionsRelativeToZero","offsetX","offsetY","y","d3","selectAll","SVG","Export","getCSSRules","cssSourceFilePath","cssRules","$","sheet","rules","cssStr","_","each","value","cssText","generateBase64ImageSource","svgSelectorClass","exportSvg","attr","parentNode","innerHTML","btoa","unescape","encodeURIComponent","classHierarchyDirective","$rootScope","$location","GraphDataRestService","$window","$timeout","$repositories","$licenseService","toastr","ZOOM_DURATION","ROOT_OBJ_NAME","LocalStorageAdapter","LSKeys","$translate","restrict","template","scope","classHierarchyData","flattenedClassNames","selectedClass","currentSliderValue","showClassInfoPanel","showExternalElements","hidePrefixes","currentBrowserLimit","link","element","attrs","suppressPanelOpen","tip","rootHierarchy","packLayout","diameter","color","domain","range","interpolate","svg","insert","on","appendMainGroup","append","id","transform","getPrefixesState","get","CLASS_HIERARCHY_HIDE_PREFIXES","prepareForSVGImageExport","style","imgSrc","this","href","download","getActiveRepository","autoZoomToPreviousState","doFocus","g","classCount","isSystemRepository","loader","hierarchyError","selGraphFromCache","getClassHierarchyData","contextID","uri","success","response","status","headers","warning","instant","error","getError","focus","rootFocusEvent","classSearchEvent","prefixesWatch","currentClassCountWatch","searchedClassBroadcast","onEnterClassSearchBroadcast","flattenedClassData","drawDiagram","root","config","newFocus","switchPrefixes","remove","sum","d","view","descendants","isInFocusTransitive","d3tip","customPosition","event","top","bottom","innerHeight","clientY","right","innerWidth","clientX","html","call","circleGroup","enter","doFade","D3","Transition","fadeIn","circle","role","depth","key","classed","noPrefixes","textHidden","show","hide","zoom","getCurrentClassDataAndMarkSelected","obj","selected","closeClassInfoPanel","uniqBy","clickCancel","Click","delayDblClick","$on","history","pushState","$broadcast","stopPropagation","lastTimeWheel","preventDefault","now","Date","getTime","direction","deltaY","target","__data__","parent","newobj","sortingRank","replaceState","sendSliderData","text","textSel","idx","indexOf","noPrefixName","substring","Text","calcFontSize","r","getTextWithElipsisIfNeeded","textContent","keepPrevState","focusOnCurrentClass","focusHistoryId","hash","onpopstate","state","zoomTo","v","k","fullName","topLevelParentUri","c","adjustRadius","newr","textUpdate","display","shouldClosePanel","p","duration","tween","t","currentClassCount","CLASS_HIERARCHY_CURRENT_SLIDER_VALUE","set","window","addEventListener","removeResizeListener","removeEventListener","$watch","initialPrefixesState","rootData","cloneDeep","filteredRootData","noPrefixesGlobal","sortedChildren","sort","a","b","restoreDiagramState","currentRootData","prefixesConfig","CLASS_HIERARCHY_SWITCH_PREFIXES","redrawFilteredDiagram","sortedChildrenArray","useSlider","addedIds","Set","add","fixChildren","newChildren","child","has","extend","angular","isUndefined","currentSearchedClass","basicConfig","undefined","savePrefixesState","searchedClass","renderCirclePacking","module","constant","directive","$inject"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"99448.8c045dc098cc67d199aa.bundle.js","mappings":"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","sources":["webpack://root-config/./packages/legacy-workbench/src/js/lib/common/circle-packing.js","webpack://root-config/./packages/legacy-workbench/src/js/lib/common/svg-export.js","webpack://root-config/./packages/legacy-workbench/src/js/angular/graphexplore/directives/rdf-class-hierarchy.directive.js"],"sourcesContent":["var CirclePacking = CirclePacking || {};\n\nCirclePacking.SingleChild = function () {\n /*\n Functions that enable single child circles to display properly, see\n http://stackoverflow.com/questions/22307486/d3-js-packed-circle-layout-how-to-adjust-child-radius\n */\n function addPlaceholders(node, first) {\n if (node.children) {\n for (var i = 0; i < node.children.length; i++) {\n var child = node.children[i];\n addPlaceholders(child);\n }\n\n if (node.children.length === 1) {\n var placeholderSize = node.size * 1.2;\n if (first) {\n placeholderSize = node.children[0].size * 0.1;\n }\n node.children.push({\n name: 'placeholder', size: placeholderSize,\n // children: []\n });\n }\n }\n }\n\n function removePlaceholders(nodes) {\n for (var i = nodes.length - 1; i >= 0; i--) {\n var node = nodes[i];\n\n if (node.data.name === 'placeholder') {\n nodes.splice(i, 1);\n } else {\n if (node.children) {\n removePlaceholders(node.children);\n }\n }\n }\n }\n\n function centerNodes(nodes) {\n for (var i = 0; i < nodes.length; i++) {\n var node = nodes[i];\n\n if (node.children) {\n if (node.children.length === 1) {\n var offset = node.x - node.children[0].x;\n node.children[0].x += offset;\n reposition(node.children[0], offset);\n }\n }\n }\n\n function reposition(node, offset) {\n if (node.children) {\n for (var i = 0; i < node.children.length; i++) {\n node.children[i].x += offset;\n reposition(node.children[i], offset);\n }\n }\n }\n }\n\n function makePositionsRelativeToZero(nodes) {\n //use this to have vis centered at 0,0,0 (easier for positioning)\n var offsetX = nodes[0].x;\n var offsetY = nodes[0].y;\n\n for (var i = 0; i < nodes.length; i++) {\n\n var node = nodes[i];\n\n node.x -= offsetX;\n node.y -= offsetY;\n }\n }\n\n return {\n addPlaceholders: addPlaceholders,\n removePlaceholders: removePlaceholders,\n centerNodes: centerNodes,\n makePositionsRelativeToZero: makePositionsRelativeToZero\n }\n}();\n\nexport default CirclePacking;\n","import 'lib/d3.patch.js'\nimport {selectAll} from 'd3';\n\nconst d3 = {selectAll};\nvar SVG = SVG || {};\n\nSVG.Export = function () {\n function getCSSRules(cssSourceFilePath) {\n const cssRules = $('link[href=\"' + cssSourceFilePath + '\"]')[0].sheet.rules;\n let cssStr = \"\";\n _.each(cssRules, function (value) {\n cssStr += value.cssText;\n });\n return cssStr;\n }\n\n function generateBase64ImageSource(svgSelectorClass) {\n if (!svgSelectorClass) {\n svgSelectorClass = \"svg\";\n }\n // add needed xml namespace\n const exportSvg = d3.selectAll(svgSelectorClass)\n .attr(\"version\", \"1.1\")\n .attr(\"xmlns\", \"http://www.w3.org/2000/svg\")\n .node().parentNode.innerHTML;\n\n // convert selected html to base64\n return \"data:image/svg+xml;charset=utf-8;base64,\" + btoa(unescape(encodeURIComponent(exportSvg)));\n }\n\n return {\n getCSSRules: getCSSRules,\n generateBase64ImageSource: generateBase64ImageSource\n };\n}();\n\nexport default SVG;\n","import d3tip from 'lib/d3-tip/d3-tip-patch';\nimport CirclePacking from 'lib/common/circle-packing';\nimport D3 from 'lib/common/d3-utils';\nimport * as d3 from 'd3';\nimport SVG from 'lib/common/svg-export';\nimport 'angular/utils/local-storage-adapter';\n\nangular\n .module('graphdb.framework.graphexplore.directives.class', [\n 'graphdb.framework.graphexplore.controllers.class',\n 'graphdb.framework.utils.localstorageadapter'\n ])\n .constant(\"ZOOM_DURATION\", 500)\n .constant(\"ROOT_OBJ_NAME\", \"RDF Class Hierarchy\")\n .directive('rdfClassHierarchy', classHierarchyDirective);\n\nclassHierarchyDirective.$inject = ['$rootScope', '$location', 'GraphDataRestService', '$window', '$timeout', '$repositories', '$licenseService', 'toastr', 'ZOOM_DURATION', 'ROOT_OBJ_NAME', 'LocalStorageAdapter', 'LSKeys', '$translate'];\n\nfunction classHierarchyDirective($rootScope, $location, GraphDataRestService, $window, $timeout, $repositories, $licenseService, toastr, ZOOM_DURATION, ROOT_OBJ_NAME, LocalStorageAdapter, LSKeys, $translate) {\n return {\n restrict: 'AE',\n template: '<div id=\"classChart\"></div>',\n scope: {\n classHierarchyData: '=',\n flattenedClassNames: '=',\n selectedClass: '=',\n currentSliderValue: '=',\n showClassInfoPanel: '=',\n showExternalElements: '=',\n hidePrefixes: '=',\n currentBrowserLimit: '='\n },\n link: linkFunc\n };\n\n function linkFunc(scope, element, attrs) {\n renderCirclePacking(scope, element);\n }\n\n function renderCirclePacking(scope, element) {\n /**\n * A boolean flag that determines whether the opening of the side info panel\n * should be suppressed when focusing on the chart while a class is selected.\n */\n let suppressPanelOpen = false;\n\n var width = 800,\n height = 800,\n diameter = height,\n margin = 20,\n tip,\n rootHierarchy;\n\n var packLayout = d3.pack()\n .size([diameter - margin, diameter - margin]);\n\n var color = d3.scaleLinear()\n .domain([0, 4])\n .range([\"hsl(19, 70%, 90%)\", \"hsl(19, 70%, 50%)\"])\n .interpolate(d3.interpolateHcl);\n\n var svg = d3.select(\"#classChart\")\n .insert(\"svg:svg\", \"h2\")\n .attr(\"viewBox\", \"0 0 \" + width + \" \" + height)\n .attr(\"preserveAspectRatio\", \"xMidYMid meet\")\n .on(\"dblclick.zoom\", null);\n\n function appendMainGroup() {\n return svg.append(\"svg:g\")\n .attrs({\n id: \"main-group\",\n transform: \"translate(\" + width / 2 + \",\" + height / 2 + \")\"\n });\n }\n\n function savePrefixesState(hidePrefixes) {\n if (!angular.isUndefined(hidePrefixes)) {\n LocalStorageAdapter.set(LSKeys.CLASS_HIERARCHY_HIDE_PREFIXES, hidePrefixes);\n }\n }\n\n function getPrefixesState() {\n return LocalStorageAdapter.get(LSKeys.CLASS_HIERARCHY_HIDE_PREFIXES) === \"true\";\n }\n\n /*\n * Prepares SVG document image export by adding xml namespaces and\n * additional style information\n */\n function prepareForSVGImageExport() {\n // get css rules for the diagram\n var cssRules = SVG.Export.getCSSRules(\"css/rdf-class-hierarchy-labels.css?v=3.2.0-RC2\");\n // inline css rules in a defs tag\n d3.selectAll(\"#main-group\")\n .append(\"defs\");\n $(\"defs\").append('<style type=\"text/css\"><![CDATA[' + cssRules + ']]></style>');\n\n // switch opacity to visible\n d3.selectAll(\"g\")\n .style(\"opacity\", 1);\n\n // convert selected html to base64\n var imgSrc = SVG.Export.generateBase64ImageSource(\"#classChart svg\");\n\n // set the binary image and a name for the downloadable file on the export button\n d3.select(this).attrs({\n href: imgSrc,\n download: \"class-hierarchy-\" + $repositories.getActiveRepository() + \".svg\"\n });\n }\n\n scope.hidePrefixes = getPrefixesState();\n\n var g = appendMainGroup();\n\n if (!scope.classHierarchyData.classCount && $repositories.getActiveRepository() && !$repositories.isSystemRepository()) {\n $rootScope.loader = true;\n $rootScope.hierarchyError = false;\n const selGraphFromCache = LocalStorageAdapter.get(`classHierarchy-selectedGraph-${$repositories.getActiveRepository()}`);\n GraphDataRestService.getClassHierarchyData(selGraphFromCache !== null ? selGraphFromCache.contextID.uri : \"\")\n .success(function (response, status, headers) {\n $rootScope.loader = false;\n if (status === 207) {\n toastr.warning($translate.instant('graphexplore.update.diagram'), $translate.instant('graphexplore.repository.data.changed'));\n }\n scope.classHierarchyData = response;\n\n d3.select(\"#download-svg\")\n .on(\"mouseover\", prepareForSVGImageExport);\n\n }).error(function (response) {\n $rootScope.loader = false;\n $rootScope.hierarchyError = getError(response);\n toastr.error($translate.instant('graphexplore.error.request.failed', {name: ROOT_OBJ_NAME, error: getError(response)}));\n });\n }\n\n\n var autoZoomToPreviousState,\n doFocus;\n\n var focus,\n rootFocusEvent,\n classSearchEvent,\n flattenedClassData = {};\n\n function drawDiagram(root, config, newFocus, switchPrefixes) {\n if (rootFocusEvent) rootFocusEvent();\n if (classSearchEvent) classSearchEvent();\n // remove old group tag containing the diagram\n d3.selectAll(\"#main-group\").remove();\n\n // append new empty group tag in order to rerender new diagram\n g = appendMainGroup();\n\n // fix for single child classes\n CirclePacking.SingleChild.addPlaceholders(root, true);\n\n rootHierarchy = d3.hierarchy(root);\n rootHierarchy.sum(function (d) {\n return d.size;\n })\n focus = newFocus ? newFocus : rootHierarchy;\n\n packLayout(rootHierarchy)\n\n var nodes = rootHierarchy.descendants(),\n view;\n\n focus.isInFocusTransitive = true;\n\n // fixes for single child classes\n CirclePacking.SingleChild.removePlaceholders(nodes);\n CirclePacking.SingleChild.centerNodes(nodes);\n CirclePacking.SingleChild.makePositionsRelativeToZero(nodes);\n\n if (!tip) {\n tip = d3tip()\n .attr('class', 'd3-tip')\n .customPosition(function (d, event) {\n return {\n top: 'inherit',\n bottom: ($window.innerHeight - event.clientY) + 'px',\n right: ($window.innerWidth - event.clientX) + 'px'\n };\n })\n .html(function (d) {\n return d.data.name;\n });\n svg.call(tip);\n }\n\n var circleGroup = g.selectAll(\"circle\")\n .data(nodes)\n .enter().append(\"g\");\n\n if (config.doFade) {\n circleGroup.each(function (d) {\n D3.Transition.fadeIn(d3.select(this), 550);\n });\n }\n\n var flattenedClassNames = [];\n\n var circle = circleGroup\n .append(\"circle\")\n .attr(\"class\", function (d) {\n return d.data.role;\n })\n .attr(\"guide-selector\", function (d) {\n return \"class-\" + d.data.name;\n })\n .style(\"fill\", function (d) {\n //return colors[d.depth % 6];\n return d.children ? color(d.depth) : \"#E0D0D0\";\n })\n .each(function (d) {\n d.circle = d3.select(this);\n if (d.data.name !== ROOT_OBJ_NAME) {\n var key = d.data.name;\n flattenedClassNames.push({name: key});\n flattenedClassData[[key]] = d;\n\n d.circle.classed(\"rdf-class\", true);\n d.circle.on('mouseover', function (event) {\n if (config.noPrefixes) {\n tip.show(d, event);\n } else if (!d.textHidden) {\n tip.hide(d);\n } else {\n tip.show(d, event);\n }\n });\n d.circle.on('mouseout', tip.hide);\n }\n })\n // custom event used when user is following a guide\n .on(\"gdb-focus\", (event, d) => doFocus(d))\n .on(\"gdb-zoom\", (event, d) => zoom(d));\n\n\n if (flattenedClassNames) {\n flattenedClassNames = _.uniqBy(flattenedClassNames, 'name');\n scope.flattenedClassNames = flattenedClassNames;\n }\n\n var selectedClass;\n\n function getCurrentClassDataAndMarkSelected(obj) {\n d3.selectAll(\".selected\").classed(\"selected\", obj.selected = false);\n obj.circle.classed(\"selected\", obj.selected = true);\n selectedClass = obj;\n }\n\n function showClassInfoPanel() {\n scope.selectedClass = selectedClass;\n scope.showClassInfoPanel = true;\n }\n\n function closeClassInfoPanel() {\n scope.showClassInfoPanel = false;\n }\n\n function goToDomainRangeGraphView() {\n $rootScope.$broadcast('goToDomainRangeGraphView', selectedClass, focus);\n }\n\n var clickCancel = D3.Click.delayDblClick();\n d3.selectAll(\".parent, .topLevelParent, .child, .root\")\n .call(clickCancel);\n\n doFocus = function (obj) {\n zoom(obj);\n\n if (obj.data.name === ROOT_OBJ_NAME) {\n closeClassInfoPanel();\n d3.selectAll(\".selected\").classed(\"selected\", false);\n } else {\n getCurrentClassDataAndMarkSelected(obj);\n if (!suppressPanelOpen) {\n showClassInfoPanel();\n }\n\n // FIXME: is it ok to bind this event handler every time and not just once?\n scope.$on('sidePanelClosed', function (event) {\n d3.selectAll(\".selected\").classed(\"selected\", obj.selected = false);\n });\n }\n\n\n //do not stop event propagation here\n };\n\n clickCancel.on(\"click\", function (event, obj) {\n // add clicked class to browser history\n if (obj.data.id) {\n $window.history.pushState({id: obj.data.id}, \"classHierarchyPage\" + obj.data.id, \"hierarchy#\" + obj.data.id);\n }\n\n //hide current d3-tip tooltip\n tip.hide();\n\n doFocus(obj);\n });\n\n clickCancel.on(\"dblclick\", function (event, obj) {\n if (obj === root) {\n return;\n }\n // hide current d3-tip tooltip in order not to appear in the next view\n tip.hide();\n getCurrentClassDataAndMarkSelected(obj);\n goToDomainRangeGraphView();\n\n event.stopPropagation();\n });\n\n var lastTimeWheel = 0;\n svg.on('wheel', function (event) {\n // hide current d3-tip tooltip\n tip.hide();\n\n event.preventDefault();\n event.stopPropagation();\n\n // at least 100ms must have passed since last time we updated\n var now = new Date().getTime();\n if (now - lastTimeWheel > 100) {\n lastTimeWheel = now;\n } else {\n return;\n }\n\n var direction = '';\n if (event.deltaY <= -1) {\n direction = 'in';\n } else if (event.deltaY >= 1) {\n direction = 'out';\n }\n\n var obj = event.target.__data__;\n\n if (!obj) {\n // scroll outside the big circle\n obj = focus;\n }\n\n if (direction === 'in') {\n // determine object to zoom to\n\n if (obj !== focus) {\n // consider the object on which the scroll event occurred\n // and find the furthest parent that has no focused children\n while (obj.parent && !obj.parent.isInFocusTransitive) {\n obj = obj.parent;\n }\n if (obj.depth < focus.depth) {\n // however if that parent is of lower depth than the focus we ignore it\n obj = focus;\n }\n }\n\n if (obj === focus && obj.children) {\n // if object is in focus and it has children we zoom to its biggest child\n // TODO: sort children on backend\n var newobj = obj.children[0];\n for (var i = 1; i < obj.children.length; i++) {\n if (obj.children[i].sortingRank > newobj.sortingRank) {\n newobj = obj.children[i];\n }\n }\n if (newobj.children) {\n // Use the child only if it has children\n obj = newobj;\n }\n } else if (!obj.children) {\n // If node has no children use its parent instead\n obj = obj.parent;\n }\n\n zoom(obj, true);\n } else if (direction === 'out') {\n // zooming out simply goes one parent up\n obj = focus.parent;\n if (obj) {\n zoom(obj, true);\n }\n }\n\n if (focus.data.name === ROOT_OBJ_NAME) {\n $window.history.replaceState({id: 1}, \"classHierarchyPage1\", \"hierarchy#1\");\n }\n\n // redraw slider on zoom out\n sendSliderData();\n });\n\n var text = g.selectAll(\"text\")\n .data(nodes)\n .enter().append(\"text\")\n .attr(\"class\", function (d) {\n return d.children && d.children.length ? \"label\" : \"label child-label\";\n })\n .each(function (d) {\n d.textSel = d3.select(this);\n });\n\n function trimPrefixes(d) {\n var idx = d.data.name.indexOf(\":\");\n var absUriIdx = d.data.name.indexOf(\"http://\");\n if (absUriIdx > -1) {\n // if we have no prefix available ignore\n d.noPrefixName = d.data.name;\n } else if (idx > -1) {\n d.noPrefixName = d.data.name.substring(idx + 1);\n }\n }\n\n if (config.noPrefixes) {\n text.each(trimPrefixes);\n text\n .style(\"font-size\", function (d) {\n return D3.Text.calcFontSize(d.noPrefixName, d.r);\n })\n .text(function (d) {\n return D3.Text.getTextWithElipsisIfNeeded(d.noPrefixName, d.r / 3);\n });\n } else {\n text\n .style(\"font-size\", function (d) {\n return D3.Text.calcFontSize(d.data.name, d.r);\n })\n .text(function (d) {\n return D3.Text.getTextWithElipsisIfNeeded(d.data.name, d.r / 3);\n })\n }\n\n // TODO: make this use the full version (same as zoom)\n text.style(\"display\", function (d) {\n if (d.parent && d.parent.data === focus.data) {\n d.textHidden = this.textContent.indexOf(\"...\") + 3 === this.textContent.length;\n return null;\n } else {\n d.textHidden = true;\n return \"none\";\n }\n });\n\n if (config.doFade && !config.keepPrevState) {\n text.each(function (d) {\n D3.Transition.fadeIn(d3.select(this), 550);\n });\n }\n\n autoZoomToPreviousState = function () {\n function focusOnCurrentClass(focusHistoryId) {\n if (focusHistoryId) {\n circle.each(function (d) {\n if (+focusHistoryId === d.data.id) {\n doFocus(d);\n }\n });\n }\n }\n\n var focusHistoryId = $location.hash();\n\n $window.onpopstate = function (event) {\n if (event.state) {\n var focusHistoryId = event.state.id;\n focusOnCurrentClass(focusHistoryId);\n }\n };\n\n focusOnCurrentClass(focusHistoryId);\n };\n\n var node = g.selectAll(\"circle, text\");\n\n function zoomTo(v, switchPrefixes) {\n var k = diameter / v[2];\n view = v;\n\n node.attr(\"transform\", function (d) {\n return \"translate(\" + (d.x - v[0]) * k + \",\" + (d.y - v[1]) * k + \")\";\n });\n\n circle.attr(\"r\", function (d) {\n return d.r * k;\n });\n\n function switchPrefixesInPlace(d) {\n // if uris match with the topLevelParentUri of the focused element\n // or your focus is a top level parent hide its label and if it is not\n // a child element show all of its child labels. If it is a child element\n // only show its label.\n if (d.data.fullName === focus.data.topLevelParentUri || focus.data.topLevelParentUri === ROOT_OBJ_NAME) {\n d.textSel.style(\"display\", \"none\");\n if (focus.children && focus.children.length) {\n _.each(focus.children, function (c) {\n c.textSel.style(\"display\", \"inline\");\n });\n } else {\n focus.textSel.style(\"display\", \"inline\");\n }\n\n // in order to show prefixes of siblings check if the focused\n // element has a parent and show all of its children except\n // for the name of the focused element because you need to see\n // its children\n if (focus.parent) {\n _.each(focus.parent.children, function (c) {\n if (c.data.name !== focus.data.name) {\n c.textSel.style(\"display\", \"inline\");\n }\n });\n }\n }\n }\n\n if (switchPrefixes) {\n text.each(switchPrefixesInPlace);\n }\n\n text\n .style(\"font-size\", function (d) {\n if (config.noPrefixes) {\n return D3.Text.calcFontSize(d.noPrefixName, d.r * k);\n }\n return D3.Text.calcFontSize(d.data.name, d.r * k);\n })\n .text(function (d) {\n if (config.noPrefixes) {\n return D3.Text.getTextWithElipsisIfNeeded(d.noPrefixName, d.r * k / 3);\n }\n return D3.Text.getTextWithElipsisIfNeeded(d.data.name, d.r * k / 3);\n });\n }\n\n\n function adjustRadius(r) {\n var newr = r * 2 + margin;\n if (r * 2 / newr < 0.3) {\n // for very small circles we need to adjust\n newr = r * 2 + 2;\n }\n return newr;\n }\n\n zoomTo([focus.x, focus.y, adjustRadius(focus.r)], switchPrefixes);\n\n function textUpdate(d) {\n if (d.isInFocusTransitive || !(d.parent && d.parent.isInFocusTransitive)) {\n // hide labels of classes that are in focus (including children) OR whose parents aren't in focus\n d.textHidden = true;\n this.style.display = \"none\";\n } else {\n // show all other labels\n d.textHidden = this.textContent.indexOf(\"...\") + 3 === this.textContent.length;\n this.style.display = \"\";\n }\n }\n\n function zoom(d, shouldClosePanel) {\n // use empty timeout to force the following code to be executed on the next $digest cycle\n // in order to avoid '$digest in progress' error\n $timeout(function () {\n scope.showExternalElements = (d.data.name === ROOT_OBJ_NAME);\n });\n\n if (focus === d) {\n // Node is already zoomed to\n // Important to return before we modify the history, otherwise we choke the browser\n return;\n }\n\n if (d.data.id) {\n $window.history.replaceState({id: d.data.id}, \"classHierarchyPage\" + d.data.id, \"hierarchy#\" + d.data.id);\n }\n\n if (!d.children) {\n // No children - zoom to parent instead\n d = d.parent;\n if (focus === d) {\n // Parent is already zoomed to\n return;\n }\n }\n\n if (shouldClosePanel) {\n closeClassInfoPanel();\n d3.selectAll(\".selected\").classed(\"selected\", false);\n }\n\n if (focus.parent) {\n var p = focus;\n while (p) {\n p.isInFocusTransitive = false;\n p = p.parent;\n }\n }\n\n var p = d;\n while (p) {\n p.isInFocusTransitive = !!p.children;\n p = p.parent;\n }\n\n focus = d;\n\n var isVerySmallCircle = focus.r * 2 / (focus.r * 2 + margin) < 0.3;\n\n if (isVerySmallCircle || scope.currentSliderValue > scope.currentBrowserLimit) {\n // no fancy animation for slower browsers if above the limit or if zooming to a very small circle\n zoomTo([focus.x, focus.y, adjustRadius(focus.r)]);\n\n text.each(function (d) {\n textUpdate.call(this, d)\n });\n } else {\n // the fancy version for faster browsers\n var transition = d3.transition()\n .duration(ZOOM_DURATION)\n .tween(\"zoom\", function (d) {\n var i = d3.interpolateZoom(view, [focus.x, focus.y, adjustRadius(focus.r)]);\n return function (t) {\n zoomTo(i(t));\n };\n });\n\n transition.selectAll(\"text\")\n // Experimental: hide texts to be hidden on \"start\", show texts to be shown on \"end\"\n .each(textUpdate)\n }\n }\n\n rootFocusEvent = scope.$on('rootFocus', function () {\n $window.history.pushState({id: 1}, \"classHierarchyPage1\", \"hierarchy#1\");\n doFocus(rootHierarchy);\n });\n\n classSearchEvent = scope.$on('classSearch', function (selectedClass) {\n doFocus(selectedClass);\n });\n }\n\n function sendSliderData() {\n const currentClassCount = scope.classHierarchyData.classCount;\n let currentSliderValue = LocalStorageAdapter.get(LSKeys.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE);\n\n if (!currentSliderValue || currentSliderValue > currentClassCount) {\n currentSliderValue = currentClassCount;\n LocalStorageAdapter.set(LSKeys.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE, currentSliderValue);\n }\n\n $rootScope.$broadcast(\"classCount\", currentClassCount, currentSliderValue);\n }\n\n window.addEventListener('resize', sendSliderData);\n\n window.addEventListener('beforeunload', removeResizeListener);\n\n function removeResizeListener() {\n window.removeEventListener('resize', sendSliderData);\n window.removeEventListener('beforeunload', removeResizeListener);\n }\n\n var prefixesWatch,\n currentClassCountWatch,\n searchedClassBroadcast,\n onEnterClassSearchBroadcast;\n\n scope.$watch('classHierarchyData', function () {\n // when data changes unregister watchers by calling them\n if (prefixesWatch) prefixesWatch();\n if (currentClassCountWatch) currentClassCountWatch();\n if (searchedClassBroadcast) searchedClassBroadcast();\n if (onEnterClassSearchBroadcast) onEnterClassSearchBroadcast();\n\n // get initial state of prefixes (hidden or not) when changing repositories\n // in order to avoid triggering an unwanted prefixes watch\n var initialPrefixesState = getPrefixesState();\n\n if (scope.classHierarchyData.classCount) {\n sendSliderData();\n\n var rootData = _.cloneDeep(scope.classHierarchyData);\n\n var root = d3.hierarchy(rootData);\n\n function sortRoot(root) {\n // add all classes to a flat array, add parent information\n // and sort according to instancesCount DESC, depth ASC\n\n return root.descendants()\n .sort(function (a, b) {\n if (a.data.sortingRank > b.data.sortingRank) {\n return -1;\n } else if (a.data.sortingRank < b.data.sortingRank) {\n return 1;\n } else if (a.data.depth > b.data.depth) {\n return 1;\n } else if (a.data.depth < b.data.depth) {\n return -1;\n } else {\n return 0;\n }\n });\n }\n\n var sortedChildren = sortRoot(root);\n\n // we start with an empty new rootData\n var filteredRootData;\n var noPrefixesGlobal;\n\n\n function restoreDiagramState(currentRootData, switchPrefixes) {\n const prefixesConfig = {\n keepPrevState: true,\n noPrefixes: getPrefixesState()\n };\n\n // get noPrefixes flag from drawDiagram configuration params\n noPrefixesGlobal = prefixesConfig.noPrefixes;\n\n if (filteredRootData) {\n drawDiagram(filteredRootData, prefixesConfig, focus, true);\n } else {\n drawDiagram(currentRootData, prefixesConfig, focus, true);\n }\n\n $timeout(() => {\n LocalStorageAdapter.set(LSKeys.CLASS_HIERARCHY_SWITCH_PREFIXES, switchPrefixes);\n autoZoomToPreviousState();\n // Need to set this to false to enable the info panel to work when selecting a class.\n // The panel opening will be suppressed only when the prefixes are toggled.\n suppressPanelOpen = false;\n }, 70);\n }\n\n function redrawFilteredDiagram(currentSliderValue, sortedChildrenArray, useSlider) {\n if (!currentSliderValue) {\n return;\n }\n\n LocalStorageAdapter.set(LSKeys.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE, currentSliderValue);\n\n filteredRootData = {\n name: ROOT_OBJ_NAME,\n children: []\n };\n\n // walk through the given count of (sortedChildrenArray) classes\n // - record the id of each class we've seen\n // - add the rootData level classes to the new rootData\n const addedIds = new Set();\n for (let k = 1; k <= currentSliderValue; k++) {\n addedIds.add(sortedChildrenArray[k].data.id);\n if (sortedChildrenArray[k].parent === sortedChildrenArray[0]) { // i.e. the parent is the \"class hierarchy\"\n filteredRootData.children.push(sortedChildrenArray[k].data);\n }\n }\n\n // walk through all the classes in the new rootData and only keep those that have an \"added id\"\n // we create separate copies of the arrays in order not to contaminate the original data\n // we also copy each class's object ($.extend ...) for the same reason\n function fixChildren(node) {\n if (!node.children) {\n return;\n }\n const newChildren = [];\n for (const child of node.children) {\n if (addedIds.has(child.id)) {\n newChildren.push($.extend({}, child));\n }\n }\n node.children = newChildren;\n for (const child of node.children) {\n fixChildren(child);\n }\n }\n\n fixChildren(filteredRootData);\n\n if (useSlider) {\n // redraw diagram when slider value changes and persist current state\n // in local storage\n noPrefixesGlobal = angular.isUndefined(noPrefixesGlobal) ? getPrefixesState() : noPrefixesGlobal;\n const redrawConfig = {\n noPrefixes: noPrefixesGlobal\n };\n drawDiagram(filteredRootData, redrawConfig);\n } else {\n // if the user returns to the diagram with back browser button\n // read the saved state (show/hide prefixes, current slider value)\n // from local storage and render the diagram according to the saved metrics\n restoreDiagramState(rootData);\n }\n }\n\n var currentSliderValue = LocalStorageAdapter.get(LSKeys.CLASS_HIERARCHY_CURRENT_SLIDER_VALUE);\n if (currentSliderValue) {\n redrawFilteredDiagram(currentSliderValue, sortedChildren);\n } else {\n var basicConfig = {\n doFade: true,\n keepPrevState: true,\n noPrefixes: getPrefixesState()\n };\n drawDiagram(rootData, basicConfig);\n autoZoomToPreviousState();\n }\n\n prefixesWatch = scope.$watch('hidePrefixes', function (hidePrefixes) {\n if (angular.isUndefined(hidePrefixes) || initialPrefixesState) {\n initialPrefixesState = undefined;\n return;\n }\n // if digest overflows a possible fix might be wrapping this in $timeout\n $timeout(function () {\n suppressPanelOpen = true;\n savePrefixesState(hidePrefixes);\n restoreDiagramState(rootData, true);\n }, 50);\n }, true);\n\n currentClassCountWatch = scope.$watch('currentSliderValue', function (currentSliderValue) {\n redrawFilteredDiagram(currentSliderValue, sortedChildren, true);\n }, true);\n\n // we handle this event for the cases where we already have searched for a given class and\n // hit enter again on the already selected class in order again react and zoom to it again\n // if we are not at the moment\n var currentSearchedClass;\n onEnterClassSearchBroadcast = scope.$on('onEnterKeypressSearchAction', function (event) {\n if (currentSearchedClass) {\n doFocus(currentSearchedClass);\n }\n });\n\n searchedClassBroadcast = scope.$on('searchedClass', function (event, searchedClass) {\n currentSearchedClass = flattenedClassData[searchedClass.name];\n if (currentSearchedClass) {\n doFocus(currentSearchedClass);\n }\n });\n }\n }, true);\n }\n}\n"],"names":["CirclePacking","SingleChild","addPlaceholders","node","first","children","i","length","placeholderSize","size","push","name","removePlaceholders","nodes","data","splice","centerNodes","offset","x","reposition","makePositionsRelativeToZero","offsetX","offsetY","y","d3","selectAll","SVG","Export","getCSSRules","cssSourceFilePath","cssRules","$","sheet","rules","cssStr","_","each","value","cssText","generateBase64ImageSource","svgSelectorClass","exportSvg","attr","parentNode","innerHTML","btoa","unescape","encodeURIComponent","classHierarchyDirective","$rootScope","$location","GraphDataRestService","$window","$timeout","$repositories","$licenseService","toastr","ZOOM_DURATION","ROOT_OBJ_NAME","LocalStorageAdapter","LSKeys","$translate","restrict","template","scope","classHierarchyData","flattenedClassNames","selectedClass","currentSliderValue","showClassInfoPanel","showExternalElements","hidePrefixes","currentBrowserLimit","link","element","attrs","suppressPanelOpen","tip","rootHierarchy","packLayout","diameter","color","domain","range","interpolate","svg","insert","on","appendMainGroup","append","id","transform","getPrefixesState","get","CLASS_HIERARCHY_HIDE_PREFIXES","prepareForSVGImageExport","style","imgSrc","this","href","download","getActiveRepository","autoZoomToPreviousState","doFocus","g","classCount","isSystemRepository","loader","hierarchyError","selGraphFromCache","getClassHierarchyData","contextID","uri","success","response","status","headers","warning","instant","error","getError","focus","rootFocusEvent","classSearchEvent","prefixesWatch","currentClassCountWatch","searchedClassBroadcast","onEnterClassSearchBroadcast","flattenedClassData","drawDiagram","root","config","newFocus","switchPrefixes","remove","sum","d","view","descendants","isInFocusTransitive","d3tip","customPosition","event","top","bottom","innerHeight","clientY","right","innerWidth","clientX","html","call","circleGroup","enter","doFade","D3","Transition","fadeIn","circle","role","depth","key","classed","noPrefixes","textHidden","show","hide","zoom","getCurrentClassDataAndMarkSelected","obj","selected","closeClassInfoPanel","uniqBy","clickCancel","Click","delayDblClick","$on","history","pushState","$broadcast","stopPropagation","lastTimeWheel","preventDefault","now","Date","getTime","direction","deltaY","target","__data__","parent","newobj","sortingRank","replaceState","sendSliderData","text","textSel","idx","indexOf","noPrefixName","substring","Text","calcFontSize","r","getTextWithElipsisIfNeeded","textContent","keepPrevState","focusOnCurrentClass","focusHistoryId","hash","onpopstate","state","zoomTo","v","k","fullName","topLevelParentUri","c","adjustRadius","newr","textUpdate","display","shouldClosePanel","p","duration","tween","t","currentClassCount","CLASS_HIERARCHY_CURRENT_SLIDER_VALUE","set","window","addEventListener","removeResizeListener","removeEventListener","$watch","initialPrefixesState","rootData","cloneDeep","filteredRootData","noPrefixesGlobal","sortedChildren","sort","a","b","restoreDiagramState","currentRootData","prefixesConfig","CLASS_HIERARCHY_SWITCH_PREFIXES","redrawFilteredDiagram","sortedChildrenArray","useSlider","addedIds","Set","add","fixChildren","newChildren","child","has","extend","angular","isUndefined","currentSearchedClass","basicConfig","undefined","savePrefixesState","searchedClass","renderCirclePacking","module","constant","directive","$inject"],"sourceRoot":""}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
:root.menu-collapsed{--menu-width:var(--menu-width-collapsed)}.main-container{margin-left:15rem;padding:0 var(--main-content-rl-padding) 3rem var(--main-content-rl-padding)}.ng-cloak,.x-ng-cloak,[data-ng-cloak],[ng-cloak],[ng\:cloak],[x-ng-cloak]{display:none!important}@media (min-width:576px){.modal-dialog.google-visualization-charteditor-dialog{max-width:none}}.google-visualization-charteditor-dialog{height:auto!important}.google-visualization-charteditor-dialog .charts-flat-menu-button{height:26px!important}.dropdown-menu-center{left:50%!important;right:auto!important;text-align:center!important;transform:translate(-50%)!important}.rdf-list ul.datasource:before{top:.5rem}.rdf-side-panel-content ul.rdf-list li.data-key{cursor:pointer;padding-right:2.5rem}.container-fluid.main-container.expanded{margin-left:4.375rem}.status-bar{display:flex;flex-wrap:wrap-reverse;font-size:1.1em;gap:.25em;justify-content:flex-end;margin-left:auto;margin-right:2em;max-width:var(--max-width-minus-menu);padding-bottom:.5em;position:sticky;top:0;-moz-transition:all .1s ease-out;-o-transition:all .1s ease-out;-webkit-transition:all .1s ease-out;transition:all .1s ease-out;width:max-content;z-index:999}.status-bar operations-statuses-monitor:not(:has(div)){display:none}.status-bar .btn-group .dropdown-toggle{margin-right:0}html{min-height:100%;position:relative}footer.footer{bottom:0;height:30px;position:absolute;width:100%}footer.footer .container-fluid.main-container{padding:0}footer.footer .container-fluid.main-container p{margin:0;padding-left:30px}.open>.btn-secondary.dropdown-toggle,.open>.btn-secondary.dropdown-toggle.focus,.open>.btn-secondary.dropdown-toggle:focus,.open>.btn-secondary.dropdown-toggle:hover{background-color:var(--gw-primary-base);border-color:var(--gw-primary-base);color:#fff}.open>.btn-secondary.dropdown-toggle [class^=icon-]{color:var(--icon-on-primary-color)}.btn-secondary.dropdown-toggle [class^=icon-]{color:var(--gw-primary-base)}.dropdown-toggle:after{border:none;color:var(--gw-panelmenu-item-icon-color);content:"\e921";display:inline-block;font-family:icomoon,sans-serif!important;font-size:.9em;height:auto;margin-left:0;-moz-transition:all .2s ease-in;-o-transition:all .2s ease-in;-webkit-transition:all .2s ease-in;transition:all .2s ease-in;width:auto}.open .dropdown-toggle:after{transform:rotate(180deg)}.dropdown-menu{background-color:var(--gw-primary-base);border:none;border-radius:0;display:none;margin-top:-1em;min-width:100%;opacity:0;padding:0;-moz-transition:all .15s ease-out;-o-transition:all .15s ease-out;-webkit-transition:all .15s ease-out;transition:all .15s ease-out}.open>.dropdown-menu{display:block;margin-top:-1px;opacity:1}.dropdown-item{color:#fff!important;cursor:pointer;padding:.5em 1.2em}.dropdown-item:focus,.dropdown-item:hover{background-color:rgba(0,0,0,.1);color:#fff}.btn-link+.dropdown-menu-right{margin-top:8px}.dropdown-menu-right{right:3px}.status-bar .dropdown-menu-right{right:0}.collapsible-heading{cursor:pointer}.collapsible-heading.collapsed [class^=icon-]{transform:rotate(-90deg)}.rdf-list .hidden-data-value{display:none}.tab-error:after{content:"\e920";font-family:icomoon,sans-serif!important;font-size:1em;left:.1em;line-height:1;position:absolute;vertical-align:middle}.nav-tabs{border-bottom-color:var(--gw-tabs-tablist-border-color);font-weight:400}.nav-tabs .nav-item{margin-right:.2rem;margin-top:4px}.nav-tabs .nav-item+.nav-item{margin-left:0;margin-right:.2rem}.nav-tabs .nav-link{background-color:var(--gw-tabs-tab-background);border-color:var(--gw-tabs-tab-border-color);border-bottom-color:var(--gw-tabs-tab-border-bottom-color);border-radius:0;color:var(--gw-tabs-tab-color);cursor:pointer}.nav-tabs .nav-link:hover{background-color:var(--gw-tabs-tab-hover-background);border-color:var(--gw-tabs-tab-hover-border-color);border-bottom-color:var(--gw-tabs-tab-hover-border-bottom-color);color:var(--gw-tabs-tab-hover-color)}.nav-tabs .nav-link .btn{border:none;padding:0}.nav-tabs .nav-link>span+.btn{margin-left:.8em}.nav-tabs .active .nav-link,.nav-tabs .active.nav-link{background-color:var(--gw-tabs-tab-active-background);border-color:var(--gw-tabs-tab-active-border-color);border-bottom-color:var(--gw-tabs-tab-active-border-bottom-color);color:var(--gw-tabs-tab-active-color)}.nav-tabs .nav-item.active a,.nav-tabs .nav-item.active:focus a,.nav-tabs .nav-item.active:hover a,.nav-tabs .nav-link.active:focus,.nav-tabs .nav-link.active:hover{background-color:var(--gw-tabs-tab-active-background);border-color:var(--gw-tabs-tab-active-border-color) var(--gw-tabs-tab-active-border-color) transparent;color:var(--gw-tabs-tab-active-color)}.nav-tabs .nav-link:focus{border-color:var(--gw-tabs-tab-hover-border-color) var(--gw-tabs-tab-hover-border-color) transparent}tab-heading.nav-item{margin-right:4px}ul[class*=style-]{list-style:none;margin-bottom:1.2em;padding:0}ul[class*=style-] li{line-height:1.2;margin-bottom:.6em;padding-left:1.6em;position:relative}ul[class*=style-] li:before{color:var(--gw-tertiary-base);content:"\e91b";font-family:icomoon,sans-serif!important;font-size:1.2em;left:0;position:absolute;top:-.07em}.text-white ul[class*=style-] li:before{color:#fff}ul.style-caret li:before{content:"\e91b"}ul.style-check li:before{content:"\e914"}ul.style-arrow li:before{content:"\e902"}.table td,.table th{border-color:#ddd;padding:.8rem;vertical-align:middle}.table th{background-color:var(--gw-datatable-header-background);border-color:var(--gw-datatable-header-cell-border-color);color:var(--gw-datatable-header-color);font-weight:500;vertical-align:middle}.table tr{background-color:var(--gw-datatable-row-background);color:var(--gw-datatable-row-color)}.table td{border-color:var(--gw-datatable-body-cell-border-color)}.table-hover tbody tr:hover,.table-striped tbody tr:nth-of-type(odd):hover{background-color:var(--gw-datatable-row-hover-background);color:var(--gw-datatable-row-hover-color)}.table-striped tbody tr:nth-of-type(odd){background-color:var(--gw-datatable-row-striped-background)}.table-sm td,.table-sm th{padding:.3rem .5rem}.table-info,.table-info>td,.table-info>th{background-color:var(--gw-datatable-row-selected-background);color:var(--gw-datatable-row-selected-color)}.table-hover .table-info:hover,.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:var(--gw-datatable-row-hover-background);color:var(--gw-datatable-row-hover-color)}.modal-content{background-color:var(--gw-dialog-background);border:1px solid var(--gw-dialog-border-color);border-radius:var(--gw-dialog-border-radius);-webkit-box-shadow:var(--gw-dialog-shadow-1-offset-x) var(--gw-dialog-shadow-1-offset-y) var(--gw-dialog-shadow-1-blur) var(--gw-dialog-shadow-1-spread) var(--gw-dialog-shadow-1-color);box-shadow:var(--gw-dialog-shadow-1-offset-x) var(--gw-dialog-shadow-1-offset-y) var(--gw-dialog-shadow-1-blur) var(--gw-dialog-shadow-1-spread) var(--gw-dialog-shadow-1-color);color:var(--gw-dialog-color);display:flex;flex-direction:column;justify-content:space-between;max-height:90vh}.modal-content .modal-header{border-bottom:1px solid var(--gw-dialog-border-color)}.modal-content .modal-header .close{margin-top:4px}.modal-content .modal-footer,.modal-content .modal-header{flex:0 0 auto}.modal-content .modal-body{flex:1;min-height:0;overflow:auto}.modal-content .modal-footer{border-top:1px solid var(--gw-dialog-border-color)}.progress{background-color:#eee;display:block;font-size:1.2rem;height:2rem;line-height:2rem;overflow:hidden}.progress-bar{background-color:var(--gw-tertiary-lighter);color:#000;height:2rem;padding:0 .2em;text-align:center}.progress-square{background-color:#eee;border-radius:.2em;height:3em;margin:0 .5em 0 0;overflow:hidden;position:relative;width:3em}.progress-square .progress-bar{background-color:var(--gw-secondary-base);bottom:0;display:block;position:absolute;width:100%}.progress-square.warning .progress-bar{background-color:#f0ad4e}code{background-color:inherit;color:inherit;padding-bottom:.1rem;padding-top:.1rem}.d-flex{align-items:center;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;justify-content:space-between}.loader{animation:load8 2s linear infinite;display:inline-block}.close{font-size:1.4em;font-weight:300;opacity:1;text-shadow:none}.close:focus{outline:0}.close:before{color:var(--gw-dialog-color);content:"\e922";display:block;font-family:icomoon,sans-serif!important;-moz-transition:all .18s ease-out;-o-transition:all .18s ease-out;-webkit-transition:all .18s ease-out;transition:all .18s ease-out}.close:focus,.close:hover{opacity:1}.close:hover:before{color:var(--gw-primary-base);transform:scale(1.2)}.close.absolute{position:absolute;right:1rem;top:1rem}.small,small{line-height:1.25}.break-word{word-break:break-all}.break-word-alt{word-wrap:break-word;word-break:break-word}.data-value{color:var(--gw-secondary-base);font-weight:400}.data-value.big{display:block;font-size:1.5em;line-height:1}.d-inline-block.valign-top{vertical-align:top}.dot-separator:after{content:"\b7";margin:0 .5em}.dot-separator:last-of-type:after{content:none;margin:0}.tag{border-radius:0;font-weight:500;vertical-align:.1em}.tag-primary{background-color:var(--gw-secondary-base)}.tag-inverse{color:rgba(0,0,0,.7)}.text-overflow{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table .text-overflow{max-width:300px}@media (min-width:1024px){.table .text-overflow{max-width:450px}}@media (min-width:1440px){.table .text-overflow{max-width:650px}}@media (min-width:1600px){.table .text-overflow{max-width:850px}}.card{background-color:var(--gw-panel-background);border-color:var(--gw-panel-border-color);border-radius:0;box-shadow:0 3px 6px rgba(0,0,0,.1);color:var(--gw-panel-color);margin-bottom:1em}.card-header{background-color:var(--gw-panel-header-background);color:var(--gw-panel-header-color);padding:.75em 1.8rem}.card.inline{display:inline-block;margin-right:1em;overflow:hidden;vertical-align:top;width:19.5rem}.card.inline .card-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card.inline .card-block{min-height:165.19px}.card-block{padding:1.6rem}.card-footer:last-child{border-radius:0}.card.button{width:10em}.card.button:hover{border-color:var(--gw-primary-hover-color)}.card.button .card-block{padding:0}.card.button .btn{line-height:218px;padding:0 1.8rem;white-space:normal}.card.button .btn>span{display:inline-block;line-height:1.25;vertical-align:middle}.card.button .btn:hover{background-color:var(--gw-primary-hover-color)}.card.button .btn [class^=icon-]{display:block;font-size:3em;margin-bottom:.4em}.card.active{border-color:var(--gw-secondary-base);min-height:300px}.card.active .card-footer{background-color:var(--gw-secondary-base);border-color:var(--gw-secondary-base);bottom:0;color:#fff;left:0;position:absolute;right:0}.card.active .card-footer .text-muted{color:#fff!important;font-weight:500}.card .list-group-item{border-left:none;border-right:none}.card .alert{margin-bottom:0}.actions-bar .btn{background-color:transparent;padding:.1em}.actions-bar-inline .btn{margin-top:-.1em;padding-bottom:.3em;padding-top:0}.hovered-parent .hovered-item{opacity:0}.hovered-parent:hover .hovered-item{opacity:1}.popover,.popover pre{background-color:var(--gw-dialog-background);color:var(--gw-dialog-color)}.popover{border:1px solid var(--gw-dialog-border-color);border-radius:0;-webkit-box-shadow:var(--gw-dialog-shadow-1-offset-x) var(--gw-dialog-shadow-1-offset-y) var(--gw-dialog-shadow-1-blur) var(--gw-dialog-shadow-1-spread) var(--gw-dialog-shadow-1-color);box-shadow:var(--gw-dialog-shadow-1-offset-x) var(--gw-dialog-shadow-1-offset-y) var(--gw-dialog-shadow-1-blur) var(--gw-dialog-shadow-1-spread) var(--gw-dialog-shadow-1-color);font-family:inherit;padding:0}.popover-content{padding:1em}.popover-title{background-color:var(--gw-dialog-background);border-radius:0}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover .arrow,.popover .arrow:after{border-color:transparent;border-style:solid;display:block;height:0;position:absolute;width:0}.popover .arrow{border-width:11px}.popover .arrow:after{border-width:10px;content:""}.popover.top .arrow{border-bottom-width:0;border-top-color:var(--gw-dialog-border-color);bottom:-11px;left:50%;margin-left:-11px}.popover.top .arrow:after{border-bottom-width:0;border-top-color:var(--gw-dialog-background);bottom:1px;content:" ";margin-left:-10px}.popover.right .arrow{border-left-width:0;border-right-color:var(--gw-dialog-border-color);left:-11px;margin-top:-11px;top:50%}.popover.right .arrow:after{border-left-width:0;border-right-color:var(--gw-dialog-background);bottom:-10px;content:" ";left:1px}.popover.bottom .arrow{border-bottom-color:var(--gw-dialog-border-color);border-top-width:0;left:50%;margin-left:-11px;top:-11px}.popover.bottom .arrow:after{border-bottom-color:var(--gw-dialog-background);border-top-width:0;content:" ";margin-left:-10px;top:1px}.popover.left .arrow{border-left-color:var(--gw-dialog-border-color);border-right-width:0;margin-top:-11px;right:-11px;top:50%}.popover.left .arrow:after{border-left-color:var(--gw-dialog-background);border-right-width:0;bottom:-10px;content:" ";right:1px}.angular-tooltip{background-color:var(--gw-tooltip-background);color:var(--gw-tooltip-color);max-width:300px}.angular-tooltip.angular-tooltip-top-left:after,.angular-tooltip.angular-tooltip-top-right:after,.angular-tooltip.angular-tooltip-top:after{border-top-color:var(--gw-tooltip-background)}.angular-tooltip.angular-tooltip-right-bottom:after,.angular-tooltip.angular-tooltip-right-top:after,.angular-tooltip.angular-tooltip-right:after{border-right-color:var(--gw-tooltip-background)}.angular-tooltip.angular-tooltip-bottom-left:after,.angular-tooltip.angular-tooltip-bottom-right:after,.angular-tooltip.angular-tooltip-bottom:after{border-bottom-color:var(--gw-tooltip-background)}.angular-tooltip.angular-tooltip-left-bottom:after,.angular-tooltip.angular-tooltip-left-top:after,.angular-tooltip.angular-tooltip-left:after{border-left-color:var(--gw-tooltip-background)}.list-group{background-color:var(--gw-listbox-background);color:var(--gw-listbox-color)}.list-group .list-group-item{background-color:var(--gw-listbox-option-group-background);color:var(--gw-listbox-option-color)}.list-group .list-group-item:hover{background-color:var(--gw-listbox-option-focus-background);color:var(--gw-listbox-option-focus-color)}.list-group-item pre{margin-bottom:0}.list-group.limit-height{max-height:300px;overflow-y:auto}.ellipsis-block,.list-group-item samp{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-group.two-columns .list-group-item{border-radius:0;float:left;width:50%}.list-group.two-columns .list-group-item:first-child,.list-group.two-columns .list-group-item:nth-child(2){border-top:none}.list-group.two-columns .list-group-item:last-child{border-bottom:none}.list-group.two-columns .list-group-item:nth-child(odd){border-right:1px solid #ddd}.card>.list-group.two-columns:first-child .list-group-item:first-child,.card>.list-group.two-columns:last-child .list-group-item:last-child{border-radius:0}.list-group.one-column .list-group-item:first-child{border-top:none}.list-group.repos li{cursor:pointer}li.remote{background:#0000000a}.form-control,.form-control-lg{background-color:var(--gw-form-field-background);border-color:var(--gw-form-field-border-color);color:var(--gw-form-field-color)}.form-control[readonly]{background-color:var(--gw-form-field-read-only-background)}.form-control-lg:focus,.form-control:focus{background-color:var(--gw-form-field-background);border-color:var(--gw-form-field-focus-border-color);color:var(--gw-form-field-color)}.form-control-lg:disabled,.form-control:disabled{background-color:var(--gw-form-field-disabled-background);color:var(--gw-form-field-disabled-color)}.form-control-lg::placeholder,.form-control::placeholder{color:var(--gw-form-field-placeholder-color)}.form-control,.form-control-lg,.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{border-radius:0}.form-control-lg,.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{font-size:1.125rem}.input-group-btn{padding-left:4px}.input-group-addon{border:none;border-radius:0;color:var(--gw-inputgroup-addon-color);padding-left:0}.has-danger .input-group-addon,.input-group-addon{background-color:var(--gw-inputgroup-addon-background)}.ng-submitted input.ng-invalid,input.ng-invalid.ng-touched{border-color:#d9534f}.input-group-addon.icon{background:transparent;bottom:0;left:.5em;line-height:2;padding:0;pointer-events:none;position:absolute;top:3px;z-index:10}.input-group-addon.icon+.form-control{padding-left:2.2em}.form-control.b-0{border:0}fieldset{color:var(--gw-fieldset-color)}.list-group-item:first-child,.list-group-item:last-child{border-radius:0}.border-top-0 .list-group-item:first-child{border-top:0}.tuclas .tooltip-inner{background-color:#ff6;box-shadow:0 6px 12px rgba(0,0,0,.175);color:#800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}span.switch{clear:both;margin:0 5px;width:36px}input.switch:empty{display:none}input.switch:empty~label{cursor:pointer;margin:.05em .6em -.05em 0;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}input.switch:empty~label:before{background-color:hsla(0,0%,71%,.5);border-radius:10em;height:.8em;width:2.2em}input.switch:empty~label:after,input.switch:empty~label:before{content:" ";display:block;-moz-transition:all .1s ease-in;-o-transition:all .1s ease-in;-webkit-transition:all .1s ease-in;transition:all .1s ease-in}input.switch:empty~label:after{background-color:#888;border-radius:50%;height:1.25em;left:-.3em;position:absolute;top:-.2em;width:1.25em}input.switch:checked~label:before{background-color:var(--gw-secondary-light)}input.switch:checked~label:after{background-color:var(--gw-secondary-base);left:1.3em}.card.active input.switch:checked~label:before{background-color:hsla(0,0%,100%,.5)}.card.active input.switch:checked~label:after{background-color:#fff}#toast-container .toast{border-radius:0;box-shadow:0 0 12px rgba(0,0,0,.3);position:relative}#toast-container>:hover{box-shadow:0 0 12px rgba(0,0,0,.6)}#toast-container>div:before{display:block;font-family:icomoon,sans-serif!important;font-size:2em;left:.3em;position:absolute;top:.1em}#toast-container .toast.toast-error,#toast-container .toast.toast-info,#toast-container .toast.toast-success,#toast-container .toast.toast-warning{background-image:none!important}#toast-container .toast{font-size:1.2rem;opacity:1;padding:25px 25px 25px 60px;width:450px}@media (max-width:1439px){#toast-container .toast{width:400px}}.toast-error{background-color:var(--gw-toast-error-background)!important;border-color:var(--gw-toast-error-border-color)!important;color:var(--gw-toast-error-color)!important}.toast-error button.toast-close-button{color:var(--gw-toast-error-color);opacity:1}.toast-error button.toast-close-button:hover{color:var(--gw-toast-error-close-button-focus-ring-color)}.toast-warning{background-color:var(--gw-toast-warn-background)!important;border-color:var(--gw-toast-warn-border-color)!important;color:var(--gw-toast-warn-color)!important}.toast-warning button.toast-close-button{color:var(--gw-toast-warn-color);opacity:1}.toast-warning button.toast-close-button:hover{color:var(--gw-toast-warn-close-button-focus-ring-color)}.toast-info{background-color:var(--gw-toast-info-background)!important;border-color:var(--gw-toast-info-border-color)!important;color:var(--gw-toast-info-color)!important}.toast-info button.toast-close-button{color:var(--gw-toast-info-color);opacity:1}.toast-info button.toast-close-button:hover{color:var(--gw-toast-info-close-button-focus-ring-color)}.toast-success{background-color:var(--gw-toast-success-background)!important;border-color:var(--gw-toast-success-border-color)!important;color:var(--gw-toast-success-color)!important}.toast-success button.toast-close-button{color:var(--gw-toast-success-color);opacity:1}.toast-success button.toast-close-button:hover{color:var(--gw-toast-success-close-button-focus-ring-color)}.toast-error:before,.toast-info:before,.toast-success:before,.toast-warning:before{display:block;font-family:icomoon,sans-serif!important;font-size:1.5em;left:.6em;position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.toast-info:before{content:"\e924"}.toast-warning:before{content:"\e930"}.toast-error:before{content:"\e920"}.toast-success:before{content:"\e914"}#toast-container>.toast-error:before,#toast-container>.toast-warning:before{content:"\e920"}#toast-container>.toast-success:before{content:"\e914"}#toast-container>.toast-info:before{content:"\e924"}#toast-container>.toast-info{background-color:#10b0a0}#toast-container>:hover{box-shadow:0 0 12px rgba(0,0,0,.5)!important}#toast-container .toast-title{font-weight:500}.pages-wrapper{overflow:hidden;position:relative}.page-slide{position:absolute;-moz-transition:left .18s ease-out;-o-transition:left .18s ease-out;-webkit-transition:left .18s ease-out;transition:left .18s ease-out}.tutorial-container .pages-wrapper{min-height:300px}.page-slide ul{list-style-type:none;margin-top:16px}#auto-complete-results-wrapper{max-height:204px;overflow:auto}#auto-complete-results-wrapper div.active,#auto-complete-results-wrapper div:hover{background-color:var(--autocomplete-background);cursor:pointer}#auto-complete-results-wrapper div.selected{background-color:var(--autocomplete-background-selected);cursor:pointer}#auto-complete-results-wrapper div p b,#auto-complete-results-wrapper div.active p b{color:var(--autocomplete-match)}#auto-complete-results-wrapper div p{margin-bottom:0;padding:5px 25px}#search-resource-box .clear-icon{float:none;position:relative;right:45px;z-index:10}@keyframes load8{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(-1turn);transform:rotate(-1turn)}}ul.nav.navbar-right.pagination li{float:left}ul.nav.navbar-right.pagination li:hover a{text-decoration:none}ul.nav.navbar-right.pagination li.disabled a{color:rgba(0,0,0,.5)!important;pointer-events:none}.pagination>li>a{background-color:var(--gw-paginator-nav-button-background);color:var(--gw-paginator-nav-button-color)}.pagination>.active>a{background-color:var(--gw-paginator-nav-button-selected-background);color:var(--gw-paginator-nav-button-selected-color)}.pagination>li>a:hover{background-color:var(--gw-paginator-nav-button-hover-background);color:var(--gw-paginator-nav-button-hover-color)}@media (max-width:1439px){.yasr .dataTables_wrapper .dataTables_filter input,.yasr .openGchartBtn{margin-top:8px}}.yasr .pivotTable{overflow-y:auto}.btn.btn-primary.btn-sm.yasr_downloadIcon{margin-right:6px}.resultsVisualButton button,.saveAsDropDown.btn-group .btn.btn-primary.btn-sm.dropdown-toggle,.yasr_downloadIcon{font-size:16px;margin-top:4px;padding:10px 16px}yasgui-component .yasgui-btn.btn-selected{background-color:var(--gw-primary-base)!important}yasgui-component .btn-orientation,yasgui-component .custom-button{color:var(--gw-primary-base)!important}yasgui-component .confirm-button,yasgui-component .ok-button,yasgui-component .primary-button{background-color:var(--gw-primary-base)!important}yasgui-component .yasr .dataTable a{font-size:16px}yasgui-component .yasr_response_chip{color:var(--gw-secondary-base)!important;font-size:16px}yasgui-component .yasr_plugin_control label{color:var(--gw-secondary-base)!important;margin-bottom:0}yasgui-component .yasr_plugin_control label .label{margin-right:5px}.dialog .dialog-footer .confirm-button{background-color:var(--gw-primary-base)!important}.yasqe .CodeMirror{min-height:330px}.nav-item.sparql-tab a.nav-link{max-width:250px;overflow:hidden;padding-right:20px;position:relative;text-overflow:ellipsis;white-space:nowrap}.nav-item.sparql-tab a.nav-link .btn.btn-link{position:absolute;right:4px;top:11px}.nav-item.sparql-tab a.nav-link span{padding-right:10px}input[name=namespace]{float:left;width:55%}.showing-info-namespaces{margin-top:16px}.rdf-side-panel-content ul.rdf-list{list-style:none;margin:0;padding:0}.rdf-side-panel-content ul.rdf-list li{padding:5px 50px 5px 10px;position:relative}.rdf-side-panel-content ul.rdf-list li svg{pointer-events:none;position:absolute;right:10px;top:50%}.rdf-side-panel-content ul.rdf-list li:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.rdf-side-panel-content ul.rdf-list li{border-top:1px solid #ddd;padding:10px}.slider-help-button .help-button{padding:0;position:absolute;right:-25px;top:-1px}.slider-help-button .help-button .icon-info{font-size:1.2em}.slider-help-button{left:-16px;position:relative}::-ms-clear,::-ms-reveal{display:none}.slider{overflow-y:hidden}.slider.closed{max-height:0;-moz-transition:max-height .5s ease-out;-o-transition:max-height .5s ease-out;-webkit-transition:max-height .5s ease-out;transition:max-height .5s ease-out}.slider.opened{-moz-transition:max-height .5s ease-in;-o-transition:max-height .5s ease-in;-webkit-transition:max-height .5s ease-in;transition:max-height .5s ease-in}.rdf-side-panel-content .tab-content{max-height:calc(100vh - 130px);overflow-y:auto;width:100%}.menu-events g{cursor:pointer;opacity:0}.tags .tag-list li.tag-item{height:auto!important;white-space:normal!important}.badge{border-radius:.25rem;color:#fff;display:inline-block;font-size:75%;font-weight:400;line-height:1;padding:.25em .4em;text-align:center;vertical-align:baseline;white-space:nowrap}.badge-default{background-color:#aaa}.badge-primary{background-color:var(--gw-secondary-base)}.badge-info{background-color:var(--gw-primary-base)}.badge-success{background-color:#5cb85c}.badge-warning{background-color:#f0ad4e}@media (min-width:992px){.col-lg-no-padding{padding-left:0!important;padding-right:0!important}}tags-input[disabled] .tags,tags-input[disabled] .tags .input{background-color:var(--gw-form-field-disabled-background)!important;color:var(--gw-form-field-disabled-color)}tags-input .tags .input{color:var(--gw-form-field-color)}.wb-tags-input .tags,tags-input .tags .input{background-color:var(--gw-form-field-background)}.wb-tags-input .tags{border:1px solid var(--gw-form-field-border-color);border-radius:0;box-shadow:inset 0 1px 1px rgba(0,0,0,.075);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.wb-tags-input .tags.focused{-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #cbeeea;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #cbeeea;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #cbeeea;outline:0}.wb-tags-input .tags .tag-item,.wb-tags-input .tags .tag-item.tag-item-wildcard{background:#cbeeea;border:1px solid #cbeeea;border-radius:0;color:#3d3d3d}.wb-tags-input .tags .tag-item.tag-item-wildcard{font-weight:700}.wb-tags-input .tags .tag-item .remove-button{background:0 0;border:none;color:#7e7b6d;cursor:pointer;font:700 16px Arial,sans-serif;margin:0 0 0 5px;padding:0;vertical-align:middle}.repo-info-home{align-items:flex-start;display:flex;flex-direction:row}.repo-info-home div{align-self:center}.tag-default{background-color:var(--gw-tag-default-background)!important;color:var(--gw-tag-default-color)!important}.tag-danger{background-color:var(--gw-tag-danger-background)!important;color:var(--gw-tag-danger-color)!important}.tag-success{background-color:var(--gw-tag-success-background)!important;color:var(--gw-tag-success-color)!important}.tag-warning{background-color:var(--gw-tag-warning-background)!important;color:var(--gw-tag-warning-color)!important}.tag-info{background-color:var(--gw-tag-info-background)!important;color:var(--gw-tag-info-color)!important}.rzslider .rz-pointer{background-color:var(--gw-secondary-base)!important}.rzslider .rz-selection{background:var(--gw-secondary-base)!important}.login-form{margin:auto;max-width:600px;padding-top:4em}.btn-fade-warning{animation:fade-button 2s infinite;--fade-color:var(--gw-warning-base)}.btn-fade-danger{animation:fade-button 2s infinite;--fade-color:var(--gw-error-light)}.btn-fade-danger:hover,.btn-fade-warning:hover{background-color:var(--fade-color)!important;border-color:var(--fade-color)!important}@keyframes fade-button{0%{background-color:#ebebeb;border-color:#ebebeb}50%{background-color:var(--fade-color);border-color:var(--fade-color)}to{background-color:#ebebeb;border-color:#ebebeb}}
|
|
1
|
+
:root.menu-collapsed{--menu-width:var(--menu-width-collapsed)}.main-container{margin-left:15rem;padding:0 var(--main-content-rl-padding) 3rem var(--main-content-rl-padding)}.ng-cloak,.x-ng-cloak,[data-ng-cloak],[ng-cloak],[ng\:cloak],[x-ng-cloak]{display:none!important}@media (min-width:576px){.modal-dialog.google-visualization-charteditor-dialog{max-width:none}}.google-visualization-charteditor-dialog{height:auto!important}.google-visualization-charteditor-dialog .charts-flat-menu-button{height:26px!important}.dropdown-menu-center{left:50%!important;right:auto!important;text-align:center!important;transform:translate(-50%)!important}.rdf-list ul.datasource:before{top:.5rem}.rdf-side-panel-content ul.rdf-list li.data-key{cursor:pointer;padding-right:2.5rem}.container-fluid.main-container.expanded{margin-left:4.375rem}.status-bar{display:flex;flex-wrap:wrap-reverse;font-size:1.1em;gap:.25em;justify-content:flex-end;margin-left:auto;margin-right:2em;max-width:var(--max-width-minus-menu);padding-bottom:.5em;position:sticky;top:0;-moz-transition:all .1s ease-out;-o-transition:all .1s ease-out;-webkit-transition:all .1s ease-out;transition:all .1s ease-out;width:max-content;z-index:999}.status-bar operations-statuses-monitor:not(:has(div)){display:none}.status-bar .btn-group .dropdown-toggle{margin-right:0}html{min-height:100%;position:relative}footer.footer{bottom:0;height:30px;position:absolute;width:100%}footer.footer .container-fluid.main-container{padding:0}footer.footer .container-fluid.main-container p{margin:0;padding-left:30px}.open>.btn-secondary.dropdown-toggle,.open>.btn-secondary.dropdown-toggle.focus,.open>.btn-secondary.dropdown-toggle:focus,.open>.btn-secondary.dropdown-toggle:hover{background-color:var(--gw-primary-base);border-color:var(--gw-primary-base);color:#fff}.open>.btn-secondary.dropdown-toggle [class^=icon-]{color:var(--icon-on-primary-color)}.btn-secondary.dropdown-toggle [class^=icon-]{color:var(--gw-primary-base)}.dropdown-toggle:after{border:none;content:"\e921";display:inline-block;font-family:icomoon,sans-serif!important;font-size:.9em;height:auto;margin-left:0;-moz-transition:all .2s ease-in;-o-transition:all .2s ease-in;-webkit-transition:all .2s ease-in;transition:all .2s ease-in;width:auto}.open .dropdown-toggle:after{transform:rotate(180deg)}.dropdown-menu{background-color:var(--gw-primary-base);border:none;border-radius:0;display:none;margin-top:-1em;min-width:100%;opacity:0;padding:0;-moz-transition:all .15s ease-out;-o-transition:all .15s ease-out;-webkit-transition:all .15s ease-out;transition:all .15s ease-out}.open>.dropdown-menu{display:block;margin-top:-1px;opacity:1}.dropdown-item{color:#fff!important;cursor:pointer;padding:.5em 1.2em}.dropdown-item:focus,.dropdown-item:hover{background-color:rgba(0,0,0,.1);color:#fff}.btn-link+.dropdown-menu-right{margin-top:8px}.dropdown-menu-right{right:3px}.status-bar .dropdown-menu-right{right:0}.collapsible-heading{cursor:pointer}.collapsible-heading.collapsed [class^=icon-]{transform:rotate(-90deg)}.rdf-list .hidden-data-value{display:none}.tab-error:after{content:"\e920";font-family:icomoon,sans-serif!important;font-size:1em;left:.1em;line-height:1;position:absolute;vertical-align:middle}.nav-tabs{border-bottom-color:var(--gw-tabs-tablist-border-color);font-weight:400}.nav-tabs .nav-item{margin-right:.2rem;margin-top:4px}.nav-tabs .nav-item+.nav-item{margin-left:0;margin-right:.2rem}.nav-tabs .nav-link{background-color:var(--gw-tabs-tab-background);border-color:var(--gw-tabs-tab-border-color);border-bottom-color:var(--gw-tabs-tab-border-bottom-color);border-radius:0;color:var(--gw-tabs-tab-color);cursor:pointer}.nav-tabs .nav-link:hover{background-color:var(--gw-tabs-tab-hover-background);border-color:var(--gw-tabs-tab-hover-border-color);border-bottom-color:var(--gw-tabs-tab-hover-border-bottom-color);color:var(--gw-tabs-tab-hover-color)}.nav-tabs .nav-link .btn{border:none;padding:0}.nav-tabs .nav-link>span+.btn{margin-left:.8em}.nav-tabs .active .nav-link,.nav-tabs .active.nav-link{background-color:var(--gw-tabs-tab-active-background);border-color:var(--gw-tabs-tab-active-border-color);border-bottom-color:var(--gw-tabs-tab-active-border-bottom-color);color:var(--gw-tabs-tab-active-color)}.nav-tabs .nav-item.active a,.nav-tabs .nav-item.active:focus a,.nav-tabs .nav-item.active:hover a,.nav-tabs .nav-link.active:focus,.nav-tabs .nav-link.active:hover{background-color:var(--gw-tabs-tab-active-background);border-color:var(--gw-tabs-tab-active-border-color) var(--gw-tabs-tab-active-border-color) transparent;color:var(--gw-tabs-tab-active-color)}.nav-tabs .nav-link:focus{border-color:var(--gw-tabs-tab-hover-border-color) var(--gw-tabs-tab-hover-border-color) transparent}tab-heading.nav-item{margin-right:4px}ul[class*=style-]{list-style:none;margin-bottom:1.2em;padding:0}ul[class*=style-] li{line-height:1.2;margin-bottom:.6em;padding-left:1.6em;position:relative}ul[class*=style-] li:before{color:var(--gw-tertiary-base);content:"\e91b";font-family:icomoon,sans-serif!important;font-size:1.2em;left:0;position:absolute;top:-.07em}.text-white ul[class*=style-] li:before{color:#fff}ul.style-caret li:before{content:"\e91b"}ul.style-check li:before{content:"\e914"}ul.style-arrow li:before{content:"\e902"}.table td,.table th{border-color:#ddd;padding:.8rem;vertical-align:middle}.table th{background-color:var(--gw-datatable-header-background);border-color:var(--gw-datatable-header-cell-border-color);color:var(--gw-datatable-header-color);font-weight:500;vertical-align:middle}.table tr{background-color:var(--gw-datatable-row-background);color:var(--gw-datatable-row-color)}.table td{border-color:var(--gw-datatable-body-cell-border-color)}.table-hover tbody tr:hover,.table-striped tbody tr:nth-of-type(odd):hover{background-color:var(--gw-datatable-row-hover-background);color:var(--gw-datatable-row-hover-color)}.table-striped tbody tr:nth-of-type(odd){background-color:var(--gw-datatable-row-striped-background)}.table-sm td,.table-sm th{padding:.3rem .5rem}.table-info,.table-info>td,.table-info>th{background-color:var(--gw-datatable-row-selected-background);color:var(--gw-datatable-row-selected-color)}.table-hover .table-info:hover,.table-hover .table-info:hover>td,.table-hover .table-info:hover>th{background-color:var(--gw-datatable-row-hover-background);color:var(--gw-datatable-row-hover-color)}.modal-content{background-color:var(--gw-dialog-background);border:1px solid var(--gw-dialog-border-color);border-radius:var(--gw-dialog-border-radius);-webkit-box-shadow:var(--gw-dialog-shadow-1-offset-x) var(--gw-dialog-shadow-1-offset-y) var(--gw-dialog-shadow-1-blur) var(--gw-dialog-shadow-1-spread) var(--gw-dialog-shadow-1-color);box-shadow:var(--gw-dialog-shadow-1-offset-x) var(--gw-dialog-shadow-1-offset-y) var(--gw-dialog-shadow-1-blur) var(--gw-dialog-shadow-1-spread) var(--gw-dialog-shadow-1-color);color:var(--gw-dialog-color);display:flex;flex-direction:column;justify-content:space-between;max-height:90vh}.modal-content .modal-header{border-bottom:1px solid var(--gw-dialog-border-color)}.modal-content .modal-header .close{margin-top:4px}.modal-content .modal-footer,.modal-content .modal-header{flex:0 0 auto}.modal-content .modal-body{flex:1;min-height:0;overflow:auto}.modal-content .modal-footer{border-top:1px solid var(--gw-dialog-border-color)}.progress{background-color:#eee;display:block;font-size:1.2rem;height:2rem;line-height:2rem;overflow:hidden}.progress-bar{background-color:var(--gw-tertiary-lighter);color:#000;height:2rem;padding:0 .2em;text-align:center}.progress-square{background-color:#eee;border-radius:.2em;height:3em;margin:0 .5em 0 0;overflow:hidden;position:relative;width:3em}.progress-square .progress-bar{background-color:var(--gw-secondary-base);bottom:0;display:block;position:absolute;width:100%}.progress-square.warning .progress-bar{background-color:#f0ad4e}code{background-color:inherit;color:inherit;padding-bottom:.1rem;padding-top:.1rem}.d-flex{align-items:center;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;justify-content:space-between}.loader{animation:load8 2s linear infinite;display:inline-block}.close{font-size:1.4em;font-weight:300;opacity:1;text-shadow:none}.close:focus{outline:0}.close:before{color:var(--gw-dialog-color);content:"\e922";display:block;font-family:icomoon,sans-serif!important;-moz-transition:all .18s ease-out;-o-transition:all .18s ease-out;-webkit-transition:all .18s ease-out;transition:all .18s ease-out}.close:focus,.close:hover{opacity:1}.close:hover:before{color:var(--gw-primary-base);transform:scale(1.2)}.close.absolute{position:absolute;right:1rem;top:1rem}.small,small{line-height:1.25}.break-word{word-break:break-all}.break-word-alt{word-wrap:break-word;word-break:break-word}.data-value{color:var(--gw-secondary-base);font-weight:400}.data-value.big{display:block;font-size:1.5em;line-height:1}.d-inline-block.valign-top{vertical-align:top}.dot-separator:after{content:"\b7";margin:0 .5em}.dot-separator:last-of-type:after{content:none;margin:0}.tag{border-radius:0;font-weight:500;vertical-align:.1em}.tag-primary{background-color:var(--gw-secondary-base)}.tag-inverse{color:rgba(0,0,0,.7)}.text-overflow{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table .text-overflow{max-width:300px}@media (min-width:1024px){.table .text-overflow{max-width:450px}}@media (min-width:1440px){.table .text-overflow{max-width:650px}}@media (min-width:1600px){.table .text-overflow{max-width:850px}}.card{background-color:var(--gw-panel-background);border-color:var(--gw-panel-border-color);border-radius:0;box-shadow:0 3px 6px rgba(0,0,0,.1);color:var(--gw-panel-color);margin-bottom:1em}.card-header{background-color:var(--gw-panel-header-background);color:var(--gw-panel-header-color);padding:.75em 1.8rem}.card.inline{display:inline-block;margin-right:1em;overflow:hidden;vertical-align:top;width:19.5rem}.card.inline .card-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card.inline .card-block{min-height:165.19px}.card-block{padding:1.6rem}.card-footer:last-child{border-radius:0}.card.button{width:10em}.card.button:hover{border-color:var(--gw-primary-hover-color)}.card.button .card-block{padding:0}.card.button .btn{line-height:218px;padding:0 1.8rem;white-space:normal}.card.button .btn>span{display:inline-block;line-height:1.25;vertical-align:middle}.card.button .btn:hover{background-color:var(--gw-primary-hover-color)}.card.button .btn [class^=icon-]{display:block;font-size:3em;margin-bottom:.4em}.card.active{border-color:var(--gw-secondary-base);min-height:300px}.card.active .card-footer{background-color:var(--gw-secondary-base);border-color:var(--gw-secondary-base);bottom:0;color:#fff;left:0;position:absolute;right:0}.card.active .card-footer .text-muted{color:#fff!important;font-weight:500}.card .list-group-item{border-left:none;border-right:none}.card .alert{margin-bottom:0}.actions-bar .btn{background-color:transparent;padding:.1em}.actions-bar-inline .btn{margin-top:-.1em;padding-bottom:.3em;padding-top:0}.hovered-parent .hovered-item{opacity:0}.hovered-parent:hover .hovered-item{opacity:1}.popover,.popover pre{background-color:var(--gw-dialog-background);color:var(--gw-dialog-color)}.popover{border:1px solid var(--gw-dialog-border-color);border-radius:0;-webkit-box-shadow:var(--gw-dialog-shadow-1-offset-x) var(--gw-dialog-shadow-1-offset-y) var(--gw-dialog-shadow-1-blur) var(--gw-dialog-shadow-1-spread) var(--gw-dialog-shadow-1-color);box-shadow:var(--gw-dialog-shadow-1-offset-x) var(--gw-dialog-shadow-1-offset-y) var(--gw-dialog-shadow-1-blur) var(--gw-dialog-shadow-1-spread) var(--gw-dialog-shadow-1-color);font-family:inherit;padding:0}.popover-content{padding:1em}.popover-title{background-color:var(--gw-dialog-background);border-radius:0}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover .arrow,.popover .arrow:after{border-color:transparent;border-style:solid;display:block;height:0;position:absolute;width:0}.popover .arrow{border-width:11px}.popover .arrow:after{border-width:10px;content:""}.popover.top .arrow{border-bottom-width:0;border-top-color:var(--gw-dialog-border-color);bottom:-11px;left:50%;margin-left:-11px}.popover.top .arrow:after{border-bottom-width:0;border-top-color:var(--gw-dialog-background);bottom:1px;content:" ";margin-left:-10px}.popover.right .arrow{border-left-width:0;border-right-color:var(--gw-dialog-border-color);left:-11px;margin-top:-11px;top:50%}.popover.right .arrow:after{border-left-width:0;border-right-color:var(--gw-dialog-background);bottom:-10px;content:" ";left:1px}.popover.bottom .arrow{border-bottom-color:var(--gw-dialog-border-color);border-top-width:0;left:50%;margin-left:-11px;top:-11px}.popover.bottom .arrow:after{border-bottom-color:var(--gw-dialog-background);border-top-width:0;content:" ";margin-left:-10px;top:1px}.popover.left .arrow{border-left-color:var(--gw-dialog-border-color);border-right-width:0;margin-top:-11px;right:-11px;top:50%}.popover.left .arrow:after{border-left-color:var(--gw-dialog-background);border-right-width:0;bottom:-10px;content:" ";right:1px}.angular-tooltip{background-color:var(--gw-tooltip-background);color:var(--gw-tooltip-color);max-width:300px}.angular-tooltip.angular-tooltip-top-left:after,.angular-tooltip.angular-tooltip-top-right:after,.angular-tooltip.angular-tooltip-top:after{border-top-color:var(--gw-tooltip-background)}.angular-tooltip.angular-tooltip-right-bottom:after,.angular-tooltip.angular-tooltip-right-top:after,.angular-tooltip.angular-tooltip-right:after{border-right-color:var(--gw-tooltip-background)}.angular-tooltip.angular-tooltip-bottom-left:after,.angular-tooltip.angular-tooltip-bottom-right:after,.angular-tooltip.angular-tooltip-bottom:after{border-bottom-color:var(--gw-tooltip-background)}.angular-tooltip.angular-tooltip-left-bottom:after,.angular-tooltip.angular-tooltip-left-top:after,.angular-tooltip.angular-tooltip-left:after{border-left-color:var(--gw-tooltip-background)}.list-group{background-color:var(--gw-listbox-background);color:var(--gw-listbox-color)}.list-group .list-group-item{background-color:var(--gw-listbox-option-group-background);color:var(--gw-listbox-option-color)}.list-group .list-group-item:hover{background-color:var(--gw-listbox-option-focus-background);color:var(--gw-listbox-option-focus-color)}.list-group-item pre{margin-bottom:0}.list-group.limit-height{max-height:300px;overflow-y:auto}.ellipsis-block,.list-group-item samp{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-group.two-columns .list-group-item{border-radius:0;float:left;width:50%}.list-group.two-columns .list-group-item:first-child,.list-group.two-columns .list-group-item:nth-child(2){border-top:none}.list-group.two-columns .list-group-item:last-child{border-bottom:none}.list-group.two-columns .list-group-item:nth-child(odd){border-right:1px solid #ddd}.card>.list-group.two-columns:first-child .list-group-item:first-child,.card>.list-group.two-columns:last-child .list-group-item:last-child{border-radius:0}.list-group.one-column .list-group-item:first-child{border-top:none}.list-group.repos li{cursor:pointer}li.remote{background:#0000000a}.form-control,.form-control-lg{background-color:var(--gw-form-field-background);border-color:var(--gw-form-field-border-color);color:var(--gw-form-field-color)}.form-control[readonly]{background-color:var(--gw-form-field-read-only-background)}.form-control-lg:focus,.form-control:focus{background-color:var(--gw-form-field-background);border-color:var(--gw-form-field-focus-border-color);color:var(--gw-form-field-color)}.form-control-lg:disabled,.form-control:disabled{background-color:var(--gw-form-field-disabled-background);color:var(--gw-form-field-disabled-color)}.form-control-lg::placeholder,.form-control::placeholder{color:var(--gw-form-field-placeholder-color)}.form-control,.form-control-lg,.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{border-radius:0}.form-control-lg,.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{font-size:1.125rem}.input-group-btn{padding-left:4px}.input-group-addon{border:none;border-radius:0;color:var(--gw-inputgroup-addon-color);padding-left:0}.has-danger .input-group-addon,.input-group-addon{background-color:var(--gw-inputgroup-addon-background)}.ng-submitted input.ng-invalid,input.ng-invalid.ng-touched{border-color:#d9534f}.input-group-addon.icon{background:transparent;bottom:0;left:.5em;line-height:2;padding:0;pointer-events:none;position:absolute;top:3px;z-index:10}.input-group-addon.icon+.form-control{padding-left:2.2em}.form-control.b-0{border:0}fieldset{color:var(--gw-fieldset-color)}.list-group-item:first-child,.list-group-item:last-child{border-radius:0}.border-top-0 .list-group-item:first-child{border-top:0}.tuclas .tooltip-inner{background-color:#ff6;box-shadow:0 6px 12px rgba(0,0,0,.175);color:#800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}span.switch{clear:both;margin:0 5px;width:36px}input.switch:empty{display:none}input.switch:empty~label{cursor:pointer;margin:.05em .6em -.05em 0;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}input.switch:empty~label:before{background-color:hsla(0,0%,71%,.5);border-radius:10em;height:.8em;width:2.2em}input.switch:empty~label:after,input.switch:empty~label:before{content:" ";display:block;-moz-transition:all .1s ease-in;-o-transition:all .1s ease-in;-webkit-transition:all .1s ease-in;transition:all .1s ease-in}input.switch:empty~label:after{background-color:#888;border-radius:50%;height:1.25em;left:-.3em;position:absolute;top:-.2em;width:1.25em}input.switch:checked~label:before{background-color:var(--gw-secondary-light)}input.switch:checked~label:after{background-color:var(--gw-secondary-base);left:1.3em}.card.active input.switch:checked~label:before{background-color:hsla(0,0%,100%,.5)}.card.active input.switch:checked~label:after{background-color:#fff}#toast-container .toast{border-radius:0;box-shadow:0 0 12px rgba(0,0,0,.3);position:relative}#toast-container>:hover{box-shadow:0 0 12px rgba(0,0,0,.6)}#toast-container>div:before{display:block;font-family:icomoon,sans-serif!important;font-size:2em;left:.3em;position:absolute;top:.1em}#toast-container .toast.toast-error,#toast-container .toast.toast-info,#toast-container .toast.toast-success,#toast-container .toast.toast-warning{background-image:none!important}#toast-container .toast{font-size:1.2rem;opacity:1;padding:25px 25px 25px 60px;width:450px}@media (max-width:1439px){#toast-container .toast{width:400px}}.toast-error{background-color:var(--gw-toast-error-background)!important;border-color:var(--gw-toast-error-border-color)!important;color:var(--gw-toast-error-color)!important}.toast-error button.toast-close-button{color:var(--gw-toast-error-color);opacity:1}.toast-error button.toast-close-button:hover{color:var(--gw-toast-error-close-button-focus-ring-color)}.toast-warning{background-color:var(--gw-toast-warn-background)!important;border-color:var(--gw-toast-warn-border-color)!important;color:var(--gw-toast-warn-color)!important}.toast-warning button.toast-close-button{color:var(--gw-toast-warn-color);opacity:1}.toast-warning button.toast-close-button:hover{color:var(--gw-toast-warn-close-button-focus-ring-color)}.toast-info{background-color:var(--gw-toast-info-background)!important;border-color:var(--gw-toast-info-border-color)!important;color:var(--gw-toast-info-color)!important}.toast-info button.toast-close-button{color:var(--gw-toast-info-color);opacity:1}.toast-info button.toast-close-button:hover{color:var(--gw-toast-info-close-button-focus-ring-color)}.toast-success{background-color:var(--gw-toast-success-background)!important;border-color:var(--gw-toast-success-border-color)!important;color:var(--gw-toast-success-color)!important}.toast-success button.toast-close-button{color:var(--gw-toast-success-color);opacity:1}.toast-success button.toast-close-button:hover{color:var(--gw-toast-success-close-button-focus-ring-color)}.toast-error:before,.toast-info:before,.toast-success:before,.toast-warning:before{display:block;font-family:icomoon,sans-serif!important;font-size:1.5em;left:.6em;position:absolute;top:50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}.toast-info:before{content:"\e924"}.toast-warning:before{content:"\e930"}.toast-error:before{content:"\e920"}.toast-success:before{content:"\e914"}#toast-container>.toast-error:before,#toast-container>.toast-warning:before{content:"\e920"}#toast-container>.toast-success:before{content:"\e914"}#toast-container>.toast-info:before{content:"\e924"}#toast-container>.toast-info{background-color:#10b0a0}#toast-container>:hover{box-shadow:0 0 12px rgba(0,0,0,.5)!important}#toast-container .toast-title{font-weight:500}.pages-wrapper{overflow:hidden;position:relative}.page-slide{position:absolute;-moz-transition:left .18s ease-out;-o-transition:left .18s ease-out;-webkit-transition:left .18s ease-out;transition:left .18s ease-out}.tutorial-container .pages-wrapper{min-height:300px}.page-slide ul{list-style-type:none;margin-top:16px}#auto-complete-results-wrapper{max-height:204px;overflow:auto}#auto-complete-results-wrapper div.active,#auto-complete-results-wrapper div:hover{background-color:var(--autocomplete-background);cursor:pointer}#auto-complete-results-wrapper div.selected{background-color:var(--autocomplete-background-selected);cursor:pointer}#auto-complete-results-wrapper div p b,#auto-complete-results-wrapper div.active p b{color:var(--autocomplete-match)}#auto-complete-results-wrapper div p{margin-bottom:0;padding:5px 25px}#search-resource-box .clear-icon{float:none;position:relative;right:45px;z-index:10}@keyframes load8{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(-1turn);transform:rotate(-1turn)}}ul.nav.navbar-right.pagination li{float:left}ul.nav.navbar-right.pagination li:hover a{text-decoration:none}ul.nav.navbar-right.pagination li.disabled a{color:rgba(0,0,0,.5)!important;pointer-events:none}.pagination>li>a{background-color:var(--gw-paginator-nav-button-background);color:var(--gw-paginator-nav-button-color)}.pagination>.active>a{background-color:var(--gw-paginator-nav-button-selected-background);color:var(--gw-paginator-nav-button-selected-color)}.pagination>li>a:hover{background-color:var(--gw-paginator-nav-button-hover-background);color:var(--gw-paginator-nav-button-hover-color)}@media (max-width:1439px){.yasr .dataTables_wrapper .dataTables_filter input,.yasr .openGchartBtn{margin-top:8px}}.yasr .pivotTable{overflow-y:auto}.btn.btn-primary.btn-sm.yasr_downloadIcon{margin-right:6px}.resultsVisualButton button,.saveAsDropDown.btn-group .btn.btn-primary.btn-sm.dropdown-toggle,.yasr_downloadIcon{font-size:16px;margin-top:4px;padding:10px 16px}yasgui-component .yasgui-btn.btn-selected{background-color:var(--gw-primary-base)!important}yasgui-component .btn-orientation,yasgui-component .custom-button{color:var(--gw-primary-base)!important}yasgui-component .confirm-button,yasgui-component .ok-button,yasgui-component .primary-button{background-color:var(--gw-primary-base)!important}yasgui-component .yasr .dataTable a{font-size:16px}yasgui-component .yasr_response_chip{color:var(--gw-secondary-base)!important;font-size:16px}yasgui-component .yasr_plugin_control label{color:var(--gw-secondary-base)!important;margin-bottom:0}yasgui-component .yasr_plugin_control label .label{margin-right:5px}.dialog .dialog-footer .confirm-button{background-color:var(--gw-primary-base)!important}.yasqe .CodeMirror{min-height:330px}.nav-item.sparql-tab a.nav-link{max-width:250px;overflow:hidden;padding-right:20px;position:relative;text-overflow:ellipsis;white-space:nowrap}.nav-item.sparql-tab a.nav-link .btn.btn-link{position:absolute;right:4px;top:11px}.nav-item.sparql-tab a.nav-link span{padding-right:10px}input[name=namespace]{float:left;width:55%}.showing-info-namespaces{margin-top:16px}.rdf-side-panel-content ul.rdf-list{list-style:none;margin:0;padding:0}.rdf-side-panel-content ul.rdf-list li{padding:5px 50px 5px 10px;position:relative}.rdf-side-panel-content ul.rdf-list li svg{pointer-events:none;position:absolute;right:10px;top:50%}.rdf-side-panel-content ul.rdf-list li:nth-of-type(odd){background-color:rgba(0,0,0,.05)}.rdf-side-panel-content ul.rdf-list li{border-top:1px solid #ddd;padding:10px}.slider-help-button .help-button{padding:0;position:absolute;right:-25px;top:-1px}.slider-help-button .help-button .icon-info{font-size:1.2em}.slider-help-button{left:-16px;position:relative}::-ms-clear,::-ms-reveal{display:none}.slider{overflow-y:hidden}.slider.closed{max-height:0;-moz-transition:max-height .5s ease-out;-o-transition:max-height .5s ease-out;-webkit-transition:max-height .5s ease-out;transition:max-height .5s ease-out}.slider.opened{-moz-transition:max-height .5s ease-in;-o-transition:max-height .5s ease-in;-webkit-transition:max-height .5s ease-in;transition:max-height .5s ease-in}.rdf-side-panel-content .tab-content{max-height:calc(100vh - 130px);overflow-y:auto;width:100%}.menu-events g{cursor:pointer;opacity:0}.tags .tag-list li.tag-item{height:auto!important;white-space:normal!important}.badge{border-radius:.25rem;color:#fff;display:inline-block;font-size:75%;font-weight:400;line-height:1;padding:.25em .4em;text-align:center;vertical-align:baseline;white-space:nowrap}.badge-default{background-color:#aaa}.badge-primary{background-color:var(--gw-secondary-base)}.badge-info{background-color:var(--gw-primary-base)}.badge-success{background-color:#5cb85c}.badge-warning{background-color:#f0ad4e}@media (min-width:992px){.col-lg-no-padding{padding-left:0!important;padding-right:0!important}}tags-input[disabled] .tags,tags-input[disabled] .tags .input{background-color:var(--gw-form-field-disabled-background)!important;color:var(--gw-form-field-disabled-color)}tags-input .tags .input{color:var(--gw-form-field-color)}.wb-tags-input .tags,tags-input .tags .input{background-color:var(--gw-form-field-background)}.wb-tags-input .tags{border:1px solid var(--gw-form-field-border-color);border-radius:0;box-shadow:inset 0 1px 1px rgba(0,0,0,.075);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.wb-tags-input .tags.focused{-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #cbeeea;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #cbeeea;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #cbeeea;outline:0}.wb-tags-input .tags .tag-item,.wb-tags-input .tags .tag-item.tag-item-wildcard{background:#cbeeea;border:1px solid #cbeeea;border-radius:0;color:#3d3d3d}.wb-tags-input .tags .tag-item.tag-item-wildcard{font-weight:700}.wb-tags-input .tags .tag-item .remove-button{background:0 0;border:none;color:#7e7b6d;cursor:pointer;font:700 16px Arial,sans-serif;margin:0 0 0 5px;padding:0;vertical-align:middle}.repo-info-home{align-items:flex-start;display:flex;flex-direction:row}.repo-info-home div{align-self:center}.tag-default{background-color:var(--gw-tag-default-background)!important;color:var(--gw-tag-default-color)!important}.tag-danger{background-color:var(--gw-tag-danger-background)!important;color:var(--gw-tag-danger-color)!important}.tag-success{background-color:var(--gw-tag-success-background)!important;color:var(--gw-tag-success-color)!important}.tag-warning{background-color:var(--gw-tag-warning-background)!important;color:var(--gw-tag-warning-color)!important}.tag-info{background-color:var(--gw-tag-info-background)!important;color:var(--gw-tag-info-color)!important}.rzslider .rz-pointer{background-color:var(--gw-secondary-base)!important}.rzslider .rz-selection{background:var(--gw-secondary-base)!important}.login-form{margin:auto;max-width:600px;padding-top:4em}.btn-fade-warning{animation:fade-button 2s infinite;--fade-color:var(--gw-warning-base)}.btn-fade-danger{animation:fade-button 2s infinite;--fade-color:var(--gw-error-light)}.btn-fade-danger:hover,.btn-fade-warning:hover{background-color:var(--fade-color)!important;border-color:var(--fade-color)!important}@keyframes fade-button{0%{background-color:#ebebeb;border-color:#ebebeb}50%{background-color:var(--fade-color);border-color:var(--fade-color)}to{background-color:#ebebeb;border-color:#ebebeb}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.cluster-view{position:relative}.cluster-view svg{background-color
|
|
1
|
+
.cluster-view{position:relative}.cluster-view svg{background-color:var(--gw-panel-background);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.cluster-view path.link{stroke-width:5px}.cluster-zone,.cluster-zone.no-cluster{fill:transparent;stroke:var(--gw-panel-color)}.cluster-zone.no-cluster{transition:fill .2s,stroke .2s}.cluster-zone.no-cluster.has-access{cursor:pointer}.cluster-zone.no-cluster:hover{fill:var(--gw-hover-background)!important;height:120%;stroke-width:3!important;width:120%}#no-cluster-zone #create-cluster-label,#no-cluster-zone #no-cluster-label{fill:var(--gw-panel-color)}.settings-icon{font-size:110px!important}.settings-icon.small{font-size:56px!important}.toggle-legend-icon{font-size:40px!important}.node{cursor:pointer;fill:var(--gw-neutral-base)}.node.leader{fill:var(--gw-primary-base);stroke:var(--gw-primary-base)}.node.follower{fill:var(--gw-secondary-base);stroke:var(--gw-secondary-base)}.node.candidate{fill:var(--gw-tertiary-base);stroke:var(--gw-tertiary-base)}.node.other{fill:var(--gw-neutral-base);stroke:var(--gw-neutral-base)}#node-group.legend .node{cursor:default;stroke-width:.5}#node-group.legend .node-icon{font-size:25px}.legend .id-host{color:#000;font-size:9px;font-weight:400;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}.cluster-legend-group .legend-background{fill:var(--gw-button-secondary-background)}.cluster-legend-group .legend-title,.cluster-legend-group .links-statuses,.cluster-legend-group .sync-status{fill:var(--gw-button-secondary-color)}.legend-group .label-wrapper{overflow:visible}.toggle-legend-btn{bottom:0;position:absolute}.hidden-legend,.legend-group.hidden{visibility:hidden}.hidden{display:none}text.node-icon{fill:hsla(0,0%,100%,.5);font-size:40px}.id-host-background,.node-info-background{fill:#eee}text.node-icon{dominant-baseline:central;text-anchor:middle}text{font-family:var(--main-font)!important;font-size:12px;pointer-events:none}.node-info-fo,text.id-host{font-weight:400;text-anchor:middle}text.sync-status{font-size:.95rem}text.links-statuses{font-size:.7rem}.node-info-fo,.text-btn{cursor:pointer}.text-btn{background:none;border:none;color:#000;margin:0;padding-top:.1rem}.text-btn,.text-btn:focus{box-shadow:none;outline:none!important}.no-margin-list ul{margin-bottom:0}div.nodetooltip{background:hsla(0,0%,92%,.9);font-size:90%;max-width:400px;padding:10px 10px 10px 30px;position:absolute;text-align:left;width:40%;z-index:1000}.main-menu.collapsed~div .legend-container{left:90px}.cluster-loader{position:relative;z-index:100000}.cluster-loader .ot-loader-new-content{height:calc(100vh - 120px);padding-top:calc(50vh - 150px);width:100%}.cluster-loader .ot-loader-new-content,.create-cluster-loader{background-color:hsla(0,0%,100%,.66);position:absolute;z-index:100000}.create-cluster-loader{bottom:0;display:flex;left:0;margin:auto;right:0;top:0}.cluster-configuration-panel{z-index:1016!important}.locations-list{border:1px solid;max-height:18rem;min-height:8rem;overflow:auto}.locations-list .location-item{justify-content:space-between}.location-item{align-items:center;display:flex;justify-content:flex-start;padding:2px;-webkit-user-select:none;user-select:none;word-break:break-all}.location-item .text-only:hover{text-decoration:1px underline dashed var(--gw-success-base);text-underline-offset:4px}.location-item:hover .custom-link-icon{opacity:1}.location-item.hoverable:not(.list-group-item-danger):hover{background-color:rgba(0,0,0,.05);cursor:pointer}.location-item.hoverable.list-group-item-danger:hover{cursor:not-allowed}.list-group-item-node{cursor:pointer;padding:0}.list-group-item-node a{padding:.75rem 1.25rem}.logo-image{background:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbDpzcGFjZT0icHJlc2VydmUiIGlkPSJMYXllcl8xIiB4PSIwIiB5PSIwIiB2aWV3Qm94PSIwIDAgNDcgNjcuMiI+PHN0eWxlPi5zdDB7ZmlsbDojZjA0ZTIzfTwvc3R5bGU+PHRpdGxlPmdyYXBoZGItbG9nby1uby10ZXh0PC90aXRsZT48cGF0aCBkPSJNMzkuMyAyNy44YzQuMy45IDcgNSA2LjEgOS4zcy01IDctOS4zIDYuMWMtNC4yLS45LTctNS02LjItOS4yczQuOS03IDkuMS02LjJjLjItLjEuMi0uMS4zIDBNMjMgNDAuM2MyLjUuNiA0LjEgMyAzLjcgNS41LS41IDIuNS0zIDQuMS01LjUgMy42cy00LjEtMi45LTMuNy01LjVjLjYtMi41IDMtNC4xIDUuNS0zLjZNMjkuNCAxOGMxLjcuNCAyLjggMiAyLjUgMy43LS40IDEuNy0yIDIuOC0zLjcgMi41LTEuNy0uNC0yLjgtMi0yLjUtMy43czItMi44IDMuNy0yLjVNMjMuOSAxLjZjMy4yIDIuNSAzLjggNyAxLjMgMTAuM3MtNyAzLjgtMTAuMyAxLjNjLTMuMi0yLjUtMy44LTctMS4zLTEwLjIgMi40LTMuMiA3LTMuOCAxMC4zLTEuNHEtLjE1IDAgMCAwTTEyLjMgNDkuNGMyLjcgMi44IDIuNiA3LjItLjIgOS44LTIuOCAyLjctNy4yIDIuNi05LjgtLjItMi43LTIuOC0yLjYtNy4yLjItOS44IDIuOC0yLjcgNy4xLTIuNiA5LjguMiIgY2xhc3M9InN0MCIvPjwvc3ZnPg==) no-repeat 0;height:25px;width:25px}.action-buttons{flex-grow:1}.advanced-options-toggle{margin-right:6px}.toggle-legend-btn .btn{text-decoration:none}.error-message{color:var(--gw-warning-dark);font-size:small}.autocomplete-container{position:relative}.autocomplete-dropdown{background-color:#fff;border:1px solid #ccc;list-style-type:none;margin:0;max-height:150px;overflow-y:auto;padding:0;position:absolute;width:100%;z-index:1000}.autocomplete-dropdown li{cursor:pointer;padding:8px}.autocomplete-dropdown li:hover{background-color:#f0f0f0}.alert-save{margin-left:12px;margin-right:12px}.alert-save.alert-warning:before{content:"\e920"}ul.nodes-list{list-style:none;padding-left:0}ul.nodes-list li{margin-bottom:10px}ul.nodes-list li a{text-decoration:none}ul.nodes-list li a:hover{text-decoration:underline}.tags-table .tag-column{width:auto}.tags-table .tag-index-column{width:16%}.tags-table .index-column{width:10%}.actions-column{width:80px}.tag-input.ng-invalid.ng-dirty{border-color:red}.tag-input.ng-valid.ng-dirty{border-color:initial}.tags-table td,.tags-table th{border-bottom:1px solid #eceeef;padding:.4rem}.index-cell{border-left:1px solid #eceeef;padding-left:12px}.actions-cell{border-right:1px solid #eceeef;width:85px}.actions-cell .btn-link,.actions-cell .btn-link a{padding:.2em}.secondary-tag-table td,.secondary-tag-table th{border-bottom:1px solid #eceeef;padding:.4rem}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
:root{--default-btn-bgcolor:#ebebeb;--default-btn-focus-bgcolor:#d4d4d4;--default-btn-focus-color:var(--base-text-color)}body,html{height:100vh}.graphiql-container .CodeMirror,.graphiql-dialog,.graphql-playground-view #graphiql .graphiql-container,.graphql-playground-view #graphiql .graphiql-container .graphiql-editors{background-color:var(--gw-editor-content-background)}.page-content,.page-content .container-fluid{height:calc(100% - 50px)}.content,.graphql-playground-component,.graphql-playground-container,.graphql-playground-view,graphql-playground{display:block;height:100%}graphql-playground{padding-bottom:16px}.graphql-playground-view #title-container{margin-bottom:16px}.graphql-playground-view graphql-playground-component{height:100%}.graphql-playground-view .toolbar{align-items:end;display:flex;flex-direction:column;margin-bottom:16px}.graphql-playground-view .toolbar .graphql-endpoint-selector{width:300px}.graphql-playground-view #graphiql *{border-radius:0;font-family:var(--main-font);font-size:1rem!important}.graphql-playground-view #graphiql .graphiql-container{border:1px solid #ddd}.graphql-playground-view #graphiql .graphiql-container .graphiql-sidebar{padding-bottom:0;padding-top:0}.graphql-playground-view #graphiql .graphiql-sidebar button{color:var(--gw-primary-base);transition:all .15s ease-out}.graphql-playground-view #graphiql .graphiql-sidebar button:hover{background-color:transparent;transform:scale(1.2)}.graphql-playground-view #graphiql .graphiql-sidebar button:active{background-color:#fff}.graphql-playground-view #graphiql .graphiql-sidebar button:focus{outline:none}.graphql-playground-view #graphiql .graphiql-sidebar button[data-value=settings]{display:none}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-session-header .graphiql-tabs{font-size:1rem;margin-bottom:0;padding:0}.graphql-playground-view #graphiql .graphiql-tabs button{transition:all .15s ease-out}.graphql-playground-view #graphiql .graphiql-tab>button.graphiql-tab-close{visibility:visible}.graphql-playground-view #graphiql .graphiql-tabs button:focus{outline:none}.graphql-playground-view #graphiql .graphiql-tabs button:hover{background-color:var(--base-background-hover-color)}.graphql-playground-view #graphiql .graphiql-tabs .graphiql-tab{background-color:var(--gw-tabs-tab-background)!important;border-color:var(--gw-tabs-tab-border-color)!important;border-style:solid;border-width:1px;color:var(--gw-tabs-tab-color)!important}.graphql-playground-view #graphiql .graphiql-tabs .graphiql-tab.graphiql-tab-active{background-color:var(--gw-tabs-tab-active-background)!important;border-color:var(--gw-tabs-tab-active-border-color) var(--gw-tabs-tab-active-border-color) transparent!important;color:var(--gw-tabs-tab-active-color)!important}.graphql-playground-view #graphiql .graphiql-tabs .graphiql-tab-button{color:var(--base-text-color);padding:4px 8px}.graphql-playground-view #graphiql .graphiql-sessions{margin-bottom:0;margin-right:0!important;margin-top:0}.graphql-playground-view #graphiql .graphiql-tabs>:not(:first-child){margin-left:.2em}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-session-header .graphiql-tab-add{background-color:var(--base-background-hover-color);padding:8px}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-session-header .graphiql-tab-add:hover svg,.graphql-playground-view #graphiql .graphiql-sessions .graphiql-session-header .graphiql-tab-close:hover{background-color:transparent;color:var(--gw-primary-base)}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-logo{display:none}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-session-header{color:inherit;height:unset;justify-content:start}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-session{padding:0}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-editors,.graphql-playground-view #graphiql .graphiql-sessions .graphiql-response{border:1px solid #ddd;border-bottom:none;box-shadow:none}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-response{border-right:none}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-editors .graphiql-query-editor{border-bottom:1px solid #ddd;padding:0}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-editors .CodeMirror-gutters{background-color:var(--gw-panel-background);border-right:1px solid #ddd}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-editors .CodeMirror-gutter-wrapper *{color:var(--gw-panel-color);font-weight:300}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-editors.full-height{margin-top:0}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-editors .graphiql-toolbar{margin:.5em}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-editors .graphiql-toolbar button{transition:all .15s ease-out}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-editors .graphiql-toolbar button:hover{background-color:transparent;transform:scale(1.2)}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-editors .graphiql-toolbar button:focus{outline:none}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-editors .graphiql-toolbar button.graphiql-execute-button{background-color:var(--gw-primary-base)}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-editors .graphiql-toolbar .graphiql-toolbar-icon{color:var(--gw-primary-base)}.graphql-playground-view #graphiql .graphiql-editor-tools{padding:0}.graphql-playground-view #graphiql .graphiql-editor-tools button{background-color:var(--gw-tabs-tab-background)!important;border-color:var(--gw-tabs-tab-border-color)!important;color:var(--gw-tabs-tab-color)!important;font-weight:400;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.graphql-playground-view #graphiql .graphiql-editor-tools button:hover{background-color:var(--gw-tabs-tab-hover-background)!important;border-color:var(--gw-tabs-tab-hover-border-color)!important;color:var(--gw-tabs-tab-hover-color)!important}.graphql-playground-view #graphiql .graphiql-editor-tools .graphiql-toggle-editor-tools:hover svg,.graphql-playground-view #graphiql .graphiql-history .graphiql-history-item-action{color:var(--gw-primary-base)}.graphql-playground-view #graphiql .graphiql-history .graphiql-button{background-color:var(--default-btn-bgcolor);border-color:var(--default-btn-bgcolor);color:var(--gw-secondary-base);font-weight:400;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.graphql-playground-view #graphiql .graphiql-history .graphiql-button:hover{background-color:var(--default-btn-focus-bgcolor);border-color:var(--default-btn-focus-bgcolor);color:var(--default-btn-focus-color)}.graphql-playground-view #graphiql .graphiql-history .graphiql-history-header{color:var(--base-text-color)}.graphql-playground-view #graphiql .graphiql-history .graphiql-history-item:hover{background-color:var(--base-background-hover-color)}.graphql-playground-view #graphiql .graphiql-history .graphiql-history-item-label{color:var(--gw-secondary-base)}.graphql-playground-view #graphiql .graphiql-history .graphiql-history-item-label:hover{background-color:var(--base-background-selected-color)}.graphql-playground-view #graphiql .graphiql-history .graphiql-history-item.editable{background-color:#fff}.graphql-playground-view #graphiql .graphiql-history .graphiql-history-item.editable input{border:1px solid var(--gw-secondary-light);font-weight:300}.graphql-playground-view #graphiql .graphiql-history .graphiql-history-item.editable button{color:var(--gw-primary-base)}.graphql-playground-view #graphiql .graphiql-history .graphiql-history-item.editable button:active,.graphql-playground-view #graphiql .graphiql-history .graphiql-history-item.editable button:focus{background-color:rgba(59,75,104,.1);outline:none}.graphql-playground-view #graphiql .graphiql-history .graphiql-history-item.editable button:nth-of-type(2){color:rgba(0,0,0,.66)}.graphql-playground-view #graphiql .graphiql-history .graphiql-history-item.editable button:nth-of-type(2):active{background-color:#fff}div[data-radix-popper-content-wrapper] *{background-color:var(--gw-secondary-base);border-radius:0;border-top-color:var(--gw-secondary-base);color:#fff;font-size:.875rem;font-weight:400;padding-bottom:1px;padding-top:1px}.graphql-playground-view #graphiql .docExplorerWrap .doc-explorer-title,.graphql-playground-view #graphiql .graphiql-doc-explorer .graphiql-doc-explorer-header{color:var(--base-text-color)}.graphql-playground-view #graphiql .docExplorerWrap .graphiql-explorer-root>div{overflow:hidden!important}.graphql-playground-view #graphiql .docExplorerWrap .graphiql-explorer-root>div:first-child>div,.graphql-playground-view #graphiql .docExplorerWrap .graphiql-explorer-root>div:has(.variable-editor-title){overflow-x:auto!important}.graphql-playground-view #graphiql .docExplorerWrap .graphiql-explorer-root>div:first-child{border-bottom:1px solid #d6d6d6}.graphql-playground-view #graphiql .docExplorerWrap .graphiql-explorer-root>div:last-child .variable-editor-title{border:none!important;padding:0!important}.graphql-playground-view #graphiql .docExplorerWrap .graphiql-explorer-root>div:has(.variable-editor-title){margin-top:16px}.graphql-playground-view #graphiql .docExplorerWrap .toolbar-button{background-color:var(--base-background-hover-color);border:none;cursor:pointer;outline:none}.graphql-playground-view #graphiql .docExplorerWrap .graphiql-operation-title-bar .toolbar-button,.graphql-playground-view #graphiql .docExplorerWrap .variable-editor-title .toolbar-button{aspect-ratio:1/1;height:100%!important;width:auto!important}.graphql-playground-view #graphiql .docExplorerWrap .toolbar-button span{display:block}.graphql-playground-view #graphiql .docExplorerWrap .toolbar-button:hover span{color:var(--gw-primary-base)!important;transform:scale(1.2)}.graphql-playground-view #graphiql .docExplorerWrap .variable-editor-title .toolbar-button{padding:var(--px-4) var(--px-10)}.graphql-playground-view #graphiql .docExplorerWrap select{background-color:#fff!important;background-image:none!important;border:1px solid rgba(0,0,0,.15);border-radius:0;color:#55595c!important;font-size:1rem!important;font-weight:400;height:calc(2rem - 2px);line-height:1.25;margin:1px 8px;outline:0}.graphql-playground-view #graphiql .docExplorerWrap select:focus{background-color:#fff;border-color:var(--gw-secondary-light);color:#55595c}.graphql-playground-view #graphiql .docExplorerWrap select option{background-color:var(--html-background)!important;color:var(--gw-neutral-base)!important}.graphql-playground-view #graphiql li.CodeMirror-hint-active{background:var(--autocomplete-background);color:inherit}.graphql-playground-view #graphiql .CodeMirror-lint-tooltip{color:var(--gw-primary-base)}.graphiql-dialog{border-radius:0;color:var(--base-text-color)}.graphiql-dialog,.graphiql-dialog-overlay{z-index:1010}.graphiql-dialog .graphiql-dialog-section a,.graphiql-dialog .graphiql-dialog-section a:focus,.graphiql-dialog .graphiql-dialog-section a:hover{color:var(--gw-primary-base);outline:none;text-decoration-line:underline;text-decoration-style:dotted;text-decoration-thickness:var(--link-decoration-thickness);text-underline-offset:var(--link-underline-offset)}
|
|
1
|
+
:root{--default-btn-bgcolor:#ebebeb;--default-btn-focus-bgcolor:#d4d4d4;--default-btn-focus-color:var(--base-text-color)}body,html{height:100vh}.graphiql-container .CodeMirror,.graphiql-dialog,.graphql-playground-view #graphiql .graphiql-container,.graphql-playground-view #graphiql .graphiql-container .graphiql-editors{background-color:var(--gw-editor-content-background)}.page-content,.page-content .container-fluid{height:calc(100% - 50px)}.content,.graphql-playground-component,.graphql-playground-container,.graphql-playground-view,graphql-playground{display:block;height:100%}graphql-playground{padding-bottom:16px}.graphql-playground-view #title-container{margin-bottom:16px}.graphql-playground-view graphql-playground-component{height:100%}.graphql-playground-view .toolbar{align-items:end;display:flex;flex-direction:column;margin-bottom:16px}.graphql-playground-view .toolbar .graphql-endpoint-selector{width:300px}.graphql-playground-view #graphiql *{border-radius:0;font-family:var(--main-font);font-size:1rem!important}.graphql-playground-view #graphiql .graphiql-container{border:1px solid var(--gw-editor-toolbar-border-color)}.graphql-playground-view #graphiql .graphiql-container .graphiql-sidebar{padding-bottom:0;padding-top:0}.graphql-playground-view #graphiql .graphiql-sidebar button{color:var(--gw-primary-base);transition:all .15s ease-out}.graphql-playground-view #graphiql .graphiql-sidebar button:hover{background-color:transparent;transform:scale(1.2)}.graphql-playground-view #graphiql .graphiql-sidebar button:active{background-color:#fff}.graphql-playground-view #graphiql .graphiql-sidebar button:focus{outline:none}.graphql-playground-view #graphiql .graphiql-sidebar button[data-value=settings]{display:none}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-session-header .graphiql-tabs{font-size:1rem;margin-bottom:0;padding:0}.graphql-playground-view #graphiql .graphiql-tabs button{transition:all .15s ease-out}.graphql-playground-view #graphiql .graphiql-tab>button.graphiql-tab-close{visibility:visible}.graphql-playground-view #graphiql .graphiql-tabs button:focus{outline:none}.graphql-playground-view #graphiql .graphiql-tabs button:hover{background-color:var(--base-background-hover-color)}.graphql-playground-view #graphiql .graphiql-tabs .graphiql-tab{background-color:var(--gw-tabs-tab-background)!important;border-color:var(--gw-tabs-tab-border-color)!important;border-style:solid;border-width:1px;color:var(--gw-tabs-tab-color)!important}.graphql-playground-view #graphiql .graphiql-tabs .graphiql-tab.graphiql-tab-active{background-color:var(--gw-tabs-tab-active-background)!important;border-color:var(--gw-tabs-tab-active-border-color) var(--gw-tabs-tab-active-border-color) transparent!important;color:var(--gw-tabs-tab-active-color)!important}.graphql-playground-view #graphiql .graphiql-tabs .graphiql-tab-button{color:var(--base-text-color);padding:4px 8px}.graphql-playground-view #graphiql .graphiql-sessions{margin-bottom:0;margin-right:0!important;margin-top:0}.graphql-playground-view #graphiql .graphiql-tabs>:not(:first-child){margin-left:.2em}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-session-header .graphiql-tab-add{background-color:var(--base-background-hover-color);padding:8px}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-session-header .graphiql-tab-add:hover svg,.graphql-playground-view #graphiql .graphiql-sessions .graphiql-session-header .graphiql-tab-close:hover{background-color:transparent;color:var(--gw-primary-base)}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-logo{display:none}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-session-header{color:inherit;height:unset;justify-content:start}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-session{padding:0}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-editors,.graphql-playground-view #graphiql .graphiql-sessions .graphiql-response{border:1px solid var(--gw-editor-toolbar-border-color);border-bottom:none;box-shadow:none}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-response{border-right:none}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-editors .graphiql-query-editor{border-bottom:1px solid var(--gw-editor-toolbar-border-color);padding:0}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-editors .CodeMirror-gutters{background-color:var(--gw-panel-background);border-right:1px solid var(--gw-editor-toolbar-border-color)}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-editors .CodeMirror-gutter-wrapper *{color:var(--gw-panel-color);font-weight:300}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-editors.full-height{margin-top:0}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-editors .graphiql-toolbar{margin:.5em}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-editors .graphiql-toolbar button{transition:all .15s ease-out}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-editors .graphiql-toolbar button:hover{background-color:transparent;transform:scale(1.2)}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-editors .graphiql-toolbar button:focus{outline:none}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-editors .graphiql-toolbar button.graphiql-execute-button{background-color:var(--gw-primary-base)}.graphql-playground-view #graphiql .graphiql-sessions .graphiql-editors .graphiql-toolbar .graphiql-toolbar-icon{color:var(--gw-primary-base)}.graphql-playground-view #graphiql .graphiql-editor-tools{padding:0}.graphql-playground-view #graphiql .graphiql-editor-tools button{background-color:var(--gw-tabs-tab-background)!important;border-color:var(--gw-tabs-tab-border-color)!important;color:var(--gw-tabs-tab-color)!important;font-weight:400;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.graphql-playground-view #graphiql .graphiql-editor-tools button:hover{background-color:var(--gw-tabs-tab-hover-background)!important;border-color:var(--gw-tabs-tab-hover-border-color)!important;color:var(--gw-tabs-tab-hover-color)!important}.graphql-playground-view #graphiql .graphiql-editor-tools .graphiql-toggle-editor-tools svg{color:var(--gw-button-secondary-link-color)}.graphql-playground-view #graphiql .graphiql-editor-tools .graphiql-toggle-editor-tools:hover svg{color:var(--gw-button-primary-link-hover-color)}.graphql-playground-view #graphiql .graphiql-history .graphiql-history-item-action{color:var(--gw-primary-base)}.graphql-playground-view #graphiql .graphiql-history .graphiql-button{background-color:var(--gw-button-secondary-background);border-color:var(--gw-button-secondary-border-color);color:var(--gw-button-secondary-color);font-weight:400;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.graphql-playground-view #graphiql .graphiql-history .graphiql-button:hover{background-color:var(--gw-button-secondary-hover-background);border-color:var(--gw-button-secondary-hover-border-color);color:var(--gw-button-secondary-hover-color)}.graphql-playground-view #graphiql .graphiql-history .graphiql-history-header{color:var(--base-text-color)}.graphql-playground-view #graphiql .graphiql-history .graphiql-history-item:hover{background-color:var(--base-background-hover-color)}.graphql-playground-view #graphiql .graphiql-history .graphiql-history-item-label{color:var(--gw-secondary-base)}.graphql-playground-view #graphiql .graphiql-history .graphiql-history-item-label:hover{background-color:var(--base-background-selected-color)}.graphql-playground-view #graphiql .graphiql-history .graphiql-history-item.editable{background-color:var(--gw-form-field-background)}.graphql-playground-view #graphiql .graphiql-history .graphiql-history-item.editable input{border:1px solid var(--gw-form-field-border-color);color:var(--gw-form-field-color);font-weight:300}.graphql-playground-view #graphiql .graphiql-history .graphiql-history-item.editable button{color:var(--gw-primary-base)}.graphql-playground-view #graphiql .graphiql-history .graphiql-history-item.editable button:active,.graphql-playground-view #graphiql .graphiql-history .graphiql-history-item.editable button:focus{background-color:rgba(59,75,104,.1);outline:none}.graphql-playground-view #graphiql .graphiql-history .graphiql-history-item.editable button:nth-of-type(2){color:var(--gw-button-secondary-color)}.graphql-playground-view #graphiql .graphiql-history .graphiql-history-item.editable button:nth-of-type(2):active{background-color:#fff}div[data-radix-popper-content-wrapper] *{background-color:var(--gw-secondary-base);border-radius:0;border-top-color:var(--gw-secondary-base);color:#fff;font-size:.875rem;font-weight:400;padding-bottom:1px;padding-top:1px}.graphql-playground-view #graphiql .graphiql-doc-explorer .graphiql-doc-explorer-header{color:var(--base-text-color)}.graphql-playground-view #graphiql .graphiql-doc-explorer .graphiql-doc-explorer-search-input{background-color:var(--gw-form-field-background);border:1px solid var(--gw-form-field-border-color);color:var(--gw-form-field-color)}.graphql-playground-view #graphiql .graphiql-doc-explorer .graphiql-doc-explorer-search-input input,.graphql-playground-view #graphiql .graphiql-doc-explorer .graphiql-doc-explorer-search-input input::placeholder{color:var(--gw-form-field-color)}.graphql-playground-view #graphiql .docExplorerWrap .doc-explorer-title{color:var(--base-text-color)}.graphql-playground-view #graphiql .docExplorerWrap .graphiql-explorer-root>div{overflow:hidden!important}.graphql-playground-view #graphiql .docExplorerWrap .graphiql-explorer-root>div:first-child>div,.graphql-playground-view #graphiql .docExplorerWrap .graphiql-explorer-root>div:has(.variable-editor-title){overflow-x:auto!important}.graphql-playground-view #graphiql .docExplorerWrap .graphiql-explorer-root>div:first-child{border-bottom:1px solid #d6d6d6}.graphql-playground-view #graphiql .docExplorerWrap .graphiql-explorer-root>div:last-child .variable-editor-title{border:none!important;padding:0!important}.graphql-playground-view #graphiql .docExplorerWrap .graphiql-explorer-root>div:has(.variable-editor-title){margin-top:16px}.graphql-playground-view #graphiql .docExplorerWrap .toolbar-button{background-color:var(--gw-button-secondary-background);border:none;color:var(--gw-button-secondary-color);cursor:pointer;outline:none}.graphql-playground-view #graphiql .docExplorerWrap .graphiql-operation-title-bar .toolbar-button,.graphql-playground-view #graphiql .docExplorerWrap .variable-editor-title .toolbar-button{aspect-ratio:1/1;height:100%!important;width:auto!important}.graphql-playground-view #graphiql .docExplorerWrap .toolbar-button span{display:block}.graphql-playground-view #graphiql .docExplorerWrap .toolbar-button:hover span{color:var(--gw-primary-base)!important;transform:scale(1.2)}.graphql-playground-view #graphiql .docExplorerWrap .variable-editor-title .toolbar-button{padding:var(--px-4) var(--px-10)}.graphql-playground-view #graphiql .docExplorerWrap select{background-color:#fff!important;background-image:none!important;border:1px solid rgba(0,0,0,.15);border-radius:0;color:#55595c!important;font-size:1rem!important;font-weight:400;height:calc(2rem - 2px);line-height:1.25;margin:1px 8px;outline:0}.graphql-playground-view #graphiql .docExplorerWrap select:focus{background-color:#fff;border-color:var(--gw-secondary-light);color:#55595c}.graphql-playground-view #graphiql .docExplorerWrap select option{background-color:var(--html-background)!important;color:var(--gw-neutral-base)!important}.graphql-playground-view #graphiql li.CodeMirror-hint-active{background:var(--autocomplete-background);color:inherit}.graphql-playground-view #graphiql .CodeMirror-lint-tooltip{color:var(--gw-primary-base)}.graphiql-dialog{border-radius:0;color:var(--base-text-color)}.graphiql-dialog,.graphiql-dialog-overlay{z-index:1010}.graphiql-dialog .graphiql-dialog-section a,.graphiql-dialog .graphiql-dialog-section a:focus,.graphiql-dialog .graphiql-dialog-section a:hover{color:var(--gw-primary-base);outline:none;text-decoration-line:underline;text-decoration-style:dotted;text-decoration-thickness:var(--link-decoration-thickness);text-underline-offset:var(--link-underline-offset)}
|