ontotext-yasgui-web-component 1.0.12 → 1.1.0
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/cjs/confirmation-dialog_9.cjs.entry.js +919 -18
- package/dist/cjs/copy-resource-link-button.cjs.entry.js +1 -1
- package/dist/cjs/{event-service-c201ab0c.js → event-service-135f86c2.js} +6 -0
- package/dist/cjs/loader-component.cjs.entry.js +2 -14
- package/dist/cjs/svg-util-24ae60b9.js +24 -0
- package/dist/collection/components/loader-component/loader-component.js +0 -7
- package/dist/collection/components/ontotext-yasgui-web-component/ontotext-yasgui-web-component.css +100 -0
- package/dist/collection/components/ontotext-yasgui-web-component/ontotext-yasgui-web-component.js +5 -0
- package/dist/collection/js/ontotext-yasgui-tests-util.js +4 -2
- package/dist/collection/models/plugins/pivot-table/pivot-table-persistent-config.js +1 -0
- package/dist/collection/models/plugins/pivot-table/pivot-table-renderer-name.js +15 -0
- package/dist/collection/models/plugins/pivot-table/row-or-column-order.js +7 -0
- package/dist/collection/models/yasgui-configuration.js +1 -1
- package/dist/collection/models/yasr-plugin.js +1 -0
- package/dist/collection/models/yasr.js +1 -0
- package/dist/collection/pages/fake-server.js +165 -0
- package/dist/collection/pages/yasr-chart-plugin/main.js +9 -0
- package/dist/collection/plugins/yasr/charts/charts-plugin.js +320 -0
- package/dist/collection/plugins/yasr/pivot-table/pivot-table-download-util.js +140 -0
- package/dist/collection/plugins/yasr/pivot-table/pivot-table-plugin.js +268 -0
- package/dist/collection/services/event-service.js +6 -0
- package/dist/collection/services/utils/html-util.js +35 -0
- package/dist/collection/services/utils/sparql-utils.js +34 -0
- package/dist/collection/services/utils/svg-util.js +15 -0
- package/dist/collection/services/yasgui/configuration/yasgui-configuration-builder.js +4 -0
- package/dist/collection/services/yasr/toolbar/chart-download-plugin.js +36 -0
- package/dist/collection/services/yasr/toolbar/download-as-yasr-toolbar-plugin.js +5 -0
- package/dist/collection/services/yasr/toolbar/pivot-table-download-plugin.js +40 -0
- package/dist/collection/services/yasr/yasr-service.js +6 -15
- package/dist/components/event-service.js +6 -0
- package/dist/components/loader-component.js +1 -13
- package/dist/components/ontotext-yasgui.js +898 -17
- package/dist/components/svg-util.js +22 -0
- package/dist/components/translation.service.js +20 -0
- package/dist/esm/confirmation-dialog_9.entry.js +919 -18
- package/dist/esm/copy-resource-link-button.entry.js +1 -1
- package/dist/esm/{event-service-cde4308f.js → event-service-bd18a99b.js} +6 -0
- package/dist/esm/loader-component.entry.js +1 -13
- package/dist/esm/svg-util-c999f0c6.js +22 -0
- package/dist/ontotext-yasgui-web-component/ontotext-yasgui-web-component.esm.js +1 -1
- package/dist/ontotext-yasgui-web-component/p-06a004ec.entry.js +1 -0
- package/dist/ontotext-yasgui-web-component/{p-4c842e09.entry.js → p-5f849c99.entry.js} +1 -1
- package/dist/ontotext-yasgui-web-component/p-733b22bd.js +1 -0
- package/dist/ontotext-yasgui-web-component/p-e602daae.entry.js +1 -0
- package/dist/ontotext-yasgui-web-component/{p-d473b291.js → p-fa8f6040.js} +1 -1
- package/dist/types/models/plugins/pivot-table/pivot-table-persistent-config.d.ts +41 -0
- package/dist/types/models/plugins/pivot-table/pivot-table-renderer-name.d.ts +14 -0
- package/dist/types/models/plugins/pivot-table/row-or-column-order.d.ts +6 -0
- package/dist/types/models/yasr-plugin.d.ts +45 -0
- package/dist/types/models/yasr-toolbar-plugin.d.ts +33 -0
- package/dist/types/models/yasr.d.ts +17 -0
- package/dist/types/plugins/yasr/charts/charts-plugin.d.ts +45 -0
- package/dist/types/services/utils/html-util.d.ts +3 -0
- package/dist/types/services/utils/sparql-utils.d.ts +21 -0
- package/dist/types/services/utils/svg-util.d.ts +3 -0
- package/dist/types/services/yasr/toolbar/chart-download-plugin.d.ts +9 -0
- package/dist/types/services/yasr/yasr-service.d.ts +2 -0
- package/package.json +1 -1
- package/dist/ontotext-yasgui-web-component/p-05c60463.entry.js +0 -1
- package/dist/ontotext-yasgui-web-component/p-73996c66.entry.js +0 -1
|
@@ -3,8 +3,9 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
const index = require('./index-af80fa27.js');
|
|
6
|
-
const eventService = require('./event-service-
|
|
6
|
+
const eventService = require('./event-service-135f86c2.js');
|
|
7
7
|
const internalEventTypes = require('./internal-event-types-7da4f708.js');
|
|
8
|
+
const svgUtil = require('./svg-util-24ae60b9.js');
|
|
8
9
|
require('./internal-download-as-event-9b301614.js');
|
|
9
10
|
require('./internal-dropdown-value-selected-event-7debbfb6.js');
|
|
10
11
|
|
|
@@ -159,6 +160,14 @@ const en = {
|
|
|
159
160
|
"yasr.plugin_control.plugin.name.extended_table": "Table",
|
|
160
161
|
"yasr.plugin_control.plugin.name.response": "Raw response",
|
|
161
162
|
"yasr.plugin_control.plugin.name.table": "Table",
|
|
163
|
+
"yasr.plugin_control.plugin.name.pivot-table-plugin": "Pivot Table",
|
|
164
|
+
"yasr.plugin_control.plugin.name.pivot-table-plugin.available_variables": "Available Variables",
|
|
165
|
+
"yasr.plugin_control.plugin.name.pivot-table-plugin.columns": "Columns",
|
|
166
|
+
"yasr.plugin_control.plugin.name.pivot-table-plugin.cells": "Cells",
|
|
167
|
+
"yasr.plugin_control.plugin.name.pivot-table-plugin.rows": "Rows",
|
|
168
|
+
"yasr.plugin_control.plugin.pivot-table-plugin.charts.config.button": "Chart Config",
|
|
169
|
+
"yasr.plugin_control.plugin.name.charts": "Charts",
|
|
170
|
+
"yasr.plugin_control.plugin.charts.config.button": "Chart Config",
|
|
162
171
|
"yasr.plugin_control.shows_view.btn.aria_label": "Shows {{name}} view",
|
|
163
172
|
"yasr.plugin_control.response_chip.timestamp.minutes_ago": "minutes ago",
|
|
164
173
|
"yasr.plugin_control.response_chip.timestamp.moments_ago": "moments ago",
|
|
@@ -177,7 +186,9 @@ const en = {
|
|
|
177
186
|
"yasr.plugin_control.response_chip.message.seconds": "{{seconds}}s",
|
|
178
187
|
"yasr.plugin_control.download_as.extended_table.dropdown.label": "Download as",
|
|
179
188
|
"yasr.plugin_control.download_as.table.dropdown.label": "Get HTML snippet to embed results on a web page",
|
|
189
|
+
"yasr.plugin_control.download_as.pivot_table.dropdown.label": "Get HTML snippet to embed results on a web page",
|
|
180
190
|
"yasr.plugin_control.download_as.raw_response.dropdown.label": "Get HTML snippet to embed results on a web page",
|
|
191
|
+
"yasr.plugin_control.download_as.charts.dropdown.label": "Get HTML snippet to embed results on a web page",
|
|
181
192
|
"yasr.plugin_control.download_as.sparql_results_json.label": "JSON",
|
|
182
193
|
"yasr.plugin_control.download_as.sparql_results_json_ld.label": "JSON-LD",
|
|
183
194
|
"yasr.plugin_control.download_as.sparql_results_ndjson_ld.label": "NDJSON-LD",
|
|
@@ -366,6 +377,14 @@ const fr = {
|
|
|
366
377
|
"yasr.plugin_control.plugin.name.extended_table": "Tableau",
|
|
367
378
|
"yasr.plugin_control.plugin.name.response": "Réponse brute",
|
|
368
379
|
"yasr.plugin_control.plugin.name.table": "Tableau",
|
|
380
|
+
"yasr.plugin_control.plugin.name.pivot-table-plugin": "Table de pivotement",
|
|
381
|
+
"yasr.plugin_control.plugin.name.pivot-table-plugin.available_variables": "Variables disponibles",
|
|
382
|
+
"yasr.plugin_control.plugin.name.pivot-table-plugin.columns": "Colonnes",
|
|
383
|
+
"yasr.plugin_control.plugin.name.pivot-table-plugin.cells": "Cellules",
|
|
384
|
+
"yasr.plugin_control.plugin.name.pivot-table-plugin.rows": "Lignes",
|
|
385
|
+
"yasr.plugin_control.plugin.pivot-table-plugin.charts.config.button": "Configuration du graphique",
|
|
386
|
+
"yasr.plugin_control.plugin.name.charts": "Graphiques",
|
|
387
|
+
"yasr.plugin_control.plugin.charts.config.button": "Configuration du graphique",
|
|
369
388
|
"yasr.plugin_control.shows_view.btn.aria_label": "Affiche la vue {{name}}",
|
|
370
389
|
"yasr.plugin_control.response_chip.timestamp.minutes_ago": "minutes",
|
|
371
390
|
"yasr.plugin_control.response_chip.timestamp.moments_ago": "il y a quelques instants",
|
|
@@ -385,6 +404,8 @@ const fr = {
|
|
|
385
404
|
"yasr.plugin_control.download_as.extended_table.dropdown.label": "Téléchargement",
|
|
386
405
|
"yasr.plugin_control.download_as.table.dropdown.label": "Obtenir un extrait HTML pour intégrer les résultats dans une page web",
|
|
387
406
|
"yasr.plugin_control.download_as.raw_response.dropdown.label": "Obtenir un extrait HTML pour intégrer les résultats dans une page web",
|
|
407
|
+
"yasr.plugin_control.download_as.pivot_table.dropdown.label": "Obtenir un extrait HTML pour intégrer les résultats dans une page web",
|
|
408
|
+
"yasr.plugin_control.download_as.charts.dropdown.label": "Obtenir un extrait HTML pour intégrer les résultats dans une page web",
|
|
388
409
|
"yasr.plugin_control.download_as.sparql_results_json.label": "JSON",
|
|
389
410
|
"yasr.plugin_control.download_as.sparql_results_json_ld.label": "JSON-LD",
|
|
390
411
|
"yasr.plugin_control.download_as.sparql_results_ndjson_ld.label": "NDJSON-LD",
|
|
@@ -723,7 +744,7 @@ const defaultYasqeConfig = {
|
|
|
723
744
|
};
|
|
724
745
|
const defaultYasrConfig = {
|
|
725
746
|
defaultPlugin: 'extended_table',
|
|
726
|
-
pluginOrder: [
|
|
747
|
+
pluginOrder: ['extended_table', 'extended_response', 'pivot-table-plugin', 'charts'],
|
|
727
748
|
showQueryLoader: true,
|
|
728
749
|
};
|
|
729
750
|
|
|
@@ -1297,9 +1318,83 @@ class HtmlUtil {
|
|
|
1297
1318
|
textArea.innerHTML = text;
|
|
1298
1319
|
return textArea.value;
|
|
1299
1320
|
}
|
|
1321
|
+
static loadJavaScript(url, onLoadHandler = undefined, async = false) {
|
|
1322
|
+
if (!document.querySelector(`script[src="${url}"]`)) {
|
|
1323
|
+
const loader = document.createElement('script');
|
|
1324
|
+
loader.setAttribute('src', url);
|
|
1325
|
+
loader.async = async;
|
|
1326
|
+
if (onLoadHandler) {
|
|
1327
|
+
loader.addEventListener('load', onLoadHandler);
|
|
1328
|
+
}
|
|
1329
|
+
document.head.appendChild(loader);
|
|
1330
|
+
}
|
|
1331
|
+
else if (typeof onLoadHandler === "function") {
|
|
1332
|
+
onLoadHandler();
|
|
1333
|
+
}
|
|
1334
|
+
}
|
|
1335
|
+
static loadCss(url) {
|
|
1336
|
+
if (!document.querySelector(`link[href="${url}"]`)) {
|
|
1337
|
+
const loader = document.createElement('link');
|
|
1338
|
+
loader.setAttribute('href', url);
|
|
1339
|
+
loader.rel = 'stylesheet';
|
|
1340
|
+
loader.type = 'text/css';
|
|
1341
|
+
document.head.appendChild(loader);
|
|
1342
|
+
}
|
|
1343
|
+
}
|
|
1344
|
+
static downloadStringAsFile(content, filename, contentType) {
|
|
1345
|
+
const blob = new Blob([content], { type: contentType });
|
|
1346
|
+
const url = URL.createObjectURL(blob);
|
|
1347
|
+
const a = document.createElement('a');
|
|
1348
|
+
a.style.display = 'none';
|
|
1349
|
+
a.href = url;
|
|
1350
|
+
a.download = filename;
|
|
1351
|
+
document.body.appendChild(a);
|
|
1352
|
+
a.click();
|
|
1353
|
+
document.body.removeChild(a);
|
|
1354
|
+
URL.revokeObjectURL(url);
|
|
1355
|
+
}
|
|
1356
|
+
}
|
|
1357
|
+
|
|
1358
|
+
class SparqlUtils {
|
|
1359
|
+
/**
|
|
1360
|
+
* Returns short uri of <code>uri</code>. For example: if <code>uri</code> is "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" then function
|
|
1361
|
+
* will return "rdf:type". The "rdf" prefix have to be described in <code>prefixes</code> otherwise full <code>uri</code> will be returned.
|
|
1362
|
+
* @param uri - full uri of a rdf resource. For example http://www.w3.org/1999/02/22-rdf-syntax-ns#type.
|
|
1363
|
+
*
|
|
1364
|
+
* @param prefixes - object with uris and their corresponding prefixes.
|
|
1365
|
+
* For example:
|
|
1366
|
+
* <pre>
|
|
1367
|
+
* {
|
|
1368
|
+
* "gn": "http://www.geonames.org/ontology#",
|
|
1369
|
+
* "path": "http://www.ontotext.com/path#",
|
|
1370
|
+
* "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
|
|
1371
|
+
* "rdfs": "http://www.w3.org/2000/01/rdf-schema#",
|
|
1372
|
+
* "xsd": "http://www.w3.org/2001/XMLSchema#",
|
|
1373
|
+
* }
|
|
1374
|
+
* </pre>
|
|
1375
|
+
*/
|
|
1376
|
+
static uriToPrefixWithLocalName(uri, prefixes) {
|
|
1377
|
+
for (const prefixLabel in prefixes) {
|
|
1378
|
+
const prefix = prefixes[prefixLabel];
|
|
1379
|
+
if (uri.indexOf(prefix) == 0) {
|
|
1380
|
+
return prefixLabel + ":" + uri.substring(prefix.length);
|
|
1381
|
+
}
|
|
1382
|
+
}
|
|
1383
|
+
return uri;
|
|
1384
|
+
}
|
|
1385
|
+
static mapPrefixesToNamespaces(prefixes) {
|
|
1386
|
+
return Object.keys(prefixes).reduce((acc, key) => {
|
|
1387
|
+
acc[prefixes[key]] = key;
|
|
1388
|
+
return acc;
|
|
1389
|
+
}, {});
|
|
1390
|
+
}
|
|
1300
1391
|
}
|
|
1301
1392
|
|
|
1302
1393
|
class YasrService {
|
|
1394
|
+
static registerPlugin(name, plugin, enable = true) {
|
|
1395
|
+
// @ts-ignore
|
|
1396
|
+
Yasr.registerPlugin(name, plugin, enable);
|
|
1397
|
+
}
|
|
1303
1398
|
static getPluginsConfigurations(externalConfiguration) {
|
|
1304
1399
|
const pluginsConfigurations = new Map();
|
|
1305
1400
|
this.addExtendedTableConfiguration(externalConfiguration, pluginsConfigurations);
|
|
@@ -1497,7 +1592,7 @@ class CellContentContext {
|
|
|
1497
1592
|
}
|
|
1498
1593
|
getShortUri(uri) {
|
|
1499
1594
|
if (!this.fullUriToShortUri.has(uri)) {
|
|
1500
|
-
this.fullUriToShortUri.set(uri,
|
|
1595
|
+
this.fullUriToShortUri.set(uri, SparqlUtils.uriToPrefixWithLocalName(uri, this.prefixes));
|
|
1501
1596
|
}
|
|
1502
1597
|
return this.fullUriToShortUri.get(uri);
|
|
1503
1598
|
}
|
|
@@ -1516,20 +1611,6 @@ class CellContentContext {
|
|
|
1516
1611
|
isShacl() {
|
|
1517
1612
|
return this.shacl;
|
|
1518
1613
|
}
|
|
1519
|
-
/**
|
|
1520
|
-
* Returns short uri of <code>uri</code>. For example: if <code>uri</code> is "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" then function
|
|
1521
|
-
* will return "rdf:type". The "rdf" prefix have to be described in <code>prefixes</code> otherwise full <code>uri</code> will be returned.
|
|
1522
|
-
* @param uri - full uri of a rdf resource. For example http://www.w3.org/1999/02/22-rdf-syntax-ns#type.
|
|
1523
|
-
*/
|
|
1524
|
-
uriToPrefixWithLocalName(uri) {
|
|
1525
|
-
for (const prefixLabel in this.prefixes) {
|
|
1526
|
-
const prefix = this.prefixes[prefixLabel];
|
|
1527
|
-
if (uri.indexOf(prefix) == 0) {
|
|
1528
|
-
return prefixLabel + ":" + uri.substring(prefix.length);
|
|
1529
|
-
}
|
|
1530
|
-
}
|
|
1531
|
-
return uri;
|
|
1532
|
-
}
|
|
1533
1614
|
}
|
|
1534
1615
|
|
|
1535
1616
|
class NamespaceService {
|
|
@@ -2026,6 +2107,11 @@ class DownloadAsYasrToolbarPlugin {
|
|
|
2026
2107
|
updateDownloadAsElementVisibility(element, yasr) {
|
|
2027
2108
|
var _a, _b;
|
|
2028
2109
|
element.classList.add("hidden");
|
|
2110
|
+
const downloadAsConfiguration = this.pluginNameToPluginsConfigurations.get(element.pluginName);
|
|
2111
|
+
if (!downloadAsConfiguration) {
|
|
2112
|
+
// if we don't have a configuration for that plugin, we hidde the button.
|
|
2113
|
+
return;
|
|
2114
|
+
}
|
|
2029
2115
|
// Download as dropdown is not visible
|
|
2030
2116
|
// when executed query is for explain plan query,
|
|
2031
2117
|
if (yasr.yasqe.getIsExplainPlanQuery()) {
|
|
@@ -2368,6 +2454,817 @@ TimeFormattingService.ONE_SECOND_IN_MILLISECONDS = 1000;
|
|
|
2368
2454
|
TimeFormattingService.ONE_DAY_IN_MILLISECONDS = 86400000;
|
|
2369
2455
|
TimeFormattingService.ONE_MINUTE_IN_MILLISECONDS = 60000;
|
|
2370
2456
|
|
|
2457
|
+
class PivotTableDownloadUtil {
|
|
2458
|
+
// @ts-ignore
|
|
2459
|
+
static getTSVDownloadInfo(yasr) {
|
|
2460
|
+
return {
|
|
2461
|
+
contentType: "text/tsv",
|
|
2462
|
+
filename: "queryResults.tsv",
|
|
2463
|
+
getData: () => yasr.rootEl.querySelector('.pvtRendererArea textarea').innerHTML
|
|
2464
|
+
};
|
|
2465
|
+
}
|
|
2466
|
+
// @ts-ignore
|
|
2467
|
+
static getCSVDownloadInfo(yasr) {
|
|
2468
|
+
return {
|
|
2469
|
+
contentType: "text/csv",
|
|
2470
|
+
filename: "queryResults.csv",
|
|
2471
|
+
getData: () => PivotTableDownloadUtil.tableToCsv(yasr.rootEl.querySelector('.pvtRendererArea table'))
|
|
2472
|
+
};
|
|
2473
|
+
}
|
|
2474
|
+
// @ts-ignore
|
|
2475
|
+
static getSvgDownloadInfo(yasr) {
|
|
2476
|
+
return {
|
|
2477
|
+
contentType: "image/svg+xml",
|
|
2478
|
+
filename: "queryResults.svg",
|
|
2479
|
+
getData: () => yasr.rootEl.querySelector('.pvtRendererArea svg').outerHTML
|
|
2480
|
+
};
|
|
2481
|
+
}
|
|
2482
|
+
static tableToCsv(tableElement, config = undefined) {
|
|
2483
|
+
let csvString = "";
|
|
2484
|
+
const configuration = Object.assign(new TableToCsvConfiguration(), config);
|
|
2485
|
+
csvString += PivotTableDownloadUtil.getTableHeaderAsCSV(tableElement, configuration);
|
|
2486
|
+
csvString += PivotTableDownloadUtil.getTableBodyAsCSV(tableElement, configuration);
|
|
2487
|
+
return csvString;
|
|
2488
|
+
}
|
|
2489
|
+
static getTableHeaderAsCSV(tableElement, config) {
|
|
2490
|
+
const headerRows = tableElement.querySelectorAll('thead tr');
|
|
2491
|
+
if (!headerRows || headerRows.length < 1) {
|
|
2492
|
+
return '';
|
|
2493
|
+
}
|
|
2494
|
+
return this.toCSVFormat(PivotTableDownloadUtil.getThValuesMatrix(headerRows, config), config);
|
|
2495
|
+
}
|
|
2496
|
+
static getTableBodyAsCSV(element, config) {
|
|
2497
|
+
let csvString = '';
|
|
2498
|
+
const querySelector = element.querySelector('tbody');
|
|
2499
|
+
if (!querySelector) {
|
|
2500
|
+
return;
|
|
2501
|
+
}
|
|
2502
|
+
const bodyRows = querySelector.querySelectorAll('tr');
|
|
2503
|
+
if (!bodyRows || bodyRows.length < 1) {
|
|
2504
|
+
return '';
|
|
2505
|
+
}
|
|
2506
|
+
const thValueMatrix = PivotTableDownloadUtil.getThValuesMatrix(bodyRows, config);
|
|
2507
|
+
bodyRows.forEach((row, rowIndex) => {
|
|
2508
|
+
csvString += thValueMatrix[rowIndex].join(config.delimiter);
|
|
2509
|
+
const tdData = [];
|
|
2510
|
+
row.querySelectorAll('td').forEach((cell) => {
|
|
2511
|
+
tdData.push(PivotTableDownloadUtil.escapeValueIfNeeded(cell.innerText, config));
|
|
2512
|
+
});
|
|
2513
|
+
if (tdData.length > 0) {
|
|
2514
|
+
csvString += config.delimiter + tdData.join(config.delimiter) + config.lineBreak;
|
|
2515
|
+
}
|
|
2516
|
+
});
|
|
2517
|
+
return csvString;
|
|
2518
|
+
}
|
|
2519
|
+
static getColspan(element) {
|
|
2520
|
+
const colspanAttribute = element.getAttribute('colspan');
|
|
2521
|
+
return colspanAttribute ? parseInt(colspanAttribute, 10) : 1;
|
|
2522
|
+
}
|
|
2523
|
+
static getRowspan(element) {
|
|
2524
|
+
const rowspan = element.getAttribute('rowspan');
|
|
2525
|
+
return rowspan ? parseInt(rowspan, 10) : 1;
|
|
2526
|
+
}
|
|
2527
|
+
static findIndexOfFirstUndefinedElement(array) {
|
|
2528
|
+
return array.findIndex((element) => element === undefined);
|
|
2529
|
+
}
|
|
2530
|
+
static getThValuesMatrix(rowElements, config) {
|
|
2531
|
+
const thValuesMatrix = Array.from(Array(rowElements.length), () => new Array(PivotTableDownloadUtil.getColumnsCount(rowElements)));
|
|
2532
|
+
let currentColumnPosition = 0;
|
|
2533
|
+
rowElements.forEach((row, rowIndex) => {
|
|
2534
|
+
currentColumnPosition = 0;
|
|
2535
|
+
row.querySelectorAll('th').forEach((cellElement) => {
|
|
2536
|
+
const cellValue = PivotTableDownloadUtil.escapeValueIfNeeded(cellElement.innerText || "", config);
|
|
2537
|
+
const colspanValue = PivotTableDownloadUtil.getColspan(cellElement);
|
|
2538
|
+
const rowspanValue = PivotTableDownloadUtil.getRowspan(cellElement);
|
|
2539
|
+
for (let colIndex = 0; colIndex < colspanValue; colIndex++) {
|
|
2540
|
+
const matrixCellValue = thValuesMatrix[rowIndex][currentColumnPosition];
|
|
2541
|
+
if (matrixCellValue === undefined) {
|
|
2542
|
+
thValuesMatrix[rowIndex][currentColumnPosition] = cellValue;
|
|
2543
|
+
}
|
|
2544
|
+
else {
|
|
2545
|
+
// The matrix value is populated because some previous element had a rowspan greater than 1.
|
|
2546
|
+
// So the cell value have to be populated on next not filled element.
|
|
2547
|
+
thValuesMatrix[rowIndex][PivotTableDownloadUtil.findIndexOfFirstUndefinedElement(thValuesMatrix[rowIndex])] = cellValue;
|
|
2548
|
+
currentColumnPosition++;
|
|
2549
|
+
}
|
|
2550
|
+
// If the rowspan value is greater than 1, we will copy the cell value to the next rows and same column into the value matrix.
|
|
2551
|
+
for (let index = 1; index < rowspanValue; index++) {
|
|
2552
|
+
thValuesMatrix[rowIndex + index][currentColumnPosition] = cellValue;
|
|
2553
|
+
}
|
|
2554
|
+
currentColumnPosition++;
|
|
2555
|
+
}
|
|
2556
|
+
});
|
|
2557
|
+
});
|
|
2558
|
+
return thValuesMatrix;
|
|
2559
|
+
}
|
|
2560
|
+
static needToQuoteString(value, config) {
|
|
2561
|
+
//quote when it contains whitespace, quote or the delimiter
|
|
2562
|
+
return !!value.match("[\\w|" + config.delimiter + "|" + config.quote + "]");
|
|
2563
|
+
}
|
|
2564
|
+
static escapeValueIfNeeded(value, config) {
|
|
2565
|
+
if (PivotTableDownloadUtil.needToQuoteString(value, config)) {
|
|
2566
|
+
return `"${value}"`;
|
|
2567
|
+
}
|
|
2568
|
+
}
|
|
2569
|
+
static toCSVFormat(data, config) {
|
|
2570
|
+
let csv = '';
|
|
2571
|
+
for (let rowIndex = 0; rowIndex < data.length; rowIndex++) {
|
|
2572
|
+
csv += data[rowIndex].join(config.delimiter) + config.lineBreak;
|
|
2573
|
+
}
|
|
2574
|
+
return csv;
|
|
2575
|
+
}
|
|
2576
|
+
static getColumnsCount(thElements) {
|
|
2577
|
+
let allColumns = 0;
|
|
2578
|
+
thElements[0].querySelectorAll('th').forEach((thElement) => {
|
|
2579
|
+
const colspan = thElement.getAttribute('colspan');
|
|
2580
|
+
if (colspan) {
|
|
2581
|
+
allColumns += parseInt(colspan, 10);
|
|
2582
|
+
}
|
|
2583
|
+
else {
|
|
2584
|
+
allColumns++;
|
|
2585
|
+
}
|
|
2586
|
+
});
|
|
2587
|
+
return allColumns;
|
|
2588
|
+
}
|
|
2589
|
+
}
|
|
2590
|
+
class TableToCsvConfiguration {
|
|
2591
|
+
constructor() {
|
|
2592
|
+
this.quote = "\"";
|
|
2593
|
+
this.delimiter = ",";
|
|
2594
|
+
this.lineBreak = "\n";
|
|
2595
|
+
}
|
|
2596
|
+
}
|
|
2597
|
+
|
|
2598
|
+
var PivotTableRendererName;
|
|
2599
|
+
(function (PivotTableRendererName) {
|
|
2600
|
+
PivotTableRendererName["TABLE"] = "Table";
|
|
2601
|
+
PivotTableRendererName["TABLE_BARCHART"] = "Table Barchart";
|
|
2602
|
+
PivotTableRendererName["HEATMAP"] = "Heatmap";
|
|
2603
|
+
PivotTableRendererName["ROW_HEATMAP"] = "Row Heatmap";
|
|
2604
|
+
PivotTableRendererName["COL_HEATMAP"] = "Col Heatmap";
|
|
2605
|
+
PivotTableRendererName["TREEMAP"] = "Treemap";
|
|
2606
|
+
PivotTableRendererName["LINE_CHART"] = "Line Chart";
|
|
2607
|
+
PivotTableRendererName["BAR_CHART"] = "Bar Chart";
|
|
2608
|
+
PivotTableRendererName["STACKED_BAR_CHART"] = "Stacked Bar Chart";
|
|
2609
|
+
PivotTableRendererName["AREA_CHART"] = "Area Chart";
|
|
2610
|
+
PivotTableRendererName["SCATTER_CHART"] = "Scatter Chart";
|
|
2611
|
+
PivotTableRendererName["TSV_EXPORT"] = "TSV Export";
|
|
2612
|
+
})(PivotTableRendererName || (PivotTableRendererName = {}));
|
|
2613
|
+
|
|
2614
|
+
class PivotTablePlugin {
|
|
2615
|
+
// @ts-ignore
|
|
2616
|
+
constructor(yasr) {
|
|
2617
|
+
this.label = PivotTablePlugin.PLUGIN_NAME;
|
|
2618
|
+
this.priority = 4;
|
|
2619
|
+
if (yasr) {
|
|
2620
|
+
this.yasr = yasr;
|
|
2621
|
+
this.translationService = this.yasr.config.translationService;
|
|
2622
|
+
}
|
|
2623
|
+
}
|
|
2624
|
+
initialize() {
|
|
2625
|
+
return new Promise(resolve => {
|
|
2626
|
+
HtmlUtil.loadCss('https://pivottable.js.org/dist/pivot.css');
|
|
2627
|
+
HtmlUtil.loadJavaScript('https://cdnjs.cloudflare.com/ajax/libs/d3/3.5.5/d3.min.js');
|
|
2628
|
+
HtmlUtil.loadJavaScript('https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.2/jquery.min.js');
|
|
2629
|
+
HtmlUtil.loadJavaScript('https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js');
|
|
2630
|
+
HtmlUtil.loadJavaScript('https://www.gstatic.com/charts/loader.js');
|
|
2631
|
+
HtmlUtil.loadJavaScript('https://pivottable.js.org/dist/pivot.js');
|
|
2632
|
+
HtmlUtil.loadJavaScript('https://pivottable.js.org/dist/d3_renderers.js');
|
|
2633
|
+
HtmlUtil.loadJavaScript('https://pivottable.js.org/dist/export_renderers.js');
|
|
2634
|
+
HtmlUtil.loadJavaScript('https://pivottable.js.org/dist/gchart_renderers.js', resolve);
|
|
2635
|
+
});
|
|
2636
|
+
}
|
|
2637
|
+
canHandleResults() {
|
|
2638
|
+
return this.yasr.results && this.yasr.results.getVariables && this.yasr.results.getVariables() && this.yasr.results.getVariables().length > 0;
|
|
2639
|
+
}
|
|
2640
|
+
draw(persistentConfig, _runtimeConfig) {
|
|
2641
|
+
// @ts-ignore
|
|
2642
|
+
// if Google module visualization is loaded then we can continue with drawing.
|
|
2643
|
+
if (google.visualization) {
|
|
2644
|
+
this.drawPivotTable(persistentConfig);
|
|
2645
|
+
}
|
|
2646
|
+
else {
|
|
2647
|
+
// @ts-ignore
|
|
2648
|
+
google.load("visualization", "1", { packages: ["corechart", "charteditor"] });
|
|
2649
|
+
// If the render is a Google chart we have to wait the module to be loaded.
|
|
2650
|
+
if (persistentConfig && this.isGoogleChartRender(persistentConfig.rendererName)) {
|
|
2651
|
+
// @ts-ignore
|
|
2652
|
+
google.setOnLoadCallback(() => {
|
|
2653
|
+
this.drawPivotTable(persistentConfig);
|
|
2654
|
+
});
|
|
2655
|
+
}
|
|
2656
|
+
else {
|
|
2657
|
+
// If the render is not a Google chart or the Google we can continue with drawing.
|
|
2658
|
+
this.drawPivotTable(persistentConfig);
|
|
2659
|
+
}
|
|
2660
|
+
}
|
|
2661
|
+
}
|
|
2662
|
+
drawPivotTable(persistentConfig) {
|
|
2663
|
+
const config = Object.assign({}, persistentConfig);
|
|
2664
|
+
config.renderers = this.getRenders();
|
|
2665
|
+
config.onRefresh = this.onRefresh();
|
|
2666
|
+
this.showPlugin(config);
|
|
2667
|
+
this.addUnusedVariableHeader();
|
|
2668
|
+
this.addColumnsHeader();
|
|
2669
|
+
this.addValuesHeader();
|
|
2670
|
+
this.addRowsHeader();
|
|
2671
|
+
this.updateVariablesElement();
|
|
2672
|
+
}
|
|
2673
|
+
isGoogleChartRender(renderName) {
|
|
2674
|
+
switch (renderName) {
|
|
2675
|
+
case PivotTableRendererName.BAR_CHART:
|
|
2676
|
+
case PivotTableRendererName.LINE_CHART:
|
|
2677
|
+
case PivotTableRendererName.STACKED_BAR_CHART:
|
|
2678
|
+
case PivotTableRendererName.AREA_CHART:
|
|
2679
|
+
case PivotTableRendererName.SCATTER_CHART:
|
|
2680
|
+
return true;
|
|
2681
|
+
}
|
|
2682
|
+
return false;
|
|
2683
|
+
}
|
|
2684
|
+
getIcon() {
|
|
2685
|
+
const icon = document.createElement('div');
|
|
2686
|
+
icon.innerHTML = svgUtil.SvgUtil.getPivotTableIconSvgTag();
|
|
2687
|
+
return icon;
|
|
2688
|
+
}
|
|
2689
|
+
destroy() {
|
|
2690
|
+
// TODO remove all listeners if any.
|
|
2691
|
+
}
|
|
2692
|
+
download(_filename) {
|
|
2693
|
+
// @ts-ignore
|
|
2694
|
+
const options = $(this.yasr.rootEl.querySelector(`.${PivotTablePlugin.PLUGIN_NAME}`)).data('pivotUIOptions');
|
|
2695
|
+
if (options) {
|
|
2696
|
+
switch (options.rendererName) {
|
|
2697
|
+
case PivotTableRendererName.TSV_EXPORT:
|
|
2698
|
+
return PivotTableDownloadUtil.getTSVDownloadInfo(this.yasr);
|
|
2699
|
+
case PivotTableRendererName.TABLE:
|
|
2700
|
+
case PivotTableRendererName.TABLE_BARCHART:
|
|
2701
|
+
case PivotTableRendererName.HEATMAP:
|
|
2702
|
+
case PivotTableRendererName.ROW_HEATMAP:
|
|
2703
|
+
case PivotTableRendererName.COL_HEATMAP:
|
|
2704
|
+
return PivotTableDownloadUtil.getCSVDownloadInfo(this.yasr);
|
|
2705
|
+
case PivotTableRendererName.BAR_CHART:
|
|
2706
|
+
case PivotTableRendererName.LINE_CHART:
|
|
2707
|
+
case PivotTableRendererName.STACKED_BAR_CHART:
|
|
2708
|
+
case PivotTableRendererName.AREA_CHART:
|
|
2709
|
+
case PivotTableRendererName.SCATTER_CHART:
|
|
2710
|
+
return PivotTableDownloadUtil.getSvgDownloadInfo(this.yasr);
|
|
2711
|
+
}
|
|
2712
|
+
}
|
|
2713
|
+
return;
|
|
2714
|
+
}
|
|
2715
|
+
getRenders() {
|
|
2716
|
+
// @ts-ignore
|
|
2717
|
+
return $.extend(true, $.pivotUtilities.renderers, $.pivotUtilities.d3_renderers, $.pivotUtilities.gchart_renderers, $.pivotUtilities.export_renderers);
|
|
2718
|
+
}
|
|
2719
|
+
showPlugin(config) {
|
|
2720
|
+
this.pluginElement = document.createElement("div");
|
|
2721
|
+
this.pluginElement.className = PivotTablePlugin.PLUGIN_NAME;
|
|
2722
|
+
this.yasr.resultsEl.appendChild(this.pluginElement);
|
|
2723
|
+
// @ts-ignore
|
|
2724
|
+
$(this.yasr.rootEl.querySelector(`.${PivotTablePlugin.PLUGIN_NAME}`))
|
|
2725
|
+
.pivotUI((callback) => this.getResults(callback), config);
|
|
2726
|
+
}
|
|
2727
|
+
/**
|
|
2728
|
+
* This function transforms Yasr results into the input type expected by the PivotTable. It is called to fetch all values that need to be populated.
|
|
2729
|
+
*
|
|
2730
|
+
* @param callback - a callback function that should be called for each result binding. The function's parameter should be an object containing variables as keys and results as values
|
|
2731
|
+
*
|
|
2732
|
+
* .
|
|
2733
|
+
* For example, if we have a result with two bindings and variables 's', 'p' and 'o', then <code>callback</code> will be called twice, once per
|
|
2734
|
+
* binding.
|
|
2735
|
+
* First call have to be with parameter the object:
|
|
2736
|
+
* {
|
|
2737
|
+
* s: <value of s from first result>,
|
|
2738
|
+
* p: <value of p from first result>,
|
|
2739
|
+
* o: <value of o from first result>
|
|
2740
|
+
* }
|
|
2741
|
+
*
|
|
2742
|
+
* and the second call have to be with parameter the object:
|
|
2743
|
+
* * {
|
|
2744
|
+
* s: <value of s from second result>,
|
|
2745
|
+
* p: <value of p from second result>,
|
|
2746
|
+
* o: <value of o from second result>
|
|
2747
|
+
* }
|
|
2748
|
+
*
|
|
2749
|
+
*/
|
|
2750
|
+
getResults(callback) {
|
|
2751
|
+
const variables = this.yasr.results.getVariables();
|
|
2752
|
+
const usedPrefixes = this.yasr.getPrefixes();
|
|
2753
|
+
this.yasr.results.getBindings()
|
|
2754
|
+
.forEach((binding) => {
|
|
2755
|
+
callback(this.getResult(variables, binding, usedPrefixes));
|
|
2756
|
+
});
|
|
2757
|
+
}
|
|
2758
|
+
getResult(variables, binding, usedPrefixes) {
|
|
2759
|
+
const rowObj = {};
|
|
2760
|
+
variables.forEach((variable) => {
|
|
2761
|
+
rowObj[variable] = this.getResultValue(variable, binding, usedPrefixes);
|
|
2762
|
+
});
|
|
2763
|
+
return rowObj;
|
|
2764
|
+
}
|
|
2765
|
+
getResultValue(variable, binding, usedPrefixes) {
|
|
2766
|
+
if (variable in binding) {
|
|
2767
|
+
const bindingElement = binding[variable];
|
|
2768
|
+
const value = bindingElement.value;
|
|
2769
|
+
return bindingElement.type === "uri" ? SparqlUtils.uriToPrefixWithLocalName(value, usedPrefixes) : value;
|
|
2770
|
+
}
|
|
2771
|
+
return null;
|
|
2772
|
+
}
|
|
2773
|
+
addUnusedVariableHeader() {
|
|
2774
|
+
const unusedVariablesContainer = this.pluginElement.querySelector('.pvtUnused');
|
|
2775
|
+
unusedVariablesContainer.classList.add('pivottable-plugin-unused-variables');
|
|
2776
|
+
const unusedVariablesHeaderElement = document.createElement('div');
|
|
2777
|
+
unusedVariablesHeaderElement.classList.add('pivottable-plugin-unused-variables-header');
|
|
2778
|
+
unusedVariablesHeaderElement.innerText = this.yasr.translationService.translate('yasr.plugin_control.plugin.name.pivot-table-plugin.available_variables');
|
|
2779
|
+
unusedVariablesContainer.prepend(unusedVariablesHeaderElement);
|
|
2780
|
+
}
|
|
2781
|
+
addColumnsHeader() {
|
|
2782
|
+
const columnsContainer = this.pluginElement.querySelector('.pvtCols');
|
|
2783
|
+
columnsContainer.classList.add('pivottable-plugin-columns');
|
|
2784
|
+
const columnsHeaderElement = document.createElement('div');
|
|
2785
|
+
columnsHeaderElement.classList.add('pivottable-plugin-columns-header');
|
|
2786
|
+
columnsHeaderElement.innerText = this.yasr.translationService.translate('yasr.plugin_control.plugin.name.pivot-table-plugin.columns');
|
|
2787
|
+
columnsContainer.prepend(columnsHeaderElement);
|
|
2788
|
+
}
|
|
2789
|
+
addValuesHeader() {
|
|
2790
|
+
const valuesContainer = this.pluginElement.querySelector('.pvtVals');
|
|
2791
|
+
valuesContainer.classList.add('pivottable-plugin-values');
|
|
2792
|
+
const valuesHeaderElement = document.createElement('div');
|
|
2793
|
+
valuesHeaderElement.classList.add('pivottable-plugin-values-header');
|
|
2794
|
+
valuesHeaderElement.innerText = this.yasr.translationService.translate('yasr.plugin_control.plugin.name.pivot-table-plugin.cells');
|
|
2795
|
+
valuesContainer.prepend(valuesHeaderElement);
|
|
2796
|
+
}
|
|
2797
|
+
addRowsHeader() {
|
|
2798
|
+
const rowsContainer = this.pluginElement.querySelector('.pvtRows');
|
|
2799
|
+
rowsContainer.classList.add('pivottable-plugin-rows');
|
|
2800
|
+
const rowsHeaderElement = document.createElement('div');
|
|
2801
|
+
rowsHeaderElement.classList.add('pivottable-plugin-rows-header');
|
|
2802
|
+
rowsHeaderElement.innerText = this.yasr.translationService.translate('yasr.plugin_control.plugin.name.pivot-table-plugin.rows');
|
|
2803
|
+
rowsContainer.prepend(rowsHeaderElement);
|
|
2804
|
+
}
|
|
2805
|
+
updateVariablesElement() {
|
|
2806
|
+
this.pluginElement.querySelectorAll('.pvtAttr')
|
|
2807
|
+
.forEach((variableElement) => this.updateVariableElement(variableElement));
|
|
2808
|
+
}
|
|
2809
|
+
updateVariableElement(variableElement) {
|
|
2810
|
+
variableElement.classList.add('povottable-plugin-variable');
|
|
2811
|
+
const dropdownElement = variableElement.querySelector('.pvtTriangle');
|
|
2812
|
+
const icon = document.createElement('div');
|
|
2813
|
+
icon.classList.add('pivottable-plugin-variable-icon');
|
|
2814
|
+
icon.innerHTML = svgUtil.SvgUtil.getPivotTableValueIcon();
|
|
2815
|
+
variableElement.insertBefore(icon, dropdownElement);
|
|
2816
|
+
}
|
|
2817
|
+
onRefresh() {
|
|
2818
|
+
return (pivotUIOptions) => {
|
|
2819
|
+
if (pivotUIOptions) {
|
|
2820
|
+
switch (pivotUIOptions.rendererName) {
|
|
2821
|
+
case PivotTableRendererName.BAR_CHART:
|
|
2822
|
+
case PivotTableRendererName.LINE_CHART:
|
|
2823
|
+
case PivotTableRendererName.STACKED_BAR_CHART:
|
|
2824
|
+
case PivotTableRendererName.AREA_CHART:
|
|
2825
|
+
case PivotTableRendererName.SCATTER_CHART:
|
|
2826
|
+
this.addChartConfigButton();
|
|
2827
|
+
break;
|
|
2828
|
+
default:
|
|
2829
|
+
this.removeChartConfigButton();
|
|
2830
|
+
}
|
|
2831
|
+
}
|
|
2832
|
+
// FIX ME: When a chart renderer is selected and configured using the Google Chart Editor (by double-clicking on the SVG or clicking on 'Chart Config'),
|
|
2833
|
+
// the configuration is not persisted.
|
|
2834
|
+
this.yasr.storePluginConfig(PivotTablePlugin.PLUGIN_NAME, this.toPivotTablePersistentConfig(pivotUIOptions));
|
|
2835
|
+
};
|
|
2836
|
+
}
|
|
2837
|
+
removeChartConfigButton() {
|
|
2838
|
+
const element = this.yasr.resultsEl.parentElement.querySelector('#openPivotTableChartConfigBtn');
|
|
2839
|
+
if (!element) {
|
|
2840
|
+
return;
|
|
2841
|
+
}
|
|
2842
|
+
element.remove();
|
|
2843
|
+
}
|
|
2844
|
+
addChartConfigButton() {
|
|
2845
|
+
if (this.yasr.resultsEl.parentElement.querySelector('#openPivotTableChartConfigBtn')) {
|
|
2846
|
+
return;
|
|
2847
|
+
}
|
|
2848
|
+
const openConfigButton = document.createElement('button');
|
|
2849
|
+
openConfigButton.id = 'openPivotTableChartConfigBtn';
|
|
2850
|
+
openConfigButton.innerHTML = this.translationService.translate("yasr.plugin_control.plugin.charts.config.button");
|
|
2851
|
+
openConfigButton.addEventListener('click', () => {
|
|
2852
|
+
// @ts-ignore
|
|
2853
|
+
$(this.yasr.rootEl.querySelector(`.${PivotTablePlugin.PLUGIN_NAME}`)).find('div[dir="ltr"]').dblclick();
|
|
2854
|
+
});
|
|
2855
|
+
const infoContainer = this.yasr.resultsEl.parentElement.querySelector('.yasr_header .yasr_response_chip');
|
|
2856
|
+
infoContainer.prepend(openConfigButton);
|
|
2857
|
+
}
|
|
2858
|
+
toPivotTablePersistentConfig(pivotUIOptions) {
|
|
2859
|
+
return {
|
|
2860
|
+
cols: pivotUIOptions.cols,
|
|
2861
|
+
rows: pivotUIOptions.rows,
|
|
2862
|
+
colOrder: pivotUIOptions.colOrder,
|
|
2863
|
+
rowOrder: pivotUIOptions.rowOrder,
|
|
2864
|
+
vals: pivotUIOptions.vals,
|
|
2865
|
+
exclusions: pivotUIOptions.exclusions,
|
|
2866
|
+
inclusions: pivotUIOptions.inclusions,
|
|
2867
|
+
inclusionsInfo: pivotUIOptions.inclusionsInfo,
|
|
2868
|
+
aggregatorName: pivotUIOptions.aggregatorName,
|
|
2869
|
+
rendererName: pivotUIOptions.rendererName,
|
|
2870
|
+
};
|
|
2871
|
+
}
|
|
2872
|
+
}
|
|
2873
|
+
// TODO add persistence
|
|
2874
|
+
// @ts-ignore
|
|
2875
|
+
PivotTablePlugin.PERSISTENCE_ID = 'pivot';
|
|
2876
|
+
PivotTablePlugin.PLUGIN_NAME = 'pivot-table-plugin';
|
|
2877
|
+
|
|
2878
|
+
class PivotTableDownloadPlugin {
|
|
2879
|
+
// @ts-ignore
|
|
2880
|
+
createElement(yasr) {
|
|
2881
|
+
const downloadAsElement = document.createElement("button");
|
|
2882
|
+
downloadAsElement.className = 'pivot-table-download-as-button icon-download';
|
|
2883
|
+
downloadAsElement.onclick = this.onClick(yasr);
|
|
2884
|
+
this.updateElement(downloadAsElement, yasr);
|
|
2885
|
+
return downloadAsElement;
|
|
2886
|
+
}
|
|
2887
|
+
//@ts-ignore
|
|
2888
|
+
updateElement(element, yasr) {
|
|
2889
|
+
// if we don't have a configuration for that plugin, we hidde the button.
|
|
2890
|
+
element.classList.toggle('hidden', !yasr.results || PivotTablePlugin.PLUGIN_NAME !== yasr.getSelectedPluginName());
|
|
2891
|
+
element.innerHTML = `<span class="pivot-table-download-as-button-label">${yasr.translationService.translate('yasr.plugin_control.download_as.pivot_table.dropdown.label')}</span>`;
|
|
2892
|
+
}
|
|
2893
|
+
getOrder() {
|
|
2894
|
+
return 0;
|
|
2895
|
+
}
|
|
2896
|
+
// @ts-ignore
|
|
2897
|
+
destroy(_element, _yasr) {
|
|
2898
|
+
// Nothing to do.
|
|
2899
|
+
}
|
|
2900
|
+
// @ts-ignore
|
|
2901
|
+
onClick(yasr) {
|
|
2902
|
+
return () => {
|
|
2903
|
+
if (!yasr.results) {
|
|
2904
|
+
return;
|
|
2905
|
+
}
|
|
2906
|
+
const selectedPlugin = yasr.getSelectedPlugin();
|
|
2907
|
+
if (PivotTablePlugin.PLUGIN_NAME === selectedPlugin.label) {
|
|
2908
|
+
const downloadInfo = selectedPlugin.download();
|
|
2909
|
+
if (downloadInfo) {
|
|
2910
|
+
HtmlUtil.downloadStringAsFile(downloadInfo.getData(), downloadInfo.filename, downloadInfo.contentType);
|
|
2911
|
+
}
|
|
2912
|
+
}
|
|
2913
|
+
};
|
|
2914
|
+
}
|
|
2915
|
+
}
|
|
2916
|
+
|
|
2917
|
+
class ChartsPlugin {
|
|
2918
|
+
constructor(yasr) {
|
|
2919
|
+
this.chartEditor = null;
|
|
2920
|
+
this.wrapper = null;
|
|
2921
|
+
this.chartEditorOkHandler = undefined;
|
|
2922
|
+
this.persistentConfig = {};
|
|
2923
|
+
this.label = "charts";
|
|
2924
|
+
this.priority = 3;
|
|
2925
|
+
if (yasr) {
|
|
2926
|
+
this.yasr = yasr;
|
|
2927
|
+
this.translationService = this.yasr.config.translationService;
|
|
2928
|
+
}
|
|
2929
|
+
this.config = ChartsPlugin.defaults;
|
|
2930
|
+
}
|
|
2931
|
+
canHandleResults() {
|
|
2932
|
+
return !!this.yasr.results && this.yasr.results.getVariables() && this.yasr.results.getVariables().length > 0;
|
|
2933
|
+
}
|
|
2934
|
+
initialize() {
|
|
2935
|
+
return new Promise((resolve) => {
|
|
2936
|
+
HtmlUtil.loadJavaScript('https://www.gstatic.com/charts/loader.js', () => {
|
|
2937
|
+
// @ts-ignore
|
|
2938
|
+
google.charts.load('current', { packages: ['charteditor'] }).then(resolve);
|
|
2939
|
+
});
|
|
2940
|
+
});
|
|
2941
|
+
}
|
|
2942
|
+
draw(_persistentConfig, _runtimeConfig) {
|
|
2943
|
+
this.persistentConfig = Object.assign(Object.assign({}, this.persistentConfig), _persistentConfig);
|
|
2944
|
+
this.initEditor();
|
|
2945
|
+
this.drawChart();
|
|
2946
|
+
}
|
|
2947
|
+
download(_filename) {
|
|
2948
|
+
if (!this.yasr.results) {
|
|
2949
|
+
return null;
|
|
2950
|
+
}
|
|
2951
|
+
const svgEl = this.yasr.resultsEl.getElementsByTagName('svg');
|
|
2952
|
+
if (svgEl.length > 0) {
|
|
2953
|
+
return this.exportSvg(svgEl[0]);
|
|
2954
|
+
}
|
|
2955
|
+
//ok, not a svg. is it a table?
|
|
2956
|
+
const tableEl = this.yasr.resultsEl.querySelectorAll('.google-visualization-table-table');
|
|
2957
|
+
if (tableEl.length > 0) {
|
|
2958
|
+
return this.exportCsv();
|
|
2959
|
+
}
|
|
2960
|
+
}
|
|
2961
|
+
exportSvg(svgEl) {
|
|
2962
|
+
const svg = svgEl.cloneNode(true);
|
|
2963
|
+
let htmlString = svg.outerHTML;
|
|
2964
|
+
// wrap in div, so users can more easily tune width/height
|
|
2965
|
+
htmlString = '<div style="width: 800px; height: 600px;">\n' + htmlString + '\n</div>';
|
|
2966
|
+
return {
|
|
2967
|
+
contentType: "image/svg+xml",
|
|
2968
|
+
filename: "queryResults.svg",
|
|
2969
|
+
getData: () => {
|
|
2970
|
+
return htmlString;
|
|
2971
|
+
}
|
|
2972
|
+
};
|
|
2973
|
+
}
|
|
2974
|
+
exportCsv() {
|
|
2975
|
+
// @ts-ignore
|
|
2976
|
+
const data = this.wrapper.getDataTable();
|
|
2977
|
+
// build column headings
|
|
2978
|
+
let csvColumns = '';
|
|
2979
|
+
for (let i = 0; i < data.getNumberOfColumns(); i++) {
|
|
2980
|
+
csvColumns += data.getColumnLabel(i);
|
|
2981
|
+
if (i < (data.getNumberOfColumns() - 1)) {
|
|
2982
|
+
csvColumns += ',';
|
|
2983
|
+
}
|
|
2984
|
+
}
|
|
2985
|
+
csvColumns += '\n';
|
|
2986
|
+
// @ts-ignore
|
|
2987
|
+
let csv = google.visualization.dataTableToCsv(data);
|
|
2988
|
+
csv = csvColumns + csv;
|
|
2989
|
+
return {
|
|
2990
|
+
getData: () => {
|
|
2991
|
+
return csv;
|
|
2992
|
+
},
|
|
2993
|
+
filename: "queryResults.csv",
|
|
2994
|
+
contentType: "text/csv"
|
|
2995
|
+
};
|
|
2996
|
+
}
|
|
2997
|
+
getIcon() {
|
|
2998
|
+
const icon = document.createElement('div');
|
|
2999
|
+
icon.innerHTML = svgUtil.SvgUtil.getYasrChartPluginIcon();
|
|
3000
|
+
return icon;
|
|
3001
|
+
}
|
|
3002
|
+
destroy() {
|
|
3003
|
+
// @ts-ignore
|
|
3004
|
+
google.visualization.events.removeListener(this.chartEditorOkHandler);
|
|
3005
|
+
}
|
|
3006
|
+
drawChart() {
|
|
3007
|
+
this.yasr.resultsEl.innerHTML = '';
|
|
3008
|
+
this.addChartConfigButton();
|
|
3009
|
+
const chartState = this.persistentConfig.chartState && JSON.parse(this.persistentConfig.chartState);
|
|
3010
|
+
const dataModel = this.buildModel();
|
|
3011
|
+
let dataTable = undefined;
|
|
3012
|
+
if (chartState && chartState.dataTable.rows.length === dataModel.getNumberOfRows() && chartState.dataTable.cols.length === dataModel.getNumberOfColumns()) {
|
|
3013
|
+
dataTable = chartState.dataTable;
|
|
3014
|
+
}
|
|
3015
|
+
else {
|
|
3016
|
+
dataTable = dataModel;
|
|
3017
|
+
}
|
|
3018
|
+
this.createChartContainer();
|
|
3019
|
+
// @ts-ignore
|
|
3020
|
+
this.wrapper = new google.visualization.ChartWrapper({
|
|
3021
|
+
chartType: chartState ? chartState.chartType : 'Table',
|
|
3022
|
+
dataTable: dataTable,
|
|
3023
|
+
containerId: this.getContainerId()
|
|
3024
|
+
});
|
|
3025
|
+
if (chartState) {
|
|
3026
|
+
this.wrapper.setOptions(chartState.options);
|
|
3027
|
+
}
|
|
3028
|
+
else {
|
|
3029
|
+
this.wrapper.setOption('width', this.config.width);
|
|
3030
|
+
this.wrapper.setOption('height', this.config.height);
|
|
3031
|
+
}
|
|
3032
|
+
this.wrapper.draw();
|
|
3033
|
+
}
|
|
3034
|
+
buildModel() {
|
|
3035
|
+
// @ts-ignore
|
|
3036
|
+
const dataTable = new google.visualization.DataTable();
|
|
3037
|
+
const jsonResults = this.yasr.results.getAsJson();
|
|
3038
|
+
jsonResults.head.vars.forEach((variable) => {
|
|
3039
|
+
let type = 'string';
|
|
3040
|
+
try {
|
|
3041
|
+
type = this.getGoogleTypeForBindings(jsonResults.results.bindings, variable);
|
|
3042
|
+
}
|
|
3043
|
+
catch (e) {
|
|
3044
|
+
if (e instanceof TypesMappingError) ;
|
|
3045
|
+
else {
|
|
3046
|
+
throw e;
|
|
3047
|
+
}
|
|
3048
|
+
}
|
|
3049
|
+
dataTable.addColumn(type, variable);
|
|
3050
|
+
});
|
|
3051
|
+
const prefixes = SparqlUtils.mapPrefixesToNamespaces(this.yasr.getPrefixes());
|
|
3052
|
+
jsonResults.results.bindings.forEach((binding) => {
|
|
3053
|
+
const row = jsonResults.head.vars.map((variable, columnId) => {
|
|
3054
|
+
return ChartsPlugin.castGoogleType(binding[variable], prefixes, dataTable.getColumnType(columnId));
|
|
3055
|
+
});
|
|
3056
|
+
dataTable.addRow(row);
|
|
3057
|
+
});
|
|
3058
|
+
return dataTable;
|
|
3059
|
+
}
|
|
3060
|
+
getContainerId() {
|
|
3061
|
+
const tabId = this.yasr.yasqe.tabId;
|
|
3062
|
+
return `${tabId}_visualization`;
|
|
3063
|
+
}
|
|
3064
|
+
createChartContainer() {
|
|
3065
|
+
const pluginHtml = document.createElement("div");
|
|
3066
|
+
pluginHtml.id = this.getContainerId();
|
|
3067
|
+
this.yasr.resultsEl.appendChild(pluginHtml);
|
|
3068
|
+
}
|
|
3069
|
+
redrawChart() {
|
|
3070
|
+
const chartWrapper = this.chartEditor.getChartWrapper();
|
|
3071
|
+
chartWrapper.draw(document.getElementById(this.getContainerId()));
|
|
3072
|
+
this.persistentConfig.chartOptions = chartWrapper.getOptions();
|
|
3073
|
+
this.persistentConfig.chartState = chartWrapper.toJSON();
|
|
3074
|
+
this.yasr.storePluginConfig(ChartsPlugin.PLUGIN_NAME, this.persistentConfig);
|
|
3075
|
+
}
|
|
3076
|
+
initEditor() {
|
|
3077
|
+
// @ts-ignore
|
|
3078
|
+
this.chartEditor = new google.visualization.ChartEditor();
|
|
3079
|
+
// @ts-ignore
|
|
3080
|
+
this.chartEditorOkHandler = google.visualization.events.addListener(this.chartEditor, 'ok', this.redrawChart.bind(this));
|
|
3081
|
+
}
|
|
3082
|
+
addChartConfigButton() {
|
|
3083
|
+
if (this.yasr.resultsEl.parentElement.querySelector('#openChartConfigBtn')) {
|
|
3084
|
+
return;
|
|
3085
|
+
}
|
|
3086
|
+
const openConfigButton = document.createElement('button');
|
|
3087
|
+
openConfigButton.id = 'openChartConfigBtn';
|
|
3088
|
+
openConfigButton.innerHTML = this.translationService.translate("yasr.plugin_control.plugin.charts.config.button");
|
|
3089
|
+
openConfigButton.addEventListener('click', () => {
|
|
3090
|
+
this.chartEditor.openDialog(this.wrapper, {});
|
|
3091
|
+
});
|
|
3092
|
+
const infoContainer = this.yasr.resultsEl.parentElement.querySelector('.yasr_header .yasr_response_chip');
|
|
3093
|
+
infoContainer.prepend(openConfigButton);
|
|
3094
|
+
}
|
|
3095
|
+
static getGoogleTypeForBinding(binding) {
|
|
3096
|
+
if (!binding) {
|
|
3097
|
+
return null;
|
|
3098
|
+
}
|
|
3099
|
+
if (binding.type != null && (binding.type === 'typed-literal' || binding.type === 'literal')) {
|
|
3100
|
+
switch (binding.datatype) {
|
|
3101
|
+
case 'http://www.w3.org/2001/XMLSchema#float':
|
|
3102
|
+
case 'http://www.w3.org/2001/XMLSchema#decimal':
|
|
3103
|
+
case 'http://www.w3.org/2001/XMLSchema#int':
|
|
3104
|
+
case 'http://www.w3.org/2001/XMLSchema#integer':
|
|
3105
|
+
case 'http://www.w3.org/2001/XMLSchema#long':
|
|
3106
|
+
case 'http://www.w3.org/2001/XMLSchema#gYearMonth':
|
|
3107
|
+
case 'http://www.w3.org/2001/XMLSchema#gYear':
|
|
3108
|
+
case 'http://www.w3.org/2001/XMLSchema#gMonthDay':
|
|
3109
|
+
case 'http://www.w3.org/2001/XMLSchema#gDay':
|
|
3110
|
+
case 'http://www.w3.org/2001/XMLSchema#gMonth':
|
|
3111
|
+
return "number";
|
|
3112
|
+
case 'http://www.w3.org/2001/XMLSchema#date':
|
|
3113
|
+
return "date";
|
|
3114
|
+
case 'http://www.w3.org/2001/XMLSchema#dateTime':
|
|
3115
|
+
return "datetime";
|
|
3116
|
+
case 'http://www.w3.org/2001/XMLSchema#time':
|
|
3117
|
+
return "timeofday";
|
|
3118
|
+
default:
|
|
3119
|
+
return "string";
|
|
3120
|
+
}
|
|
3121
|
+
}
|
|
3122
|
+
else {
|
|
3123
|
+
return "string";
|
|
3124
|
+
}
|
|
3125
|
+
}
|
|
3126
|
+
getGoogleTypeForBindings(bindings, varName) {
|
|
3127
|
+
const types = {};
|
|
3128
|
+
let typeCount = 0;
|
|
3129
|
+
bindings.forEach((binding) => {
|
|
3130
|
+
const type = ChartsPlugin.getGoogleTypeForBinding(binding[varName]);
|
|
3131
|
+
if (type != null) {
|
|
3132
|
+
if (!(type in types)) {
|
|
3133
|
+
types[type] = 0;
|
|
3134
|
+
typeCount++;
|
|
3135
|
+
}
|
|
3136
|
+
types[type]++;
|
|
3137
|
+
}
|
|
3138
|
+
});
|
|
3139
|
+
if (typeCount == 0) {
|
|
3140
|
+
return 'string';
|
|
3141
|
+
}
|
|
3142
|
+
else if (typeCount == 1) {
|
|
3143
|
+
for (const type in types) {
|
|
3144
|
+
//just return this one
|
|
3145
|
+
return type;
|
|
3146
|
+
}
|
|
3147
|
+
}
|
|
3148
|
+
else {
|
|
3149
|
+
// we have conflicting types. Throw error
|
|
3150
|
+
console.log('Mapping bindings to types failed', types, varName);
|
|
3151
|
+
throw new TypesMappingError('Mapping bindings to types failed', types, varName);
|
|
3152
|
+
}
|
|
3153
|
+
}
|
|
3154
|
+
static castGoogleType(binding, prefixes, googleType) {
|
|
3155
|
+
if (binding == null) {
|
|
3156
|
+
return null;
|
|
3157
|
+
}
|
|
3158
|
+
if (googleType != 'string' && binding.type != null && (binding.type === 'typed-literal' || binding.type === 'literal')) {
|
|
3159
|
+
switch (binding.datatype) {
|
|
3160
|
+
case 'http://www.w3.org/2001/XMLSchema#float':
|
|
3161
|
+
case 'http://www.w3.org/2001/XMLSchema#decimal':
|
|
3162
|
+
case 'http://www.w3.org/2001/XMLSchema#int':
|
|
3163
|
+
case 'http://www.w3.org/2001/XMLSchema#integer':
|
|
3164
|
+
case 'http://www.w3.org/2001/XMLSchema#long':
|
|
3165
|
+
case 'http://www.w3.org/2001/XMLSchema#gYearMonth':
|
|
3166
|
+
case 'http://www.w3.org/2001/XMLSchema#gYear':
|
|
3167
|
+
case 'http://www.w3.org/2001/XMLSchema#gMonthDay':
|
|
3168
|
+
case 'http://www.w3.org/2001/XMLSchema#gDay':
|
|
3169
|
+
case 'http://www.w3.org/2001/XMLSchema#gMonth':
|
|
3170
|
+
return Number(binding.value);
|
|
3171
|
+
case 'http://www.w3.org/2001/XMLSchema#date': {
|
|
3172
|
+
// the date function does not parse -any- date (including most xsd dates!)
|
|
3173
|
+
// datetime and time seem to be fine though.
|
|
3174
|
+
// so, first try our custom parser. if that does not work, try the regular date parser anyway
|
|
3175
|
+
const date = ChartsPlugin.parseXmlSchemaDate(binding.value);
|
|
3176
|
+
if (date) {
|
|
3177
|
+
return date;
|
|
3178
|
+
}
|
|
3179
|
+
break;
|
|
3180
|
+
}
|
|
3181
|
+
case 'http://www.w3.org/2001/XMLSchema#dateTime':
|
|
3182
|
+
return new Date(binding.value);
|
|
3183
|
+
case 'http://www.w3.org/2001/XMLSchema#time':
|
|
3184
|
+
return new Date(binding.value);
|
|
3185
|
+
default:
|
|
3186
|
+
return binding.value;
|
|
3187
|
+
}
|
|
3188
|
+
}
|
|
3189
|
+
else {
|
|
3190
|
+
if (binding.type == 'uri') {
|
|
3191
|
+
return ChartsPlugin.uriToPrefixed(prefixes, binding.value);
|
|
3192
|
+
}
|
|
3193
|
+
else {
|
|
3194
|
+
return binding.value;
|
|
3195
|
+
}
|
|
3196
|
+
}
|
|
3197
|
+
}
|
|
3198
|
+
static uriToPrefixed(prefixes, uri) {
|
|
3199
|
+
let prefixedUri = uri;
|
|
3200
|
+
if (prefixes) {
|
|
3201
|
+
const prefix = prefixes[uri];
|
|
3202
|
+
if (prefix && uri.indexOf(prefix) === 0) {
|
|
3203
|
+
prefixedUri = prefix + ':' + prefixedUri.substring(prefix.length);
|
|
3204
|
+
}
|
|
3205
|
+
}
|
|
3206
|
+
return prefixedUri;
|
|
3207
|
+
}
|
|
3208
|
+
// There are no PROPER xml schema to js date parsers
|
|
3209
|
+
// A few libraries exist: moment, jsdate, Xdate, but none of them parse valid xml schema dates (e.g. 1999-11-05+02:00).
|
|
3210
|
+
// And: I'm not going to write one myself
|
|
3211
|
+
// There are other hacky solutions (regular expressions based on trial/error) such as http://stackoverflow.com/questions/2731579/convert-an-xml-schema-date-string-to-a-javascript-date
|
|
3212
|
+
// But if we're doing hacky stuff, I at least want to do it MYSELF!
|
|
3213
|
+
static parseXmlSchemaDate(dateString) {
|
|
3214
|
+
//change +02:00 to Z+02:00 (something which is parseable by js date)
|
|
3215
|
+
const date = new Date(dateString.replace(/(\d)([+-]\d{2}:\d{2})/, '$1Z$2'));
|
|
3216
|
+
// @ts-ignore
|
|
3217
|
+
if (isNaN(date))
|
|
3218
|
+
return null;
|
|
3219
|
+
return date;
|
|
3220
|
+
}
|
|
3221
|
+
}
|
|
3222
|
+
ChartsPlugin.PLUGIN_NAME = 'charts';
|
|
3223
|
+
ChartsPlugin.defaults = {
|
|
3224
|
+
width: '100%',
|
|
3225
|
+
height: '600px'
|
|
3226
|
+
};
|
|
3227
|
+
function TypesMappingError(msg, types, varName) {
|
|
3228
|
+
this.msg = msg;
|
|
3229
|
+
this.types = types;
|
|
3230
|
+
this.varName = varName;
|
|
3231
|
+
}
|
|
3232
|
+
|
|
3233
|
+
class ChartDownloadPlugin {
|
|
3234
|
+
createElement(yasr) {
|
|
3235
|
+
const downloadAsElement = document.createElement('button');
|
|
3236
|
+
downloadAsElement.className = 'chart-download-as-button icon-download';
|
|
3237
|
+
downloadAsElement.onclick = this.onClick(yasr);
|
|
3238
|
+
this.updateElement(downloadAsElement, yasr);
|
|
3239
|
+
return downloadAsElement;
|
|
3240
|
+
}
|
|
3241
|
+
updateElement(element, yasr) {
|
|
3242
|
+
// if we don't have a configuration for that plugin or no results are present we hide the button.
|
|
3243
|
+
element.classList.toggle('hidden', !yasr.results || ChartsPlugin.PLUGIN_NAME !== yasr.getSelectedPluginName());
|
|
3244
|
+
element.innerHTML = `<span class="chart-download-as-button-label">${yasr.translationService.translate('yasr.plugin_control.download_as.charts.dropdown.label')}</span>`;
|
|
3245
|
+
}
|
|
3246
|
+
getOrder() {
|
|
3247
|
+
return 0;
|
|
3248
|
+
}
|
|
3249
|
+
destroy(_element, _yasr) {
|
|
3250
|
+
// destroy it
|
|
3251
|
+
}
|
|
3252
|
+
onClick(yasr) {
|
|
3253
|
+
return () => {
|
|
3254
|
+
if (!yasr.results) {
|
|
3255
|
+
return;
|
|
3256
|
+
}
|
|
3257
|
+
const selectedPlugin = yasr.getSelectedPlugin();
|
|
3258
|
+
if (ChartsPlugin.PLUGIN_NAME === selectedPlugin.label) {
|
|
3259
|
+
const downloadInfo = selectedPlugin.download();
|
|
3260
|
+
if (downloadInfo) {
|
|
3261
|
+
HtmlUtil.downloadStringAsFile(downloadInfo.getData(), downloadInfo.filename, downloadInfo.contentType);
|
|
3262
|
+
}
|
|
3263
|
+
}
|
|
3264
|
+
};
|
|
3265
|
+
}
|
|
3266
|
+
}
|
|
3267
|
+
|
|
2371
3268
|
/**
|
|
2372
3269
|
* Builder for yasgui configuration.
|
|
2373
3270
|
*/
|
|
@@ -2446,6 +3343,8 @@ class YasguiConfigurationBuilder {
|
|
|
2446
3343
|
if (externalConfiguration.downloadAsOn === undefined || externalConfiguration.downloadAsOn) {
|
|
2447
3344
|
const downloadAsYasrToolbarPlugin = new DownloadAsYasrToolbarPlugin(this.serviceFactory, externalConfiguration.pluginsConfigurations);
|
|
2448
3345
|
yasrToolbarElements.push(downloadAsYasrToolbarPlugin);
|
|
3346
|
+
yasrToolbarElements.push(new PivotTableDownloadPlugin());
|
|
3347
|
+
yasrToolbarElements.push(new ChartDownloadPlugin());
|
|
2449
3348
|
}
|
|
2450
3349
|
if (config.yasguiConfig.paginationOn) {
|
|
2451
3350
|
yasrToolbarElements.push(new PaginationYasrToolbarPlugin());
|
|
@@ -2565,7 +3464,7 @@ const removeUndefinedProperties = (object) => {
|
|
|
2565
3464
|
}, {});
|
|
2566
3465
|
};
|
|
2567
3466
|
|
|
2568
|
-
const ontotextYasguiWebComponentCss = "@charset \"UTF-8\";.yasr .yasr_btn{border:none;background:inherit}.yasr .svgImg{display:flex;flex-direction:row}.yasr .svgImg svg{max-width:100%;max-height:100%;width:15px;height:15px;align-self:center}.yasr .yasr_btn.yasr_external_ref_btn{font-weight:600;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.yasr .yasr_btn.yasr_external_ref_btn:active,.yasr .yasr_btn.yasr_external_ref_btn:focus{color:inherit;-webkit-text-decoration-color:inherit;text-decoration-color:inherit}.yasr .yasr_btn.yasr_external_ref_btn .svgImg svg{width:18px;height:18px}.yasr a{color:#428bca;text-decoration:none}.yasr a:active,.yasr a:hover{outline:0;color:#2a6496;text-decoration:underline}.yasr .yasr_btnGroup{margin:0;padding:0;list-style:none;display:flex;overflow-x:auto;overflow-y:hidden}.yasr .yasr_btnGroup .plugin_icon{height:15px;width:15px;margin-right:5px;text-align:center}.yasr .yasr_btnGroup .yasr_btn{border-bottom:2px solid transparent;padding-left:6px;padding-right:6px;margin-left:6px;margin-right:6px}.yasr .yasr_btnGroup .yasr_btn.selected{border-bottom:2px solid #337ab7}@media (max-width: 768px){.yasr .yasr_btn span{display:none}.yasr .yasr_btn .plugin_icon{margin-right:0}}.yasr .yasr_header{display:flex;flex-wrap:wrap}.yasr .yasr_fallback_info:not(:empty){margin-top:5px;border:1px solid #d1d1d1;padding:0.5rem;background:#f7f7f7}.yasr .yasr_fallback_info:not(:empty) p{margin:0}.yasr .yasr_help_variable{background:#dff0ff;color:#428bca}.yasr .yasr_response_chip{color:#505050;background:#f5f5f5;border-radius:6px;display:flex;font-size:11pt;max-height:16pt;align-self:center;align-items:center;justify-content:center;white-space:nowrap;padding:6px;margin-left:5px;overflow:visible;box-sizing:border-box}.yasr .yasr_response_chip.empty{display:none}.yasr .yasr_plugin_control{min-height:50px;display:flex;margin-left:auto;align-items:center}.yasr .yasr_plugin_control:empty{display:none}.yasr .yasr_btn{color:#505050;fill:#505050;display:flex;align-items:center;justify-content:center;cursor:pointer;white-space:nowrap;padding:6px 12px;overflow:visible;box-sizing:border-box}.yasr .yasr_btn.btn_icon{padding:4px 8px}.yasr .yasr_btn.disabled,.yasr .yasr_btn[disabled]{cursor:default;opacity:0.5;box-shadow:none}.yasr .yasr_btn:not(.disabled):hover{fill:#000;color:#000}.yasr .yasr_btn.selected,.yasr .yasr_btn:focus{color:#337ab7;fill:#337ab7}.yasr .space_element{flex-grow:1;min-width:10px}.yasr .yasr-toolbar{display:flex}.yasr .yasr-toolbar .yasr-toolbar-element{padding-left:10px;padding-right:10px}.yasr .errorResult{padding:10px}.yasr .errorResult .errorHeader{overflow:hidden}.yasr .errorResult .errorHeader .yasr_tryQuery{float:right;text-decoration:none;padding-top:3px;padding-bottom:3px}.yasr .errorResult .errorHeader span.status{display:inline-block;padding:0.35em 0.5rem;font-size:75%;font-weight:600;line-height:1.35;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:0.25em;color:#fff;background-color:#dc3545}.yasr .errorResult .errorMessageContainer{display:flex}.yasr .errorResult .errorMessageContainer .errorMessage{flex-grow:1;width:0;min-width:100px;overflow:auto;display:block;padding:10px;margin:10px 0;font-size:13px;line-height:1.42857;word-break:break-all;word-wrap:break-word;color:#333;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}.yasr .errorResult .redOutline{color:#a94442;background-color:#f2dede;margin-top:10px;padding:5px 1em;border:1px solid #ebccd1;border-radius:4px}.yasr .tableControls{display:flex;align-items:center;padding:0 5px 0 0;flex-wrap:wrap}.yasr .tableControls .tableFilter{margin-right:10px;height:100%}.yasr .tableControls .tableSizer{height:100%}.yasr .tableControls .switch{display:flex;align-items:center;margin-right:10px}.yasr .dataTable.ellipseTable{white-space:nowrap}.yasr .dataTable.ellipseTable div:not(.expanded){overflow:hidden;text-overflow:ellipsis}.yasr .dataTable:not(.ellipseTable) div:not(.expanded),.yasr .expanded{word-break:break-all}.yasr .expanded{white-space:normal}.yasr .expandable:not(.expanded){cursor:pointer}.yasr .expandable:not(.expanded) a{pointer-events:none}.yasr .dataTables_wrapper{font-size:0.9em;min-width:100%}.yasr .dataTables_wrapper .grip-container{max-width:100%}.yasr .dataTables_wrapper .grip-padding>tbody>tr>td,.yasr .dataTables_wrapper .grip-padding>tbody>tr>th{padding-left:7px !important;padding-right:5px !important}.yasr .dataTables_wrapper .dataTable{min-width:100%;box-sizing:border-box}.yasr .dataTables_wrapper .dataTable.no-footer{border-bottom:none}.yasr .dataTables_wrapper .dataTable thead .sorting{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAQAAADYWf5HAAAAkElEQVQoz7XQMQ5AQBCF4dWQSJxC5wwax1Cq1e7BAdxD5SL+Tq/QCM1oNiJidwox0355mXnG/DrEtIQ6azioNZQxI0ykPhTQIwhCR+BmBYtlK7kLJYwWCcJA9M4qdrZrd8pPjZWPtOqdRQy320YSV17OatFC4euts6z39GYMKRPCTKY9UnPQ6P+GtMRfGtPnBCiqhAeJPmkqAAAAAElFTkSuQmCC\")}.yasr .dataTables_wrapper .dataTable thead .sorting_asc{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAYAAAByUDbMAAAAZ0lEQVQ4y2NgGLKgquEuFxBPAGI2ahhWCsS/gDibUoO0gPgxEP8H4ttArEyuQYxAPBdqEAxPBImTY5gjEL9DM+wTENuQahAvEO9DMwiGdwAxOymGJQLxTyD+jgWDxCMZRsEoGAVoAADeemwtPcZI2wAAAABJRU5ErkJggg==\")}.yasr .dataTables_wrapper .dataTable thead .sorting_desc{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAYAAAByUDbMAAAAZUlEQVQ4y2NgGAWjYBSggaqGu5FA/BOIv2PBIPFEUgxjB+IdQPwfC94HxLykus4GiD+hGfQOiB3J8SojEE9EM2wuSJzcsFMG4ttQgx4DsRalkZENxL+AuJQaMcsGxBOAmGvopk8AVz1sLZgg0bsAAAAASUVORK5CYII=\")}.yasr .dataTables_wrapper .dataTable thead .sorting_asc_disabled{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAQAAADYWf5HAAAAW0lEQVQoz2NgoCm4w3Vnwh02wspK7/y6k01Ikdadx3f+37l9RxmfIsY7c4GKQHDiHUbcyhzvvIMq+3THBpci3jv7oIpAcMcdduzKEu/8vPMdDn/eiWQYBYMKAAC3ykIEuYQJUgAAAABJRU5ErkJggg==\")}.yasr .dataTables_wrapper .dataTable thead .sorting_desc_disabled{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAQAAADYWf5HAAAAWUlEQVQoz2NgGAWDCtyJvPPzznc4/HknEbsy9js77vyHw313eHGZZ3PnE1TRuzuOuK1lvDMRqmzuHUZ87lO+cxuo6PEdLUIeyb7z604pYf+y3Zlwh4u2YQoAc7ZCBHH4jigAAAAASUVORK5CYII=\")}.yasr .dataTables_wrapper .dataTable tbody tr:hover{background-color:#f9f9f9}.yasr .dataTables_wrapper .dataTable thead tr th{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-weight:700;text-align:start;overflow:hidden;text-overflow:ellipsis;border:none;padding:5px 5px 5px 7px;min-width:28px}.yasr .dataTables_wrapper .dataTable thead tr th.sorting{min-width:10px;padding-right:18px}.yasr .dataTables_wrapper .dataTable thead tr th:hover{background-color:#f9f9f9}.yasr .dataTables_wrapper .dataTable td{padding:5px}.yasr .dataTables_wrapper .dataTable td>div{-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto}.yasr .dataTables_wrapper .dataTable td>div.rowNumber{word-break:keep-all;overflow:visible}.yasr .dataTables_wrapper .dataTable td .tableEllipse{cursor:pointer;font-weight:700;padding:0 2px;background-color:rgba(66, 139, 202, 0.2);border-radius:2px;margin:0 3px}.yasr .dataTables_wrapper div.dataTables_paginate.paging_simple_numbers a.paginate_button{border:none;background:transparent}.yasr .dataTables_wrapper div.dataTables_paginate.paging_simple_numbers a.paginate_button .disabled{color:#505050}.yasr .dataTables_wrapper div.dataTables_paginate.paging_simple_numbers a.paginate_button.current{border:none;background:transparent;text-decoration:underline !important}.yasr .dataTables_wrapper div.dataTables_paginate.paging_simple_numbers a.paginate_button:hover{border:none;background:transparent}.yasr .dataTables_wrapper div.dataTables_paginate.paging_simple_numbers a.paginate_button:hover:not(.disabled){color:#000 !important}.yasr .dataTables_wrapper div.dataTables_paginate.paging_simple_numbers a.paginate_button:active{box-shadow:none}table.dataTable{width:100%;margin:0 auto;clear:both;border-collapse:separate;border-spacing:0}table.dataTable tfoot th,table.dataTable thead th{font-weight:700}table.dataTable thead td,table.dataTable thead th{padding:10px 18px;border-bottom:1px solid #111}table.dataTable thead td:active,table.dataTable thead th:active{outline:none}table.dataTable tfoot td,table.dataTable tfoot th{padding:10px 18px 6px;border-top:1px solid #111}table.dataTable thead .sorting,table.dataTable thead .sorting_asc,table.dataTable thead .sorting_asc_disabled,table.dataTable thead .sorting_desc,table.dataTable thead .sorting_desc_disabled{cursor:pointer;*cursor:hand;background-repeat:no-repeat;background-position:100%}table.dataTable tbody tr{background-color:#fff}table.dataTable tbody tr.selected{background-color:#b0bed9}table.dataTable tbody td,table.dataTable tbody th{padding:8px 10px}table.dataTable.display tbody td,table.dataTable.display tbody th,table.dataTable.row-border tbody td,table.dataTable.row-border tbody th{border-top:1px solid #ddd}table.dataTable.display tbody tr:first-child td,table.dataTable.display tbody tr:first-child th,table.dataTable.row-border tbody tr:first-child td,table.dataTable.row-border tbody tr:first-child th{border-top:none}table.dataTable.cell-border tbody td,table.dataTable.cell-border tbody th{border-top:1px solid #ddd;border-right:1px solid #ddd}table.dataTable.cell-border tbody tr td:first-child,table.dataTable.cell-border tbody tr th:first-child{border-left:1px solid #ddd}table.dataTable.cell-border tbody tr:first-child td,table.dataTable.cell-border tbody tr:first-child th{border-top:none}table.dataTable.display tbody tr.odd,table.dataTable.stripe tbody tr.odd{background-color:#f9f9f9}table.dataTable.display tbody tr.odd.selected,table.dataTable.stripe tbody tr.odd.selected{background-color:#acbad4}table.dataTable.display tbody tr:hover,table.dataTable.hover tbody tr:hover{background-color:#f6f6f6}table.dataTable.display tbody tr:hover.selected,table.dataTable.hover tbody tr:hover.selected{background-color:#aab7d1}table.dataTable.display tbody tr>.sorting_1,table.dataTable.display tbody tr>.sorting_2,table.dataTable.display tbody tr>.sorting_3,table.dataTable.order-column tbody tr>.sorting_1,table.dataTable.order-column tbody tr>.sorting_2,table.dataTable.order-column tbody tr>.sorting_3{background-color:#fafafa}table.dataTable.display tbody tr.selected>.sorting_1,table.dataTable.display tbody tr.selected>.sorting_2,table.dataTable.display tbody tr.selected>.sorting_3,table.dataTable.order-column tbody tr.selected>.sorting_1,table.dataTable.order-column tbody tr.selected>.sorting_2,table.dataTable.order-column tbody tr.selected>.sorting_3{background-color:#acbad5}table.dataTable.display tbody tr.odd>.sorting_1,table.dataTable.order-column.stripe tbody tr.odd>.sorting_1{background-color:#f1f1f1}table.dataTable.display tbody tr.odd>.sorting_2,table.dataTable.order-column.stripe tbody tr.odd>.sorting_2{background-color:#f3f3f3}table.dataTable.display tbody tr.odd>.sorting_3,table.dataTable.order-column.stripe tbody tr.odd>.sorting_3{background-color:#f5f5f5}table.dataTable.display tbody tr.odd.selected>.sorting_1,table.dataTable.order-column.stripe tbody tr.odd.selected>.sorting_1{background-color:#a6b4cd}table.dataTable.display tbody tr.odd.selected>.sorting_2,table.dataTable.order-column.stripe tbody tr.odd.selected>.sorting_2{background-color:#a8b5cf}table.dataTable.display tbody tr.odd.selected>.sorting_3,table.dataTable.order-column.stripe tbody tr.odd.selected>.sorting_3{background-color:#a9b7d1}table.dataTable.display tbody tr.even>.sorting_1,table.dataTable.order-column.stripe tbody tr.even>.sorting_1{background-color:#fafafa}table.dataTable.display tbody tr.even>.sorting_2,table.dataTable.order-column.stripe tbody tr.even>.sorting_2{background-color:#fcfcfc}table.dataTable.display tbody tr.even>.sorting_3,table.dataTable.order-column.stripe tbody tr.even>.sorting_3{background-color:#fefefe}table.dataTable.display tbody tr.even.selected>.sorting_1,table.dataTable.order-column.stripe tbody tr.even.selected>.sorting_1{background-color:#acbad5}table.dataTable.display tbody tr.even.selected>.sorting_2,table.dataTable.order-column.stripe tbody tr.even.selected>.sorting_2{background-color:#aebcd6}table.dataTable.display tbody tr.even.selected>.sorting_3,table.dataTable.order-column.stripe tbody tr.even.selected>.sorting_3{background-color:#afbdd8}table.dataTable.display tbody tr:hover>.sorting_1,table.dataTable.order-column.hover tbody tr:hover>.sorting_1{background-color:#eaeaea}table.dataTable.display tbody tr:hover>.sorting_2,table.dataTable.order-column.hover tbody tr:hover>.sorting_2{background-color:#ececec}table.dataTable.display tbody tr:hover>.sorting_3,table.dataTable.order-column.hover tbody tr:hover>.sorting_3{background-color:#efefef}table.dataTable.display tbody tr:hover.selected>.sorting_1,table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_1{background-color:#a2aec7}table.dataTable.display tbody tr:hover.selected>.sorting_2,table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_2{background-color:#a3b0c9}table.dataTable.display tbody tr:hover.selected>.sorting_3,table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_3{background-color:#a5b2cb}table.dataTable.no-footer{border-bottom:1px solid #111}table.dataTable.nowrap td,table.dataTable.nowrap th{white-space:nowrap}table.dataTable.compact thead td,table.dataTable.compact thead th{padding:4px 17px}table.dataTable.compact tbody td,table.dataTable.compact tbody th,table.dataTable.compact tfoot td,table.dataTable.compact tfoot th{padding:4px}table.dataTable td.dt-left,table.dataTable th.dt-left{text-align:left}table.dataTable td.dataTables_empty,table.dataTable td.dt-center,table.dataTable th.dt-center{text-align:center}table.dataTable td.dt-right,table.dataTable th.dt-right{text-align:right}table.dataTable td.dt-justify,table.dataTable th.dt-justify{text-align:justify}table.dataTable td.dt-nowrap,table.dataTable th.dt-nowrap{white-space:nowrap}table.dataTable tfoot td.dt-head-left,table.dataTable tfoot th.dt-head-left,table.dataTable thead td.dt-head-left,table.dataTable thead th.dt-head-left{text-align:left}table.dataTable tfoot td.dt-head-center,table.dataTable tfoot th.dt-head-center,table.dataTable thead td.dt-head-center,table.dataTable thead th.dt-head-center{text-align:center}table.dataTable tfoot td.dt-head-right,table.dataTable tfoot th.dt-head-right,table.dataTable thead td.dt-head-right,table.dataTable thead th.dt-head-right{text-align:right}table.dataTable tfoot td.dt-head-justify,table.dataTable tfoot th.dt-head-justify,table.dataTable thead td.dt-head-justify,table.dataTable thead th.dt-head-justify{text-align:justify}table.dataTable tfoot td.dt-head-nowrap,table.dataTable tfoot th.dt-head-nowrap,table.dataTable thead td.dt-head-nowrap,table.dataTable thead th.dt-head-nowrap{white-space:nowrap}table.dataTable tbody td.dt-body-left,table.dataTable tbody th.dt-body-left{text-align:left}table.dataTable tbody td.dt-body-center,table.dataTable tbody th.dt-body-center{text-align:center}table.dataTable tbody td.dt-body-right,table.dataTable tbody th.dt-body-right{text-align:right}table.dataTable tbody td.dt-body-justify,table.dataTable tbody th.dt-body-justify{text-align:justify}table.dataTable tbody td.dt-body-nowrap,table.dataTable tbody th.dt-body-nowrap{white-space:nowrap}table.dataTable,table.dataTable td,table.dataTable th{box-sizing:content-box}.dataTables_wrapper{position:relative;clear:both;*zoom:1;zoom:1}.dataTables_wrapper .dataTables_length{float:left}.dataTables_wrapper .dataTables_length select{border:1px solid #aaa;border-radius:3px;background-color:transparent;padding:4px}.dataTables_wrapper .dataTables_filter{float:right;text-align:right}.dataTables_wrapper .dataTables_filter input{border:1px solid #aaa;border-radius:3px;padding:5px;background-color:transparent;margin-left:3px}.dataTables_wrapper .dataTables_info{clear:both;float:left;padding-top:0.755em}.dataTables_wrapper .dataTables_paginate{float:right;text-align:right;padding-top:0.25em}.dataTables_wrapper .dataTables_paginate .paginate_button{box-sizing:border-box;display:inline-block;min-width:1.5em;padding:0.5em 1em;margin-left:2px;text-align:center;text-decoration:none !important;cursor:pointer;*cursor:hand;color:#333 !important;border:1px solid transparent;border-radius:2px}.dataTables_wrapper .dataTables_paginate .paginate_button.current,.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover{color:#333 !important;border:1px solid #979797;background-color:#fff;background:-webkit-gradient(linear, left top, left bottom, color-stop(0, #fff), color-stop(100%, #dcdcdc));background:-webkit-linear-gradient(top, #fff, #dcdcdc);background:-moz-linear-gradient(top, #fff 0, #dcdcdc 100%);background:-ms-linear-gradient(top, #fff 0, #dcdcdc 100%);background:-o-linear-gradient(top, #fff 0, #dcdcdc 100%);background:linear-gradient(180deg, #fff 0, #dcdcdc)}.dataTables_wrapper .dataTables_paginate .paginate_button.disabled,.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active,.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover{cursor:default;color:#666 !important;border:1px solid transparent;background:transparent;box-shadow:none}.dataTables_wrapper .dataTables_paginate .paginate_button:hover{color:#fff !important;border:1px solid #111;background-color:#585858;background:-webkit-gradient(linear, left top, left bottom, color-stop(0, #585858), color-stop(100%, #111));background:-webkit-linear-gradient(top, #585858, #111);background:-moz-linear-gradient(top, #585858 0, #111 100%);background:-ms-linear-gradient(top, #585858 0, #111 100%);background:-o-linear-gradient(top, #585858 0, #111 100%);background:linear-gradient(180deg, #585858 0, #111)}.dataTables_wrapper .dataTables_paginate .paginate_button:active{outline:none;background-color:#2b2b2b;background:-webkit-gradient(linear, left top, left bottom, color-stop(0, #2b2b2b), color-stop(100%, #0c0c0c));background:-webkit-linear-gradient(top, #2b2b2b, #0c0c0c);background:-moz-linear-gradient(top, #2b2b2b 0, #0c0c0c 100%);background:-ms-linear-gradient(top, #2b2b2b 0, #0c0c0c 100%);background:-o-linear-gradient(top, #2b2b2b 0, #0c0c0c 100%);background:linear-gradient(180deg, #2b2b2b 0, #0c0c0c);box-shadow:inset 0 0 3px #111}.dataTables_wrapper .dataTables_paginate .ellipsis{padding:0 1em}.dataTables_wrapper .dataTables_processing{position:absolute;top:50%;left:50%;width:100%;height:40px;margin-left:-50%;margin-top:-25px;padding-top:20px;text-align:center;font-size:1.2em;background-color:#fff;background:-webkit-gradient(linear, left top, right top, color-stop(0, rgba(255, 255, 255, 0)), color-stop(25%, rgba(255, 255, 255, 0.9)), color-stop(75%, rgba(255, 255, 255, 0.9)), color-stop(100%, rgba(255, 255, 255, 0)));background:-webkit-linear-gradient(left, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0));background:-moz-linear-gradient(left, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);background:-ms-linear-gradient(left, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);background:-o-linear-gradient(left, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);background:linear-gradient(90deg, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0))}.dataTables_wrapper .dataTables_filter,.dataTables_wrapper .dataTables_info,.dataTables_wrapper .dataTables_length,.dataTables_wrapper .dataTables_paginate,.dataTables_wrapper .dataTables_processing{color:#333}.dataTables_wrapper .dataTables_scroll{clear:both}.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody{*margin-top:-1px;-webkit-overflow-scrolling:touch}.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>tbody>tr>td,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>tbody>tr>th,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>thead>tr>td,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>thead>tr>th{vertical-align:middle}.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>tbody>tr>td>div.dataTables_sizing,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>tbody>tr>th>div.dataTables_sizing,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>thead>tr>td>div.dataTables_sizing,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>thead>tr>th>div.dataTables_sizing{height:0;overflow:hidden;margin:0 !important;padding:0 !important}.dataTables_wrapper.no-footer .dataTables_scrollBody{border-bottom:1px solid #111}.dataTables_wrapper.no-footer div.dataTables_scrollBody>table,.dataTables_wrapper.no-footer div.dataTables_scrollHead table.dataTable{border-bottom:none}.dataTables_wrapper:after{visibility:hidden;display:block;content:\"\";clear:both;height:0}@media screen and (max-width: 767px){.dataTables_wrapper .dataTables_info,.dataTables_wrapper .dataTables_paginate{float:none;text-align:center}.dataTables_wrapper .dataTables_paginate{margin-top:0.5em}}@media screen and (max-width: 640px){.dataTables_wrapper .dataTables_filter,.dataTables_wrapper .dataTables_length{float:none;text-align:center}.dataTables_wrapper .dataTables_filter{margin-top:0.5em}}.yasqe .CodeMirror{min-height:60px}.yasqe .svgImg{display:inline-block}.yasqe span.shortlinkErr{font-size:small;color:red;font-weight:700;float:left}.yasqe .CodeMirror-hint{max-width:30em}.yasqe .notificationContainer{width:100%;display:flex;justify-content:center;position:absolute;bottom:0}.yasqe .notification{z-index:4;padding:0 5px;max-height:0;color:#999;background-color:#eee;font-size:90%;text-align:center;transition:max-height 0.2s ease-in;border-top-right-radius:2px;border-top-left-radius:2px}.yasqe .notification.active{max-height:3rem}.yasqe .parseErrorIcon{width:13px;height:13px;margin-top:2px;margin-left:2px}.yasqe .parseErrorIcon svg g{fill:red}.yasqe .yasqe_tooltip{background:#333;background:rgba(0, 0, 0, 0.8);border-radius:5px;color:#fff;padding:5px 15px;width:220px;white-space:pre-wrap;white-space:normal;margin-top:5px}.yasqe .notificationLoader{width:18px;height:18px;vertical-align:middle}.yasqe .resizeWrapper{width:100%;height:10px;display:flex;align-items:center;justify-content:center;cursor:row-resize}.yasqe .resizeChip{width:20%;height:4px;background-color:#d1d1d1;visibility:hidden;border-radius:2px}.yasqe:hover .resizeChip{visibility:visible}.yasqe .yasqe_btn{color:#333;background-color:#fff;border:1px solid #ccc;display:inline-block;text-align:center;vertical-align:middle;cursor:pointer;white-space:nowrap;padding:6px 12px;border-radius:2px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:visible;box-sizing:border-box}.yasqe .yasqe_btn.btn_icon{padding:4px 8px}.yasqe .yasqe_btn.disabled,.yasqe .yasqe_btn[disabled]{cursor:default;opacity:0.5;filter:alpha(opacity=50);box-shadow:none}.yasqe .yasqe_btn:hover{outline:0;background-color:#ebebeb;border-color:#adadad}.yasqe .yasqe_btn.selected,.yasqe .yasqe_btn:focus{color:#fff;outline:0;background-color:#337ab7;border-color:#337ab7}.yasqe .yasqe_btn.btn_icon:focus{color:#333;background-color:#fff;border:1px solid #ccc}.yasqe .yasqe_btn.yasqe_btn-sm{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.yasqe .yasqe_buttons{position:absolute;top:10px;right:20px;z-index:5}.yasqe .yasqe_buttons svg{fill:#505050}.yasqe .yasqe_buttons .yasqe_share{cursor:pointer;margin-top:3px;display:inline-block;border:none;background:none}.yasqe .yasqe_buttons .yasqe_share svg{height:25px;width:25px}.yasqe .yasqe_buttons button{vertical-align:top;margin-left:5px}.yasqe .yasqe_buttons .yasqe_sharePopup{position:absolute;padding:4px;margin-left:0;background-color:#fff;border:1px solid #e3e3e3;border-radius:2px;box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.05);width:600px;height:auto;display:flex}.yasqe .yasqe_buttons .yasqe_sharePopup .inputWrapper{flex-grow:100}.yasqe .yasqe_buttons .yasqe_sharePopup input{float:left;width:100%;border:0;-ms-box-sizing:border-box;-khtml-box-sizing:border-box;box-sizing:border-box}.yasqe .yasqe_buttons .yasqe_sharePopup button{float:right;margin-left:5px}.yasqe .yasqe_buttons .yasqe_sharePopup textarea{width:100%}.yasqe .yasqe_buttons .yasqe_queryButton{display:inline-block;position:relative;border:none;background:none;padding:0;cursor:pointer;width:40px;height:40px}.yasqe .yasqe_buttons .yasqe_queryButton .queryIcon{display:block}.yasqe .yasqe_buttons .yasqe_queryButton .queryIcon svg{width:40px;height:40px}.yasqe .yasqe_buttons .yasqe_queryButton .svgImg{position:absolute;height:inherit;top:0}.yasqe .yasqe_buttons .yasqe_queryButton.busy svg #loadingIcon{stroke-dasharray:100;-webkit-animation:dash 1.5s linear infinite;animation:dash 1.5s linear infinite;stroke-width:8px;stroke:#fff}@-webkit-keyframes dash{to{stroke-dashoffset:200}}@keyframes dash{to{stroke-dashoffset:200}}@-webkit-keyframes rotate{to{transform:rotate(1turn)}}@keyframes rotate{to{transform:rotate(1turn)}}.yasqe .yasqe_buttons .yasqe_queryButton .warningIcon{display:none}.yasqe .yasqe_buttons .yasqe_queryButton.query_error .warningIcon{display:block;top:5px;right:0}.yasqe .yasqe_buttons .yasqe_queryButton.query_error .warningIcon svg{width:15px;height:15px}.yasqe .yasqe_buttons .yasqe_queryButton.query_error .warningIcon svg g{fill:red}.yasqe .yasqe_buttons .yasqe_queryButton.query_disabled{cursor:not-allowed}.yasqe .yasqe_buttons .yasqe_queryButton.query_disabled .queryIcon{opacity:0.5;filter:alpha(opacity=50)}@-webkit-keyframes spin{to{transform:rotate(1turn)}}.CodeMirror-hints{position:absolute;z-index:10;overflow:hidden;list-style:none;margin:0;padding:2px;box-shadow:2px 3px 5px rgba(0, 0, 0, 0.2);border-radius:3px;border:1px solid silver;background:#fff;font-size:90%;font-family:monospace;max-height:20em;overflow-y:auto}.CodeMirror-hint{margin:0;padding:0 4px;border-radius:2px;white-space:pre;color:#000;cursor:pointer}li.CodeMirror-hint-active{background:#08f;color:#fff}.CodeMirror{font-family:monospace;height:300px;color:#000;direction:ltr}.CodeMirror-lines{padding:4px 0}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{padding:0 4px}.CodeMirror-gutter-filler,.CodeMirror-scrollbar-filler{background-color:#fff}.CodeMirror-gutters{border-right:1px solid #ddd;background-color:#f7f7f7;white-space:nowrap}.CodeMirror-linenumber{padding:0 3px 0 5px;min-width:20px;text-align:right;color:#999;white-space:nowrap}.CodeMirror-guttermarker{color:#000}.CodeMirror-guttermarker-subtle{color:#999}.CodeMirror-cursor{border-left:1px solid #000;border-right:none;width:0}.CodeMirror div.CodeMirror-secondarycursor{border-left:1px solid silver}.cm-fat-cursor .CodeMirror-cursor{width:auto;border:0 !important;background:#7e7}.cm-fat-cursor div.CodeMirror-cursors{z-index:1}.cm-fat-cursor-mark{background-color:rgba(20, 255, 20, 0.5)}.cm-animate-fat-cursor,.cm-fat-cursor-mark{-webkit-animation:blink 1.06s steps(1) infinite;-moz-animation:blink 1.06s steps(1) infinite;animation:blink 1.06s steps(1) infinite}.cm-animate-fat-cursor{width:auto;border:0;background-color:#7e7}@-moz-keyframes blink{50%{background-color:transparent}}@-webkit-keyframes blink{50%{background-color:transparent}}@keyframes blink{50%{background-color:transparent}}.cm-tab{display:inline-block;text-decoration:inherit}.CodeMirror-rulers{position:absolute;left:0;right:0;top:-50px;bottom:0;overflow:hidden}.CodeMirror-ruler{border-left:1px solid #ccc;top:0;bottom:0;position:absolute}.cm-s-default .cm-header{color:#00f}.cm-s-default .cm-quote{color:#090}.cm-negative{color:#d44}.cm-positive{color:#292}.cm-header,.cm-strong{font-weight:700}.cm-em{font-style:italic}.cm-link{text-decoration:underline}.cm-strikethrough{text-decoration:line-through}.cm-s-default .cm-keyword{color:#708}.cm-s-default .cm-atom{color:#219}.cm-s-default .cm-number{color:#164}.cm-s-default .cm-def{color:#00f}.cm-s-default .cm-variable-2{color:#05a}.cm-s-default .cm-type,.cm-s-default .cm-variable-3{color:#085}.cm-s-default .cm-comment{color:#a50}.cm-s-default .cm-string{color:#a11}.cm-s-default .cm-string-2{color:#f50}.cm-s-default .cm-meta,.cm-s-default .cm-qualifier{color:#555}.cm-s-default .cm-builtin{color:#30a}.cm-s-default .cm-bracket{color:#997}.cm-s-default .cm-tag{color:#170}.cm-s-default .cm-attribute{color:#00c}.cm-s-default .cm-hr{color:#999}.cm-s-default .cm-link{color:#00c}.cm-invalidchar,.cm-s-default .cm-error{color:red}.CodeMirror-composing{border-bottom:2px solid}div.CodeMirror span.CodeMirror-matchingbracket{color:#0b0}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#a22}.CodeMirror-matchingtag{background:rgba(255, 150, 0, 0.3)}.CodeMirror-activeline-background{background:#e8f2ff}.CodeMirror{position:relative;overflow:hidden;background:#fff}.CodeMirror-scroll{overflow:scroll !important;margin-bottom:-50px;margin-right:-50px;padding-bottom:50px;height:100%;outline:none;position:relative}.CodeMirror-sizer{position:relative;border-right:50px solid transparent}.CodeMirror-gutter-filler,.CodeMirror-hscrollbar,.CodeMirror-scrollbar-filler,.CodeMirror-vscrollbar{position:absolute;z-index:6;display:none}.CodeMirror-vscrollbar{right:0;top:0;overflow-x:hidden;overflow-y:scroll}.CodeMirror-hscrollbar{bottom:0;left:0;overflow-y:hidden;overflow-x:scroll}.CodeMirror-scrollbar-filler{right:0;bottom:0}.CodeMirror-gutter-filler{left:0;bottom:0}.CodeMirror-gutters{position:absolute;left:0;top:0;min-height:100%;z-index:3}.CodeMirror-gutter{white-space:normal;height:100%;display:inline-block;vertical-align:top;margin-bottom:-50px}.CodeMirror-gutter-wrapper{position:absolute;z-index:4;background:none !important;border:none !important}.CodeMirror-gutter-background{position:absolute;top:0;bottom:0;z-index:4}.CodeMirror-gutter-elt{position:absolute;cursor:default;z-index:4}.CodeMirror-gutter-wrapper ::selection{background-color:transparent}.CodeMirror-gutter-wrapper ::-moz-selection{background-color:transparent}.CodeMirror-lines{cursor:text;min-height:1px}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;border-width:0;background:transparent;font-family:inherit;font-size:inherit;margin:0;white-space:pre;word-wrap:normal;line-height:inherit;color:inherit;z-index:2;position:relative;overflow:visible;-webkit-tap-highlight-color:transparent;-webkit-font-variant-ligatures:contextual;font-variant-ligatures:contextual}.CodeMirror-wrap pre.CodeMirror-line,.CodeMirror-wrap pre.CodeMirror-line-like{word-wrap:break-word;white-space:pre-wrap;word-break:normal}.CodeMirror-linebackground{position:absolute;left:0;right:0;top:0;bottom:0;z-index:0}.CodeMirror-linewidget{position:relative;z-index:2;padding:0.1px}.CodeMirror-rtl pre{direction:rtl}.CodeMirror-code{outline:none}.CodeMirror-gutter,.CodeMirror-gutters,.CodeMirror-linenumber,.CodeMirror-scroll,.CodeMirror-sizer{-moz-box-sizing:content-box;box-sizing:content-box}.CodeMirror-measure{position:absolute;width:100%;height:0;overflow:hidden;visibility:hidden}.CodeMirror-cursor{position:absolute;pointer-events:none}.CodeMirror-measure pre{position:static}div.CodeMirror-cursors{visibility:hidden;position:relative;z-index:3}.CodeMirror-focused div.CodeMirror-cursors,div.CodeMirror-dragcursors{visibility:visible}.CodeMirror-selected{background:#d9d9d9}.CodeMirror-focused .CodeMirror-selected{background:#d7d4f0}.CodeMirror-crosshair{cursor:crosshair}.CodeMirror-line::selection,.CodeMirror-line>span::selection,.CodeMirror-line>span>span::selection{background:#d7d4f0}.CodeMirror-line::-moz-selection,.CodeMirror-line>span::-moz-selection,.CodeMirror-line>span>span::-moz-selection{background:#d7d4f0}.cm-searching{background-color:#ffa;background-color:rgba(255, 255, 0, 0.4)}.cm-force-border{padding-right:0.1px}@media print{.CodeMirror div.CodeMirror-cursors{visibility:hidden}}.cm-tab-wrap-hack:after{content:\"\"}span.CodeMirror-selectedtext{background:none}.CodeMirror-foldmarker{color:#00f;text-shadow:#b9f 1px 1px 2px, #b9f -1px -1px 2px, #b9f 1px -1px 2px, #b9f -1px 1px 2px;font-family:arial;line-height:0.3;cursor:pointer}.CodeMirror-foldgutter{width:0.7em}.CodeMirror-foldgutter-folded,.CodeMirror-foldgutter-open{cursor:pointer}.CodeMirror-foldgutter-open:after{content:\"▾\"}.CodeMirror-foldgutter-folded:after{content:\"▸\"}.yasqe .CodeMirror{line-height:1.5em;font-size:14px;border:1px solid #d1d1d1}.yasqe span.cm-error{border-bottom:2px dotted red}.yasqe .gutterErrorBar{width:4px}.yasqe .CodeMirror-foldmarker{color:#6e2500;text-shadow:#ff935e 1px 1px 2px, #ff935e -1px -1px 2px, #ff935e 1px -1px 2px, #ff935e -1px 1px 2px;font-size:19px}.yasqe .cm-matchhighlight{background-color:#dbdeed}.CodeMirror-hints.default{max-width:1000px}.CodeMirror-hints.default li{text-overflow:ellipsis;overflow:hidden}@media only screen and (max-width: 1000px){.CodeMirror-hints.default{max-width:800px}}.yasr .booleanResult{display:flex;align-items:center;justify-content:center}.yasr .booleanResult svg{margin-bottom:-10px;margin-right:7px}.yasr .yasr_results{position:relative}.yasr .yasr_results .CodeMirror{border:1px solid #d1d1d1;margin-top:5px;height:100%}.yasr .yasr_results .CodeMirror.overflow:before{background:linear-gradient(transparent, rgba(255, 255, 255, 0.666667) 75%, #fff);content:\"\";width:100%;height:100%;z-index:1200;position:absolute;pointer-events:none}.yasr .yasr_results .overlay{width:100%;position:absolute;bottom:0;z-index:1201;display:flex;pointer-events:none}.yasr .yasr_results .overlay:after,.yasr .yasr_results .overlay:before{content:\"\";flex-grow:1}.yasr .yasr_results .overlay_content{display:flex;align-content:center;justify-content:center;align-items:center;background:#fff;pointer-events:all;background:linear-gradient(90deg, transparent, #fff 5%, #fff 95%, transparent)}.yasr .yasr_results .yasr_btn.overlay_btn{border:1px solid #337ab7;background:#fff;color:#337ab7;padding:10px;margin:10px}.yasr .yasr_results .yasr_btn.overlay_btn svg{margin-left:0.5rem;fill:#337ab7;color:#337ab7}.yasr .yasr_results .yasr_btn.overlay_btn:hover{color:#255681;border-color:#337ab7;fill:#255681}.yasr .yasr_results .yasr_btn.overlay_btn:hover svg{color:#255681;fill:#255681}.yasgui .tabMenu{background:#f5f5f5;z-index:7;transition:all 0.5s;transform:translate3d(-100%, 0, 0) rotateY(90deg);transform-origin:100% 50%;visibility:hidden;width:600px;border:1px solid #ccc;position:absolute;top:35px;left:0;perspective:1500px;perspective-origin:0 50%;transform-style:preserve-3d}.yasgui .tabMenu.open{visibility:visible;transform:translate3d(-100%, 0, 0) rotateY(0deg);transition:all 0.5s;left:600px}@media (-ms-high-contrast: active), (-ms-high-contrast: none){.yasgui .tabMenu.open{min-width:600px}}@media (-ms-high-contrast: active), (-ms-high-contrast: none){.yasgui .tabMenu{height:0}}.yasgui .tabMenu .requestConfigWrapper{padding:10px;overflow:hidden;display:flex;flex-wrap:nowrap;background:#f5f5f5}.yasgui .tabMenu .requestConfigWrapper .selectorButton{background-color:transparent;border:none;border-bottom:1px solid #d1d1d1;height:30px;color:#505050;cursor:pointer}.yasgui .tabMenu .requestConfigWrapper .selectorButton:hover{color:#000;border-color:#000}.yasgui .tabMenu .requestConfigWrapper .selectorButton.selected{color:#337ab7;border-bottom:2px solid #337ab7}.yasgui .tabMenu .requestConfigWrapper .selectorButton:focus{outline:none}.yasgui .tabMenu .requestConfigWrapper .selectorButton:focus-visible{color:#000;border-color:#000}.yasgui .tabMenu .acceptWrapper{flex-direction:row}.yasgui .tabMenu .acceptWrapper .acceptLabel{justify-self:center}.yasgui .tabMenu .acceptWrapper .selector{flex-direction:column;display:flex;padding:2.5px 5px;flex-grow:1;width:100%}.yasgui .tabMenu .acceptWrapper .selector .selectorLabel{align-self:center;font-weight:700;font-size:small}.yasgui .tabMenu .textSetting{display:flex;flex-direction:column}.yasgui .tabMenu .textSetting .label{align-self:flex-start}.yasgui .tabMenu .textSetting .graphInput{white-space:nowrap}.yasgui .tabMenu .textSetting .textRow{flex-direction:row;flex-wrap:nowrap;white-space:nowrap}.yasgui .tabMenu .textSetting .removeButton{border:none;background:transparent;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.yasgui .tabMenu .textSetting .removeButton:hover{background:transparent;border-color:#000;color:#000;cursor:pointer}.yasgui .tabMenu .label{-webkit-text-decoration:#000;text-decoration:#000;font-weight:700;white-space:nowrap;padding-right:5px;align-self:center}.yasgui .autocomplete{padding:3px 6px;margin:4px 0;border:2px solid #ccc;width:100%;box-sizing:border-box;transition:border-color 0.2s ease-in}.yasgui .autocomplete:hover{border-color:#bbb}.yasgui .autocomplete:focus{border-color:#337ab7;background:none;outline:none}.yasgui .autocompleteWrapper{width:100%;max-width:700px;margin-left:10px;position:relative}.yasgui .autocompleteList{position:absolute;max-height:300px;overflow-y:auto;z-index:6;margin:-4px 0 0;padding:0;list-style:none;background:#fff;border:1px solid #aaa;box-sizing:border-box;left:0;right:0}.yasgui .autocompleteList:hover .autoComplete_result.autoComplete_selected:not(:hover){background:unset}.yasgui .autocompleteList:hover .autoComplete_result.autoComplete_selected:not(:hover) .removeItem{visibility:hidden}.yasgui .autocompleteList .autoComplete_result{cursor:pointer;padding:5px 10px;margin:0;overflow:hidden;display:flex;transition:background visibility 0.2s ease-in}.yasgui .autocompleteList .autoComplete_result b{color:#1f49a3}.yasgui .autocompleteList .autoComplete_result .autoComplete_highlighted{font-weight:700}.yasgui .autocompleteList .autoComplete_result.autoComplete_selected{background:#ccc}.yasgui .autocompleteList .autoComplete_result.autoComplete_selected .removeItem{visibility:visible}.yasgui .autocompleteList .autoComplete_result:hover{background:#ccc}.yasgui .autocompleteList .autoComplete_result:hover .removeItem{visibility:visible}.yasgui .autocompleteList .noResults{padding:5px 10px;margin:0}.yasgui .autocompleteList .removeItem{color:#000;font-size:15px;text-shadow:0 1px 0 #fff;opacity:0.5;font-weight:700;text-align:end;margin-left:auto;visibility:hidden;background:none;border:none;cursor:pointer;margin-right:-10px;padding-right:20px}.yasgui .autocompleteList .removeItem:hover{opacity:0.8;color:#1f49a3}.yasgui .autocompleteList:empty{display:none}.yasgui .tabPanel{display:none;position:relative}.yasgui .tabPanel.active{display:block}.yasgui .yasr{margin-top:5px}.yasgui .tabContextButton{border:none;background:none;align-self:center;padding-left:10px;cursor:pointer;color:#505050;fill:#505050}.yasgui .tabContextButton .svgImg{width:15px;height:15px;font-family:initial}.yasgui .tabContextButton svg{max-width:15px;max-height:15px}.yasgui .tabContextButton:hover{color:#000;fill:#000}.yasgui .controlbar{display:flex;align-content:center;max-height:35px}.yasgui.context-menu{position:absolute;z-index:10;background:#fff;min-width:160px;font-size:14px;border:1px solid rgba(0, 0, 0, 0.15);border-bottom-right-radius:4px;border-bottom-left-radius:4px;box-shadow:0 6px 12px rgba(0, 0, 0, 0.175);background-clip:padding-box}.yasgui.context-menu hr{margin:8px auto;border:none;border-top:1px solid #aaa;border-bottom:1px solid #fff}.yasgui.context-menu .context-menu-list{padding:0}.yasgui.context-menu .context-menu-item{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.42857;color:#333;white-space:nowrap;cursor:pointer}.yasgui.context-menu .context-menu-item:hover{text-decoration:none;color:#000;background-color:#f5f5f5}.yasgui.context-menu .context-menu-item.disabled{text-decoration:none;color:grey;background-color:#e5e5e5;cursor:not-allowed}.yasgui .tabsList{display:flex;flex-wrap:wrap}.yasgui .tabsList .sortable-placeholder{min-width:100px;min-height:35px;border:2px dotted #888}.yasgui .tabsList a{cursor:pointer;display:flex;align-items:center;justify-content:center;min-height:35px;border-bottom:2px solid transparent;box-sizing:border-box}.yasgui .tabsList .addTab{cursor:pointer;height:100%;font-size:120%;font-weight:800;margin-left:15px;padding:0 5px 2px;background:inherit;border:none;color:#337ab7}.yasgui .tabsList .addTab:focus-visible,.yasgui .tabsList .addTab:hover{transform:scale(1.1)}.yasgui .tabsList .addTab:focus{color:#faa857}.yasgui .tabsList .tab{position:relative}.yasgui .tabsList .tab.query-invalid a{-webkit-text-decoration:underline dotted red;text-decoration:underline dotted red}.yasgui .tabsList .tab .loader{display:none;background-color:#d5d5d5;height:2px;position:absolute;bottom:0;left:0;right:100%;-webkit-animation-name:slide;animation-name:slide;-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-timing-function:ease;animation-timing-function:ease;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}@-webkit-keyframes slide{0%{left:0;right:100%}70%{left:0;right:0}to{left:100%;right:0}}@keyframes slide{0%{left:0;right:100%}70%{left:0;right:0}to{left:100%;right:0}}.yasgui .tabsList .tab.active .loader{background-color:#9fc4e4}.yasgui .tabsList .tab:hover .loader{background-color:#337ab7}.yasgui .tabsList .tab.querying .loader{display:block}.yasgui .tabsList .tab.active a{border-bottom-color:#337ab7;color:#555}.yasgui .tabsList .tab input{display:none;outline:none;border:none}.yasgui .tabsList .tab.renaming .closeTab,.yasgui .tabsList .tab.renaming span{display:none}.yasgui .tabsList .tab.renaming input{display:block}.yasgui .tabsList .tab a{font-weight:600;color:#888;font-size:15px;line-height:1.5rem;font-weight:500;min-width:120px;padding:0 24px 0 30px;white-space:nowrap;overflow:hidden}.yasgui .tabsList .tab a:hover{border-bottom-color:#9fc4e4;color:#555}.yasgui .tabsList .tab a:focus{border-bottom-color:#faa857;color:#555}.yasgui .tabsList .tab a .closeTab{color:#000;margin-left:7px;font-size:15px;text-shadow:0 1px 0 #fff;opacity:0.2;font-weight:700;padding:2px}.yasgui .tabsList .tab a .closeTab:hover{opacity:0.5}.yasgui a{color:#337ab7;text-decoration:none}.yasgui .yasgui_textfield{display:block;padding-top:18.75px;position:relative}.yasgui .yasgui_textfield>label{position:absolute;top:0;display:block;width:100%;color:rgba(0, 0, 0, 0.54);font-size:12px;font-weight:400;line-height:15px;overflow-x:hidden;text-overflow:ellipsis;white-space:nowrap}.yasgui .yasgui_textfield>input,.yasgui .yasgui_textfield>textarea{box-sizing:border-box;display:block;color:rgba(0, 0, 0, 0.87);border:none;border-bottom:1px solid rgba(0, 0, 0, 0.26);outline:none;width:100%;padding:0;box-shadow:none;border-radius:0;font-size:15px;font-family:inherit;line-height:inherit;background-image:none}.yasgui .yasgui_textfield>input:focus,.yasgui .yasgui_textfield>textarea:focus{border-color:#337ab7;border-width:2px}.yasgui .yasgui_textfield>input:focus~label,.yasgui .yasgui_textfield>textarea:focus~label{color:#337ab7}.modal-dialog.google-visualization-charteditor-dialog{z-index:11;width:auto;margin:inherit}.modal-dialog.google-visualization-charteditor-dialog .charts-flat-menu-button{box-sizing:content-box}@font-face{font-family:\"icomoon\";src:url(\"../css/fonts/icons.eot?z4jeba\");src:url(\"../css/fonts/icons.eot?z4jeba#iefix\") format(\"embedded-opentype\"), url(\"../css/fonts/icons.ttf?z4jeba\") format(\"truetype\"), url(\"../css/fonts/icons.woff?z4jeba\") format(\"woff\"), url(\"../css/fonts/icons.svg?z4jeba#icons\") format(\"svg\");font-weight:normal;font-style:normal}.red{color:#e84e0f}.hidden{display:none !important}.scroll-hidden{overflow:hidden}.yasgui-toolbar{display:flex;flex-direction:row;justify-content:flex-end;gap:3px;font-size:14px;font-weight:400}.yasgui-toolbar button{cursor:pointer;color:#003663;transition:all 0.15s ease-out}.yasgui-toolbar .yasgui-btn{height:27px;margin-right:3px;border:none;outline:none;background-color:#ebebeb}.yasgui-toolbar .yasgui-btn:hover{background-color:#d4d4d4;border-color:#d4d4d4}.yasgui-toolbar .btn-selected{background-color:#e84e0f;color:#fff}.yasgui-toolbar .btn-selected:hover{background-color:#e84e0f;border-color:#e84e0f}.yasgui-toolbar .btn-orientation{border:none;outline:none;color:#e84e0f;background-color:#fff;font-size:2em}.yasgui-toolbar .btn-orientation:hover{transform:scale(1.2)}[class^=icon-],[class*=\" icon-\"],.icon-any{font-family:\"icomoon\", sans-serif !important;speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;vertical-align:middle;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-lg{font-size:1.2em}.icon-arrow-up-off:before{content:\"\\e948\"}.icon-collapse:before{content:\"\\e949\"}.icon-eye-off:before{content:\"\\e94a\"}.icon-expand:before{content:\"\\e94c\"}.icon-focus:before{content:\"\\e94d\"}.icon-rotate-left:before{content:\"\\e94e\"}.icon-rotate-right:before{content:\"\\e94f\"}.icon-info-alt:before{content:\"\\e950\"}.icon-facebook:before{content:\"\\e942\"}.icon-google-plus:before{content:\"\\e943\"}.icon-google:before{content:\"\\e944\"}.icon-linkedin:before{content:\"\\e945\"}.icon-twitter:before{content:\"\\e946\"}.icon-youtube:before{content:\"\\e947\"}.icon-play:before{content:\"\\e941\"}.icon-email:before{content:\"\\e93e\"}.icon-same-as-on:before{content:\"\\e93f\"}.icon-same-as-off:before{content:\"\\e940\"}.icon-repo-contour1:before{content:\"\\e906\"}.icon-repo-contour2:before{content:\"\\e90b\"}.icon-repo-contour3:before{content:\"\\e910\"}.icon-repo-master-ro-mute:before{content:\"\\e913\"}.icon-repo-free:before{content:\"\\e936\"}.icon-repo-master-mute:before{content:\"\\e937\"}.icon-repo-master-ro:before{content:\"\\e938\"}.icon-repo-master:before{content:\"\\e939\"}.icon-repo-se:before{content:\"\\e93a\"}.icon-repo-system:before{content:\"\\e93b\"}.icon-repo-worker:before{content:\"\\e93c\"}.icon-repo:before{content:\"\\e93d\"}.icon-copy:before{content:\"\\e934\"}.icon-eye:before{content:\"\\e935\"}.icon-connection-off:before{content:\"\\e931\"}.icon-connection-on:before{content:\"\\e932\"}.icon-key:before{content:\"\\e933\"}.icon-comment:before{content:\"\\e930\"}.icon-arrow-down:before{content:\"\\e900\"}.icon-arrow-left:before{content:\"\\e901\"}.icon-arrow-right:before{content:\"\\e902\"}.icon-arrow-up:before{content:\"\\e903\"}.icon-exchange:before{content:\"\\e904\"}.icon-columns:before{content:\"\\e905\"}.icon-inferred-off:before{content:\"\\e907\"}.icon-inferred-on:before{content:\"\\e908\"}.icon-save:before{content:\"\\e909\"}.icon-tag:before{content:\"\\e90a\"}.icon-file:before{content:\"\\e90c\"}.icon-folder:before{content:\"\\e90d\"}.icon-heartbeat:before{content:\"\\e90e\"}.icon-pin:before{content:\"\\e90f\"}.icon-zoom-in:before{content:\"\\e911\"}.icon-zoom-out:before{content:\"\\e912\"}.icon-check:before{content:\"\\e914\"}.icon-download:before{content:\"\\e915\"}.icon-external:before{content:\"\\e916\"}.icon-lock:before{content:\"\\e917\"}.icon-search:before{content:\"\\e918\"}.icon-upload:before{content:\"\\e919\"}.icon-caret-left:before{content:\"\\e91a\"}.icon-caret-right:before{content:\"\\e91b\"}.icon-caret-up:before{content:\"\\e91c\"}.icon-caret-up-after:after{content:\"\\e91c\"}.icon-minus:before{content:\"\\e91d\"}.icon-reload:before{content:\"\\e91e\"}.icon-trash:before{content:\"\\e91f\"}.icon-warning:before{content:\"\\e920\"}.icon-caret-down:before{content:\"\\e921\"}.icon-caret-down-after:after{content:\"\\e921\"}.icon-close:before{content:\"\\e922\"}.icon-edit:before{content:\"\\e923\"}.icon-info:before{content:\"\\e924\"}.icon-link:before{content:\"\\e925\"}.icon-more:before{content:\"\\e926\"}.icon-plus:before{content:\"\\e927\"}.icon-data:before{content:\"\\e928\"}.icon-help:before{content:\"\\e929\"}.icon-monitoring:before{content:\"\\e92a\"}.icon-settings:before{content:\"\\e92b\"}.icon-sparql:before{content:\"\\e92c\"}.icon-user-alt:before{content:\"\\e92d\"}.icon-export-alt:before{content:\"\\e92e\"}.icon-import:before{content:\"\\e92f\"}.icon-tick:before{content:\"\\e956\"}.icon-repo-ontop-alt:before{content:\"\\e958\"}.icon-repo-fedx-alt:before{content:\"\\e959\"}.icon-repo-graphdb-alt:before{content:\"\\e95a\"}.icon-export:before{content:\"\\e95b\"}.icon-readonly:before{content:\"\\e95c\"}.icon-repo-fedx:before{content:\"\\e95d\"}.icon-repo-graphdb:before{content:\"\\e95e\"}.icon-repo-ontop:before{content:\"\\e95f\"}.icon-repo-unknown:before{content:\"\\e960\"}.icon-translation:before{content:\"\\e961\"}.icon-user:before{content:\"\\e962\"}.icon-follower:before{content:\"\\e962\"}.alert{border-radius:0;border:1px solid transparent;position:relative;padding:1em}.alert-warning,.alert-info,.alert-help,.alert-danger,.alert-success{color:#000000A8}.alert-warning{background-color:#f9e6c0}.alert-info{background-color:#cfefec}.alert-help{background-color:#e7f7f5}.alert-success{background-color:#dff0d8}.alert-danger{background-color:#fbdbd5}.alert-info,.alert-warning,.alert-help,.alert-danger,.alert-success{padding-left:3em}.alert-info:before,.alert-warning:before,.alert-help:before,.alert-danger:before,.alert-success:before{font-family:\"icomoon\", sans-serif !important;font-size:1.6em;vertical-align:middle;line-height:1;position:absolute;left:0.6em;top:0.6em;color:#00000080}.alert-info:before{content:\"\\e924\"}.alert-warning:before{content:\"\\e930\"}.alert-help:before{content:\"\\e929\"}.alert-danger:before{content:\"\\e920\"}.alert-success:before{content:\"\\e914\"}.no-icon{padding-left:1em}.no-icon:before{display:none}.alert .alert{background-color:transparent}.icon-rotate-quarter:before{display:inline-block;-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.tippy-box[data-animation=fade][data-state=hidden]{opacity:0}[data-tippy-root]{max-width:calc(100vw - 10px)}.tippy-box{position:relative;background-color:#333;color:#fff;border-radius:4px;font-size:14px;line-height:1.4;white-space:normal;outline:0;transition-property:transform, visibility, opacity}.tippy-box[data-placement^=top]>.tippy-arrow{bottom:0}.tippy-box[data-placement^=top]>.tippy-arrow:before{bottom:-7px;left:0;border-width:8px 8px 0;border-top-color:initial;transform-origin:center top}.tippy-box[data-placement^=bottom]>.tippy-arrow{top:0}.tippy-box[data-placement^=bottom]>.tippy-arrow:before{top:-7px;left:0;border-width:0 8px 8px;border-bottom-color:initial;transform-origin:center bottom}.tippy-box[data-placement^=left]>.tippy-arrow{right:0}.tippy-box[data-placement^=left]>.tippy-arrow:before{border-width:8px 0 8px 8px;border-left-color:initial;right:-7px;transform-origin:center left}.tippy-box[data-placement^=right]>.tippy-arrow{left:0}.tippy-box[data-placement^=right]>.tippy-arrow:before{left:-7px;border-width:8px 8px 8px 0;border-right-color:initial;transform-origin:center right}.tippy-box[data-inertia][data-state=visible]{transition-timing-function:cubic-bezier(0.54, 1.5, 0.38, 1.11)}.tippy-arrow{width:16px;height:16px;color:#333}.tippy-arrow:before{content:\"\";position:absolute;border-color:transparent;border-style:solid}.tippy-content{position:relative;padding:5px 9px;z-index:1}:host{display:block}.CodeMirror-hints{position:absolute;z-index:10;overflow:hidden;list-style:none;margin:0;padding:2px;box-shadow:2px 3px 5px rgba(0, 0, 0, 0.2);border:1px solid silver;background:white;max-height:20em;overflow-y:auto}.CodeMirror-hint{margin-bottom:0;padding:5px 25px;white-space:pre;color:black;cursor:pointer}.CodeMirror-hint b{color:#ED4F2F;font-weight:bold}.CodeMirror-hint-active{background:#3385ff;color:white}.CodeMirror-hint-active b{color:#FFAD33}.CodeMirror-hint{max-width:100em}.yasgui-host-element{display:flex;flex-direction:column;gap:10px}.yasgui-host-element .yasgui .yasqe-fullscreen .CodeMirror{position:fixed;top:0;left:0;right:0;bottom:0;height:auto !important;z-index:1015}.yasgui-host-element .yasgui .yasqe .yasqe_buttons{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;height:100%}.yasgui-host-element .yasgui .yasqe .yasqe_buttons .yasqe_share{display:none}.yasgui-host-element .yasgui .yasqe .yasqe_buttons .yasqe_queryButton{width:unset;height:unset;padding:8px 16px;margin-top:1rem;color:#fff;background-color:#e84e0f;outline:none;font-size:1rem}.yasgui-host-element .yasgui .yasqe .yasqe_buttons .yasqe_queryButton:hover{background-color:#d0460d}.yasgui-host-element .yasgui .yasqe .yasqe_buttons .custom-button{border:none;background-color:#fff;color:#e84e0f;outline:none;font-size:2.5em;cursor:pointer;transition:all 0.15s ease-out}.yasgui-host-element .yasgui .yasqe .yasqe_buttons .custom-button:hover{color:#d0460d;transform:scale(1.2)}.yasgui-host-element .yasgui .yasqe .yasqe_buttons .custom-button:disabled:hover,.yasgui-host-element .yasgui .yasqe .yasqe_buttons .custom-button:disabled:focus{color:#818a91;text-decoration:none;cursor:not-allowed;opacity:0.65}.yasgui-host-element .yasgui .yasqe .yasqe_expandResultsButton.disabled{cursor:not-allowed;opacity:0.65}.yasgui-host-element .yasgui .yasqe-footer-buttons{display:flex;justify-content:end;padding-top:10px;padding-bottom:10px}.yasgui-host-element .yasgui .yasqe-footer-buttons .abort-button{padding:8px 16px;color:#FFFFFF;background-color:#e84e0f;outline:none;border:none}.yasgui-host-element .yasgui .yasqe-footer-buttons .abort-button.disabled{opacity:0.65;cursor:not-allowed}.yasgui-host-element .yasgui .yasqe-footer-buttons .abort-button:hover:not(.disabled){cursor:pointer}.yasgui-host-element .yasr .yasr_btnGroup li{display:flex;align-items:end}.yasgui-host-element .yasr table.dataTable thead th{background-color:#02a99a1a;text-align:center}.yasgui-host-element .yasr .dataTable td,.yasgui-host-element .yasr .dataTable thead tr th{border:1px solid #eceeef}.yasgui-host-element .yasr table.dataTable thead th:hover{background-color:#02a99a1a}.yasgui-host-element .yasr .dataTable tr.odd{background-color:#f9f9f9}.yasgui-host-element .yasr .dataTable tr.even{background-color:white}.yasgui-host-element .yasr .yasr_header>*{margin-left:0}.yasgui-host-element .yasr .yasr_header{background-color:#cfefec;margin-bottom:1rem}.yasgui-host-element .yasr .yasr_header .yasr_btnGroup{width:100%;background-color:white;padding-bottom:1rem}.yasgui-host-element .yasr .yasr_header .yasr_btnGroup .spacer{width:100%}.yasgui-host-element .yasr .yasr_header .yasr_btnGroup li{white-space:nowrap}.yasgui-host-element .yasr .yasr_header .yasr_external_ref_btn,.yasgui-host-element .yasr .yasr_header .yasr_downloadIcon{display:none}.yasgui-host-element .yasr .yasr_header .yasr_response_chip{min-height:50px;background-color:#cfefec}.yasgui-host-element .yasr .yasr_header .pageSizeWrapper,.yasgui-host-element .yasr .yasr_header .switch{color:#000000A8}.yasgui-host-element .yasr .yasr_header .tableControls .tableFilter,.yasgui-host-element .yasr .yasr_header .tableControls .tableSizer{border-color:#00000026;background-color:#ffffff}.yasgui-host-element .yasr .yasr_header .tableControls .tableFilter:focus,.yasgui-host-element .yasr .yasr_header .tableControls .tableSizer:focus{border-color:#00366380 !important;outline:none !important}.yasgui-host-element .yasr .dataTables_empty{color:#999;background-color:#f9f9f9}.yasgui-host-element .yasr .yasr_results{}.yasgui-host-element .yasr .yasr_results .resource-copy-link{display:none}.yasgui-host-element .yasr .yasr_results .uri-cell{word-break:break-word !important;overflow-wrap:break-word}.yasgui-host-element .yasr .yasr_results .literal-cell{overflow-wrap:break-word;-webkit-hyphens:auto;-moz-hyphens:auto;hyphens:auto}.yasgui-host-element .yasr .yasr_results .dataTable tbody td div.uri-cell:hover .resource-copy-link,.yasgui-host-element .yasr .yasr_results .dataTable tbody td div.triple-cell ul.triple-list li:hover .resource-copy-link,.yasgui-host-element .yasr .yasr_results .dataTable td div.triple-cell div.triple-close:hover .resource-copy-link{display:inline;padding-left:10px;padding-right:10px}.yasgui-host-element .yasr .yasr_results .dataTable tbody td div.triple-cell ul.triple-list li{list-style-type:none}.yasgui-host-element .yasr .yasr_results .dataTable td div.triple-cell .triple-link{color:#770088;text-decoration:none}.yasgui-host-element .yasr .yasr_results .uri-link:hover{text-decoration:none}.yasgui-host-element .yasr .yasr_results .nonUri{color:#003663;border:none;background-color:transparent;padding:0;margin:0}.yasgui-host-element .yasr .yasr_results .dataTable td div.triple-cell .triple-close:hover .resource-copy-link{display:inline;padding-left:10px;padding-right:10px}.yasgui-host-element .yasr .yasr_results .error-response-plugin{padding:10px;background-color:#fbdbd5}.yasgui-host-element .yasr .yasr_results .error-response-plugin .error-response-plugin-header{display:flex;justify-content:space-between}.yasgui-host-element .yasr .yasr_results .error-response-plugin .error-response-plugin-header .error-response-plugin-error-status{font-weight:400;margin-bottom:0.5em}.yasgui-host-element .yasr .yasr_results .error-response-plugin .show-full-message-link,.yasgui-host-element .yasr .yasr_results .error-response-plugin .show-less-message-link{display:block;font-weight:400;text-align:right;text-decoration:none}.yasgui-host-element .yasr .yasr_results .error-response-plugin .show-full-message-link::after,.yasgui-host-element .yasr .yasr_results .error-response-plugin .show-less-message-link::after{font-family:\"icomoon\", sans-serif !important;content:\"\\e921\";display:inline-block;width:auto;height:auto;border:none;margin-left:0;font-size:1.2em;-moz-transition:all 0.2s ease-in;-o-transition:all 0.2s ease-in;-webkit-transition:all 0.2s ease-in;transition:all 0.2s ease-in}.yasgui-host-element .yasr .yasr_results .error-response-plugin .show-full-message-link::after{transform:rotate(180deg)}.yasgui-host-element .yasr .yasr_results .error-response-plugin .error-response-plugin-body{white-space:pre-wrap}.yasgui-host-element .yasr .pageSizeWrapper,.yasgui-host-element .yasr .dataTables_info,.yasgui-host-element .yasr .dataTables_paginate{display:none}.yasgui-host-element .yasr .extended-boolean-plugin{width:70%;margin:5px auto;vertical-align:middle}.yasgui-host-element .yasr .extended-boolean-plugin .response{font-size:3rem;text-align:center;padding:1em}.yasgui-host-element .yasr .extended-boolean-plugin .response-success{background-color:#dff0d8}.yasgui-host-element .yasr .extended-boolean-plugin .response-error{background-color:#fbdbd5}.yasgui-host-element .yasr .dataTables_wrapper .dataTable thead th{background-position:calc(100% - 5px) center}.yasgui-host-element .yasr .dataTables_wrapper .dataTable thead .sorting{background-size:0.9em;background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M41 288h238c21.4 0 32.1 25.9 17 41L177 448c-9.4 9.4-24.6 9.4-33.9 0L24 329c-15.1-15.1-4.4-41 17-41zm255-105L177 64c-9.4-9.4-24.6-9.4-33.9 0L24 183c-15.1 15.1-4.4 41 17 41h238c21.4 0 32.1-25.9 17-41z'/%3E%3C/svg%3E\")}.yasgui-host-element .yasr .dataTables_wrapper .dataTable thead .sorting_asc{background-size:1em;background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M176 352h-48V48a16 16 0 0 0-16-16H80a16 16 0 0 0-16 16v304H16c-14.19 0-21.36 17.24-11.29 27.31l80 96a16 16 0 0 0 22.62 0l80-96C197.35 369.26 190.22 352 176 352zm240-64H288a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h56l-61.26 70.45A32 32 0 0 0 272 446.37V464a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-56l61.26-70.45A32 32 0 0 0 432 321.63V304a16 16 0 0 0-16-16zm31.06-85.38l-59.27-160A16 16 0 0 0 372.72 32h-41.44a16 16 0 0 0-15.07 10.62l-59.27 160A16 16 0 0 0 272 224h24.83a16 16 0 0 0 15.23-11.08l4.42-12.92h71l4.41 12.92A16 16 0 0 0 407.16 224H432a16 16 0 0 0 15.06-21.38zM335.61 144L352 96l16.39 48z'/%3E%3C/svg%3E\")}.yasgui-host-element .yasr .dataTables_wrapper .dataTable thead .sorting_desc{background-size:1em;background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M176 352h-48V48a16 16 0 0 0-16-16H80a16 16 0 0 0-16 16v304H16c-14.19 0-21.36 17.24-11.29 27.31l80 96a16 16 0 0 0 22.62 0l80-96C197.35 369.26 190.22 352 176 352zm112-128h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-56l61.26-70.45A32 32 0 0 0 432 65.63V48a16 16 0 0 0-16-16H288a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h56l-61.26 70.45A32 32 0 0 0 272 190.37V208a16 16 0 0 0 16 16zm159.06 234.62l-59.27-160A16 16 0 0 0 372.72 288h-41.44a16 16 0 0 0-15.07 10.62l-59.27 160A16 16 0 0 0 272 480h24.83a16 16 0 0 0 15.23-11.08l4.42-12.92h71l4.41 12.92A16 16 0 0 0 407.16 480H432a16 16 0 0 0 15.06-21.38zM335.61 400L352 352l16.39 48z'/%3E%3C/svg%3E\")}.yasgui-host-element .hidden-control-bar .yasgui .autocompleteWrapper{display:none !important}.yasgui-host-element .hidden-control-bar .yasgui .tabContextButton{display:none}.yasgui-host-element.hidden-editor-tabs .tabsList{display:none}.yasgui-host-element.hidden-result-tabs .yasr_header{display:none}.yasgui-host-element.mode-yasqe .yasgui .yasr{display:none}.yasgui-host-element.mode-yasr .yasgui .tabsList{display:none}.yasgui-host-element.mode-yasr .yasgui .yasqe{display:none}.yasgui-host-element.orientation-horizontal .yasgui{display:grid}.yasgui-host-element.orientation-horizontal .yasgui .tabPanel>div{display:grid;grid-template-columns:0 1fr 1fr;position:relative}.yasgui-host-element.orientation-horizontal .yasgui .tabPanel>div>div:nth-of-type(2){padding-right:15px}.yasgui-host-element button,.yasgui-host-element button:focus{outline:none}.yasgui-host-element #explainPlanQuery{white-space:pre-wrap}";
|
|
3467
|
+
const ontotextYasguiWebComponentCss = "@charset \"UTF-8\";.yasr .yasr_btn{border:none;background:inherit}.yasr .svgImg{display:flex;flex-direction:row}.yasr .svgImg svg{max-width:100%;max-height:100%;width:15px;height:15px;align-self:center}.yasr .yasr_btn.yasr_external_ref_btn{font-weight:600;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.yasr .yasr_btn.yasr_external_ref_btn:active,.yasr .yasr_btn.yasr_external_ref_btn:focus{color:inherit;-webkit-text-decoration-color:inherit;text-decoration-color:inherit}.yasr .yasr_btn.yasr_external_ref_btn .svgImg svg{width:18px;height:18px}.yasr a{color:#428bca;text-decoration:none}.yasr a:active,.yasr a:hover{outline:0;color:#2a6496;text-decoration:underline}.yasr .yasr_btnGroup{margin:0;padding:0;list-style:none;display:flex;overflow-x:auto;overflow-y:hidden}.yasr .yasr_btnGroup .plugin_icon{height:15px;width:15px;margin-right:5px;text-align:center}.yasr .yasr_btnGroup .yasr_btn{border-bottom:2px solid transparent;padding-left:6px;padding-right:6px;margin-left:6px;margin-right:6px}.yasr .yasr_btnGroup .yasr_btn.selected{border-bottom:2px solid #337ab7}@media (max-width: 768px){.yasr .yasr_btn span{display:none}.yasr .yasr_btn .plugin_icon{margin-right:0}}.yasr .yasr_header{display:flex;flex-wrap:wrap}.yasr .yasr_fallback_info:not(:empty){margin-top:5px;border:1px solid #d1d1d1;padding:0.5rem;background:#f7f7f7}.yasr .yasr_fallback_info:not(:empty) p{margin:0}.yasr .yasr_help_variable{background:#dff0ff;color:#428bca}.yasr .yasr_response_chip{color:#505050;background:#f5f5f5;border-radius:6px;display:flex;font-size:11pt;max-height:16pt;align-self:center;align-items:center;justify-content:center;white-space:nowrap;padding:6px;margin-left:5px;overflow:visible;box-sizing:border-box}.yasr .yasr_response_chip.empty{display:none}.yasr .yasr_plugin_control{min-height:50px;display:flex;margin-left:auto;align-items:center}.yasr .yasr_plugin_control:empty{display:none}.yasr .yasr_btn{color:#505050;fill:#505050;display:flex;align-items:center;justify-content:center;cursor:pointer;white-space:nowrap;padding:6px 12px;overflow:visible;box-sizing:border-box}.yasr .yasr_btn.btn_icon{padding:4px 8px}.yasr .yasr_btn.disabled,.yasr .yasr_btn[disabled]{cursor:default;opacity:0.5;box-shadow:none}.yasr .yasr_btn:not(.disabled):hover{fill:#000;color:#000}.yasr .yasr_btn.selected,.yasr .yasr_btn:focus{color:#337ab7;fill:#337ab7}.yasr .space_element{flex-grow:1;min-width:10px}.yasr .yasr-toolbar{display:flex}.yasr .yasr-toolbar .yasr-toolbar-element{padding-left:10px;padding-right:10px}.yasr .errorResult{padding:10px}.yasr .errorResult .errorHeader{overflow:hidden}.yasr .errorResult .errorHeader .yasr_tryQuery{float:right;text-decoration:none;padding-top:3px;padding-bottom:3px}.yasr .errorResult .errorHeader span.status{display:inline-block;padding:0.35em 0.5rem;font-size:75%;font-weight:600;line-height:1.35;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:0.25em;color:#fff;background-color:#dc3545}.yasr .errorResult .errorMessageContainer{display:flex}.yasr .errorResult .errorMessageContainer .errorMessage{flex-grow:1;width:0;min-width:100px;overflow:auto;display:block;padding:10px;margin:10px 0;font-size:13px;line-height:1.42857;word-break:break-all;word-wrap:break-word;color:#333;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}.yasr .errorResult .redOutline{color:#a94442;background-color:#f2dede;margin-top:10px;padding:5px 1em;border:1px solid #ebccd1;border-radius:4px}.yasr .tableControls{display:flex;align-items:center;padding:0 5px 0 0;flex-wrap:wrap}.yasr .tableControls .tableFilter{margin-right:10px;height:100%}.yasr .tableControls .tableSizer{height:100%}.yasr .tableControls .switch{display:flex;align-items:center;margin-right:10px}.yasr .dataTable.ellipseTable{white-space:nowrap}.yasr .dataTable.ellipseTable div:not(.expanded){overflow:hidden;text-overflow:ellipsis}.yasr .dataTable:not(.ellipseTable) div:not(.expanded),.yasr .expanded{word-break:break-all}.yasr .expanded{white-space:normal}.yasr .expandable:not(.expanded){cursor:pointer}.yasr .expandable:not(.expanded) a{pointer-events:none}.yasr .dataTables_wrapper{font-size:0.9em;min-width:100%}.yasr .dataTables_wrapper .grip-container{max-width:100%}.yasr .dataTables_wrapper .grip-padding>tbody>tr>td,.yasr .dataTables_wrapper .grip-padding>tbody>tr>th{padding-left:7px !important;padding-right:5px !important}.yasr .dataTables_wrapper .dataTable{min-width:100%;box-sizing:border-box}.yasr .dataTables_wrapper .dataTable.no-footer{border-bottom:none}.yasr .dataTables_wrapper .dataTable thead .sorting{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAQAAADYWf5HAAAAkElEQVQoz7XQMQ5AQBCF4dWQSJxC5wwax1Cq1e7BAdxD5SL+Tq/QCM1oNiJidwox0355mXnG/DrEtIQ6azioNZQxI0ykPhTQIwhCR+BmBYtlK7kLJYwWCcJA9M4qdrZrd8pPjZWPtOqdRQy320YSV17OatFC4euts6z39GYMKRPCTKY9UnPQ6P+GtMRfGtPnBCiqhAeJPmkqAAAAAElFTkSuQmCC\")}.yasr .dataTables_wrapper .dataTable thead .sorting_asc{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAYAAAByUDbMAAAAZ0lEQVQ4y2NgGLKgquEuFxBPAGI2ahhWCsS/gDibUoO0gPgxEP8H4ttArEyuQYxAPBdqEAxPBImTY5gjEL9DM+wTENuQahAvEO9DMwiGdwAxOymGJQLxTyD+jgWDxCMZRsEoGAVoAADeemwtPcZI2wAAAABJRU5ErkJggg==\")}.yasr .dataTables_wrapper .dataTable thead .sorting_desc{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAYAAAByUDbMAAAAZUlEQVQ4y2NgGAWjYBSggaqGu5FA/BOIv2PBIPFEUgxjB+IdQPwfC94HxLykus4GiD+hGfQOiB3J8SojEE9EM2wuSJzcsFMG4ttQgx4DsRalkZENxL+AuJQaMcsGxBOAmGvopk8AVz1sLZgg0bsAAAAASUVORK5CYII=\")}.yasr .dataTables_wrapper .dataTable thead .sorting_asc_disabled{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAQAAADYWf5HAAAAW0lEQVQoz2NgoCm4w3Vnwh02wspK7/y6k01Ikdadx3f+37l9RxmfIsY7c4GKQHDiHUbcyhzvvIMq+3THBpci3jv7oIpAcMcdduzKEu/8vPMdDn/eiWQYBYMKAAC3ykIEuYQJUgAAAABJRU5ErkJggg==\")}.yasr .dataTables_wrapper .dataTable thead .sorting_desc_disabled{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAATCAQAAADYWf5HAAAAWUlEQVQoz2NgGAWDCtyJvPPzznc4/HknEbsy9js77vyHw313eHGZZ3PnE1TRuzuOuK1lvDMRqmzuHUZ87lO+cxuo6PEdLUIeyb7z604pYf+y3Zlwh4u2YQoAc7ZCBHH4jigAAAAASUVORK5CYII=\")}.yasr .dataTables_wrapper .dataTable tbody tr:hover{background-color:#f9f9f9}.yasr .dataTables_wrapper .dataTable thead tr th{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-weight:700;text-align:start;overflow:hidden;text-overflow:ellipsis;border:none;padding:5px 5px 5px 7px;min-width:28px}.yasr .dataTables_wrapper .dataTable thead tr th.sorting{min-width:10px;padding-right:18px}.yasr .dataTables_wrapper .dataTable thead tr th:hover{background-color:#f9f9f9}.yasr .dataTables_wrapper .dataTable td{padding:5px}.yasr .dataTables_wrapper .dataTable td>div{-webkit-hyphens:auto;-ms-hyphens:auto;hyphens:auto}.yasr .dataTables_wrapper .dataTable td>div.rowNumber{word-break:keep-all;overflow:visible}.yasr .dataTables_wrapper .dataTable td .tableEllipse{cursor:pointer;font-weight:700;padding:0 2px;background-color:rgba(66, 139, 202, 0.2);border-radius:2px;margin:0 3px}.yasr .dataTables_wrapper div.dataTables_paginate.paging_simple_numbers a.paginate_button{border:none;background:transparent}.yasr .dataTables_wrapper div.dataTables_paginate.paging_simple_numbers a.paginate_button .disabled{color:#505050}.yasr .dataTables_wrapper div.dataTables_paginate.paging_simple_numbers a.paginate_button.current{border:none;background:transparent;text-decoration:underline !important}.yasr .dataTables_wrapper div.dataTables_paginate.paging_simple_numbers a.paginate_button:hover{border:none;background:transparent}.yasr .dataTables_wrapper div.dataTables_paginate.paging_simple_numbers a.paginate_button:hover:not(.disabled){color:#000 !important}.yasr .dataTables_wrapper div.dataTables_paginate.paging_simple_numbers a.paginate_button:active{box-shadow:none}table.dataTable{width:100%;margin:0 auto;clear:both;border-collapse:separate;border-spacing:0}table.dataTable tfoot th,table.dataTable thead th{font-weight:700}table.dataTable thead td,table.dataTable thead th{padding:10px 18px;border-bottom:1px solid #111}table.dataTable thead td:active,table.dataTable thead th:active{outline:none}table.dataTable tfoot td,table.dataTable tfoot th{padding:10px 18px 6px;border-top:1px solid #111}table.dataTable thead .sorting,table.dataTable thead .sorting_asc,table.dataTable thead .sorting_asc_disabled,table.dataTable thead .sorting_desc,table.dataTable thead .sorting_desc_disabled{cursor:pointer;*cursor:hand;background-repeat:no-repeat;background-position:100%}table.dataTable tbody tr{background-color:#fff}table.dataTable tbody tr.selected{background-color:#b0bed9}table.dataTable tbody td,table.dataTable tbody th{padding:8px 10px}table.dataTable.display tbody td,table.dataTable.display tbody th,table.dataTable.row-border tbody td,table.dataTable.row-border tbody th{border-top:1px solid #ddd}table.dataTable.display tbody tr:first-child td,table.dataTable.display tbody tr:first-child th,table.dataTable.row-border tbody tr:first-child td,table.dataTable.row-border tbody tr:first-child th{border-top:none}table.dataTable.cell-border tbody td,table.dataTable.cell-border tbody th{border-top:1px solid #ddd;border-right:1px solid #ddd}table.dataTable.cell-border tbody tr td:first-child,table.dataTable.cell-border tbody tr th:first-child{border-left:1px solid #ddd}table.dataTable.cell-border tbody tr:first-child td,table.dataTable.cell-border tbody tr:first-child th{border-top:none}table.dataTable.display tbody tr.odd,table.dataTable.stripe tbody tr.odd{background-color:#f9f9f9}table.dataTable.display tbody tr.odd.selected,table.dataTable.stripe tbody tr.odd.selected{background-color:#acbad4}table.dataTable.display tbody tr:hover,table.dataTable.hover tbody tr:hover{background-color:#f6f6f6}table.dataTable.display tbody tr:hover.selected,table.dataTable.hover tbody tr:hover.selected{background-color:#aab7d1}table.dataTable.display tbody tr>.sorting_1,table.dataTable.display tbody tr>.sorting_2,table.dataTable.display tbody tr>.sorting_3,table.dataTable.order-column tbody tr>.sorting_1,table.dataTable.order-column tbody tr>.sorting_2,table.dataTable.order-column tbody tr>.sorting_3{background-color:#fafafa}table.dataTable.display tbody tr.selected>.sorting_1,table.dataTable.display tbody tr.selected>.sorting_2,table.dataTable.display tbody tr.selected>.sorting_3,table.dataTable.order-column tbody tr.selected>.sorting_1,table.dataTable.order-column tbody tr.selected>.sorting_2,table.dataTable.order-column tbody tr.selected>.sorting_3{background-color:#acbad5}table.dataTable.display tbody tr.odd>.sorting_1,table.dataTable.order-column.stripe tbody tr.odd>.sorting_1{background-color:#f1f1f1}table.dataTable.display tbody tr.odd>.sorting_2,table.dataTable.order-column.stripe tbody tr.odd>.sorting_2{background-color:#f3f3f3}table.dataTable.display tbody tr.odd>.sorting_3,table.dataTable.order-column.stripe tbody tr.odd>.sorting_3{background-color:#f5f5f5}table.dataTable.display tbody tr.odd.selected>.sorting_1,table.dataTable.order-column.stripe tbody tr.odd.selected>.sorting_1{background-color:#a6b4cd}table.dataTable.display tbody tr.odd.selected>.sorting_2,table.dataTable.order-column.stripe tbody tr.odd.selected>.sorting_2{background-color:#a8b5cf}table.dataTable.display tbody tr.odd.selected>.sorting_3,table.dataTable.order-column.stripe tbody tr.odd.selected>.sorting_3{background-color:#a9b7d1}table.dataTable.display tbody tr.even>.sorting_1,table.dataTable.order-column.stripe tbody tr.even>.sorting_1{background-color:#fafafa}table.dataTable.display tbody tr.even>.sorting_2,table.dataTable.order-column.stripe tbody tr.even>.sorting_2{background-color:#fcfcfc}table.dataTable.display tbody tr.even>.sorting_3,table.dataTable.order-column.stripe tbody tr.even>.sorting_3{background-color:#fefefe}table.dataTable.display tbody tr.even.selected>.sorting_1,table.dataTable.order-column.stripe tbody tr.even.selected>.sorting_1{background-color:#acbad5}table.dataTable.display tbody tr.even.selected>.sorting_2,table.dataTable.order-column.stripe tbody tr.even.selected>.sorting_2{background-color:#aebcd6}table.dataTable.display tbody tr.even.selected>.sorting_3,table.dataTable.order-column.stripe tbody tr.even.selected>.sorting_3{background-color:#afbdd8}table.dataTable.display tbody tr:hover>.sorting_1,table.dataTable.order-column.hover tbody tr:hover>.sorting_1{background-color:#eaeaea}table.dataTable.display tbody tr:hover>.sorting_2,table.dataTable.order-column.hover tbody tr:hover>.sorting_2{background-color:#ececec}table.dataTable.display tbody tr:hover>.sorting_3,table.dataTable.order-column.hover tbody tr:hover>.sorting_3{background-color:#efefef}table.dataTable.display tbody tr:hover.selected>.sorting_1,table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_1{background-color:#a2aec7}table.dataTable.display tbody tr:hover.selected>.sorting_2,table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_2{background-color:#a3b0c9}table.dataTable.display tbody tr:hover.selected>.sorting_3,table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_3{background-color:#a5b2cb}table.dataTable.no-footer{border-bottom:1px solid #111}table.dataTable.nowrap td,table.dataTable.nowrap th{white-space:nowrap}table.dataTable.compact thead td,table.dataTable.compact thead th{padding:4px 17px}table.dataTable.compact tbody td,table.dataTable.compact tbody th,table.dataTable.compact tfoot td,table.dataTable.compact tfoot th{padding:4px}table.dataTable td.dt-left,table.dataTable th.dt-left{text-align:left}table.dataTable td.dataTables_empty,table.dataTable td.dt-center,table.dataTable th.dt-center{text-align:center}table.dataTable td.dt-right,table.dataTable th.dt-right{text-align:right}table.dataTable td.dt-justify,table.dataTable th.dt-justify{text-align:justify}table.dataTable td.dt-nowrap,table.dataTable th.dt-nowrap{white-space:nowrap}table.dataTable tfoot td.dt-head-left,table.dataTable tfoot th.dt-head-left,table.dataTable thead td.dt-head-left,table.dataTable thead th.dt-head-left{text-align:left}table.dataTable tfoot td.dt-head-center,table.dataTable tfoot th.dt-head-center,table.dataTable thead td.dt-head-center,table.dataTable thead th.dt-head-center{text-align:center}table.dataTable tfoot td.dt-head-right,table.dataTable tfoot th.dt-head-right,table.dataTable thead td.dt-head-right,table.dataTable thead th.dt-head-right{text-align:right}table.dataTable tfoot td.dt-head-justify,table.dataTable tfoot th.dt-head-justify,table.dataTable thead td.dt-head-justify,table.dataTable thead th.dt-head-justify{text-align:justify}table.dataTable tfoot td.dt-head-nowrap,table.dataTable tfoot th.dt-head-nowrap,table.dataTable thead td.dt-head-nowrap,table.dataTable thead th.dt-head-nowrap{white-space:nowrap}table.dataTable tbody td.dt-body-left,table.dataTable tbody th.dt-body-left{text-align:left}table.dataTable tbody td.dt-body-center,table.dataTable tbody th.dt-body-center{text-align:center}table.dataTable tbody td.dt-body-right,table.dataTable tbody th.dt-body-right{text-align:right}table.dataTable tbody td.dt-body-justify,table.dataTable tbody th.dt-body-justify{text-align:justify}table.dataTable tbody td.dt-body-nowrap,table.dataTable tbody th.dt-body-nowrap{white-space:nowrap}table.dataTable,table.dataTable td,table.dataTable th{box-sizing:content-box}.dataTables_wrapper{position:relative;clear:both;*zoom:1;zoom:1}.dataTables_wrapper .dataTables_length{float:left}.dataTables_wrapper .dataTables_length select{border:1px solid #aaa;border-radius:3px;background-color:transparent;padding:4px}.dataTables_wrapper .dataTables_filter{float:right;text-align:right}.dataTables_wrapper .dataTables_filter input{border:1px solid #aaa;border-radius:3px;padding:5px;background-color:transparent;margin-left:3px}.dataTables_wrapper .dataTables_info{clear:both;float:left;padding-top:0.755em}.dataTables_wrapper .dataTables_paginate{float:right;text-align:right;padding-top:0.25em}.dataTables_wrapper .dataTables_paginate .paginate_button{box-sizing:border-box;display:inline-block;min-width:1.5em;padding:0.5em 1em;margin-left:2px;text-align:center;text-decoration:none !important;cursor:pointer;*cursor:hand;color:#333 !important;border:1px solid transparent;border-radius:2px}.dataTables_wrapper .dataTables_paginate .paginate_button.current,.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover{color:#333 !important;border:1px solid #979797;background-color:#fff;background:-webkit-gradient(linear, left top, left bottom, color-stop(0, #fff), color-stop(100%, #dcdcdc));background:-webkit-linear-gradient(top, #fff, #dcdcdc);background:-moz-linear-gradient(top, #fff 0, #dcdcdc 100%);background:-ms-linear-gradient(top, #fff 0, #dcdcdc 100%);background:-o-linear-gradient(top, #fff 0, #dcdcdc 100%);background:linear-gradient(180deg, #fff 0, #dcdcdc)}.dataTables_wrapper .dataTables_paginate .paginate_button.disabled,.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active,.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover{cursor:default;color:#666 !important;border:1px solid transparent;background:transparent;box-shadow:none}.dataTables_wrapper .dataTables_paginate .paginate_button:hover{color:#fff !important;border:1px solid #111;background-color:#585858;background:-webkit-gradient(linear, left top, left bottom, color-stop(0, #585858), color-stop(100%, #111));background:-webkit-linear-gradient(top, #585858, #111);background:-moz-linear-gradient(top, #585858 0, #111 100%);background:-ms-linear-gradient(top, #585858 0, #111 100%);background:-o-linear-gradient(top, #585858 0, #111 100%);background:linear-gradient(180deg, #585858 0, #111)}.dataTables_wrapper .dataTables_paginate .paginate_button:active{outline:none;background-color:#2b2b2b;background:-webkit-gradient(linear, left top, left bottom, color-stop(0, #2b2b2b), color-stop(100%, #0c0c0c));background:-webkit-linear-gradient(top, #2b2b2b, #0c0c0c);background:-moz-linear-gradient(top, #2b2b2b 0, #0c0c0c 100%);background:-ms-linear-gradient(top, #2b2b2b 0, #0c0c0c 100%);background:-o-linear-gradient(top, #2b2b2b 0, #0c0c0c 100%);background:linear-gradient(180deg, #2b2b2b 0, #0c0c0c);box-shadow:inset 0 0 3px #111}.dataTables_wrapper .dataTables_paginate .ellipsis{padding:0 1em}.dataTables_wrapper .dataTables_processing{position:absolute;top:50%;left:50%;width:100%;height:40px;margin-left:-50%;margin-top:-25px;padding-top:20px;text-align:center;font-size:1.2em;background-color:#fff;background:-webkit-gradient(linear, left top, right top, color-stop(0, rgba(255, 255, 255, 0)), color-stop(25%, rgba(255, 255, 255, 0.9)), color-stop(75%, rgba(255, 255, 255, 0.9)), color-stop(100%, rgba(255, 255, 255, 0)));background:-webkit-linear-gradient(left, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0));background:-moz-linear-gradient(left, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);background:-ms-linear-gradient(left, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);background:-o-linear-gradient(left, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%);background:linear-gradient(90deg, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0))}.dataTables_wrapper .dataTables_filter,.dataTables_wrapper .dataTables_info,.dataTables_wrapper .dataTables_length,.dataTables_wrapper .dataTables_paginate,.dataTables_wrapper .dataTables_processing{color:#333}.dataTables_wrapper .dataTables_scroll{clear:both}.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody{*margin-top:-1px;-webkit-overflow-scrolling:touch}.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>tbody>tr>td,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>tbody>tr>th,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>thead>tr>td,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>thead>tr>th{vertical-align:middle}.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>tbody>tr>td>div.dataTables_sizing,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>tbody>tr>th>div.dataTables_sizing,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>thead>tr>td>div.dataTables_sizing,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>thead>tr>th>div.dataTables_sizing{height:0;overflow:hidden;margin:0 !important;padding:0 !important}.dataTables_wrapper.no-footer .dataTables_scrollBody{border-bottom:1px solid #111}.dataTables_wrapper.no-footer div.dataTables_scrollBody>table,.dataTables_wrapper.no-footer div.dataTables_scrollHead table.dataTable{border-bottom:none}.dataTables_wrapper:after{visibility:hidden;display:block;content:\"\";clear:both;height:0}@media screen and (max-width: 767px){.dataTables_wrapper .dataTables_info,.dataTables_wrapper .dataTables_paginate{float:none;text-align:center}.dataTables_wrapper .dataTables_paginate{margin-top:0.5em}}@media screen and (max-width: 640px){.dataTables_wrapper .dataTables_filter,.dataTables_wrapper .dataTables_length{float:none;text-align:center}.dataTables_wrapper .dataTables_filter{margin-top:0.5em}}.yasqe .CodeMirror{min-height:60px}.yasqe .svgImg{display:inline-block}.yasqe span.shortlinkErr{font-size:small;color:red;font-weight:700;float:left}.yasqe .CodeMirror-hint{max-width:30em}.yasqe .notificationContainer{width:100%;display:flex;justify-content:center;position:absolute;bottom:0}.yasqe .notification{z-index:4;padding:0 5px;max-height:0;color:#999;background-color:#eee;font-size:90%;text-align:center;transition:max-height 0.2s ease-in;border-top-right-radius:2px;border-top-left-radius:2px}.yasqe .notification.active{max-height:3rem}.yasqe .parseErrorIcon{width:13px;height:13px;margin-top:2px;margin-left:2px}.yasqe .parseErrorIcon svg g{fill:red}.yasqe .yasqe_tooltip{background:#333;background:rgba(0, 0, 0, 0.8);border-radius:5px;color:#fff;padding:5px 15px;width:220px;white-space:pre-wrap;white-space:normal;margin-top:5px}.yasqe .notificationLoader{width:18px;height:18px;vertical-align:middle}.yasqe .resizeWrapper{width:100%;height:10px;display:flex;align-items:center;justify-content:center;cursor:row-resize}.yasqe .resizeChip{width:20%;height:4px;background-color:#d1d1d1;visibility:hidden;border-radius:2px}.yasqe:hover .resizeChip{visibility:visible}.yasqe .yasqe_btn{color:#333;background-color:#fff;border:1px solid #ccc;display:inline-block;text-align:center;vertical-align:middle;cursor:pointer;white-space:nowrap;padding:6px 12px;border-radius:2px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:visible;box-sizing:border-box}.yasqe .yasqe_btn.btn_icon{padding:4px 8px}.yasqe .yasqe_btn.disabled,.yasqe .yasqe_btn[disabled]{cursor:default;opacity:0.5;filter:alpha(opacity=50);box-shadow:none}.yasqe .yasqe_btn:hover{outline:0;background-color:#ebebeb;border-color:#adadad}.yasqe .yasqe_btn.selected,.yasqe .yasqe_btn:focus{color:#fff;outline:0;background-color:#337ab7;border-color:#337ab7}.yasqe .yasqe_btn.btn_icon:focus{color:#333;background-color:#fff;border:1px solid #ccc}.yasqe .yasqe_btn.yasqe_btn-sm{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.yasqe .yasqe_buttons{position:absolute;top:10px;right:20px;z-index:5}.yasqe .yasqe_buttons svg{fill:#505050}.yasqe .yasqe_buttons .yasqe_share{cursor:pointer;margin-top:3px;display:inline-block;border:none;background:none}.yasqe .yasqe_buttons .yasqe_share svg{height:25px;width:25px}.yasqe .yasqe_buttons button{vertical-align:top;margin-left:5px}.yasqe .yasqe_buttons .yasqe_sharePopup{position:absolute;padding:4px;margin-left:0;background-color:#fff;border:1px solid #e3e3e3;border-radius:2px;box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.05);width:600px;height:auto;display:flex}.yasqe .yasqe_buttons .yasqe_sharePopup .inputWrapper{flex-grow:100}.yasqe .yasqe_buttons .yasqe_sharePopup input{float:left;width:100%;border:0;-ms-box-sizing:border-box;-khtml-box-sizing:border-box;box-sizing:border-box}.yasqe .yasqe_buttons .yasqe_sharePopup button{float:right;margin-left:5px}.yasqe .yasqe_buttons .yasqe_sharePopup textarea{width:100%}.yasqe .yasqe_buttons .yasqe_queryButton{display:inline-block;position:relative;border:none;background:none;padding:0;cursor:pointer;width:40px;height:40px}.yasqe .yasqe_buttons .yasqe_queryButton .queryIcon{display:block}.yasqe .yasqe_buttons .yasqe_queryButton .queryIcon svg{width:40px;height:40px}.yasqe .yasqe_buttons .yasqe_queryButton .svgImg{position:absolute;height:inherit;top:0}.yasqe .yasqe_buttons .yasqe_queryButton.busy svg #loadingIcon{stroke-dasharray:100;-webkit-animation:dash 1.5s linear infinite;animation:dash 1.5s linear infinite;stroke-width:8px;stroke:#fff}@-webkit-keyframes dash{to{stroke-dashoffset:200}}@keyframes dash{to{stroke-dashoffset:200}}@-webkit-keyframes rotate{to{transform:rotate(1turn)}}@keyframes rotate{to{transform:rotate(1turn)}}.yasqe .yasqe_buttons .yasqe_queryButton .warningIcon{display:none}.yasqe .yasqe_buttons .yasqe_queryButton.query_error .warningIcon{display:block;top:5px;right:0}.yasqe .yasqe_buttons .yasqe_queryButton.query_error .warningIcon svg{width:15px;height:15px}.yasqe .yasqe_buttons .yasqe_queryButton.query_error .warningIcon svg g{fill:red}.yasqe .yasqe_buttons .yasqe_queryButton.query_disabled{cursor:not-allowed}.yasqe .yasqe_buttons .yasqe_queryButton.query_disabled .queryIcon{opacity:0.5;filter:alpha(opacity=50)}@-webkit-keyframes spin{to{transform:rotate(1turn)}}.CodeMirror-hints{position:absolute;z-index:10;overflow:hidden;list-style:none;margin:0;padding:2px;box-shadow:2px 3px 5px rgba(0, 0, 0, 0.2);border-radius:3px;border:1px solid silver;background:#fff;font-size:90%;font-family:monospace;max-height:20em;overflow-y:auto}.CodeMirror-hint{margin:0;padding:0 4px;border-radius:2px;white-space:pre;color:#000;cursor:pointer}li.CodeMirror-hint-active{background:#08f;color:#fff}.CodeMirror{font-family:monospace;height:300px;color:#000;direction:ltr}.CodeMirror-lines{padding:4px 0}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{padding:0 4px}.CodeMirror-gutter-filler,.CodeMirror-scrollbar-filler{background-color:#fff}.CodeMirror-gutters{border-right:1px solid #ddd;background-color:#f7f7f7;white-space:nowrap}.CodeMirror-linenumber{padding:0 3px 0 5px;min-width:20px;text-align:right;color:#999;white-space:nowrap}.CodeMirror-guttermarker{color:#000}.CodeMirror-guttermarker-subtle{color:#999}.CodeMirror-cursor{border-left:1px solid #000;border-right:none;width:0}.CodeMirror div.CodeMirror-secondarycursor{border-left:1px solid silver}.cm-fat-cursor .CodeMirror-cursor{width:auto;border:0 !important;background:#7e7}.cm-fat-cursor div.CodeMirror-cursors{z-index:1}.cm-fat-cursor-mark{background-color:rgba(20, 255, 20, 0.5)}.cm-animate-fat-cursor,.cm-fat-cursor-mark{-webkit-animation:blink 1.06s steps(1) infinite;-moz-animation:blink 1.06s steps(1) infinite;animation:blink 1.06s steps(1) infinite}.cm-animate-fat-cursor{width:auto;border:0;background-color:#7e7}@-moz-keyframes blink{50%{background-color:transparent}}@-webkit-keyframes blink{50%{background-color:transparent}}@keyframes blink{50%{background-color:transparent}}.cm-tab{display:inline-block;text-decoration:inherit}.CodeMirror-rulers{position:absolute;left:0;right:0;top:-50px;bottom:0;overflow:hidden}.CodeMirror-ruler{border-left:1px solid #ccc;top:0;bottom:0;position:absolute}.cm-s-default .cm-header{color:#00f}.cm-s-default .cm-quote{color:#090}.cm-negative{color:#d44}.cm-positive{color:#292}.cm-header,.cm-strong{font-weight:700}.cm-em{font-style:italic}.cm-link{text-decoration:underline}.cm-strikethrough{text-decoration:line-through}.cm-s-default .cm-keyword{color:#708}.cm-s-default .cm-atom{color:#219}.cm-s-default .cm-number{color:#164}.cm-s-default .cm-def{color:#00f}.cm-s-default .cm-variable-2{color:#05a}.cm-s-default .cm-type,.cm-s-default .cm-variable-3{color:#085}.cm-s-default .cm-comment{color:#a50}.cm-s-default .cm-string{color:#a11}.cm-s-default .cm-string-2{color:#f50}.cm-s-default .cm-meta,.cm-s-default .cm-qualifier{color:#555}.cm-s-default .cm-builtin{color:#30a}.cm-s-default .cm-bracket{color:#997}.cm-s-default .cm-tag{color:#170}.cm-s-default .cm-attribute{color:#00c}.cm-s-default .cm-hr{color:#999}.cm-s-default .cm-link{color:#00c}.cm-invalidchar,.cm-s-default .cm-error{color:red}.CodeMirror-composing{border-bottom:2px solid}div.CodeMirror span.CodeMirror-matchingbracket{color:#0b0}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#a22}.CodeMirror-matchingtag{background:rgba(255, 150, 0, 0.3)}.CodeMirror-activeline-background{background:#e8f2ff}.CodeMirror{position:relative;overflow:hidden;background:#fff}.CodeMirror-scroll{overflow:scroll !important;margin-bottom:-50px;margin-right:-50px;padding-bottom:50px;height:100%;outline:none;position:relative}.CodeMirror-sizer{position:relative;border-right:50px solid transparent}.CodeMirror-gutter-filler,.CodeMirror-hscrollbar,.CodeMirror-scrollbar-filler,.CodeMirror-vscrollbar{position:absolute;z-index:6;display:none}.CodeMirror-vscrollbar{right:0;top:0;overflow-x:hidden;overflow-y:scroll}.CodeMirror-hscrollbar{bottom:0;left:0;overflow-y:hidden;overflow-x:scroll}.CodeMirror-scrollbar-filler{right:0;bottom:0}.CodeMirror-gutter-filler{left:0;bottom:0}.CodeMirror-gutters{position:absolute;left:0;top:0;min-height:100%;z-index:3}.CodeMirror-gutter{white-space:normal;height:100%;display:inline-block;vertical-align:top;margin-bottom:-50px}.CodeMirror-gutter-wrapper{position:absolute;z-index:4;background:none !important;border:none !important}.CodeMirror-gutter-background{position:absolute;top:0;bottom:0;z-index:4}.CodeMirror-gutter-elt{position:absolute;cursor:default;z-index:4}.CodeMirror-gutter-wrapper ::selection{background-color:transparent}.CodeMirror-gutter-wrapper ::-moz-selection{background-color:transparent}.CodeMirror-lines{cursor:text;min-height:1px}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;border-width:0;background:transparent;font-family:inherit;font-size:inherit;margin:0;white-space:pre;word-wrap:normal;line-height:inherit;color:inherit;z-index:2;position:relative;overflow:visible;-webkit-tap-highlight-color:transparent;-webkit-font-variant-ligatures:contextual;font-variant-ligatures:contextual}.CodeMirror-wrap pre.CodeMirror-line,.CodeMirror-wrap pre.CodeMirror-line-like{word-wrap:break-word;white-space:pre-wrap;word-break:normal}.CodeMirror-linebackground{position:absolute;left:0;right:0;top:0;bottom:0;z-index:0}.CodeMirror-linewidget{position:relative;z-index:2;padding:0.1px}.CodeMirror-rtl pre{direction:rtl}.CodeMirror-code{outline:none}.CodeMirror-gutter,.CodeMirror-gutters,.CodeMirror-linenumber,.CodeMirror-scroll,.CodeMirror-sizer{-moz-box-sizing:content-box;box-sizing:content-box}.CodeMirror-measure{position:absolute;width:100%;height:0;overflow:hidden;visibility:hidden}.CodeMirror-cursor{position:absolute;pointer-events:none}.CodeMirror-measure pre{position:static}div.CodeMirror-cursors{visibility:hidden;position:relative;z-index:3}.CodeMirror-focused div.CodeMirror-cursors,div.CodeMirror-dragcursors{visibility:visible}.CodeMirror-selected{background:#d9d9d9}.CodeMirror-focused .CodeMirror-selected{background:#d7d4f0}.CodeMirror-crosshair{cursor:crosshair}.CodeMirror-line::selection,.CodeMirror-line>span::selection,.CodeMirror-line>span>span::selection{background:#d7d4f0}.CodeMirror-line::-moz-selection,.CodeMirror-line>span::-moz-selection,.CodeMirror-line>span>span::-moz-selection{background:#d7d4f0}.cm-searching{background-color:#ffa;background-color:rgba(255, 255, 0, 0.4)}.cm-force-border{padding-right:0.1px}@media print{.CodeMirror div.CodeMirror-cursors{visibility:hidden}}.cm-tab-wrap-hack:after{content:\"\"}span.CodeMirror-selectedtext{background:none}.CodeMirror-foldmarker{color:#00f;text-shadow:#b9f 1px 1px 2px, #b9f -1px -1px 2px, #b9f 1px -1px 2px, #b9f -1px 1px 2px;font-family:arial;line-height:0.3;cursor:pointer}.CodeMirror-foldgutter{width:0.7em}.CodeMirror-foldgutter-folded,.CodeMirror-foldgutter-open{cursor:pointer}.CodeMirror-foldgutter-open:after{content:\"▾\"}.CodeMirror-foldgutter-folded:after{content:\"▸\"}.yasqe .CodeMirror{line-height:1.5em;font-size:14px;border:1px solid #d1d1d1}.yasqe span.cm-error{border-bottom:2px dotted red}.yasqe .gutterErrorBar{width:4px}.yasqe .CodeMirror-foldmarker{color:#6e2500;text-shadow:#ff935e 1px 1px 2px, #ff935e -1px -1px 2px, #ff935e 1px -1px 2px, #ff935e -1px 1px 2px;font-size:19px}.yasqe .cm-matchhighlight{background-color:#dbdeed}.CodeMirror-hints.default{max-width:1000px}.CodeMirror-hints.default li{text-overflow:ellipsis;overflow:hidden}@media only screen and (max-width: 1000px){.CodeMirror-hints.default{max-width:800px}}.yasr .booleanResult{display:flex;align-items:center;justify-content:center}.yasr .booleanResult svg{margin-bottom:-10px;margin-right:7px}.yasr .yasr_results{position:relative}.yasr .yasr_results .CodeMirror{border:1px solid #d1d1d1;margin-top:5px;height:100%}.yasr .yasr_results .CodeMirror.overflow:before{background:linear-gradient(transparent, rgba(255, 255, 255, 0.666667) 75%, #fff);content:\"\";width:100%;height:100%;z-index:1200;position:absolute;pointer-events:none}.yasr .yasr_results .overlay{width:100%;position:absolute;bottom:0;z-index:1201;display:flex;pointer-events:none}.yasr .yasr_results .overlay:after,.yasr .yasr_results .overlay:before{content:\"\";flex-grow:1}.yasr .yasr_results .overlay_content{display:flex;align-content:center;justify-content:center;align-items:center;background:#fff;pointer-events:all;background:linear-gradient(90deg, transparent, #fff 5%, #fff 95%, transparent)}.yasr .yasr_results .yasr_btn.overlay_btn{border:1px solid #337ab7;background:#fff;color:#337ab7;padding:10px;margin:10px}.yasr .yasr_results .yasr_btn.overlay_btn svg{margin-left:0.5rem;fill:#337ab7;color:#337ab7}.yasr .yasr_results .yasr_btn.overlay_btn:hover{color:#255681;border-color:#337ab7;fill:#255681}.yasr .yasr_results .yasr_btn.overlay_btn:hover svg{color:#255681;fill:#255681}.yasgui .tabMenu{background:#f5f5f5;z-index:7;transition:all 0.5s;transform:translate3d(-100%, 0, 0) rotateY(90deg);transform-origin:100% 50%;visibility:hidden;width:600px;border:1px solid #ccc;position:absolute;top:35px;left:0;perspective:1500px;perspective-origin:0 50%;transform-style:preserve-3d}.yasgui .tabMenu.open{visibility:visible;transform:translate3d(-100%, 0, 0) rotateY(0deg);transition:all 0.5s;left:600px}@media (-ms-high-contrast: active), (-ms-high-contrast: none){.yasgui .tabMenu.open{min-width:600px}}@media (-ms-high-contrast: active), (-ms-high-contrast: none){.yasgui .tabMenu{height:0}}.yasgui .tabMenu .requestConfigWrapper{padding:10px;overflow:hidden;display:flex;flex-wrap:nowrap;background:#f5f5f5}.yasgui .tabMenu .requestConfigWrapper .selectorButton{background-color:transparent;border:none;border-bottom:1px solid #d1d1d1;height:30px;color:#505050;cursor:pointer}.yasgui .tabMenu .requestConfigWrapper .selectorButton:hover{color:#000;border-color:#000}.yasgui .tabMenu .requestConfigWrapper .selectorButton.selected{color:#337ab7;border-bottom:2px solid #337ab7}.yasgui .tabMenu .requestConfigWrapper .selectorButton:focus{outline:none}.yasgui .tabMenu .requestConfigWrapper .selectorButton:focus-visible{color:#000;border-color:#000}.yasgui .tabMenu .acceptWrapper{flex-direction:row}.yasgui .tabMenu .acceptWrapper .acceptLabel{justify-self:center}.yasgui .tabMenu .acceptWrapper .selector{flex-direction:column;display:flex;padding:2.5px 5px;flex-grow:1;width:100%}.yasgui .tabMenu .acceptWrapper .selector .selectorLabel{align-self:center;font-weight:700;font-size:small}.yasgui .tabMenu .textSetting{display:flex;flex-direction:column}.yasgui .tabMenu .textSetting .label{align-self:flex-start}.yasgui .tabMenu .textSetting .graphInput{white-space:nowrap}.yasgui .tabMenu .textSetting .textRow{flex-direction:row;flex-wrap:nowrap;white-space:nowrap}.yasgui .tabMenu .textSetting .removeButton{border:none;background:transparent;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.yasgui .tabMenu .textSetting .removeButton:hover{background:transparent;border-color:#000;color:#000;cursor:pointer}.yasgui .tabMenu .label{-webkit-text-decoration:#000;text-decoration:#000;font-weight:700;white-space:nowrap;padding-right:5px;align-self:center}.yasgui .autocomplete{padding:3px 6px;margin:4px 0;border:2px solid #ccc;width:100%;box-sizing:border-box;transition:border-color 0.2s ease-in}.yasgui .autocomplete:hover{border-color:#bbb}.yasgui .autocomplete:focus{border-color:#337ab7;background:none;outline:none}.yasgui .autocompleteWrapper{width:100%;max-width:700px;margin-left:10px;position:relative}.yasgui .autocompleteList{position:absolute;max-height:300px;overflow-y:auto;z-index:6;margin:-4px 0 0;padding:0;list-style:none;background:#fff;border:1px solid #aaa;box-sizing:border-box;left:0;right:0}.yasgui .autocompleteList:hover .autoComplete_result.autoComplete_selected:not(:hover){background:unset}.yasgui .autocompleteList:hover .autoComplete_result.autoComplete_selected:not(:hover) .removeItem{visibility:hidden}.yasgui .autocompleteList .autoComplete_result{cursor:pointer;padding:5px 10px;margin:0;overflow:hidden;display:flex;transition:background visibility 0.2s ease-in}.yasgui .autocompleteList .autoComplete_result b{color:#1f49a3}.yasgui .autocompleteList .autoComplete_result .autoComplete_highlighted{font-weight:700}.yasgui .autocompleteList .autoComplete_result.autoComplete_selected{background:#ccc}.yasgui .autocompleteList .autoComplete_result.autoComplete_selected .removeItem{visibility:visible}.yasgui .autocompleteList .autoComplete_result:hover{background:#ccc}.yasgui .autocompleteList .autoComplete_result:hover .removeItem{visibility:visible}.yasgui .autocompleteList .noResults{padding:5px 10px;margin:0}.yasgui .autocompleteList .removeItem{color:#000;font-size:15px;text-shadow:0 1px 0 #fff;opacity:0.5;font-weight:700;text-align:end;margin-left:auto;visibility:hidden;background:none;border:none;cursor:pointer;margin-right:-10px;padding-right:20px}.yasgui .autocompleteList .removeItem:hover{opacity:0.8;color:#1f49a3}.yasgui .autocompleteList:empty{display:none}.yasgui .tabPanel{display:none;position:relative}.yasgui .tabPanel.active{display:block}.yasgui .yasr{margin-top:5px}.yasgui .tabContextButton{border:none;background:none;align-self:center;padding-left:10px;cursor:pointer;color:#505050;fill:#505050}.yasgui .tabContextButton .svgImg{width:15px;height:15px;font-family:initial}.yasgui .tabContextButton svg{max-width:15px;max-height:15px}.yasgui .tabContextButton:hover{color:#000;fill:#000}.yasgui .controlbar{display:flex;align-content:center;max-height:35px}.yasgui.context-menu{position:absolute;z-index:10;background:#fff;min-width:160px;font-size:14px;border:1px solid rgba(0, 0, 0, 0.15);border-bottom-right-radius:4px;border-bottom-left-radius:4px;box-shadow:0 6px 12px rgba(0, 0, 0, 0.175);background-clip:padding-box}.yasgui.context-menu hr{margin:8px auto;border:none;border-top:1px solid #aaa;border-bottom:1px solid #fff}.yasgui.context-menu .context-menu-list{padding:0}.yasgui.context-menu .context-menu-item{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.42857;color:#333;white-space:nowrap;cursor:pointer}.yasgui.context-menu .context-menu-item:hover{text-decoration:none;color:#000;background-color:#f5f5f5}.yasgui.context-menu .context-menu-item.disabled{text-decoration:none;color:grey;background-color:#e5e5e5;cursor:not-allowed}.yasgui .tabsList{display:flex;flex-wrap:wrap}.yasgui .tabsList .sortable-placeholder{min-width:100px;min-height:35px;border:2px dotted #888}.yasgui .tabsList a{cursor:pointer;display:flex;align-items:center;justify-content:center;min-height:35px;border-bottom:2px solid transparent;box-sizing:border-box}.yasgui .tabsList .addTab{cursor:pointer;height:100%;font-size:120%;font-weight:800;margin-left:15px;padding:0 5px 2px;background:inherit;border:none;color:#337ab7}.yasgui .tabsList .addTab:focus-visible,.yasgui .tabsList .addTab:hover{transform:scale(1.1)}.yasgui .tabsList .addTab:focus{color:#faa857}.yasgui .tabsList .tab{position:relative}.yasgui .tabsList .tab.query-invalid a{-webkit-text-decoration:underline dotted red;text-decoration:underline dotted red}.yasgui .tabsList .tab .loader{display:none;background-color:#d5d5d5;height:2px;position:absolute;bottom:0;left:0;right:100%;-webkit-animation-name:slide;animation-name:slide;-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-timing-function:ease;animation-timing-function:ease;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}@-webkit-keyframes slide{0%{left:0;right:100%}70%{left:0;right:0}to{left:100%;right:0}}@keyframes slide{0%{left:0;right:100%}70%{left:0;right:0}to{left:100%;right:0}}.yasgui .tabsList .tab.active .loader{background-color:#9fc4e4}.yasgui .tabsList .tab:hover .loader{background-color:#337ab7}.yasgui .tabsList .tab.querying .loader{display:block}.yasgui .tabsList .tab.active a{border-bottom-color:#337ab7;color:#555}.yasgui .tabsList .tab input{display:none;outline:none;border:none}.yasgui .tabsList .tab.renaming .closeTab,.yasgui .tabsList .tab.renaming span{display:none}.yasgui .tabsList .tab.renaming input{display:block}.yasgui .tabsList .tab a{font-weight:600;color:#888;font-size:15px;line-height:1.5rem;font-weight:500;min-width:120px;padding:0 24px 0 30px;white-space:nowrap;overflow:hidden}.yasgui .tabsList .tab a:hover{border-bottom-color:#9fc4e4;color:#555}.yasgui .tabsList .tab a:focus{border-bottom-color:#faa857;color:#555}.yasgui .tabsList .tab a .closeTab{color:#000;margin-left:7px;font-size:15px;text-shadow:0 1px 0 #fff;opacity:0.2;font-weight:700;padding:2px}.yasgui .tabsList .tab a .closeTab:hover{opacity:0.5}.yasgui a{color:#337ab7;text-decoration:none}.yasgui .yasgui_textfield{display:block;padding-top:18.75px;position:relative}.yasgui .yasgui_textfield>label{position:absolute;top:0;display:block;width:100%;color:rgba(0, 0, 0, 0.54);font-size:12px;font-weight:400;line-height:15px;overflow-x:hidden;text-overflow:ellipsis;white-space:nowrap}.yasgui .yasgui_textfield>input,.yasgui .yasgui_textfield>textarea{box-sizing:border-box;display:block;color:rgba(0, 0, 0, 0.87);border:none;border-bottom:1px solid rgba(0, 0, 0, 0.26);outline:none;width:100%;padding:0;box-shadow:none;border-radius:0;font-size:15px;font-family:inherit;line-height:inherit;background-image:none}.yasgui .yasgui_textfield>input:focus,.yasgui .yasgui_textfield>textarea:focus{border-color:#337ab7;border-width:2px}.yasgui .yasgui_textfield>input:focus~label,.yasgui .yasgui_textfield>textarea:focus~label{color:#337ab7}.modal-dialog.google-visualization-charteditor-dialog{z-index:11;width:auto;margin:inherit}.modal-dialog.google-visualization-charteditor-dialog .charts-flat-menu-button{box-sizing:content-box}@font-face{font-family:\"icomoon\";src:url(\"../css/fonts/icons.eot?z4jeba\");src:url(\"../css/fonts/icons.eot?z4jeba#iefix\") format(\"embedded-opentype\"), url(\"../css/fonts/icons.ttf?z4jeba\") format(\"truetype\"), url(\"../css/fonts/icons.woff?z4jeba\") format(\"woff\"), url(\"../css/fonts/icons.svg?z4jeba#icons\") format(\"svg\");font-weight:normal;font-style:normal}.red{color:#e84e0f}.hidden{display:none !important}.scroll-hidden{overflow:hidden}.yasgui-toolbar{display:flex;flex-direction:row;justify-content:flex-end;gap:3px;font-size:14px;font-weight:400}.yasgui-toolbar button{cursor:pointer;color:#003663;transition:all 0.15s ease-out}.yasgui-toolbar .yasgui-btn{height:27px;margin-right:3px;border:none;outline:none;background-color:#ebebeb}.yasgui-toolbar .yasgui-btn:hover{background-color:#d4d4d4;border-color:#d4d4d4}.yasgui-toolbar .btn-selected{background-color:#e84e0f;color:#fff}.yasgui-toolbar .btn-selected:hover{background-color:#e84e0f;border-color:#e84e0f}.yasgui-toolbar .btn-orientation{border:none;outline:none;color:#e84e0f;background-color:#fff;font-size:2em}.yasgui-toolbar .btn-orientation:hover{transform:scale(1.2)}[class^=icon-],[class*=\" icon-\"],.icon-any{font-family:\"icomoon\", sans-serif !important;speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;vertical-align:middle;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-lg{font-size:1.2em}.icon-arrow-up-off:before{content:\"\\e948\"}.icon-collapse:before{content:\"\\e949\"}.icon-eye-off:before{content:\"\\e94a\"}.icon-expand:before{content:\"\\e94c\"}.icon-focus:before{content:\"\\e94d\"}.icon-rotate-left:before{content:\"\\e94e\"}.icon-rotate-right:before{content:\"\\e94f\"}.icon-info-alt:before{content:\"\\e950\"}.icon-facebook:before{content:\"\\e942\"}.icon-google-plus:before{content:\"\\e943\"}.icon-google:before{content:\"\\e944\"}.icon-linkedin:before{content:\"\\e945\"}.icon-twitter:before{content:\"\\e946\"}.icon-youtube:before{content:\"\\e947\"}.icon-play:before{content:\"\\e941\"}.icon-email:before{content:\"\\e93e\"}.icon-same-as-on:before{content:\"\\e93f\"}.icon-same-as-off:before{content:\"\\e940\"}.icon-repo-contour1:before{content:\"\\e906\"}.icon-repo-contour2:before{content:\"\\e90b\"}.icon-repo-contour3:before{content:\"\\e910\"}.icon-repo-master-ro-mute:before{content:\"\\e913\"}.icon-repo-free:before{content:\"\\e936\"}.icon-repo-master-mute:before{content:\"\\e937\"}.icon-repo-master-ro:before{content:\"\\e938\"}.icon-repo-master:before{content:\"\\e939\"}.icon-repo-se:before{content:\"\\e93a\"}.icon-repo-system:before{content:\"\\e93b\"}.icon-repo-worker:before{content:\"\\e93c\"}.icon-repo:before{content:\"\\e93d\"}.icon-copy:before{content:\"\\e934\"}.icon-eye:before{content:\"\\e935\"}.icon-connection-off:before{content:\"\\e931\"}.icon-connection-on:before{content:\"\\e932\"}.icon-key:before{content:\"\\e933\"}.icon-comment:before{content:\"\\e930\"}.icon-arrow-down:before{content:\"\\e900\"}.icon-arrow-left:before{content:\"\\e901\"}.icon-arrow-right:before{content:\"\\e902\"}.icon-arrow-up:before{content:\"\\e903\"}.icon-exchange:before{content:\"\\e904\"}.icon-columns:before{content:\"\\e905\"}.icon-inferred-off:before{content:\"\\e907\"}.icon-inferred-on:before{content:\"\\e908\"}.icon-save:before{content:\"\\e909\"}.icon-tag:before{content:\"\\e90a\"}.icon-file:before{content:\"\\e90c\"}.icon-folder:before{content:\"\\e90d\"}.icon-heartbeat:before{content:\"\\e90e\"}.icon-pin:before{content:\"\\e90f\"}.icon-zoom-in:before{content:\"\\e911\"}.icon-zoom-out:before{content:\"\\e912\"}.icon-check:before{content:\"\\e914\"}.icon-download:before{content:\"\\e915\"}.icon-external:before{content:\"\\e916\"}.icon-lock:before{content:\"\\e917\"}.icon-search:before{content:\"\\e918\"}.icon-upload:before{content:\"\\e919\"}.icon-caret-left:before{content:\"\\e91a\"}.icon-caret-right:before{content:\"\\e91b\"}.icon-caret-up:before{content:\"\\e91c\"}.icon-caret-up-after:after{content:\"\\e91c\"}.icon-minus:before{content:\"\\e91d\"}.icon-reload:before{content:\"\\e91e\"}.icon-trash:before{content:\"\\e91f\"}.icon-warning:before{content:\"\\e920\"}.icon-caret-down:before{content:\"\\e921\"}.icon-caret-down-after:after{content:\"\\e921\"}.icon-close:before{content:\"\\e922\"}.icon-edit:before{content:\"\\e923\"}.icon-info:before{content:\"\\e924\"}.icon-link:before{content:\"\\e925\"}.icon-more:before{content:\"\\e926\"}.icon-plus:before{content:\"\\e927\"}.icon-data:before{content:\"\\e928\"}.icon-help:before{content:\"\\e929\"}.icon-monitoring:before{content:\"\\e92a\"}.icon-settings:before{content:\"\\e92b\"}.icon-sparql:before{content:\"\\e92c\"}.icon-user-alt:before{content:\"\\e92d\"}.icon-export-alt:before{content:\"\\e92e\"}.icon-import:before{content:\"\\e92f\"}.icon-tick:before{content:\"\\e956\"}.icon-repo-ontop-alt:before{content:\"\\e958\"}.icon-repo-fedx-alt:before{content:\"\\e959\"}.icon-repo-graphdb-alt:before{content:\"\\e95a\"}.icon-export:before{content:\"\\e95b\"}.icon-readonly:before{content:\"\\e95c\"}.icon-repo-fedx:before{content:\"\\e95d\"}.icon-repo-graphdb:before{content:\"\\e95e\"}.icon-repo-ontop:before{content:\"\\e95f\"}.icon-repo-unknown:before{content:\"\\e960\"}.icon-translation:before{content:\"\\e961\"}.icon-user:before{content:\"\\e962\"}.icon-follower:before{content:\"\\e962\"}.alert{border-radius:0;border:1px solid transparent;position:relative;padding:1em}.alert-warning,.alert-info,.alert-help,.alert-danger,.alert-success{color:#000000A8}.alert-warning{background-color:#f9e6c0}.alert-info{background-color:#cfefec}.alert-help{background-color:#e7f7f5}.alert-success{background-color:#dff0d8}.alert-danger{background-color:#fbdbd5}.alert-info,.alert-warning,.alert-help,.alert-danger,.alert-success{padding-left:3em}.alert-info:before,.alert-warning:before,.alert-help:before,.alert-danger:before,.alert-success:before{font-family:\"icomoon\", sans-serif !important;font-size:1.6em;vertical-align:middle;line-height:1;position:absolute;left:0.6em;top:0.6em;color:#00000080}.alert-info:before{content:\"\\e924\"}.alert-warning:before{content:\"\\e930\"}.alert-help:before{content:\"\\e929\"}.alert-danger:before{content:\"\\e920\"}.alert-success:before{content:\"\\e914\"}.no-icon{padding-left:1em}.no-icon:before{display:none}.alert .alert{background-color:transparent}.icon-rotate-quarter:before{display:inline-block;-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.tippy-box[data-animation=fade][data-state=hidden]{opacity:0}[data-tippy-root]{max-width:calc(100vw - 10px)}.tippy-box{position:relative;background-color:#333;color:#fff;border-radius:4px;font-size:14px;line-height:1.4;white-space:normal;outline:0;transition-property:transform, visibility, opacity}.tippy-box[data-placement^=top]>.tippy-arrow{bottom:0}.tippy-box[data-placement^=top]>.tippy-arrow:before{bottom:-7px;left:0;border-width:8px 8px 0;border-top-color:initial;transform-origin:center top}.tippy-box[data-placement^=bottom]>.tippy-arrow{top:0}.tippy-box[data-placement^=bottom]>.tippy-arrow:before{top:-7px;left:0;border-width:0 8px 8px;border-bottom-color:initial;transform-origin:center bottom}.tippy-box[data-placement^=left]>.tippy-arrow{right:0}.tippy-box[data-placement^=left]>.tippy-arrow:before{border-width:8px 0 8px 8px;border-left-color:initial;right:-7px;transform-origin:center left}.tippy-box[data-placement^=right]>.tippy-arrow{left:0}.tippy-box[data-placement^=right]>.tippy-arrow:before{left:-7px;border-width:8px 8px 8px 0;border-right-color:initial;transform-origin:center right}.tippy-box[data-inertia][data-state=visible]{transition-timing-function:cubic-bezier(0.54, 1.5, 0.38, 1.11)}.tippy-arrow{width:16px;height:16px;color:#333}.tippy-arrow:before{content:\"\";position:absolute;border-color:transparent;border-style:solid}.tippy-content{position:relative;padding:5px 9px;z-index:1}.pivot-table-plugin{overflow:auto}.pivot-table-plugin .pvtUi{border-collapse:collapse}.pivot-table-plugin .pvtUi .pvtUnused.pivottable-plugin-unused-variables,.pivot-table-plugin .pvtUi .pvtCols.pivottable-plugin-columns,.pivot-table-plugin .pvtUi .pvtVals.pivottable-plugin-values,.pivot-table-plugin .pvtUi .pvtRows.pivottable-plugin-rows{background:transparent}.pivot-table-plugin .pvtUi .pivottable-plugin-unused-variables-header,.pivot-table-plugin .pvtUi .pivottable-plugin-columns-header,.pivot-table-plugin .pvtUi .pivottable-plugin-values-header,.pivot-table-plugin .pvtUi .pivottable-plugin-rows-header{color:#999;text-align:left;margin-left:8px !important;margin-bottom:8px !important;font-style:italic}.pivot-table-plugin .pvtUi td.pvtUnused.pivottable-plugin-unused-variables,.pivot-table-plugin .pvtUi td.pvtCols.pivottable-plugin-columns,.pivot-table-plugin .pvtUi td.pvtVals.pivottable-plugin-values,.pivot-table-plugin .pvtUi td.pvtRows.pivottable-plugin-rows{border:1px solid #ddd}.pivot-table-plugin .pvtUi .pvtAttr.povottable-plugin-variable{background:#337ab7 !important;color:#FFFFFF;padding:4px 7px}.pivot-table-plugin .pvtUi .pvtAttr.povottable-plugin-variable .pvtTriangle{color:#FFFFFF}.pivot-table-plugin .pvtUi .pvtAttr.povottable-plugin-variable .pivottable-plugin-variable-icon{display:inline-block;margin-left:6px;vertical-align:sub}.pivot-table-plugin .pvtUi .pvtAttr.povottable-plugin-variable .pivottable-plugin-variable-icon svg{fill:#FFFFFF}.pivot-table-plugin .pvtUi .pvtTable tr th{background-color:#f2f2f2}.pivot-table-plugin .pvtUi .pvtTable .pvtAxisLabel{background-color:#337ab7;color:#fff}.pivot-table-plugin .pvtUi .pvtTable .pvtTotalLabel{background-color:#f2f2f2}.pivot-table-plugin .pvtUi .pvtTable .pvtRowLabel{background-color:#f2f2f2;text-align:center}.pivot-table-plugin .pvtRendererArea textarea{border-color:#dddddd}.yasr .pivot-table-download-as-button{font-size:16px;font-weight:400;padding:5px 16px;line-height:1.25;border:none;outline:none;color:#FFFFFF;cursor:pointer;background-color:#e84e0f}.yasr .pivot-table-download-as-button .pivot-table-download-as-button-label{padding-left:8px}.yasr .chart-download-as-button{font-size:16px;font-weight:400;padding:5px 16px;line-height:1.25;border:none;outline:none;color:#fff;cursor:pointer;background-color:#e84e0f}.yasr .chart-download-as-button .chart-download-as-button-label{padding-left:8px}:host{display:block}.CodeMirror-hints{position:absolute;z-index:10;overflow:hidden;list-style:none;margin:0;padding:2px;box-shadow:2px 3px 5px rgba(0, 0, 0, 0.2);border:1px solid silver;background:white;max-height:20em;overflow-y:auto}.CodeMirror-hint{margin-bottom:0;padding:5px 25px;white-space:pre;color:black;cursor:pointer}.CodeMirror-hint b{color:#ED4F2F;font-weight:bold}.CodeMirror-hint-active{background:#3385ff;color:white}.CodeMirror-hint-active b{color:#FFAD33}.CodeMirror-hint{max-width:100em}.yasgui-host-element{display:flex;flex-direction:column;gap:10px}.yasgui-host-element .yasgui .yasqe-fullscreen .CodeMirror{position:fixed;top:0;left:0;right:0;bottom:0;height:auto !important;z-index:1015}.yasgui-host-element .yasgui .yasqe .yasqe_buttons{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;height:100%}.yasgui-host-element .yasgui .yasqe .yasqe_buttons .yasqe_share{display:none}.yasgui-host-element .yasgui .yasqe .yasqe_buttons .yasqe_queryButton{width:unset;height:unset;padding:8px 16px;margin-top:1rem;color:#fff;background-color:#e84e0f;outline:none;font-size:1rem}.yasgui-host-element .yasgui .yasqe .yasqe_buttons .yasqe_queryButton:hover{background-color:#d0460d}.yasgui-host-element .yasgui .yasqe .yasqe_buttons .custom-button{border:none;background-color:#fff;color:#e84e0f;outline:none;font-size:2.5em;cursor:pointer;transition:all 0.15s ease-out}.yasgui-host-element .yasgui .yasqe .yasqe_buttons .custom-button:hover{color:#d0460d;transform:scale(1.2)}.yasgui-host-element .yasgui .yasqe .yasqe_buttons .custom-button:disabled:hover,.yasgui-host-element .yasgui .yasqe .yasqe_buttons .custom-button:disabled:focus{color:#818a91;text-decoration:none;cursor:not-allowed;opacity:0.65}.yasgui-host-element .yasgui .yasqe .yasqe_expandResultsButton.disabled{cursor:not-allowed;opacity:0.65}.yasgui-host-element .yasgui .yasqe-footer-buttons{display:flex;justify-content:end;padding-top:10px;padding-bottom:10px}.yasgui-host-element .yasgui .yasqe-footer-buttons .abort-button{padding:8px 16px;color:#FFFFFF;background-color:#e84e0f;outline:none;border:none}.yasgui-host-element .yasgui .yasqe-footer-buttons .abort-button.disabled{opacity:0.65;cursor:not-allowed}.yasgui-host-element .yasgui .yasqe-footer-buttons .abort-button:hover:not(.disabled){cursor:pointer}.yasgui-host-element .yasr .yasr_btnGroup li{display:flex;align-items:end}.yasgui-host-element .yasr table.dataTable thead th{background-color:#02a99a1a;text-align:center}.yasgui-host-element .yasr .dataTable td,.yasgui-host-element .yasr .dataTable thead tr th{border:1px solid #eceeef}.yasgui-host-element .yasr table.dataTable thead th:hover{background-color:#02a99a1a}.yasgui-host-element .yasr .dataTable tr.odd{background-color:#f9f9f9}.yasgui-host-element .yasr .dataTable tr.even{background-color:white}.yasgui-host-element .yasr .yasr_header>*{margin-left:0}.yasgui-host-element .yasr .yasr_header{background-color:#cfefec;margin-bottom:1rem}.yasgui-host-element .yasr .yasr_header .yasr_btnGroup{width:100%;background-color:white;padding-bottom:1rem}.yasgui-host-element .yasr .yasr_header .yasr_btnGroup .spacer{width:100%}.yasgui-host-element .yasr .yasr_header .yasr_btnGroup li{white-space:nowrap}.yasgui-host-element .yasr .yasr_header .yasr_external_ref_btn,.yasgui-host-element .yasr .yasr_header .yasr_downloadIcon{display:none}.yasgui-host-element .yasr .yasr_header .yasr_response_chip{min-height:50px;background-color:#cfefec}.yasgui-host-element .yasr .yasr_header .yasr_response_chip #openChartConfigBtn,.yasgui-host-element .yasr .yasr_header .yasr_response_chip #openPivotTableChartConfigBtn{color:#333;background-color:#fff;border:1px solid #ccc;text-align:center;vertical-align:middle;cursor:pointer;padding:6px 12px;user-select:none}.yasgui-host-element .yasr .yasr_header .yasr_response_chip #openChartConfigBtn:hover,.yasgui-host-element .yasr .yasr_header .yasr_response_chip #openPivotTableChartConfigBtn{background-color:#ebebeb;border-color:#adadad}.yasgui-host-element .yasr .yasr_header .pageSizeWrapper,.yasgui-host-element .yasr .yasr_header .switch{color:#000000A8}.yasgui-host-element .yasr .yasr_header .tableControls .tableFilter,.yasgui-host-element .yasr .yasr_header .tableControls .tableSizer{border-color:#00000026;background-color:#ffffff}.yasgui-host-element .yasr .yasr_header .tableControls .tableFilter:focus,.yasgui-host-element .yasr .yasr_header .tableControls .tableSizer:focus{border-color:#00366380 !important;outline:none !important}.yasgui-host-element .yasr .dataTables_empty{color:#999;background-color:#f9f9f9}.yasgui-host-element .yasr .yasr_results{}.yasgui-host-element .yasr .yasr_results .resource-copy-link{display:none}.yasgui-host-element .yasr .yasr_results .uri-cell{word-break:break-word !important;overflow-wrap:break-word}.yasgui-host-element .yasr .yasr_results .literal-cell{overflow-wrap:break-word;-webkit-hyphens:auto;-moz-hyphens:auto;hyphens:auto}.yasgui-host-element .yasr .yasr_results .dataTable tbody td div.uri-cell:hover .resource-copy-link,.yasgui-host-element .yasr .yasr_results .dataTable tbody td div.triple-cell ul.triple-list li:hover .resource-copy-link,.yasgui-host-element .yasr .yasr_results .dataTable td div.triple-cell div.triple-close:hover .resource-copy-link{display:inline;padding-left:10px;padding-right:10px}.yasgui-host-element .yasr .yasr_results .dataTable tbody td div.triple-cell ul.triple-list li{list-style-type:none}.yasgui-host-element .yasr .yasr_results .dataTable td div.triple-cell .triple-link{color:#770088;text-decoration:none}.yasgui-host-element .yasr .yasr_results .uri-link:hover{text-decoration:none}.yasgui-host-element .yasr .yasr_results .nonUri{color:#003663;border:none;background-color:transparent;padding:0;margin:0}.yasgui-host-element .yasr .yasr_results .dataTable td div.triple-cell .triple-close:hover .resource-copy-link{display:inline;padding-left:10px;padding-right:10px}.yasgui-host-element .yasr .yasr_results .error-response-plugin{padding:10px;background-color:#fbdbd5}.yasgui-host-element .yasr .yasr_results .error-response-plugin .error-response-plugin-header{display:flex;justify-content:space-between}.yasgui-host-element .yasr .yasr_results .error-response-plugin .error-response-plugin-header .error-response-plugin-error-status{font-weight:400;margin-bottom:0.5em}.yasgui-host-element .yasr .yasr_results .error-response-plugin .show-full-message-link,.yasgui-host-element .yasr .yasr_results .error-response-plugin .show-less-message-link{display:block;font-weight:400;text-align:right;text-decoration:none}.yasgui-host-element .yasr .yasr_results .error-response-plugin .show-full-message-link::after,.yasgui-host-element .yasr .yasr_results .error-response-plugin .show-less-message-link::after{font-family:\"icomoon\", sans-serif !important;content:\"\\e921\";display:inline-block;width:auto;height:auto;border:none;margin-left:0;font-size:1.2em;-moz-transition:all 0.2s ease-in;-o-transition:all 0.2s ease-in;-webkit-transition:all 0.2s ease-in;transition:all 0.2s ease-in}.yasgui-host-element .yasr .yasr_results .error-response-plugin .show-full-message-link::after{transform:rotate(180deg)}.yasgui-host-element .yasr .yasr_results .error-response-plugin .error-response-plugin-body{white-space:pre-wrap}.yasgui-host-element .yasr .pageSizeWrapper,.yasgui-host-element .yasr .dataTables_info,.yasgui-host-element .yasr .dataTables_paginate{display:none}.yasgui-host-element .yasr .extended-boolean-plugin{width:70%;margin:5px auto;vertical-align:middle}.yasgui-host-element .yasr .extended-boolean-plugin .response{font-size:3rem;text-align:center;padding:1em}.yasgui-host-element .yasr .extended-boolean-plugin .response-success{background-color:#dff0d8}.yasgui-host-element .yasr .extended-boolean-plugin .response-error{background-color:#fbdbd5}.yasgui-host-element .yasr .dataTables_wrapper .dataTable thead th{background-position:calc(100% - 5px) center}.yasgui-host-element .yasr .dataTables_wrapper .dataTable thead .sorting{background-size:0.9em;background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M41 288h238c21.4 0 32.1 25.9 17 41L177 448c-9.4 9.4-24.6 9.4-33.9 0L24 329c-15.1-15.1-4.4-41 17-41zm255-105L177 64c-9.4-9.4-24.6-9.4-33.9 0L24 183c-15.1 15.1-4.4 41 17 41h238c21.4 0 32.1-25.9 17-41z'/%3E%3C/svg%3E\")}.yasgui-host-element .yasr .dataTables_wrapper .dataTable thead .sorting_asc{background-size:1em;background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M176 352h-48V48a16 16 0 0 0-16-16H80a16 16 0 0 0-16 16v304H16c-14.19 0-21.36 17.24-11.29 27.31l80 96a16 16 0 0 0 22.62 0l80-96C197.35 369.26 190.22 352 176 352zm240-64H288a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h56l-61.26 70.45A32 32 0 0 0 272 446.37V464a16 16 0 0 0 16 16h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-56l61.26-70.45A32 32 0 0 0 432 321.63V304a16 16 0 0 0-16-16zm31.06-85.38l-59.27-160A16 16 0 0 0 372.72 32h-41.44a16 16 0 0 0-15.07 10.62l-59.27 160A16 16 0 0 0 272 224h24.83a16 16 0 0 0 15.23-11.08l4.42-12.92h71l4.41 12.92A16 16 0 0 0 407.16 224H432a16 16 0 0 0 15.06-21.38zM335.61 144L352 96l16.39 48z'/%3E%3C/svg%3E\")}.yasgui-host-element .yasr .dataTables_wrapper .dataTable thead .sorting_desc{background-size:1em;background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M176 352h-48V48a16 16 0 0 0-16-16H80a16 16 0 0 0-16 16v304H16c-14.19 0-21.36 17.24-11.29 27.31l80 96a16 16 0 0 0 22.62 0l80-96C197.35 369.26 190.22 352 176 352zm112-128h128a16 16 0 0 0 16-16v-32a16 16 0 0 0-16-16h-56l61.26-70.45A32 32 0 0 0 432 65.63V48a16 16 0 0 0-16-16H288a16 16 0 0 0-16 16v32a16 16 0 0 0 16 16h56l-61.26 70.45A32 32 0 0 0 272 190.37V208a16 16 0 0 0 16 16zm159.06 234.62l-59.27-160A16 16 0 0 0 372.72 288h-41.44a16 16 0 0 0-15.07 10.62l-59.27 160A16 16 0 0 0 272 480h24.83a16 16 0 0 0 15.23-11.08l4.42-12.92h71l4.41 12.92A16 16 0 0 0 407.16 480H432a16 16 0 0 0 15.06-21.38zM335.61 400L352 352l16.39 48z'/%3E%3C/svg%3E\")}.yasgui-host-element .hidden-control-bar .yasgui .autocompleteWrapper{display:none !important}.yasgui-host-element .hidden-control-bar .yasgui .tabContextButton{display:none}.yasgui-host-element.hidden-editor-tabs .tabsList{display:none}.yasgui-host-element.hidden-result-tabs .yasr_header{display:none}.yasgui-host-element.mode-yasqe .yasgui .yasr{display:none}.yasgui-host-element.mode-yasr .yasgui .tabsList{display:none}.yasgui-host-element.mode-yasr .yasgui .yasqe{display:none}.yasgui-host-element.orientation-horizontal .yasgui{display:grid}.yasgui-host-element.orientation-horizontal .yasgui .tabPanel>div{display:grid;grid-template-columns:0 1fr 1fr;position:relative}.yasgui-host-element.orientation-horizontal .yasgui .tabPanel>div>div:nth-of-type(2){padding-right:15px}.yasgui-host-element button,.yasgui-host-element button:focus{outline:none}.yasgui-host-element #explainPlanQuery{white-space:pre-wrap}";
|
|
2569
3468
|
|
|
2570
3469
|
const OntotextYasguiWebComponent = class {
|
|
2571
3470
|
constructor(hostRef) {
|
|
@@ -3056,6 +3955,8 @@ const OntotextYasguiWebComponent = class {
|
|
|
3056
3955
|
// * Build the internal yasgui configuration using the provided external configuration
|
|
3057
3956
|
const yasguiConfiguration = this.yasguiConfigurationBuilder.build(externalConfiguration);
|
|
3058
3957
|
// * Build a yasgui instance using the configuration
|
|
3958
|
+
YasrService.registerPlugin(PivotTablePlugin.PLUGIN_NAME, PivotTablePlugin);
|
|
3959
|
+
YasrService.registerPlugin(ChartsPlugin.PLUGIN_NAME, ChartsPlugin);
|
|
3059
3960
|
this.ontotextYasgui = this.yasguiBuilder.build(this.hostElement, yasguiConfiguration);
|
|
3060
3961
|
this.afterInit();
|
|
3061
3962
|
}
|