@emuanalytics/flow-rdf-ui 0.0.18 → 0.0.20
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/custom-elements.json +325 -305
- package/dist/flow-rdf-ui.d.ts +6 -1
- package/dist/flow-rdf-ui.js +311 -30
- package/dist/flow-rdf-ui.umd.cjs +311 -30
- package/dist/vscode.html-custom-data.json +64 -59
- package/package.json +2 -1
package/dist/flow-rdf-ui.umd.cjs
CHANGED
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
(function(global2, factory) {
|
|
2
2
|
typeof exports === "object" && typeof module !== "undefined" ? factory(exports, require("chart.js")) : typeof define === "function" && define.amd ? define(["exports", "chart.js"], factory) : (global2 = typeof globalThis !== "undefined" ? globalThis : global2 || self, factory(global2.FlowRDFUI = {}, global2.ChartJS));
|
|
3
3
|
})(this, function(exports2, chart_js) {
|
|
4
|
-
"use strict";
|
|
4
|
+
"use strict";var __defProp = Object.defineProperty;
|
|
5
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
6
|
+
var __publicField = (obj, key, value) => {
|
|
7
|
+
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
8
|
+
return value;
|
|
9
|
+
};
|
|
10
|
+
|
|
5
11
|
/**
|
|
6
12
|
* @license
|
|
7
13
|
* Copyright 2019 Google LLC
|
|
@@ -8083,7 +8089,7 @@
|
|
|
8083
8089
|
position: relative;
|
|
8084
8090
|
width: 100%;
|
|
8085
8091
|
height: 100%;
|
|
8086
|
-
padding: var(--flow-ui-spacing-x-small);
|
|
8092
|
+
/* padding: var(--flow-ui-spacing-x-small); */
|
|
8087
8093
|
}
|
|
8088
8094
|
`;
|
|
8089
8095
|
/*!
|
|
@@ -9238,6 +9244,216 @@
|
|
|
9238
9244
|
}
|
|
9239
9245
|
return passiveSupported;
|
|
9240
9246
|
})();
|
|
9247
|
+
/*!
|
|
9248
|
+
* chartjs-chart-matrix v2.0.1
|
|
9249
|
+
* https://chartjs-chart-matrix.pages.dev/
|
|
9250
|
+
* (c) 2023 Jukka Kurkela
|
|
9251
|
+
* Released under the MIT license
|
|
9252
|
+
*/
|
|
9253
|
+
var version$2 = "2.0.1";
|
|
9254
|
+
class MatrixController extends chart_js.DatasetController {
|
|
9255
|
+
initialize() {
|
|
9256
|
+
this.enableOptionSharing = true;
|
|
9257
|
+
super.initialize();
|
|
9258
|
+
}
|
|
9259
|
+
update(mode) {
|
|
9260
|
+
const me = this;
|
|
9261
|
+
const meta = me._cachedMeta;
|
|
9262
|
+
me.updateElements(meta.data, 0, meta.data.length, mode);
|
|
9263
|
+
}
|
|
9264
|
+
updateElements(rects, start, count, mode) {
|
|
9265
|
+
const me = this;
|
|
9266
|
+
const reset = mode === "reset";
|
|
9267
|
+
const { xScale, yScale } = me._cachedMeta;
|
|
9268
|
+
const firstOpts = me.resolveDataElementOptions(start, mode);
|
|
9269
|
+
const sharedOptions = me.getSharedOptions(mode, rects[start], firstOpts);
|
|
9270
|
+
for (let i2 = start; i2 < start + count; i2++) {
|
|
9271
|
+
const parsed = !reset && me.getParsed(i2);
|
|
9272
|
+
const x2 = reset ? xScale.getBasePixel() : xScale.getPixelForValue(parsed.x);
|
|
9273
|
+
const y2 = reset ? yScale.getBasePixel() : yScale.getPixelForValue(parsed.y);
|
|
9274
|
+
const options = me.resolveDataElementOptions(i2, mode);
|
|
9275
|
+
const { width, height, anchorX, anchorY } = options;
|
|
9276
|
+
const properties = {
|
|
9277
|
+
x: resolveX(anchorX, x2, width),
|
|
9278
|
+
y: resolveY(anchorY, y2, height),
|
|
9279
|
+
width,
|
|
9280
|
+
height,
|
|
9281
|
+
options
|
|
9282
|
+
};
|
|
9283
|
+
me.updateElement(rects[i2], i2, properties, mode);
|
|
9284
|
+
}
|
|
9285
|
+
me.updateSharedOptions(sharedOptions, mode);
|
|
9286
|
+
}
|
|
9287
|
+
draw() {
|
|
9288
|
+
const me = this;
|
|
9289
|
+
const data = me.getMeta().data || [];
|
|
9290
|
+
let i2, ilen;
|
|
9291
|
+
for (i2 = 0, ilen = data.length; i2 < ilen; ++i2) {
|
|
9292
|
+
data[i2].draw(me._ctx);
|
|
9293
|
+
}
|
|
9294
|
+
}
|
|
9295
|
+
}
|
|
9296
|
+
__publicField(MatrixController, "id", "matrix");
|
|
9297
|
+
__publicField(MatrixController, "version", version$2);
|
|
9298
|
+
__publicField(MatrixController, "defaults", {
|
|
9299
|
+
dataElementType: "matrix",
|
|
9300
|
+
animations: {
|
|
9301
|
+
numbers: {
|
|
9302
|
+
type: "number",
|
|
9303
|
+
properties: ["x", "y", "width", "height"]
|
|
9304
|
+
}
|
|
9305
|
+
}
|
|
9306
|
+
});
|
|
9307
|
+
__publicField(MatrixController, "overrides", {
|
|
9308
|
+
interaction: {
|
|
9309
|
+
mode: "nearest",
|
|
9310
|
+
intersect: true
|
|
9311
|
+
},
|
|
9312
|
+
scales: {
|
|
9313
|
+
x: {
|
|
9314
|
+
type: "linear",
|
|
9315
|
+
offset: true
|
|
9316
|
+
},
|
|
9317
|
+
y: {
|
|
9318
|
+
type: "linear",
|
|
9319
|
+
reverse: true
|
|
9320
|
+
}
|
|
9321
|
+
}
|
|
9322
|
+
});
|
|
9323
|
+
function resolveX(anchorX, x2, width) {
|
|
9324
|
+
if (anchorX === "left" || anchorX === "start") {
|
|
9325
|
+
return x2;
|
|
9326
|
+
}
|
|
9327
|
+
if (anchorX === "right" || anchorX === "end") {
|
|
9328
|
+
return x2 - width;
|
|
9329
|
+
}
|
|
9330
|
+
return x2 - width / 2;
|
|
9331
|
+
}
|
|
9332
|
+
function resolveY(anchorY, y2, height) {
|
|
9333
|
+
if (anchorY === "top" || anchorY === "start") {
|
|
9334
|
+
return y2;
|
|
9335
|
+
}
|
|
9336
|
+
if (anchorY === "bottom" || anchorY === "end") {
|
|
9337
|
+
return y2 - height;
|
|
9338
|
+
}
|
|
9339
|
+
return y2 - height / 2;
|
|
9340
|
+
}
|
|
9341
|
+
function getBounds(rect, useFinalPosition) {
|
|
9342
|
+
const { x: x2, y: y2, width, height } = rect.getProps(["x", "y", "width", "height"], useFinalPosition);
|
|
9343
|
+
return { left: x2, top: y2, right: x2 + width, bottom: y2 + height };
|
|
9344
|
+
}
|
|
9345
|
+
function limit(value, min2, max2) {
|
|
9346
|
+
return Math.max(Math.min(value, max2), min2);
|
|
9347
|
+
}
|
|
9348
|
+
function parseBorderWidth(rect, maxW, maxH) {
|
|
9349
|
+
const value = rect.options.borderWidth;
|
|
9350
|
+
let t2, r2, b2, l2;
|
|
9351
|
+
if (isObject$1(value)) {
|
|
9352
|
+
t2 = +value.top || 0;
|
|
9353
|
+
r2 = +value.right || 0;
|
|
9354
|
+
b2 = +value.bottom || 0;
|
|
9355
|
+
l2 = +value.left || 0;
|
|
9356
|
+
} else {
|
|
9357
|
+
t2 = r2 = b2 = l2 = +value || 0;
|
|
9358
|
+
}
|
|
9359
|
+
return {
|
|
9360
|
+
t: limit(t2, 0, maxH),
|
|
9361
|
+
r: limit(r2, 0, maxW),
|
|
9362
|
+
b: limit(b2, 0, maxH),
|
|
9363
|
+
l: limit(l2, 0, maxW)
|
|
9364
|
+
};
|
|
9365
|
+
}
|
|
9366
|
+
function boundingRects(rect) {
|
|
9367
|
+
const bounds = getBounds(rect);
|
|
9368
|
+
const width = bounds.right - bounds.left;
|
|
9369
|
+
const height = bounds.bottom - bounds.top;
|
|
9370
|
+
const border = parseBorderWidth(rect, width / 2, height / 2);
|
|
9371
|
+
return {
|
|
9372
|
+
outer: {
|
|
9373
|
+
x: bounds.left,
|
|
9374
|
+
y: bounds.top,
|
|
9375
|
+
w: width,
|
|
9376
|
+
h: height
|
|
9377
|
+
},
|
|
9378
|
+
inner: {
|
|
9379
|
+
x: bounds.left + border.l,
|
|
9380
|
+
y: bounds.top + border.t,
|
|
9381
|
+
w: width - border.l - border.r,
|
|
9382
|
+
h: height - border.t - border.b
|
|
9383
|
+
}
|
|
9384
|
+
};
|
|
9385
|
+
}
|
|
9386
|
+
function inRange(rect, x2, y2, useFinalPosition) {
|
|
9387
|
+
const skipX = x2 === null;
|
|
9388
|
+
const skipY = y2 === null;
|
|
9389
|
+
const bounds = !rect || skipX && skipY ? false : getBounds(rect, useFinalPosition);
|
|
9390
|
+
return bounds && (skipX || x2 >= bounds.left && x2 <= bounds.right) && (skipY || y2 >= bounds.top && y2 <= bounds.bottom);
|
|
9391
|
+
}
|
|
9392
|
+
class MatrixElement extends chart_js.Element {
|
|
9393
|
+
constructor(cfg) {
|
|
9394
|
+
super();
|
|
9395
|
+
this.options = void 0;
|
|
9396
|
+
this.width = void 0;
|
|
9397
|
+
this.height = void 0;
|
|
9398
|
+
if (cfg) {
|
|
9399
|
+
Object.assign(this, cfg);
|
|
9400
|
+
}
|
|
9401
|
+
}
|
|
9402
|
+
draw(ctx) {
|
|
9403
|
+
const options = this.options;
|
|
9404
|
+
const { inner, outer } = boundingRects(this);
|
|
9405
|
+
const radius = toTRBLCorners(options.borderRadius);
|
|
9406
|
+
ctx.save();
|
|
9407
|
+
if (outer.w !== inner.w || outer.h !== inner.h) {
|
|
9408
|
+
ctx.beginPath();
|
|
9409
|
+
addRoundedRectPath(ctx, { x: outer.x, y: outer.y, w: outer.w, h: outer.h, radius });
|
|
9410
|
+
addRoundedRectPath(ctx, { x: inner.x, y: inner.y, w: inner.w, h: inner.h, radius });
|
|
9411
|
+
ctx.fillStyle = options.backgroundColor;
|
|
9412
|
+
ctx.fill();
|
|
9413
|
+
ctx.fillStyle = options.borderColor;
|
|
9414
|
+
ctx.fill("evenodd");
|
|
9415
|
+
} else {
|
|
9416
|
+
ctx.beginPath();
|
|
9417
|
+
addRoundedRectPath(ctx, { x: inner.x, y: inner.y, w: inner.w, h: inner.h, radius });
|
|
9418
|
+
ctx.fillStyle = options.backgroundColor;
|
|
9419
|
+
ctx.fill();
|
|
9420
|
+
}
|
|
9421
|
+
ctx.restore();
|
|
9422
|
+
}
|
|
9423
|
+
inRange(mouseX, mouseY, useFinalPosition) {
|
|
9424
|
+
return inRange(this, mouseX, mouseY, useFinalPosition);
|
|
9425
|
+
}
|
|
9426
|
+
inXRange(mouseX, useFinalPosition) {
|
|
9427
|
+
return inRange(this, mouseX, null, useFinalPosition);
|
|
9428
|
+
}
|
|
9429
|
+
inYRange(mouseY, useFinalPosition) {
|
|
9430
|
+
return inRange(this, null, mouseY, useFinalPosition);
|
|
9431
|
+
}
|
|
9432
|
+
getCenterPoint(useFinalPosition) {
|
|
9433
|
+
const { x: x2, y: y2, width, height } = this.getProps(["x", "y", "width", "height"], useFinalPosition);
|
|
9434
|
+
return {
|
|
9435
|
+
x: x2 + width / 2,
|
|
9436
|
+
y: y2 + height / 2
|
|
9437
|
+
};
|
|
9438
|
+
}
|
|
9439
|
+
tooltipPosition() {
|
|
9440
|
+
return this.getCenterPoint();
|
|
9441
|
+
}
|
|
9442
|
+
getRange(axis) {
|
|
9443
|
+
return axis === "x" ? this.width / 2 : this.height / 2;
|
|
9444
|
+
}
|
|
9445
|
+
}
|
|
9446
|
+
__publicField(MatrixElement, "id", "matrix");
|
|
9447
|
+
__publicField(MatrixElement, "defaults", {
|
|
9448
|
+
backgroundColor: void 0,
|
|
9449
|
+
borderColor: void 0,
|
|
9450
|
+
borderWidth: void 0,
|
|
9451
|
+
borderRadius: 0,
|
|
9452
|
+
anchorX: "center",
|
|
9453
|
+
anchorY: "center",
|
|
9454
|
+
width: 20,
|
|
9455
|
+
height: 20
|
|
9456
|
+
});
|
|
9241
9457
|
/*!
|
|
9242
9458
|
* chartjs-plugin-annotation v3.0.1
|
|
9243
9459
|
* https://www.chartjs.org/chartjs-plugin-annotation/index
|
|
@@ -10046,15 +10262,15 @@
|
|
|
10046
10262
|
verifyScaleIDs(annotation2, scales);
|
|
10047
10263
|
}
|
|
10048
10264
|
}
|
|
10049
|
-
function changeScaleLimit(scale, range,
|
|
10050
|
-
if (isNumberFinite(range[
|
|
10051
|
-
const changed = scale[
|
|
10052
|
-
scale[
|
|
10265
|
+
function changeScaleLimit(scale, range, limit2, suggestedLimit) {
|
|
10266
|
+
if (isNumberFinite(range[limit2]) && !scaleLimitDefined(scale.options, limit2, suggestedLimit)) {
|
|
10267
|
+
const changed = scale[limit2] !== range[limit2];
|
|
10268
|
+
scale[limit2] = range[limit2];
|
|
10053
10269
|
return changed;
|
|
10054
10270
|
}
|
|
10055
10271
|
}
|
|
10056
|
-
function scaleLimitDefined(scaleOptions,
|
|
10057
|
-
return defined(scaleOptions[
|
|
10272
|
+
function scaleLimitDefined(scaleOptions, limit2, suggestedLimit) {
|
|
10273
|
+
return defined(scaleOptions[limit2]) || defined(scaleOptions[suggestedLimit]);
|
|
10058
10274
|
}
|
|
10059
10275
|
function verifyScaleIDs(annotation2, scales) {
|
|
10060
10276
|
for (const key of ["scaleID", "xScaleID", "yScaleID"]) {
|
|
@@ -10623,8 +10839,8 @@
|
|
|
10623
10839
|
borderColor: "color"
|
|
10624
10840
|
};
|
|
10625
10841
|
function inAxisRange(element, { mouseX, mouseY }, axis, { hBorderWidth, useFinalPosition }) {
|
|
10626
|
-
const
|
|
10627
|
-
return
|
|
10842
|
+
const limit2 = rangeLimit(mouseX, mouseY, element.getProps(["x", "y", "x2", "y2"], useFinalPosition), axis);
|
|
10843
|
+
return limit2.value >= limit2.start - hBorderWidth && limit2.value <= limit2.end + hBorderWidth || isOnLabel(element, { mouseX, mouseY }, useFinalPosition, axis);
|
|
10628
10844
|
}
|
|
10629
10845
|
function isLineInArea({ x: x2, y: y2, x2: x22, y2: y22 }, { top, right, bottom, left }) {
|
|
10630
10846
|
return !(x2 < left && x22 < left || x2 > right && x22 > right || y2 < top && y22 < top || y2 > bottom && y22 > bottom);
|
|
@@ -10863,9 +11079,9 @@
|
|
|
10863
11079
|
}
|
|
10864
11080
|
const { x: x2, y: y2, x2: x22, y2: y22 } = this.getProps(["x", "y", "x2", "y2"], useFinalPosition);
|
|
10865
11081
|
const hBorderWidth = borderWidth / 2;
|
|
10866
|
-
const
|
|
11082
|
+
const limit2 = axis === "y" ? { start: y2, end: y22 } : { start: x2, end: x22 };
|
|
10867
11083
|
const rotatedPoint = rotated({ x: mouseX, y: mouseY }, this.getCenterPoint(useFinalPosition), toRadians(-rotation));
|
|
10868
|
-
return rotatedPoint[axis] >=
|
|
11084
|
+
return rotatedPoint[axis] >= limit2.start - hBorderWidth - EPSILON && rotatedPoint[axis] <= limit2.end + hBorderWidth + EPSILON;
|
|
10869
11085
|
}
|
|
10870
11086
|
getCenterPoint(useFinalPosition) {
|
|
10871
11087
|
return getElementCenterPoint(this, useFinalPosition);
|
|
@@ -10948,8 +11164,8 @@
|
|
|
10948
11164
|
return inPointRange({ x: mouseX, y: mouseY }, this.getCenterPoint(useFinalPosition), width / 2, borderWidth);
|
|
10949
11165
|
}
|
|
10950
11166
|
const hBorderWidth = borderWidth / 2;
|
|
10951
|
-
const
|
|
10952
|
-
return
|
|
11167
|
+
const limit2 = axis === "y" ? { start: y2, end: y22, value: mouseY } : { start: x2, end: x22, value: mouseX };
|
|
11168
|
+
return limit2.value >= limit2.start - hBorderWidth && limit2.value <= limit2.end + hBorderWidth;
|
|
10953
11169
|
}
|
|
10954
11170
|
getCenterPoint(useFinalPosition) {
|
|
10955
11171
|
return getElementCenterPoint(this, useFinalPosition);
|
|
@@ -13168,16 +13384,27 @@
|
|
|
13168
13384
|
chart_js.Legend,
|
|
13169
13385
|
chart_js.Tooltip,
|
|
13170
13386
|
chart_js.Title,
|
|
13171
|
-
annotation
|
|
13387
|
+
annotation,
|
|
13388
|
+
MatrixController,
|
|
13389
|
+
MatrixElement
|
|
13172
13390
|
);
|
|
13173
13391
|
chart_js.Tooltip.positioners.cursor = CursorPositioner;
|
|
13174
13392
|
chart_js.Interaction.modes.interpolate = Interpolate;
|
|
13175
13393
|
chart_js.Chart.defaults.animation = false;
|
|
13176
13394
|
chart_js.Chart.defaults.responsive = true;
|
|
13177
13395
|
chart_js.Chart.defaults.maintainAspectRatio = false;
|
|
13396
|
+
chart_js.Chart.defaults.layout.padding = {
|
|
13397
|
+
top: 5,
|
|
13398
|
+
right: 10,
|
|
13399
|
+
bottom: 5,
|
|
13400
|
+
left: 5
|
|
13401
|
+
};
|
|
13178
13402
|
chart_js.Chart.defaults.plugins.legend.position = "bottom";
|
|
13179
13403
|
chart_js.Chart.defaults.plugins.legend.align = "start";
|
|
13180
13404
|
chart_js.Chart.defaults.plugins.tooltip.position = "cursor";
|
|
13405
|
+
chart_js.Chart.defaults.plugins.title.font = { size: 12 };
|
|
13406
|
+
chart_js.Chart.defaults.plugins.title.align = "start";
|
|
13407
|
+
chart_js.Chart.defaults.plugins.title.padding = { top: 0, bottom: 10 };
|
|
13181
13408
|
}
|
|
13182
13409
|
function registerChartComponent(...components) {
|
|
13183
13410
|
chart_js.Chart.register(...components);
|
|
@@ -19542,14 +19769,24 @@
|
|
|
19542
19769
|
overflow: hidden;
|
|
19543
19770
|
}
|
|
19544
19771
|
|
|
19772
|
+
/* For scrollable panel - enable scroll and (optionally) add padding to scrollable content */
|
|
19545
19773
|
.panel--scrollable .panel__body-wrapper {
|
|
19546
19774
|
overflow-y: auto;
|
|
19547
19775
|
}
|
|
19548
19776
|
|
|
19549
|
-
.panel--with-padding .panel__body {
|
|
19777
|
+
.panel--scrollable.panel--with-padding .panel__body {
|
|
19778
|
+
padding: var(--padding);
|
|
19779
|
+
}
|
|
19780
|
+
|
|
19781
|
+
/* For non-scrollable panel - fix body at 100% and disable scroll. Padding is added to wrapper */
|
|
19782
|
+
.panel.panel--with-padding:not(.panel--scrollable) .panel__body-wrapper {
|
|
19550
19783
|
padding: var(--padding);
|
|
19551
19784
|
}
|
|
19552
19785
|
|
|
19786
|
+
.panel:not(.panel--scrollable) .panel__body {
|
|
19787
|
+
height: 100%;
|
|
19788
|
+
overflow-y: hidden;
|
|
19789
|
+
}
|
|
19553
19790
|
`;
|
|
19554
19791
|
var __defProp$r = Object.defineProperty;
|
|
19555
19792
|
var __getOwnPropDesc$r = Object.getOwnPropertyDescriptor;
|
|
@@ -27837,7 +28074,8 @@ body > .os-scrollbar {
|
|
|
27837
28074
|
}
|
|
27838
28075
|
|
|
27839
28076
|
/* Ensure nav is positioned when tab-group is placed in a split panel and the panel is closed */
|
|
27840
|
-
.tab-group--end,
|
|
28077
|
+
.tab-group--end,
|
|
28078
|
+
.tab-group--bottom {
|
|
27841
28079
|
justify-content: end;
|
|
27842
28080
|
}
|
|
27843
28081
|
|
|
@@ -27904,6 +28142,11 @@ body > .os-scrollbar {
|
|
|
27904
28142
|
width: var(--flow-ui-spacing-x-large);
|
|
27905
28143
|
}
|
|
27906
28144
|
|
|
28145
|
+
/* Make tab panels take up full height */
|
|
28146
|
+
::slotted(flow-ui-tab-panel) {
|
|
28147
|
+
height: 100%;
|
|
28148
|
+
}
|
|
28149
|
+
|
|
27907
28150
|
/*
|
|
27908
28151
|
* Top
|
|
27909
28152
|
*/
|
|
@@ -28042,7 +28285,7 @@ body > .os-scrollbar {
|
|
|
28042
28285
|
|
|
28043
28286
|
.tab-group--start .tab-group__track {
|
|
28044
28287
|
height: 100%;
|
|
28045
|
-
right:0;
|
|
28288
|
+
right: 0;
|
|
28046
28289
|
border-right: solid var(--track-width) var(--track-color);
|
|
28047
28290
|
}
|
|
28048
28291
|
|
|
@@ -28183,7 +28426,6 @@ body > .os-scrollbar {
|
|
|
28183
28426
|
top: auto;
|
|
28184
28427
|
bottom: 0;
|
|
28185
28428
|
}
|
|
28186
|
-
|
|
28187
28429
|
`;
|
|
28188
28430
|
var __defProp$9 = Object.defineProperty;
|
|
28189
28431
|
var __getOwnPropDesc$9 = Object.getOwnPropertyDescriptor;
|
|
@@ -28582,18 +28824,47 @@ body > .os-scrollbar {
|
|
|
28582
28824
|
${componentStyles}
|
|
28583
28825
|
|
|
28584
28826
|
:host {
|
|
28585
|
-
--padding: 0;
|
|
28586
28827
|
display: none;
|
|
28828
|
+
min-height: 0;
|
|
28829
|
+
|
|
28830
|
+
--padding: 0;
|
|
28587
28831
|
}
|
|
28588
28832
|
|
|
28589
28833
|
:host([active]) {
|
|
28590
28834
|
display: block;
|
|
28591
28835
|
}
|
|
28592
28836
|
|
|
28593
|
-
.
|
|
28594
|
-
|
|
28837
|
+
.panel {
|
|
28838
|
+
height: 100%;
|
|
28839
|
+
display: flex;
|
|
28840
|
+
flex-direction: column;
|
|
28841
|
+
}
|
|
28842
|
+
|
|
28843
|
+
/* Body */
|
|
28844
|
+
.panel__body-wrapper {
|
|
28845
|
+
flex: 1;
|
|
28846
|
+
min-height: 0;
|
|
28847
|
+
overflow: hidden;
|
|
28848
|
+
}
|
|
28849
|
+
|
|
28850
|
+
/* For scrollable panel - enable scroll and (optionally) add padding to scrollable content */
|
|
28851
|
+
.panel--scrollable .panel__body-wrapper {
|
|
28852
|
+
overflow-y: auto;
|
|
28853
|
+
}
|
|
28854
|
+
|
|
28855
|
+
.panel--scrollable .panel__body {
|
|
28856
|
+
padding: var(--padding);
|
|
28857
|
+
}
|
|
28858
|
+
|
|
28859
|
+
/* For non-scrollable panel - fix body at 100% and disable scroll. Padding is added to wrapper */
|
|
28860
|
+
.panel:not(.panel--scrollable) .panel__body-wrapper {
|
|
28595
28861
|
padding: var(--padding);
|
|
28596
28862
|
}
|
|
28863
|
+
|
|
28864
|
+
.panel:not(.panel--scrollable) .panel__body {
|
|
28865
|
+
height: 100%;
|
|
28866
|
+
overflow-y: hidden;
|
|
28867
|
+
}
|
|
28597
28868
|
`;
|
|
28598
28869
|
var __defProp$8 = Object.defineProperty;
|
|
28599
28870
|
var __getOwnPropDesc$8 = Object.getOwnPropertyDescriptor;
|
|
@@ -28614,6 +28885,7 @@ body > .os-scrollbar {
|
|
|
28614
28885
|
this.componentId = `flow-ui-tab-panel-${this.attrId}`;
|
|
28615
28886
|
this.name = "";
|
|
28616
28887
|
this.active = false;
|
|
28888
|
+
this.scrollable = false;
|
|
28617
28889
|
}
|
|
28618
28890
|
connectedCallback() {
|
|
28619
28891
|
super.connectedCallback();
|
|
@@ -28625,13 +28897,19 @@ body > .os-scrollbar {
|
|
|
28625
28897
|
}
|
|
28626
28898
|
render() {
|
|
28627
28899
|
return x$2`
|
|
28628
|
-
<
|
|
28629
|
-
part="base"
|
|
28900
|
+
<div
|
|
28630
28901
|
class=${o$9({
|
|
28631
|
-
|
|
28632
|
-
"
|
|
28902
|
+
panel: true,
|
|
28903
|
+
"panel--active": this.active,
|
|
28904
|
+
"panel--scrollable": this.scrollable
|
|
28633
28905
|
})}
|
|
28634
|
-
|
|
28906
|
+
>
|
|
28907
|
+
<div class="panel__body-wrapper">
|
|
28908
|
+
<div part="body" class="panel__body">
|
|
28909
|
+
<slot></slot>
|
|
28910
|
+
</div>
|
|
28911
|
+
</div>
|
|
28912
|
+
</div>
|
|
28635
28913
|
`;
|
|
28636
28914
|
}
|
|
28637
28915
|
};
|
|
@@ -28642,6 +28920,9 @@ body > .os-scrollbar {
|
|
|
28642
28920
|
__decorateClass$8([
|
|
28643
28921
|
n$8({ type: Boolean, reflect: true })
|
|
28644
28922
|
], exports2.FlowTabPanel.prototype, "active", 2);
|
|
28923
|
+
__decorateClass$8([
|
|
28924
|
+
n$8({ type: Boolean, reflect: true })
|
|
28925
|
+
], exports2.FlowTabPanel.prototype, "scrollable", 2);
|
|
28645
28926
|
__decorateClass$8([
|
|
28646
28927
|
watch("active")
|
|
28647
28928
|
], exports2.FlowTabPanel.prototype, "handleActiveChange", 1);
|
|
@@ -31528,7 +31809,7 @@ body > .os-scrollbar {
|
|
|
31528
31809
|
}
|
|
31529
31810
|
|
|
31530
31811
|
`;
|
|
31531
|
-
var
|
|
31812
|
+
var __defProp2 = Object.defineProperty;
|
|
31532
31813
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
31533
31814
|
var __decorateClass = (decorators, target, key, kind) => {
|
|
31534
31815
|
var result = kind > 1 ? void 0 : kind ? __getOwnPropDesc(target, key) : target;
|
|
@@ -31536,7 +31817,7 @@ body > .os-scrollbar {
|
|
|
31536
31817
|
if (decorator = decorators[i2])
|
|
31537
31818
|
result = (kind ? decorator(target, key, result) : decorator(result)) || result;
|
|
31538
31819
|
if (kind && result)
|
|
31539
|
-
|
|
31820
|
+
__defProp2(target, key, result);
|
|
31540
31821
|
return result;
|
|
31541
31822
|
};
|
|
31542
31823
|
class FlowToolButton extends FlowRdfElement {
|
|
@@ -31745,7 +32026,7 @@ body > .os-scrollbar {
|
|
|
31745
32026
|
toggleColorFormat: "Toggle color format"
|
|
31746
32027
|
};
|
|
31747
32028
|
registerTranslation(translation);
|
|
31748
|
-
const version = "0.0.
|
|
32029
|
+
const version = "0.0.20";
|
|
31749
32030
|
const CONSOLE_HIGHLIGHT_STYLE = `
|
|
31750
32031
|
padding: 2px 4px;
|
|
31751
32032
|
border-radius: 2px;
|
|
@@ -96,6 +96,61 @@
|
|
|
96
96
|
],
|
|
97
97
|
"references": []
|
|
98
98
|
},
|
|
99
|
+
{
|
|
100
|
+
"name": "flow-ui-badge",
|
|
101
|
+
"description": "Badges are used to draw attention and display statuses or counts.\n\n\n---\n\n\n\n\n### **Slots:**\n - _default_ - The badge's content.\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.",
|
|
102
|
+
"attributes": [
|
|
103
|
+
{
|
|
104
|
+
"name": "variant",
|
|
105
|
+
"description": "The badge's theme variant.",
|
|
106
|
+
"values": [
|
|
107
|
+
{ "name": "primary" },
|
|
108
|
+
{ "name": "success" },
|
|
109
|
+
{ "name": "neutral" },
|
|
110
|
+
{ "name": "warning" },
|
|
111
|
+
{ "name": "danger" }
|
|
112
|
+
]
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
"name": "pill",
|
|
116
|
+
"description": "Draws a pill-style badge with rounded edges.",
|
|
117
|
+
"values": []
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
"name": "pulse",
|
|
121
|
+
"description": "Makes the badge pulsate to draw attention.",
|
|
122
|
+
"values": []
|
|
123
|
+
}
|
|
124
|
+
],
|
|
125
|
+
"references": []
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
"name": "flow-ui-breadcrumb-item",
|
|
129
|
+
"description": "Breadcrumb Items are used inside [breadcrumbs](/components/breadcrumb) to represent different links.\n\n\n---\n\n\n\n\n### **Slots:**\n - _default_ - The breadcrumb item's label.\n- **prefix** - An optional prefix, usually an icon or icon button.\n- **suffix** - An optional suffix, usually an icon or icon button.\n- **separator** - The separator to use for the breadcrumb item. This will only change the separator for this item. If you want to change it for all items in the group, set the separator on `<flow-ui-breadcrumb>` instead.\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.\n- **label** - The breadcrumb item's label.\n- **prefix** - The container that wraps the prefix.\n- **suffix** - The container that wraps the suffix.\n- **separator** - The container that wraps the separator.",
|
|
130
|
+
"attributes": [
|
|
131
|
+
{
|
|
132
|
+
"name": "href",
|
|
133
|
+
"description": "Optional URL to direct the user to when the breadcrumb item is activated. When set, a link will be rendered\ninternally. When unset, a button will be rendered instead.",
|
|
134
|
+
"values": []
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
"name": "target",
|
|
138
|
+
"description": "Tells the browser where to open the link. Only used when `href` is set.",
|
|
139
|
+
"values": [
|
|
140
|
+
{ "name": "_blank" },
|
|
141
|
+
{ "name": "_parent" },
|
|
142
|
+
{ "name": "_self" },
|
|
143
|
+
{ "name": "_top" }
|
|
144
|
+
]
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
"name": "rel",
|
|
148
|
+
"description": "The `rel` attribute to use on the link. Only used when `href` is set.",
|
|
149
|
+
"values": []
|
|
150
|
+
}
|
|
151
|
+
],
|
|
152
|
+
"references": []
|
|
153
|
+
},
|
|
99
154
|
{
|
|
100
155
|
"name": "flow-ui-avatar",
|
|
101
156
|
"description": "Avatars are used to represent a person or object.\n\n\n---\n\n\n\n\n### **Slots:**\n - **icon** - The default icon to use when no image or initials are present. Works best with `<flow-ui-icon>`.\n\n### **CSS Properties:**\n - **--size** - The size of the avatar. _(default: undefined)_\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.\n- **icon** - The container that wraps the avatar's icon.\n- **initials** - The container that wraps the avatar's initials.\n- **image** - The avatar image. Only shown when the `image` attribute is set.",
|
|
@@ -133,27 +188,12 @@
|
|
|
133
188
|
"references": []
|
|
134
189
|
},
|
|
135
190
|
{
|
|
136
|
-
"name": "flow-ui-breadcrumb
|
|
137
|
-
"description": "
|
|
191
|
+
"name": "flow-ui-breadcrumb",
|
|
192
|
+
"description": "Breadcrumbs provide a group of links so users can easily navigate a website's hierarchy.\n\n\n---\n\n\n\n\n### **Slots:**\n - _default_ - One or more breadcrumb items to display.\n- **separator** - The separator to use between breadcrumb items. Works best with `<flow-ui-icon>`.\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.",
|
|
138
193
|
"attributes": [
|
|
139
194
|
{
|
|
140
|
-
"name": "
|
|
141
|
-
"description": "
|
|
142
|
-
"values": []
|
|
143
|
-
},
|
|
144
|
-
{
|
|
145
|
-
"name": "target",
|
|
146
|
-
"description": "Tells the browser where to open the link. Only used when `href` is set.",
|
|
147
|
-
"values": [
|
|
148
|
-
{ "name": "_blank" },
|
|
149
|
-
{ "name": "_parent" },
|
|
150
|
-
{ "name": "_self" },
|
|
151
|
-
{ "name": "_top" }
|
|
152
|
-
]
|
|
153
|
-
},
|
|
154
|
-
{
|
|
155
|
-
"name": "rel",
|
|
156
|
-
"description": "The `rel` attribute to use on the link. Only used when `href` is set.",
|
|
195
|
+
"name": "label",
|
|
196
|
+
"description": "The label to use for the breadcrumb control. This will not be shown on the screen, but it will be announced by\nscreen readers and other assistive devices to provide more context for users.",
|
|
157
197
|
"values": []
|
|
158
198
|
}
|
|
159
199
|
],
|
|
@@ -316,46 +356,6 @@
|
|
|
316
356
|
],
|
|
317
357
|
"references": []
|
|
318
358
|
},
|
|
319
|
-
{
|
|
320
|
-
"name": "flow-ui-breadcrumb",
|
|
321
|
-
"description": "Breadcrumbs provide a group of links so users can easily navigate a website's hierarchy.\n\n\n---\n\n\n\n\n### **Slots:**\n - _default_ - One or more breadcrumb items to display.\n- **separator** - The separator to use between breadcrumb items. Works best with `<flow-ui-icon>`.\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.",
|
|
322
|
-
"attributes": [
|
|
323
|
-
{
|
|
324
|
-
"name": "label",
|
|
325
|
-
"description": "The label to use for the breadcrumb control. This will not be shown on the screen, but it will be announced by\nscreen readers and other assistive devices to provide more context for users.",
|
|
326
|
-
"values": []
|
|
327
|
-
}
|
|
328
|
-
],
|
|
329
|
-
"references": []
|
|
330
|
-
},
|
|
331
|
-
{
|
|
332
|
-
"name": "flow-ui-badge",
|
|
333
|
-
"description": "Badges are used to draw attention and display statuses or counts.\n\n\n---\n\n\n\n\n### **Slots:**\n - _default_ - The badge's content.\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.",
|
|
334
|
-
"attributes": [
|
|
335
|
-
{
|
|
336
|
-
"name": "variant",
|
|
337
|
-
"description": "The badge's theme variant.",
|
|
338
|
-
"values": [
|
|
339
|
-
{ "name": "primary" },
|
|
340
|
-
{ "name": "success" },
|
|
341
|
-
{ "name": "neutral" },
|
|
342
|
-
{ "name": "warning" },
|
|
343
|
-
{ "name": "danger" }
|
|
344
|
-
]
|
|
345
|
-
},
|
|
346
|
-
{
|
|
347
|
-
"name": "pill",
|
|
348
|
-
"description": "Draws a pill-style badge with rounded edges.",
|
|
349
|
-
"values": []
|
|
350
|
-
},
|
|
351
|
-
{
|
|
352
|
-
"name": "pulse",
|
|
353
|
-
"description": "Makes the badge pulsate to draw attention.",
|
|
354
|
-
"values": []
|
|
355
|
-
}
|
|
356
|
-
],
|
|
357
|
-
"references": []
|
|
358
|
-
},
|
|
359
359
|
{
|
|
360
360
|
"name": "flow-ui-card",
|
|
361
361
|
"description": "Cards can be used to group related subjects in a container.\n\n\n---\n\n\n\n\n### **Slots:**\n - _default_ - The card's main content.\n- **header** - An optional header for the card.\n- **footer** - An optional footer for the card.\n- **image** - An optional image to render at the start of the card.\n\n### **CSS Properties:**\n - **--border-color** - The card's border color, including borders that occur inside the card. _(default: undefined)_\n- **--border-radius** - The border radius for the card's edges. _(default: undefined)_\n- **--border-width** - The width of the card's borders. _(default: undefined)_\n- **--padding** - The padding to use for the card's sections. _(default: undefined)_\n\n### **CSS Parts:**\n - **base** - The component's base wrapper.\n- **image** - The container that wraps the card's image.\n- **header** - The container that wraps the card's header.\n- **body** - The container that wraps the card's main content.\n- **footer** - The container that wraps the card's footer.",
|
|
@@ -1672,6 +1672,11 @@
|
|
|
1672
1672
|
"name": "active",
|
|
1673
1673
|
"description": "When true, the tab panel will be shown.",
|
|
1674
1674
|
"values": []
|
|
1675
|
+
},
|
|
1676
|
+
{
|
|
1677
|
+
"name": "scrollable",
|
|
1678
|
+
"description": "Indicates whether the panel is scrollable. By default overflow is hidden.",
|
|
1679
|
+
"values": []
|
|
1675
1680
|
}
|
|
1676
1681
|
],
|
|
1677
1682
|
"references": []
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@emuanalytics/flow-rdf-ui",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.20",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "dist/flow-rdf-ui.umd.cjs",
|
|
6
6
|
"module": "dist/flow-rdf-ui.js",
|
|
@@ -21,6 +21,7 @@
|
|
|
21
21
|
"@shoelace-style/animations": "^1.1.0",
|
|
22
22
|
"@shoelace-style/localize": "^3.1.1",
|
|
23
23
|
"chartjs-adapter-dayjs-4": "^1.0.4",
|
|
24
|
+
"chartjs-chart-matrix": "^2.0.1",
|
|
24
25
|
"chartjs-plugin-annotation": "^3.0.1",
|
|
25
26
|
"clone-deep": "^4.0.1",
|
|
26
27
|
"composed-offset-position": "^0.0.4",
|