pacem 0.60.3-bernoulli → 0.60.3-lipschitz
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/css/pacem-dark-content.min.css +1 -1
- package/dist/css/pacem-dark-shell.min.css +1 -1
- package/dist/css/pacem-dark.min.css +1 -1
- package/dist/css/pacem-light-content.min.css +1 -1
- package/dist/css/pacem-light-shell.min.css +1 -1
- package/dist/css/pacem-light.min.css +1 -1
- package/dist/css/pacem-phousys-content.min.css +1 -1
- package/dist/css/pacem-phousys-shell.min.css +1 -1
- package/dist/css/pacem-phousys.min.css +1 -1
- package/dist/js/azure-maps.d.ts +1 -1
- package/dist/js/pacem-2d.d.ts +4 -6
- package/dist/js/pacem-2d.js +91 -61
- package/dist/js/pacem-2d.min.js +2 -2
- package/dist/js/pacem-3d.d.ts +1 -1
- package/dist/js/pacem-3d.js +1 -1
- package/dist/js/pacem-3d.min.js +1 -1
- package/dist/js/pacem-charts.d.ts +1 -1
- package/dist/js/pacem-charts.js +1 -1
- package/dist/js/pacem-charts.min.js +1 -1
- package/dist/js/pacem-cms.d.ts +1 -1
- package/dist/js/pacem-cms.js +1 -1
- package/dist/js/pacem-cms.min.js +1 -1
- package/dist/js/pacem-core.d.ts +1 -1
- package/dist/js/pacem-core.js +5 -1
- package/dist/js/pacem-core.min.js +2 -2
- package/dist/js/pacem-foundation.d.ts +1 -1
- package/dist/js/pacem-foundation.js +1 -1
- package/dist/js/pacem-foundation.min.js +1 -1
- package/dist/js/pacem-fx.d.ts +1 -1
- package/dist/js/pacem-fx.js +1 -1
- package/dist/js/pacem-fx.min.js +1 -1
- package/dist/js/pacem-logging.d.ts +1 -1
- package/dist/js/pacem-logging.js +1 -1
- package/dist/js/pacem-logging.min.js +1 -1
- package/dist/js/pacem-maps.d.ts +1 -1
- package/dist/js/pacem-maps.js +1 -1
- package/dist/js/pacem-maps.min.js +1 -1
- package/dist/js/pacem-media.d.ts +1 -1
- package/dist/js/pacem-media.js +1 -1
- package/dist/js/pacem-media.min.js +1 -1
- package/dist/js/pacem-networking.d.ts +1 -1
- package/dist/js/pacem-networking.js +1 -1
- package/dist/js/pacem-networking.min.js +1 -1
- package/dist/js/pacem-numerical.d.ts +1 -1
- package/dist/js/pacem-numerical.js +1 -1
- package/dist/js/pacem-numerical.min.js +1 -1
- package/dist/js/pacem-plus.d.ts +1 -1
- package/dist/js/pacem-plus.js +1 -1
- package/dist/js/pacem-plus.min.js +1 -1
- package/dist/js/pacem-scaffolding.d.ts +1 -1
- package/dist/js/pacem-scaffolding.js +1 -1
- package/dist/js/pacem-scaffolding.min.js +1 -1
- package/dist/js/pacem-ui.d.ts +1 -1
- package/dist/js/pacem-ui.js +1 -1
- package/dist/js/pacem-ui.min.js +1 -1
- package/dist/js/swagger-types.d.ts +1 -1
- package/package.json +1 -1
package/dist/js/azure-maps.d.ts
CHANGED
package/dist/js/pacem-2d.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* pacem v0.60.3-
|
|
2
|
+
* pacem v0.60.3-lipschitz (https://js.pacem.it)
|
|
3
3
|
* Copyright 2026 Pacem (https://pacem.it)
|
|
4
4
|
* Licensed under Apache-2.0
|
|
5
5
|
*/
|
|
@@ -242,6 +242,7 @@ declare namespace Pacem.Components.Drawing {
|
|
|
242
242
|
zoomControl: boolean;
|
|
243
243
|
panModifiers: EventKeyModifier[];
|
|
244
244
|
zoomModifiers: EventKeyModifier[];
|
|
245
|
+
clickModifiers: EventKeyModifier[];
|
|
245
246
|
};
|
|
246
247
|
}
|
|
247
248
|
declare namespace Pacem.Components.Drawing {
|
|
@@ -359,6 +360,7 @@ declare namespace Pacem.Components.Drawing {
|
|
|
359
360
|
}
|
|
360
361
|
}
|
|
361
362
|
declare namespace Pacem.Components.Drawing {
|
|
363
|
+
function getStageOptions(stage: Pacem.Drawing.Stage): StageOptions;
|
|
362
364
|
class Pacem2DElement extends PacemItemsContainerElement<DrawableElement> implements Stage {
|
|
363
365
|
#private;
|
|
364
366
|
get stage(): HTMLElement;
|
|
@@ -381,7 +383,6 @@ declare namespace Pacem.Components.Drawing {
|
|
|
381
383
|
requestDraw(item?: Pacem.Drawing.Drawable): any;
|
|
382
384
|
requestDraw(item: Pacem.Drawing.Group, redrawContent: boolean): any;
|
|
383
385
|
private _buildUpDatasourceFromDOM;
|
|
384
|
-
private _options;
|
|
385
386
|
private _resizeHandler;
|
|
386
387
|
private _getActualAspectRatio;
|
|
387
388
|
private _zoomFromValue;
|
|
@@ -389,7 +390,6 @@ declare namespace Pacem.Components.Drawing {
|
|
|
389
390
|
private _zoomHandler;
|
|
390
391
|
private _getPanPoint;
|
|
391
392
|
private _panHandler;
|
|
392
|
-
private _panningStart;
|
|
393
393
|
private _panStartHandler;
|
|
394
394
|
private _panEndHandler;
|
|
395
395
|
private _invalidateSize;
|
|
@@ -439,7 +439,6 @@ declare namespace Pacem.Components.Drawing {
|
|
|
439
439
|
getCanvas(stage: Pacem2DElement): HTMLCanvasElement;
|
|
440
440
|
private _getScreenInverseMatrix;
|
|
441
441
|
getTransformMatrix(scene: Pacem2DElement): Matrix2D;
|
|
442
|
-
private _dragger;
|
|
443
442
|
viewActivatedCallback(): void;
|
|
444
443
|
disconnectedCallback(): void;
|
|
445
444
|
invalidateSize(scene: Pacem2DElement, size: Size): void;
|
|
@@ -470,9 +469,9 @@ declare namespace Pacem.Components.Drawing {
|
|
|
470
469
|
}
|
|
471
470
|
declare namespace Pacem.Components.Drawing {
|
|
472
471
|
class PacemSvgAdapterElement extends Pacem2DAdapterElement {
|
|
472
|
+
#private;
|
|
473
473
|
snapshot(stage: Pacem.Drawing.Stage, background?: string, type?: string, quality?: number): PromiseLike<Blob>;
|
|
474
474
|
getTransformMatrix(scene: Pacem2DElement): Matrix2D;
|
|
475
|
-
private _dragger;
|
|
476
475
|
viewActivatedCallback(): void;
|
|
477
476
|
disconnectedCallback(): void;
|
|
478
477
|
invalidateSize(scene: Pacem2DElement, size: Size): void;
|
|
@@ -482,7 +481,6 @@ declare namespace Pacem.Components.Drawing {
|
|
|
482
481
|
getHitTarget(scene: Pacem2DElement): Pacem.Drawing.Drawable;
|
|
483
482
|
draw(scene: Pacem2DElement, item?: Pacem.Drawing.Drawable): any;
|
|
484
483
|
draw(scene: Pacem2DElement, item: Pacem.Drawing.Group, deepRedraw: boolean): any;
|
|
485
|
-
private _dragging;
|
|
486
484
|
private _dragInitHandler;
|
|
487
485
|
private _draggingHandler;
|
|
488
486
|
private _dragEndHandler;
|
package/dist/js/pacem-2d.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* pacem v0.60.3-
|
|
2
|
+
* pacem v0.60.3-lipschitz (https://js.pacem.it)
|
|
3
3
|
* Copyright 2026 Pacem (https://pacem.it)
|
|
4
4
|
* Licensed under Apache-2.0
|
|
5
5
|
*/
|
|
@@ -1007,20 +1007,26 @@ var Pacem;
|
|
|
1007
1007
|
if (Pacem.Utils.isNull(val) || typeof val === 'string') {
|
|
1008
1008
|
return 'none';
|
|
1009
1009
|
}
|
|
1010
|
-
return `xM${(val.x.
|
|
1010
|
+
return `xM${(val.x.substring(1))}YM${(val.y.substring(1))} ${(val.slice ? 'slice' : 'meet')}`;
|
|
1011
1011
|
}
|
|
1012
1012
|
};
|
|
1013
1013
|
const DEFAULT_STAGE_OPTIONS = {
|
|
1014
1014
|
panControl: true,
|
|
1015
1015
|
zoomControl: true,
|
|
1016
1016
|
panModifiers: [Pacem.EventKeyModifier.AltKey],
|
|
1017
|
-
zoomModifiers: [Pacem.EventKeyModifier.AltKey]
|
|
1017
|
+
zoomModifiers: [Pacem.EventKeyModifier.AltKey],
|
|
1018
|
+
clickModifiers: []
|
|
1018
1019
|
};
|
|
1020
|
+
function getStageOptions(stage) {
|
|
1021
|
+
const options = stage instanceof Pacem2DElement ? stage.options : {};
|
|
1022
|
+
return Pacem.Utils.extend({}, DEFAULT_STAGE_OPTIONS, options);
|
|
1023
|
+
}
|
|
1024
|
+
Drawing.getStageOptions = getStageOptions;
|
|
1019
1025
|
let Pacem2DElement = class Pacem2DElement extends Components.PacemItemsContainerElement {
|
|
1020
1026
|
constructor() {
|
|
1021
1027
|
super(...arguments);
|
|
1022
1028
|
this.#transformMatrix = Pacem.Matrix2D.identity;
|
|
1023
|
-
this
|
|
1029
|
+
this.#options = DEFAULT_STAGE_OPTIONS;
|
|
1024
1030
|
this._resizeHandler = (evt) => {
|
|
1025
1031
|
this.#size = { x: evt.detail.left, y: evt.detail.top, width: evt.detail.width, height: evt.detail.height };
|
|
1026
1032
|
const adapter = this.adapter;
|
|
@@ -1029,7 +1035,11 @@ var Pacem;
|
|
|
1029
1035
|
}
|
|
1030
1036
|
};
|
|
1031
1037
|
this._zoomHandler = (evt) => {
|
|
1032
|
-
|
|
1038
|
+
// only trusted ui interaction
|
|
1039
|
+
if (!evt.isTrusted) {
|
|
1040
|
+
return;
|
|
1041
|
+
}
|
|
1042
|
+
const opts = this.#options;
|
|
1033
1043
|
if (opts.zoomControl && Pacem.CustomEventUtils.matchModifiers(evt, opts.zoomModifiers)) {
|
|
1034
1044
|
// prevent anything
|
|
1035
1045
|
Pacem.avoidHandler(evt);
|
|
@@ -1041,7 +1051,7 @@ var Pacem;
|
|
|
1041
1051
|
}
|
|
1042
1052
|
};
|
|
1043
1053
|
this._panHandler = (evt) => {
|
|
1044
|
-
const state = this
|
|
1054
|
+
const state = this.#panningStart, actual = this._getPanPoint(evt);
|
|
1045
1055
|
if (!Pacem.Utils.isNullOrEmpty(state && state.point) && !Pacem.Utils.isNull(actual)) {
|
|
1046
1056
|
Pacem.avoidHandler(evt);
|
|
1047
1057
|
const factor = state.factor, vbox = state.box, start = state.point;
|
|
@@ -1054,22 +1064,26 @@ var Pacem;
|
|
|
1054
1064
|
}
|
|
1055
1065
|
};
|
|
1056
1066
|
this._panStartHandler = (evt) => {
|
|
1057
|
-
const opts = this
|
|
1067
|
+
const opts = this.#options;
|
|
1058
1068
|
if (!opts.panControl) {
|
|
1059
1069
|
return;
|
|
1060
1070
|
}
|
|
1071
|
+
// only trusted ui interaction
|
|
1072
|
+
if (!evt.isTrusted) {
|
|
1073
|
+
return;
|
|
1074
|
+
}
|
|
1061
1075
|
const size = this.#size, vbox = this.viewbox || { x: 0, y: 0, width: size.width, height: size.height }, start = this._getPanPoint(evt);
|
|
1062
1076
|
if (start) {
|
|
1063
1077
|
Pacem.avoidHandler(evt);
|
|
1064
1078
|
this._stage.style.pointerEvents = 'none';
|
|
1065
1079
|
const aspectRatio = this._getActualAspectRatio();
|
|
1066
1080
|
const wBased = vbox.width / size.width, hBased = vbox.height / size.height, factor = aspectRatio.slice ? Math.min(wBased, hBased) : Math.max(wBased, hBased);
|
|
1067
|
-
this
|
|
1081
|
+
this.#panningStart = { point: start, box: vbox, factor };
|
|
1068
1082
|
}
|
|
1069
1083
|
};
|
|
1070
1084
|
this._panEndHandler = (evt) => {
|
|
1071
1085
|
this._stage.style.pointerEvents = '';
|
|
1072
|
-
this
|
|
1086
|
+
this.#panningStart = null;
|
|
1073
1087
|
};
|
|
1074
1088
|
}
|
|
1075
1089
|
get stage() {
|
|
@@ -1124,6 +1138,7 @@ var Pacem;
|
|
|
1124
1138
|
_buildUpDatasourceFromDOM() {
|
|
1125
1139
|
this.datasource = (this.items || []).slice();
|
|
1126
1140
|
}
|
|
1141
|
+
#options;
|
|
1127
1142
|
#size;
|
|
1128
1143
|
_getActualAspectRatio() {
|
|
1129
1144
|
const aspectRatio = this.aspectRatio || 'none';
|
|
@@ -1196,12 +1211,13 @@ var Pacem;
|
|
|
1196
1211
|
}
|
|
1197
1212
|
}
|
|
1198
1213
|
_getPanPoint(evt) {
|
|
1199
|
-
const opts = this
|
|
1214
|
+
const opts = this.#options;
|
|
1200
1215
|
if (evt instanceof MouseEvent && Pacem.CustomEventUtils.matchModifiers(evt, opts.panModifiers)) {
|
|
1201
1216
|
return Pacem.CustomEventUtils.getEventCoordinates(evt).page;
|
|
1202
1217
|
}
|
|
1203
1218
|
return null;
|
|
1204
1219
|
}
|
|
1220
|
+
#panningStart;
|
|
1205
1221
|
_invalidateSize() {
|
|
1206
1222
|
this.adapter.invalidateSize(this, this.#size);
|
|
1207
1223
|
const prevTransformMatrix = this.#transformMatrix;
|
|
@@ -1267,7 +1283,7 @@ var Pacem;
|
|
|
1267
1283
|
}
|
|
1268
1284
|
break;
|
|
1269
1285
|
case 'options':
|
|
1270
|
-
this
|
|
1286
|
+
this.#options = getStageOptions(this); // Utils.extend({}, DEFAULT_STAGE_OPTIONS, val || {});
|
|
1271
1287
|
break;
|
|
1272
1288
|
case 'disabled':
|
|
1273
1289
|
case 'datasource':
|
|
@@ -1406,34 +1422,39 @@ var Pacem;
|
|
|
1406
1422
|
&& Number.isFinite(viewbox.y) && Number.isFinite(viewbox.width) && Number.isFinite(viewbox.height);
|
|
1407
1423
|
}
|
|
1408
1424
|
static itemDispatch(target, type, offset) {
|
|
1409
|
-
if (
|
|
1410
|
-
|
|
1411
|
-
if (offset instanceof Event) {
|
|
1412
|
-
originalEvent = offset;
|
|
1413
|
-
}
|
|
1414
|
-
else {
|
|
1415
|
-
dragArgs = { item: target, offset: offset };
|
|
1416
|
-
}
|
|
1417
|
-
if (typeof type === 'string') {
|
|
1418
|
-
evtType = type;
|
|
1419
|
-
}
|
|
1420
|
-
else {
|
|
1421
|
-
evtType = type.type;
|
|
1422
|
-
originalEvent = type.originalEvent;
|
|
1423
|
-
}
|
|
1424
|
-
const m = target.stage.transformMatrix;
|
|
1425
|
-
const evt = () => offset instanceof Event ? new Pacem.Drawing.DrawableEvent(evtType, target, originalEvent, m) : new Pacem.Drawing.DragEvent(evtType, { detail: dragArgs, cancelable: evtType === Pacem.UI.DragDropEventType.Init || evtType === Pacem.UI.DragDropEventType.Drag }, originalEvent, m), itemevt = offset instanceof Event ? new Pacem.Drawing.DrawableEvent('item' + evtType, target, originalEvent, m) : new Pacem.Drawing.DragEvent('item' + evtType, { detail: dragArgs, cancelable: evtType === Pacem.UI.DragDropEventType.Init || evtType === Pacem.UI.DragDropEventType.Drag }, originalEvent, m);
|
|
1426
|
-
var prevent = false;
|
|
1427
|
-
if (target instanceof EventTarget) {
|
|
1428
|
-
const evnt = evt();
|
|
1429
|
-
target.dispatchEvent(evnt);
|
|
1430
|
-
prevent = evnt.defaultPrevented;
|
|
1431
|
-
}
|
|
1432
|
-
target.stage.dispatchEvent(itemevt);
|
|
1433
|
-
// was the event (in one of its forms) rejected?
|
|
1434
|
-
return prevent || itemevt.defaultPrevented;
|
|
1425
|
+
if (Pacem.Utils.isNull(target)) {
|
|
1426
|
+
return false;
|
|
1435
1427
|
}
|
|
1436
|
-
|
|
1428
|
+
var dragArgs, originalEvent, evtType;
|
|
1429
|
+
if (offset instanceof Event) {
|
|
1430
|
+
originalEvent = offset;
|
|
1431
|
+
}
|
|
1432
|
+
else {
|
|
1433
|
+
dragArgs = { item: target, offset: offset };
|
|
1434
|
+
}
|
|
1435
|
+
if (typeof type === 'string') {
|
|
1436
|
+
evtType = type;
|
|
1437
|
+
}
|
|
1438
|
+
else {
|
|
1439
|
+
evtType = type.type;
|
|
1440
|
+
originalEvent = type.originalEvent;
|
|
1441
|
+
}
|
|
1442
|
+
const m = target.stage.transformMatrix;
|
|
1443
|
+
const evt = () => offset instanceof Event
|
|
1444
|
+
? new Pacem.Drawing.DrawableEvent(evtType, target, originalEvent, m)
|
|
1445
|
+
: new Pacem.Drawing.DragEvent(evtType, { detail: dragArgs, cancelable: evtType === Pacem.UI.DragDropEventType.Init || evtType === Pacem.UI.DragDropEventType.Drag }, originalEvent, m);
|
|
1446
|
+
const itemevt = offset instanceof Event
|
|
1447
|
+
? new Pacem.Drawing.DrawableEvent('item' + evtType, target, originalEvent, m)
|
|
1448
|
+
: new Pacem.Drawing.DragEvent('item' + evtType, { detail: dragArgs, cancelable: evtType === Pacem.UI.DragDropEventType.Init || evtType === Pacem.UI.DragDropEventType.Drag }, originalEvent, m);
|
|
1449
|
+
var prevent = false;
|
|
1450
|
+
if (target instanceof EventTarget) {
|
|
1451
|
+
const evnt = evt();
|
|
1452
|
+
target.dispatchEvent(evnt);
|
|
1453
|
+
prevent = evnt.defaultPrevented;
|
|
1454
|
+
}
|
|
1455
|
+
target.stage.dispatchEvent(itemevt);
|
|
1456
|
+
// was the event (in one of its forms) rejected?
|
|
1457
|
+
return prevent || itemevt.defaultPrevented;
|
|
1437
1458
|
}
|
|
1438
1459
|
}
|
|
1439
1460
|
Drawing.AdapterUtils = AdapterUtils;
|
|
@@ -1555,11 +1576,14 @@ var Pacem;
|
|
|
1555
1576
|
if (canvas instanceof HTMLCanvasElement) {
|
|
1556
1577
|
const stage = GETVAR(canvas, CANVAS_SCENE_VAR), hitTarget = this._hitTarget;
|
|
1557
1578
|
const type = evt.type.replace(/^(mouse|touch)/, ''), fineType = type === 'end' ? 'click' : type;
|
|
1558
|
-
|
|
1559
|
-
|
|
1560
|
-
|
|
1561
|
-
|
|
1562
|
-
|
|
1579
|
+
const opts = Drawing.getStageOptions(stage);
|
|
1580
|
+
if (Pacem.CustomEventUtils.matchModifiers(evt, opts.clickModifiers)) {
|
|
1581
|
+
if (!Pacem.Utils.isNull(hitTarget) && hitTarget.stage === stage) {
|
|
1582
|
+
Drawing.AdapterUtils.itemDispatch(hitTarget, fineType, evt);
|
|
1583
|
+
}
|
|
1584
|
+
else {
|
|
1585
|
+
Drawing.AdapterUtils.stageDispatch(stage, fineType, evt);
|
|
1586
|
+
}
|
|
1563
1587
|
}
|
|
1564
1588
|
}
|
|
1565
1589
|
};
|
|
@@ -1596,9 +1620,10 @@ var Pacem;
|
|
|
1596
1620
|
}
|
|
1597
1621
|
return Pacem.Matrix2D.identity;
|
|
1598
1622
|
}
|
|
1623
|
+
#dragger;
|
|
1599
1624
|
viewActivatedCallback() {
|
|
1600
1625
|
super.viewActivatedCallback();
|
|
1601
|
-
const dragDrop = this
|
|
1626
|
+
const dragDrop = this.#dragger = document.createElement(Pacem.P + '-drag-drop');
|
|
1602
1627
|
dragDrop.mode = Pacem.UI.DragDataMode.Copy;
|
|
1603
1628
|
dragDrop.dropBehavior = Pacem.UI.DropBehavior.None;
|
|
1604
1629
|
dragDrop.spillBehavior = Pacem.UI.DropTargetMissedBehavior.None;
|
|
@@ -1613,7 +1638,7 @@ var Pacem;
|
|
|
1613
1638
|
dragDrop.addEventListener(Pacem.UI.DragDropEventType.End, this._dragEndHandler, false);
|
|
1614
1639
|
}
|
|
1615
1640
|
disconnectedCallback() {
|
|
1616
|
-
const dragger = this
|
|
1641
|
+
const dragger = this.#dragger;
|
|
1617
1642
|
if (!Pacem.Utils.isNull(dragger)) {
|
|
1618
1643
|
dragger.removeEventListener(Pacem.UI.DragDropEventType.Init, this._dragInitHandler, false);
|
|
1619
1644
|
dragger.removeEventListener(Pacem.UI.DragDropEventType.Drag, this._draggingHandler, false);
|
|
@@ -1680,7 +1705,7 @@ var Pacem;
|
|
|
1680
1705
|
throw 'Provided scene is null or undefined.';
|
|
1681
1706
|
}
|
|
1682
1707
|
const scenes = this._scenes;
|
|
1683
|
-
const dragger = this
|
|
1708
|
+
const dragger = this.#dragger;
|
|
1684
1709
|
// already in the store?
|
|
1685
1710
|
if (scenes.has(scene)) {
|
|
1686
1711
|
const canvas = scenes.get(scene).context.canvas;
|
|
@@ -1715,7 +1740,7 @@ var Pacem;
|
|
|
1715
1740
|
const scenes = this._scenes;
|
|
1716
1741
|
if (scenes.has(scene)) {
|
|
1717
1742
|
var tuple = scenes.get(scene), context = tuple.context, canvas = context.canvas;
|
|
1718
|
-
const dragger = this
|
|
1743
|
+
const dragger = this.#dragger;
|
|
1719
1744
|
if (!Pacem.Utils.isNull(dragger)) {
|
|
1720
1745
|
dragger.unregister(canvas);
|
|
1721
1746
|
}
|
|
@@ -2106,7 +2131,7 @@ var Pacem;
|
|
|
2106
2131
|
};
|
|
2107
2132
|
this._draggingHandler = (evt) => {
|
|
2108
2133
|
Pacem.avoidHandler(evt);
|
|
2109
|
-
this
|
|
2134
|
+
this.#dragging = true;
|
|
2110
2135
|
const el = evt.detail.element;
|
|
2111
2136
|
const data = evt.detail.data;
|
|
2112
2137
|
const args = evt.detail;
|
|
@@ -2132,7 +2157,7 @@ var Pacem;
|
|
|
2132
2157
|
}
|
|
2133
2158
|
};
|
|
2134
2159
|
this._dragEndHandler = (evt) => {
|
|
2135
|
-
this
|
|
2160
|
+
this.#dragging = false;
|
|
2136
2161
|
const args = evt.detail, el = args.element, data = args.data, transform = Pacem.Utils.deserializeTransform(el.style);
|
|
2137
2162
|
// store transform
|
|
2138
2163
|
const offset = { x: transform.e, y: transform.f };
|
|
@@ -2148,7 +2173,7 @@ var Pacem;
|
|
|
2148
2173
|
Drawing.AdapterUtils.itemDispatch(data.item, evt, offset);
|
|
2149
2174
|
};
|
|
2150
2175
|
this._mouseleaveHandler = (evt) => {
|
|
2151
|
-
if (this
|
|
2176
|
+
if (this.#dragging) {
|
|
2152
2177
|
return;
|
|
2153
2178
|
}
|
|
2154
2179
|
const hitTarget = this._hitTarget;
|
|
@@ -2157,13 +2182,13 @@ var Pacem;
|
|
|
2157
2182
|
}
|
|
2158
2183
|
this._hitTarget = null;
|
|
2159
2184
|
if (!Pacem.Utils.isNull(hitTarget)) {
|
|
2160
|
-
this.
|
|
2185
|
+
this.#dragger.unregister(this._items.get(hitTarget));
|
|
2161
2186
|
Drawing.AdapterUtils.itemDispatch(hitTarget, 'out', evt);
|
|
2162
2187
|
}
|
|
2163
2188
|
};
|
|
2164
2189
|
this._mousemoveHandler = (evt) => {
|
|
2165
2190
|
var pt = Pacem.CustomEventUtils.getEventCoordinates(evt).client;
|
|
2166
|
-
if (!this
|
|
2191
|
+
if (!this.#dragging) {
|
|
2167
2192
|
// not dragging around
|
|
2168
2193
|
var d = null;
|
|
2169
2194
|
const root = evt.target.getRootNode();
|
|
@@ -2178,12 +2203,12 @@ var Pacem;
|
|
|
2178
2203
|
const hitTarget = this._hitTarget = val;
|
|
2179
2204
|
if (val !== old) {
|
|
2180
2205
|
if (!Pacem.Utils.isNull(old)) {
|
|
2181
|
-
this.
|
|
2206
|
+
this.#dragger.unregister(this._items.get(old));
|
|
2182
2207
|
Drawing.AdapterUtils.itemDispatch(old, 'out', evt);
|
|
2183
2208
|
}
|
|
2184
2209
|
if (!Pacem.Utils.isNull(val)) {
|
|
2185
2210
|
if (val.draggable) {
|
|
2186
|
-
this.
|
|
2211
|
+
this.#dragger.register(this._items.get(val));
|
|
2187
2212
|
}
|
|
2188
2213
|
Drawing.AdapterUtils.itemDispatch(val, 'over', evt);
|
|
2189
2214
|
}
|
|
@@ -2203,11 +2228,14 @@ var Pacem;
|
|
|
2203
2228
|
if (svg instanceof SVGSVGElement) {
|
|
2204
2229
|
const stage = GETVAR(svg, STAGE_VAR), hitTarget = this._hitTarget;
|
|
2205
2230
|
const type = evt.type.replace(/^mouse/, '');
|
|
2206
|
-
|
|
2207
|
-
|
|
2208
|
-
|
|
2209
|
-
|
|
2210
|
-
|
|
2231
|
+
const opts = Drawing.getStageOptions(stage);
|
|
2232
|
+
if (Pacem.CustomEventUtils.matchModifiers(evt, opts.clickModifiers)) {
|
|
2233
|
+
if (!Pacem.Utils.isNull(hitTarget) && hitTarget.stage === stage) {
|
|
2234
|
+
Drawing.AdapterUtils.itemDispatch(hitTarget, type, evt);
|
|
2235
|
+
}
|
|
2236
|
+
else {
|
|
2237
|
+
Drawing.AdapterUtils.stageDispatch(stage, type, evt);
|
|
2238
|
+
}
|
|
2211
2239
|
}
|
|
2212
2240
|
}
|
|
2213
2241
|
};
|
|
@@ -2232,9 +2260,10 @@ var Pacem;
|
|
|
2232
2260
|
}
|
|
2233
2261
|
return Pacem.Matrix2D.identity;
|
|
2234
2262
|
}
|
|
2263
|
+
#dragger;
|
|
2235
2264
|
viewActivatedCallback() {
|
|
2236
2265
|
super.viewActivatedCallback();
|
|
2237
|
-
const dragDrop = this
|
|
2266
|
+
const dragDrop = this.#dragger = document.createElement(Pacem.P + '-drag-drop');
|
|
2238
2267
|
dragDrop.mode = Pacem.UI.DragDataMode.Self;
|
|
2239
2268
|
// append
|
|
2240
2269
|
const shell = Pacem.CustomElementUtils.findAncestorShell(this);
|
|
@@ -2244,7 +2273,7 @@ var Pacem;
|
|
|
2244
2273
|
dragDrop.addEventListener(Pacem.UI.DragDropEventType.End, this._dragEndHandler, false);
|
|
2245
2274
|
}
|
|
2246
2275
|
disconnectedCallback() {
|
|
2247
|
-
const dragger = this
|
|
2276
|
+
const dragger = this.#dragger;
|
|
2248
2277
|
if (!Pacem.Utils.isNull(dragger)) {
|
|
2249
2278
|
dragger.removeEventListener(Pacem.UI.DragDropEventType.Init, this._dragInitHandler, false);
|
|
2250
2279
|
dragger.removeEventListener(Pacem.UI.DragDropEventType.Drag, this._draggingHandler, false);
|
|
@@ -2355,6 +2384,7 @@ var Pacem;
|
|
|
2355
2384
|
}
|
|
2356
2385
|
this._draw(scene, parent, items || [], flow, deepRedraw);
|
|
2357
2386
|
}
|
|
2387
|
+
#dragging;
|
|
2358
2388
|
_hasItems(object) {
|
|
2359
2389
|
return Pacem.Drawing.isGroup(object);
|
|
2360
2390
|
}
|