UNPKG

graphdb-workbench

Version:
178 lines (163 loc) 10.1 kB
<link href="css/export.css?v=3.1.0-RC3" rel="stylesheet"> <div id="wb-export"> <h1> {{title}} <page-info-tooltip></page-info-tooltip> </h1> <div class="ot-loader ot-main-loader" onto-loader size="50" ng-show="loader"></div> <div class="ot-owlim-ctrl" ng-hide="loader"> <div core-errors></div> <div ng-show="getActiveRepository()"> <div class="alert alert-warning" ng-hide="graphs.length > 0"> {{'export.no.graphs.in.repo' | translate}} <a ng-href="sparql">{{'export.sparql.update.form' | translate}}</a> {{'or' | translate}} <a ng-href="import">{{'export.data.import.page' | translate}}</a>. </div> <div> <div class="clearfix mb-2"> <div class="pull-right col-form-label graphs-overview-paginator"> <span class="mr-1">{{'showing.label' | translate}} {{(((pageSize * (page - 1)) + 1) | formatNumberToLocaleString)}}-{{pageSize * page >= filteredGraphs.length ? ((filteredGraphs.length) | formatNumberToLocaleString) : ((pageSize * page) | formatNumberToLocaleString)}} {{'of' | translate}} {{((filteredGraphs.length) | formatNumberToLocaleString)}} {{'results.label' | translate}}</span> <span>{{'export.graphs.per.page' | translate}}</span> <div class="btn-group" uib-dropdown> <button type="button" class="btn btn-secondary btn-sm dropdown-toggle" uib-dropdown-toggle ng-disabled="disabled"> <span>{{pageSize}} </span> </button> <ul class="dropdown-menu small"> <li ng-repeat="size in pageSizeOptions track by $index" ng-if="size <= filteredGraphs.length"> <span class="dropdown-item" ng-click="changePageSize(size)">{{size}}</span> </li> </ul> </div> </div> <label class="mr-1 mb-0"> <input type="text" class="form-control search-graphs" ng-model="exportFilter" ng-keyup="onGraphSearch()" placeholder="{{'search.graphs.label' | translate}}"/> </label> </div> <div class="clearfix" ng-class="{'mb-2': !hasMoreGraphs }"> <button type="button" class="btn btn-secondary clear-repository-btn" ng-click="dropRepository()" gdb-tooltip="{{'removes.data.from.repo.label' | translate}}" tooltip-placement="top" ng-disabled="!canWriteActiveRepo(true)"> <span class="icon-trash"></span> {{'clear.repo.label' | translate}} </button> <div class="btn-group" uib-dropdown> <button type="button" class="btn btn-primary dropdown-toggle export-repository-btn" uib-dropdown-toggle> <span class="icon-export"></span> {{'export.repository.label' | translate}} </button> <ul class="dropdown-menu"> <li ng-repeat="format in exportFormats"> <a href="javascript:" ng-click="openJSONLDExportSettings(format, false)" ng-if="format.name === 'JSON-LD' || format.name === 'NDJSON-LD'" class="dropdown-item export-repo-format-{{format.name}}">{{format.translateKey | translate}}</a> <a href="javascript:" ng-click="exportRepo(format, false)" ng-if="format.name !== 'JSON-LD' && format.name !== 'NDJSON-LD'" class="dropdown-item export-repo-format-{{format.name}}">{{format.translateKey | translate}}</a> </li> </ul> </div> <button type="button" class="btn btn-primary download-all-graphs-btn" ng-click="downloadAllGraphs()"> <span class="icon-download"></span>&nbsp; {{'export.all.graphs.btn.label' | translate}} </button> <div class="pull-right"> <div ng-show="pageSize >= filteredGraphs.length"></div> <div paginations ng-hide="pageSize >= filteredGraphs.length" class="ot-export-pagination top-pagination"></div> </div> </div> <div ng-if="hasMoreGraphs" class="alert alert-warning"> <div>{{ 'export.graphs.too.many.warning' | translate:{ graphsLimit: (MAX_LOADED_GRAPHS | formatNumberToLocaleString) } }}</div> </div> <div class="mb-2"> <div ng-hide="displayGraphs.length > 0"> <em>{{'no.results.found.label' | translate}}</em> </div> <table ng-show="displayGraphs.length > 0" class="table table-striped table-hover" id="export-graphs" aria-describedby="Export graphs table"> <thead> <tr> <th id="selectionColumn" class="text-nowrap" style="width: 100px"> <label class="form-check-label" gdb-tooltip="{{'select.all.tooltip' | translate}}"> <input class="form-check-input" type="checkbox" ng-model="selectedAll" ng-click="checkAll()"> </label> <div class="btn-group btn-group-sm" uib-dropdown> <!-- Keep the closing button tag right after the closing span tag, otherwise an extra space is rendered in HTML --> <button type="button" class="btn btn-link dropdown-toggle" uib-dropdown-toggle gdb-tooltip="{{'export.selected.graphs.tooltip' | translate}}" ng-disabled="!hasMultipleSelected()"> <span class="icon-export"></span></button> <ul class="dropdown-menu" role="menu"> <li ng-repeat="format in exportFormats"> <a href="javascript:" ng-click="openJSONLDExportSettingsForSelectedGraphs(format)" ng-if="format.name === 'JSON-LD' || format.name === 'NDJSON-LD'" class="dropdown-item export-repo-format-{{format.name}}">{{format.translateKey | translate}}</a> <a href="javascript:" ng-click="exportSelectedGraphs(format)" ng-if="format.name !== 'JSON-LD' && format.name !== 'NDJSON-LD'" class="dropdown-item export-repo-format-{{format.name}}">{{format.translateKey | translate}}</a> </li> </ul> </div> <button type="button" class="btn btn-link secondary" ng-click="dropContext()" gdb-tooltip="{{'remove.data.from.selected.graph.tooltip' | translate}}" tooltip-placement="top" ng-disabled="!canWriteActiveRepo(true) || !hasMultipleSelected()"> <span class="fa fa-trash-can"></span> </button> </th> <th id="graphColumn">{{'graphs.label' | translate}}</th> <th id="actionsColumn" style="width: 150px"></th> </tr> </thead> <tbody> <tr ng-repeat="graph in displayGraphs track by $index"> <td> <label class="form-check-label"> <input type="checkbox" ng-model="selectedGraphs.exportGraphs[graph.contextID.value]" ng-disabled="!graph.contextID.uri" class="form-check-input"/> </label> </td> <td ng-if="graph.contextID.uri && isShacl(graph.contextID.uri)"> <a ng-href="resource?uri={{graph.contextID.uri}}&role=context" title="{{graph.contextID.value}}">{{'shacl.shape.graph.tooltip' | translate}} ({{graph.contextID.value}})</a> </td> <td data-test="graph-is-not-shaql" ng-if="graph.contextID.uri && !isShacl(graph.contextID.uri)" > <a ng-href="resource?uri={{graph.contextID.uri}}&role=context" title="{{graph.contextID.value}}">{{graph.contextID.value | translate}}</a> </td> <td ng-if="!graph.contextID.uri"> {{graph.contextID.value}} </td> <td> <div class="btn-group" uib-dropdown> <!-- Keep the closing button tag right after the closing span tag, otherwise an extra space is rendered in HTML --> <button type="button" class="btn btn-link dropdown-toggle export-graph" uib-dropdown-toggle gdb-tooltip="{{'export.graph.label' | translate}}" ng-disabled="!graph.contextID.uri"> <span class="icon-export"></span></button> <ul class="dropdown-menu" role="menu"> <li ng-repeat="format in exportFormats"> <a href="javascript:" ng-click="openJSONLDExportSettings(format, graph.contextID, false)" ng-if="format.name === 'JSON-LD' || format.name === 'NDJSON-LD'" class="dropdown-item export-repo-format-{{format.name}}-row">{{format.translateKey | translate}}</a> <a href="javascript:" ng-click="exportRepo(format, graph.contextID)" ng-if="format.name !== 'JSON-LD' && format.name !== 'NDJSON-LD'" class="dropdown-item export-repo-format-{{format.name}}-row">{{format.translateKey | translate}}</a> </li> </ul> </div> <button class="btn btn-link secondary delete-graph-btn" ng-click="dropContext(graph)" gdb-tooltip="{{'remove.data.from.this.graph.tooltip' | translate}}" tooltip-placement="top" ng-disabled="!canWriteActiveRepo(true) || !graph.contextID.uri"> <span class="fa fa-trash-can"></span> </button> </td> </tr> </tbody> </table> </div> <div paginations ng-hide="pageSize >= filteredGraphs.length" class="ot-export-pagination pull-right bottom-pagination"></div> </div> </div> </div> </div>