camunda-bpmn-js 0.14.0 → 0.15.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/CHANGELOG.md +276 -270
- package/LICENSE +20 -20
- package/README.md +84 -84
- package/dist/assets/base-modeler.css +4 -4
- package/dist/assets/base-navigated-viewer.css +1 -1
- package/dist/assets/base-viewer.css +1 -1
- package/dist/assets/bpmn-js.css +33 -4
- package/dist/assets/camunda-cloud-modeler.css +1 -1
- package/dist/assets/camunda-platform-modeler.css +1 -1
- package/dist/assets/diagram-js.css +55 -51
- package/dist/assets/element-templates.css +4 -0
- package/dist/assets/properties-panel.css +929 -900
- package/dist/base-modeler.development.js +7372 -5941
- package/dist/base-modeler.production.min.js +4 -4
- package/dist/base-navigated-viewer.development.js +21592 -21248
- package/dist/base-navigated-viewer.production.min.js +3 -2
- package/dist/base-viewer.development.js +20793 -20449
- package/dist/base-viewer.production.min.js +3 -2
- package/dist/camunda-cloud-modeler.development.js +9568 -7851
- package/dist/camunda-cloud-modeler.production.min.js +4 -4
- package/dist/camunda-cloud-navigated-viewer.development.js +647 -273
- package/dist/camunda-cloud-navigated-viewer.production.min.js +2 -2
- package/dist/camunda-cloud-viewer.development.js +646 -272
- package/dist/camunda-cloud-viewer.production.min.js +2 -2
- package/dist/camunda-platform-modeler.development.js +7557 -6077
- package/dist/camunda-platform-modeler.production.min.js +4 -4
- package/dist/camunda-platform-navigated-viewer.development.js +631 -257
- package/dist/camunda-platform-navigated-viewer.production.min.js +2 -2
- package/dist/camunda-platform-viewer.development.js +630 -256
- package/dist/camunda-platform-viewer.production.min.js +2 -2
- package/lib/base/Modeler.js +46 -46
- package/lib/base/NavigatedViewer.js +2 -2
- package/lib/base/Viewer.js +2 -2
- package/lib/camunda-cloud/Modeler.js +68 -68
- package/lib/camunda-cloud/NavigatedViewer.js +34 -34
- package/lib/camunda-cloud/Viewer.js +34 -34
- package/lib/camunda-cloud/features/context-pad/ContextPadOptions.js +15 -15
- package/lib/camunda-cloud/features/context-pad/index.js +6 -6
- package/lib/camunda-cloud/features/drilldown/index.js +3 -3
- package/lib/camunda-cloud/features/palette/PaletteOptions.js +14 -14
- package/lib/camunda-cloud/features/palette/PaletteProvider.js +31 -31
- package/lib/camunda-cloud/features/palette/index.js +6 -6
- package/lib/camunda-cloud/features/popup-menu/ReplaceMenuProvider.js +71 -71
- package/lib/camunda-cloud/features/popup-menu/ReplaceOptions.js +46 -46
- package/lib/camunda-cloud/features/popup-menu/index.js +6 -6
- package/lib/camunda-cloud/features/rules/BpmnRules.js +137 -137
- package/lib/camunda-cloud/features/rules/index.js +5 -5
- package/lib/camunda-cloud/util/commonModules.js +13 -13
- package/lib/camunda-platform/Modeler.js +46 -46
- package/lib/camunda-platform/NavigatedViewer.js +25 -25
- package/lib/camunda-platform/Viewer.js +24 -24
- package/lib/camunda-platform/util/commonModules.js +6 -6
- package/lib/util/ExtensionElementsUtil.js +59 -59
- package/package.json +110 -110
- package/styles/base-modeler.css +4 -4
- package/styles/base-navigated-viewer.css +1 -1
- package/styles/base-viewer.css +1 -1
- package/styles/camunda-cloud-modeler.css +1 -1
- package/styles/camunda-platform-modeler.css +1 -1
- package/util/index.js +39 -39
|
@@ -41,6 +41,8 @@
|
|
|
41
41
|
}
|
|
42
42
|
});
|
|
43
43
|
|
|
44
|
+
function e(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}));}
|
|
45
|
+
|
|
44
46
|
/**
|
|
45
47
|
* Flatten array, one level deep.
|
|
46
48
|
*
|
|
@@ -1389,6 +1391,8 @@
|
|
|
1389
1391
|
return gfx;
|
|
1390
1392
|
}
|
|
1391
1393
|
|
|
1394
|
+
var black = 'hsl(225, 10%, 15%)';
|
|
1395
|
+
|
|
1392
1396
|
// element utils //////////////////////
|
|
1393
1397
|
|
|
1394
1398
|
/**
|
|
@@ -1439,7 +1443,7 @@
|
|
|
1439
1443
|
function getStrokeColor(element, defaultColor) {
|
|
1440
1444
|
var di = getDi(element);
|
|
1441
1445
|
|
|
1442
|
-
return di.get('color:border-color') || di.get('bioc:stroke') || defaultColor ||
|
|
1446
|
+
return di.get('color:border-color') || di.get('bioc:stroke') || defaultColor || black;
|
|
1443
1447
|
}
|
|
1444
1448
|
|
|
1445
1449
|
function getLabelColor(element, defaultColor, defaultStrokeColor) {
|
|
@@ -1529,6 +1533,101 @@
|
|
|
1529
1533
|
return componentsToPath(rectPath);
|
|
1530
1534
|
}
|
|
1531
1535
|
|
|
1536
|
+
/**
|
|
1537
|
+
* Flatten array, one level deep.
|
|
1538
|
+
*
|
|
1539
|
+
* @param {Array<?>} arr
|
|
1540
|
+
*
|
|
1541
|
+
* @return {Array<?>}
|
|
1542
|
+
*/
|
|
1543
|
+
|
|
1544
|
+
var nativeToString$1 = Object.prototype.toString;
|
|
1545
|
+
var nativeHasOwnProperty$1 = Object.prototype.hasOwnProperty;
|
|
1546
|
+
function isUndefined$1(obj) {
|
|
1547
|
+
return obj === undefined;
|
|
1548
|
+
}
|
|
1549
|
+
function isArray$1(obj) {
|
|
1550
|
+
return nativeToString$1.call(obj) === '[object Array]';
|
|
1551
|
+
}
|
|
1552
|
+
/**
|
|
1553
|
+
* Return true, if target owns a property with the given key.
|
|
1554
|
+
*
|
|
1555
|
+
* @param {Object} target
|
|
1556
|
+
* @param {String} key
|
|
1557
|
+
*
|
|
1558
|
+
* @return {Boolean}
|
|
1559
|
+
*/
|
|
1560
|
+
|
|
1561
|
+
function has$1(target, key) {
|
|
1562
|
+
return nativeHasOwnProperty$1.call(target, key);
|
|
1563
|
+
}
|
|
1564
|
+
/**
|
|
1565
|
+
* Iterate over collection; returning something
|
|
1566
|
+
* (non-undefined) will stop iteration.
|
|
1567
|
+
*
|
|
1568
|
+
* @param {Array|Object} collection
|
|
1569
|
+
* @param {Function} iterator
|
|
1570
|
+
*
|
|
1571
|
+
* @return {Object} return result that stopped the iteration
|
|
1572
|
+
*/
|
|
1573
|
+
|
|
1574
|
+
function forEach$1(collection, iterator) {
|
|
1575
|
+
var val, result;
|
|
1576
|
+
|
|
1577
|
+
if (isUndefined$1(collection)) {
|
|
1578
|
+
return;
|
|
1579
|
+
}
|
|
1580
|
+
|
|
1581
|
+
var convertKey = isArray$1(collection) ? toNum$1 : identity$1;
|
|
1582
|
+
|
|
1583
|
+
for (var key in collection) {
|
|
1584
|
+
if (has$1(collection, key)) {
|
|
1585
|
+
val = collection[key];
|
|
1586
|
+
result = iterator(val, convertKey(key));
|
|
1587
|
+
|
|
1588
|
+
if (result === false) {
|
|
1589
|
+
return val;
|
|
1590
|
+
}
|
|
1591
|
+
}
|
|
1592
|
+
}
|
|
1593
|
+
}
|
|
1594
|
+
|
|
1595
|
+
function identity$1(arg) {
|
|
1596
|
+
return arg;
|
|
1597
|
+
}
|
|
1598
|
+
|
|
1599
|
+
function toNum$1(arg) {
|
|
1600
|
+
return Number(arg);
|
|
1601
|
+
}
|
|
1602
|
+
|
|
1603
|
+
/**
|
|
1604
|
+
* Assigns style attributes in a style-src compliant way.
|
|
1605
|
+
*
|
|
1606
|
+
* @param {Element} element
|
|
1607
|
+
* @param {...Object} styleSources
|
|
1608
|
+
*
|
|
1609
|
+
* @return {Element} the element
|
|
1610
|
+
*/
|
|
1611
|
+
function assign$1(element) {
|
|
1612
|
+
var target = element.style;
|
|
1613
|
+
|
|
1614
|
+
for (var _len = arguments.length, styleSources = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
|
|
1615
|
+
styleSources[_key - 1] = arguments[_key];
|
|
1616
|
+
}
|
|
1617
|
+
|
|
1618
|
+
forEach$1(styleSources, function (style) {
|
|
1619
|
+
if (!style) {
|
|
1620
|
+
return;
|
|
1621
|
+
}
|
|
1622
|
+
|
|
1623
|
+
forEach$1(style, function (value, key) {
|
|
1624
|
+
target[key] = value;
|
|
1625
|
+
});
|
|
1626
|
+
});
|
|
1627
|
+
|
|
1628
|
+
return element;
|
|
1629
|
+
}
|
|
1630
|
+
|
|
1532
1631
|
/**
|
|
1533
1632
|
* Set attribute `name` to `val`, or get attr `name`.
|
|
1534
1633
|
*
|
|
@@ -1878,7 +1977,7 @@
|
|
|
1878
1977
|
// when delegating.
|
|
1879
1978
|
var forceCaptureEvents = ['focus', 'blur'];
|
|
1880
1979
|
|
|
1881
|
-
function bind$
|
|
1980
|
+
function bind$2(el, selector, type, fn, capture) {
|
|
1882
1981
|
if (forceCaptureEvents.indexOf(type) !== -1) {
|
|
1883
1982
|
capture = true;
|
|
1884
1983
|
}
|
|
@@ -1910,7 +2009,7 @@
|
|
|
1910
2009
|
}
|
|
1911
2010
|
|
|
1912
2011
|
var delegate = {
|
|
1913
|
-
bind: bind$
|
|
2012
|
+
bind: bind$2,
|
|
1914
2013
|
unbind: unbind$1
|
|
1915
2014
|
};
|
|
1916
2015
|
|
|
@@ -2278,7 +2377,7 @@
|
|
|
2278
2377
|
|
|
2279
2378
|
function addMarker(id, options) {
|
|
2280
2379
|
var attrs = assign({
|
|
2281
|
-
fill:
|
|
2380
|
+
fill: black,
|
|
2282
2381
|
strokeWidth: 1,
|
|
2283
2382
|
strokeLinecap: 'round',
|
|
2284
2383
|
strokeDasharray: 'none'
|
|
@@ -2457,7 +2556,7 @@
|
|
|
2457
2556
|
offset = offset || 0;
|
|
2458
2557
|
|
|
2459
2558
|
attrs = computeStyle(attrs, {
|
|
2460
|
-
stroke:
|
|
2559
|
+
stroke: black,
|
|
2461
2560
|
strokeWidth: 2,
|
|
2462
2561
|
fill: 'white'
|
|
2463
2562
|
});
|
|
@@ -2492,7 +2591,7 @@
|
|
|
2492
2591
|
offset = offset || 0;
|
|
2493
2592
|
|
|
2494
2593
|
attrs = computeStyle(attrs, {
|
|
2495
|
-
stroke:
|
|
2594
|
+
stroke: black,
|
|
2496
2595
|
strokeWidth: 2,
|
|
2497
2596
|
fill: 'white'
|
|
2498
2597
|
});
|
|
@@ -2525,7 +2624,7 @@
|
|
|
2525
2624
|
}).join(' ');
|
|
2526
2625
|
|
|
2527
2626
|
attrs = computeStyle(attrs, {
|
|
2528
|
-
stroke:
|
|
2627
|
+
stroke: black,
|
|
2529
2628
|
strokeWidth: 2,
|
|
2530
2629
|
fill: 'white'
|
|
2531
2630
|
});
|
|
@@ -2543,7 +2642,7 @@
|
|
|
2543
2642
|
|
|
2544
2643
|
function drawLine(parentGfx, waypoints, attrs) {
|
|
2545
2644
|
attrs = computeStyle(attrs, [ 'no-fill' ], {
|
|
2546
|
-
stroke:
|
|
2645
|
+
stroke: black,
|
|
2547
2646
|
strokeWidth: 2,
|
|
2548
2647
|
fill: 'none'
|
|
2549
2648
|
});
|
|
@@ -2559,7 +2658,7 @@
|
|
|
2559
2658
|
|
|
2560
2659
|
attrs = computeStyle(attrs, [ 'no-fill' ], {
|
|
2561
2660
|
strokeWidth: 2,
|
|
2562
|
-
stroke:
|
|
2661
|
+
stroke: black
|
|
2563
2662
|
});
|
|
2564
2663
|
|
|
2565
2664
|
var path = create('path');
|
|
@@ -3664,7 +3763,7 @@
|
|
|
3664
3763
|
|
|
3665
3764
|
if (di.messageVisibleKind === 'initiating') {
|
|
3666
3765
|
messageAttrs.fill = 'white';
|
|
3667
|
-
messageAttrs.stroke =
|
|
3766
|
+
messageAttrs.stroke = black;
|
|
3668
3767
|
} else {
|
|
3669
3768
|
messageAttrs.fill = '#888';
|
|
3670
3769
|
messageAttrs.stroke = 'white';
|
|
@@ -3739,7 +3838,7 @@
|
|
|
3739
3838
|
|
|
3740
3839
|
/* output arrow path */ drawPath(parentGfx, arrowPathData, {
|
|
3741
3840
|
strokeWidth: 1,
|
|
3742
|
-
fill:
|
|
3841
|
+
fill: black
|
|
3743
3842
|
});
|
|
3744
3843
|
|
|
3745
3844
|
return elementObject;
|
|
@@ -4069,7 +4168,7 @@
|
|
|
4069
4168
|
}
|
|
4070
4169
|
|
|
4071
4170
|
|
|
4072
|
-
|
|
4171
|
+
e(BpmnRenderer, BaseRenderer);
|
|
4073
4172
|
|
|
4074
4173
|
BpmnRenderer.$inject = [
|
|
4075
4174
|
'config.bpmnRenderer',
|
|
@@ -4303,7 +4402,8 @@
|
|
|
4303
4402
|
id: 'helper-svg',
|
|
4304
4403
|
width: 0,
|
|
4305
4404
|
height: 0,
|
|
4306
|
-
|
|
4405
|
+
visibility: 'hidden',
|
|
4406
|
+
position: 'fixed'
|
|
4307
4407
|
});
|
|
4308
4408
|
|
|
4309
4409
|
document.body.appendChild(helperSvg);
|
|
@@ -5290,13 +5390,98 @@
|
|
|
5290
5390
|
*
|
|
5291
5391
|
* @return {Point}
|
|
5292
5392
|
*/
|
|
5293
|
-
function
|
|
5393
|
+
function getBoundsMid(bounds) {
|
|
5294
5394
|
return roundPoint({
|
|
5295
5395
|
x: bounds.x + (bounds.width || 0) / 2,
|
|
5296
5396
|
y: bounds.y + (bounds.height || 0) / 2
|
|
5297
5397
|
});
|
|
5298
5398
|
}
|
|
5299
5399
|
|
|
5400
|
+
|
|
5401
|
+
/**
|
|
5402
|
+
* Get the mid of the given Connection.
|
|
5403
|
+
*
|
|
5404
|
+
* @param {djs.Base.Connection} connection
|
|
5405
|
+
*
|
|
5406
|
+
* @return {Point}
|
|
5407
|
+
*/
|
|
5408
|
+
function getConnectionMid(connection) {
|
|
5409
|
+
var waypoints = connection.waypoints;
|
|
5410
|
+
|
|
5411
|
+
// calculate total length and length of each segment
|
|
5412
|
+
var parts = waypoints.reduce(function(parts, point, index) {
|
|
5413
|
+
|
|
5414
|
+
var lastPoint = waypoints[index - 1];
|
|
5415
|
+
|
|
5416
|
+
if (lastPoint) {
|
|
5417
|
+
var lastPart = parts[parts.length - 1];
|
|
5418
|
+
|
|
5419
|
+
var startLength = lastPart && lastPart.endLength || 0;
|
|
5420
|
+
var length = distance(lastPoint, point);
|
|
5421
|
+
|
|
5422
|
+
parts.push({
|
|
5423
|
+
start: lastPoint,
|
|
5424
|
+
end: point,
|
|
5425
|
+
startLength: startLength,
|
|
5426
|
+
endLength: startLength + length,
|
|
5427
|
+
length: length
|
|
5428
|
+
});
|
|
5429
|
+
}
|
|
5430
|
+
|
|
5431
|
+
return parts;
|
|
5432
|
+
}, []);
|
|
5433
|
+
|
|
5434
|
+
var totalLength = parts.reduce(function(length, part) {
|
|
5435
|
+
return length + part.length;
|
|
5436
|
+
}, 0);
|
|
5437
|
+
|
|
5438
|
+
// find which segement contains middle point
|
|
5439
|
+
var midLength = totalLength / 2;
|
|
5440
|
+
|
|
5441
|
+
var i = 0;
|
|
5442
|
+
var midSegment = parts[i];
|
|
5443
|
+
|
|
5444
|
+
while (midSegment.endLength < midLength) {
|
|
5445
|
+
midSegment = parts[++i];
|
|
5446
|
+
}
|
|
5447
|
+
|
|
5448
|
+
// calculate relative position on mid segment
|
|
5449
|
+
var segmentProgress = (midLength - midSegment.startLength) / midSegment.length;
|
|
5450
|
+
|
|
5451
|
+
var midPoint = {
|
|
5452
|
+
x: midSegment.start.x + (midSegment.end.x - midSegment.start.x) * segmentProgress,
|
|
5453
|
+
y: midSegment.start.y + (midSegment.end.y - midSegment.start.y) * segmentProgress
|
|
5454
|
+
};
|
|
5455
|
+
|
|
5456
|
+
return midPoint;
|
|
5457
|
+
}
|
|
5458
|
+
|
|
5459
|
+
|
|
5460
|
+
/**
|
|
5461
|
+
* Get the mid of the given Element.
|
|
5462
|
+
*
|
|
5463
|
+
* @param {djs.Base.Connection} connection
|
|
5464
|
+
*
|
|
5465
|
+
* @return {Point}
|
|
5466
|
+
*/
|
|
5467
|
+
function getMid(element) {
|
|
5468
|
+
if (isConnection(element)) {
|
|
5469
|
+
return getConnectionMid(element);
|
|
5470
|
+
}
|
|
5471
|
+
|
|
5472
|
+
return getBoundsMid(element);
|
|
5473
|
+
}
|
|
5474
|
+
|
|
5475
|
+
// helpers //////////////////////
|
|
5476
|
+
|
|
5477
|
+
function distance(a, b) {
|
|
5478
|
+
return Math.sqrt(Math.pow(a.x - b.x, 2) + Math.pow(a.y - b.y, 2));
|
|
5479
|
+
}
|
|
5480
|
+
|
|
5481
|
+
function isConnection(element) {
|
|
5482
|
+
return !!element.waypoints;
|
|
5483
|
+
}
|
|
5484
|
+
|
|
5300
5485
|
function elementToString(e) {
|
|
5301
5486
|
if (!e) {
|
|
5302
5487
|
return '<null>';
|
|
@@ -5922,10 +6107,13 @@
|
|
|
5922
6107
|
|
|
5923
6108
|
var ALL_HIT_STYLE = createHitStyle('djs-hit djs-hit-all');
|
|
5924
6109
|
|
|
6110
|
+
var NO_MOVE_HIT_STYLE = createHitStyle('djs-hit djs-hit-no-move');
|
|
6111
|
+
|
|
5925
6112
|
var HIT_TYPES = {
|
|
5926
6113
|
'all': ALL_HIT_STYLE,
|
|
5927
6114
|
'click-stroke': CLICK_STROKE_HIT_STYLE,
|
|
5928
|
-
'stroke': STROKE_HIT_STYLE
|
|
6115
|
+
'stroke': STROKE_HIT_STYLE,
|
|
6116
|
+
'no-move': NO_MOVE_HIT_STYLE
|
|
5929
6117
|
};
|
|
5930
6118
|
|
|
5931
6119
|
function createHitStyle(classNames, attrs) {
|
|
@@ -6178,7 +6366,9 @@
|
|
|
6178
6366
|
* the array or the element primitive.
|
|
6179
6367
|
*
|
|
6180
6368
|
* @param {Array<djs.model.Shape>|djs.model.Shape} elements
|
|
6181
|
-
* @param {boolean} stopRecursion
|
|
6369
|
+
* @param {boolean} [stopRecursion=false]
|
|
6370
|
+
*
|
|
6371
|
+
* @return {Bounds}
|
|
6182
6372
|
*/
|
|
6183
6373
|
function getBBox(elements, stopRecursion) {
|
|
6184
6374
|
|
|
@@ -6274,6 +6464,7 @@
|
|
|
6274
6464
|
attr(outline, assign({
|
|
6275
6465
|
x: 10,
|
|
6276
6466
|
y: 10,
|
|
6467
|
+
rx: 3,
|
|
6277
6468
|
width: 100,
|
|
6278
6469
|
height: 100
|
|
6279
6470
|
}, OUTLINE_STYLE));
|
|
@@ -6465,6 +6656,8 @@
|
|
|
6465
6656
|
var MARKER_HOVER = 'hover',
|
|
6466
6657
|
MARKER_SELECTED = 'selected';
|
|
6467
6658
|
|
|
6659
|
+
var SELECTION_OUTLINE_PADDING = 6;
|
|
6660
|
+
|
|
6468
6661
|
|
|
6469
6662
|
/**
|
|
6470
6663
|
* A plugin that adds a visible selection UI to shapes and connections
|
|
@@ -6474,11 +6667,13 @@
|
|
|
6474
6667
|
*
|
|
6475
6668
|
* Makes elements selectable, too.
|
|
6476
6669
|
*
|
|
6477
|
-
* @param {EventBus} events
|
|
6478
|
-
* @param {SelectionService} selection
|
|
6479
6670
|
* @param {Canvas} canvas
|
|
6671
|
+
* @param {EventBus} eventBus
|
|
6480
6672
|
*/
|
|
6481
|
-
function SelectionVisuals(
|
|
6673
|
+
function SelectionVisuals(canvas, eventBus, selection) {
|
|
6674
|
+
this._canvas = canvas;
|
|
6675
|
+
|
|
6676
|
+
var self = this;
|
|
6482
6677
|
|
|
6483
6678
|
this._multiSelectionBox = null;
|
|
6484
6679
|
|
|
@@ -6490,15 +6685,15 @@
|
|
|
6490
6685
|
canvas.removeMarker(e, cls);
|
|
6491
6686
|
}
|
|
6492
6687
|
|
|
6493
|
-
|
|
6688
|
+
eventBus.on('element.hover', function(event) {
|
|
6494
6689
|
addMarker(event.element, MARKER_HOVER);
|
|
6495
6690
|
});
|
|
6496
6691
|
|
|
6497
|
-
|
|
6692
|
+
eventBus.on('element.out', function(event) {
|
|
6498
6693
|
removeMarker(event.element, MARKER_HOVER);
|
|
6499
6694
|
});
|
|
6500
6695
|
|
|
6501
|
-
|
|
6696
|
+
eventBus.on('selection.changed', function(event) {
|
|
6502
6697
|
|
|
6503
6698
|
function deselect(s) {
|
|
6504
6699
|
removeMarker(s, MARKER_SELECTED);
|
|
@@ -6522,16 +6717,63 @@
|
|
|
6522
6717
|
select(e);
|
|
6523
6718
|
}
|
|
6524
6719
|
});
|
|
6720
|
+
|
|
6721
|
+
self._updateSelectionOutline(newSelection);
|
|
6722
|
+
});
|
|
6723
|
+
|
|
6724
|
+
|
|
6725
|
+
eventBus.on('element.changed', function(event) {
|
|
6726
|
+
if (selection.isSelected(event.element)) {
|
|
6727
|
+
self._updateSelectionOutline(selection.get());
|
|
6728
|
+
}
|
|
6525
6729
|
});
|
|
6526
6730
|
}
|
|
6527
6731
|
|
|
6528
6732
|
SelectionVisuals.$inject = [
|
|
6529
|
-
'eventBus',
|
|
6530
6733
|
'canvas',
|
|
6531
|
-
'
|
|
6532
|
-
'
|
|
6734
|
+
'eventBus',
|
|
6735
|
+
'selection'
|
|
6533
6736
|
];
|
|
6534
6737
|
|
|
6738
|
+
SelectionVisuals.prototype._updateSelectionOutline = function(selection) {
|
|
6739
|
+
var layer = this._canvas.getLayer('selectionOutline');
|
|
6740
|
+
|
|
6741
|
+
clear(layer);
|
|
6742
|
+
|
|
6743
|
+
var enabled = selection.length > 1;
|
|
6744
|
+
|
|
6745
|
+
var container = this._canvas.getContainer();
|
|
6746
|
+
|
|
6747
|
+
classes(container)[enabled ? 'add' : 'remove']('djs-multi-select');
|
|
6748
|
+
|
|
6749
|
+
if (!enabled) {
|
|
6750
|
+
return;
|
|
6751
|
+
}
|
|
6752
|
+
|
|
6753
|
+
var bBox = addSelectionOutlinePadding(getBBox(selection));
|
|
6754
|
+
|
|
6755
|
+
var rect = create('rect');
|
|
6756
|
+
|
|
6757
|
+
attr(rect, assign({
|
|
6758
|
+
rx: 3
|
|
6759
|
+
}, bBox));
|
|
6760
|
+
|
|
6761
|
+
classes(rect).add('djs-selection-outline');
|
|
6762
|
+
|
|
6763
|
+
append(layer, rect);
|
|
6764
|
+
};
|
|
6765
|
+
|
|
6766
|
+
// helpers //////////
|
|
6767
|
+
|
|
6768
|
+
function addSelectionOutlinePadding(bBox) {
|
|
6769
|
+
return {
|
|
6770
|
+
x: bBox.x - SELECTION_OUTLINE_PADDING,
|
|
6771
|
+
y: bBox.y - SELECTION_OUTLINE_PADDING,
|
|
6772
|
+
width: bBox.width + SELECTION_OUTLINE_PADDING * 2,
|
|
6773
|
+
height: bBox.height + SELECTION_OUTLINE_PADDING * 2
|
|
6774
|
+
};
|
|
6775
|
+
}
|
|
6776
|
+
|
|
6535
6777
|
function SelectionBehavior(eventBus, selection, canvas, elementRegistry) {
|
|
6536
6778
|
|
|
6537
6779
|
// Select elements on create
|
|
@@ -6562,11 +6804,10 @@
|
|
|
6562
6804
|
// Select connection targets on connect
|
|
6563
6805
|
eventBus.on('connect.end', 500, function(event) {
|
|
6564
6806
|
var context = event.context,
|
|
6565
|
-
|
|
6566
|
-
hover = context.hover;
|
|
6807
|
+
connection = context.connection;
|
|
6567
6808
|
|
|
6568
|
-
if (
|
|
6569
|
-
selection.select(
|
|
6809
|
+
if (connection) {
|
|
6810
|
+
selection.select(connection);
|
|
6570
6811
|
}
|
|
6571
6812
|
});
|
|
6572
6813
|
|
|
@@ -7032,7 +7273,8 @@
|
|
|
7032
7273
|
|
|
7033
7274
|
|
|
7034
7275
|
Overlays.prototype._createOverlayContainer = function(element) {
|
|
7035
|
-
var html = domify('<div class="djs-overlays"
|
|
7276
|
+
var html = domify('<div class="djs-overlays" />');
|
|
7277
|
+
assign$1(html, { position: 'absolute' });
|
|
7036
7278
|
|
|
7037
7279
|
this._overlayRoot.appendChild(html);
|
|
7038
7280
|
|
|
@@ -7103,7 +7345,8 @@
|
|
|
7103
7345
|
|
|
7104
7346
|
overlayContainer = this._getOverlayContainer(element);
|
|
7105
7347
|
|
|
7106
|
-
htmlContainer = domify('<div class="djs-overlay" data-overlay-id="' + id + '"
|
|
7348
|
+
htmlContainer = domify('<div class="djs-overlay" data-overlay-id="' + id + '">');
|
|
7349
|
+
assign$1(htmlContainer, { position: 'absolute' });
|
|
7107
7350
|
|
|
7108
7351
|
htmlContainer.appendChild(html);
|
|
7109
7352
|
|
|
@@ -7288,18 +7531,30 @@
|
|
|
7288
7531
|
|
|
7289
7532
|
function createRoot(parentNode) {
|
|
7290
7533
|
var root = domify(
|
|
7291
|
-
'<div class="djs-overlay-container"
|
|
7534
|
+
'<div class="djs-overlay-container" />'
|
|
7292
7535
|
);
|
|
7293
7536
|
|
|
7537
|
+
assign$1(root, {
|
|
7538
|
+
position: 'absolute',
|
|
7539
|
+
width: 0,
|
|
7540
|
+
height: 0
|
|
7541
|
+
});
|
|
7542
|
+
|
|
7294
7543
|
parentNode.insertBefore(root, parentNode.firstChild);
|
|
7295
7544
|
|
|
7296
7545
|
return root;
|
|
7297
7546
|
}
|
|
7298
7547
|
|
|
7299
7548
|
function setPosition(el, x, y) {
|
|
7300
|
-
assign(el
|
|
7549
|
+
assign$1(el, { left: x + 'px', top: y + 'px' });
|
|
7301
7550
|
}
|
|
7302
7551
|
|
|
7552
|
+
/**
|
|
7553
|
+
* Set element visible
|
|
7554
|
+
*
|
|
7555
|
+
* @param {DOMElement} el
|
|
7556
|
+
* @param {boolean} [visible=true]
|
|
7557
|
+
*/
|
|
7303
7558
|
function setVisible(el, visible) {
|
|
7304
7559
|
el.style.display = visible === false ? 'none' : '';
|
|
7305
7560
|
}
|
|
@@ -7397,7 +7652,7 @@
|
|
|
7397
7652
|
*
|
|
7398
7653
|
* @example
|
|
7399
7654
|
*
|
|
7400
|
-
* import inherits from 'inherits';
|
|
7655
|
+
* import inherits from 'inherits-browser';
|
|
7401
7656
|
*
|
|
7402
7657
|
* import CommandInterceptor from 'diagram-js/lib/command/CommandInterceptor';
|
|
7403
7658
|
*
|
|
@@ -7553,7 +7808,7 @@
|
|
|
7553
7808
|
});
|
|
7554
7809
|
}
|
|
7555
7810
|
|
|
7556
|
-
|
|
7811
|
+
e(RootElementsBehavior, CommandInterceptor);
|
|
7557
7812
|
|
|
7558
7813
|
RootElementsBehavior.$inject = [ 'canvas', 'injector' ];
|
|
7559
7814
|
|
|
@@ -8236,7 +8491,7 @@
|
|
|
8236
8491
|
|
|
8237
8492
|
}
|
|
8238
8493
|
|
|
8239
|
-
|
|
8494
|
+
e(DrilldownOverlayBehavior, CommandInterceptor);
|
|
8240
8495
|
|
|
8241
8496
|
DrilldownOverlayBehavior.prototype.updateDrilldownOverlay = function(shape) {
|
|
8242
8497
|
var canvas = this._canvas;
|
|
@@ -8337,22 +8592,50 @@
|
|
|
8337
8592
|
|
|
8338
8593
|
var CLASS_PATTERN = /^class /;
|
|
8339
8594
|
|
|
8595
|
+
|
|
8596
|
+
/**
|
|
8597
|
+
* @param {function} fn
|
|
8598
|
+
*
|
|
8599
|
+
* @return {boolean}
|
|
8600
|
+
*/
|
|
8340
8601
|
function isClass(fn) {
|
|
8341
8602
|
return CLASS_PATTERN.test(fn.toString());
|
|
8342
8603
|
}
|
|
8343
8604
|
|
|
8344
|
-
|
|
8605
|
+
/**
|
|
8606
|
+
* @param {any} obj
|
|
8607
|
+
*
|
|
8608
|
+
* @return {boolean}
|
|
8609
|
+
*/
|
|
8610
|
+
function isArray$2(obj) {
|
|
8345
8611
|
return Object.prototype.toString.call(obj) === '[object Array]';
|
|
8346
8612
|
}
|
|
8347
8613
|
|
|
8614
|
+
/**
|
|
8615
|
+
* @param {any} obj
|
|
8616
|
+
* @param {string} prop
|
|
8617
|
+
*
|
|
8618
|
+
* @return {boolean}
|
|
8619
|
+
*/
|
|
8348
8620
|
function hasOwnProp(obj, prop) {
|
|
8349
8621
|
return Object.prototype.hasOwnProperty.call(obj, prop);
|
|
8350
8622
|
}
|
|
8351
8623
|
|
|
8624
|
+
/**
|
|
8625
|
+
* @typedef {import('./index').InjectAnnotated } InjectAnnotated
|
|
8626
|
+
*/
|
|
8627
|
+
|
|
8628
|
+
/**
|
|
8629
|
+
* @template T
|
|
8630
|
+
*
|
|
8631
|
+
* @params {[...string[], T] | ...string[], T} args
|
|
8632
|
+
*
|
|
8633
|
+
* @return {T & InjectAnnotated}
|
|
8634
|
+
*/
|
|
8352
8635
|
function annotate() {
|
|
8353
8636
|
var args = Array.prototype.slice.call(arguments);
|
|
8354
8637
|
|
|
8355
|
-
if (args.length === 1 && isArray$
|
|
8638
|
+
if (args.length === 1 && isArray$2(args[0])) {
|
|
8356
8639
|
args = args[0];
|
|
8357
8640
|
}
|
|
8358
8641
|
|
|
@@ -8378,9 +8661,14 @@
|
|
|
8378
8661
|
// of a nested class, too.
|
|
8379
8662
|
|
|
8380
8663
|
var CONSTRUCTOR_ARGS = /constructor\s*[^(]*\(\s*([^)]*)\)/m;
|
|
8381
|
-
var FN_ARGS = /^(?:async
|
|
8664
|
+
var FN_ARGS = /^(?:async\s+)?(?:function\s*[^(]*)?(?:\(\s*([^)]*)\)|(\w+))/m;
|
|
8382
8665
|
var FN_ARG = /\/\*([^*]*)\*\//m;
|
|
8383
8666
|
|
|
8667
|
+
/**
|
|
8668
|
+
* @param {unknown} fn
|
|
8669
|
+
*
|
|
8670
|
+
* @return {string[]}
|
|
8671
|
+
*/
|
|
8384
8672
|
function parseAnnotations(fn) {
|
|
8385
8673
|
|
|
8386
8674
|
if (typeof fn !== 'function') {
|
|
@@ -8394,36 +8682,26 @@
|
|
|
8394
8682
|
return [];
|
|
8395
8683
|
}
|
|
8396
8684
|
|
|
8397
|
-
|
|
8398
|
-
|
|
8399
|
-
|
|
8685
|
+
var args = match[1] || match[2];
|
|
8686
|
+
|
|
8687
|
+
return args && args.split(',').map(function(arg) {
|
|
8688
|
+
var argMatch = arg.match(FN_ARG);
|
|
8689
|
+
return (argMatch && argMatch[1] || arg).trim();
|
|
8400
8690
|
}) || [];
|
|
8401
8691
|
}
|
|
8402
8692
|
|
|
8403
|
-
|
|
8404
|
-
|
|
8405
|
-
|
|
8406
|
-
|
|
8407
|
-
|
|
8408
|
-
return this;
|
|
8409
|
-
};
|
|
8410
|
-
|
|
8411
|
-
this.value = function(name, value) {
|
|
8412
|
-
providers.push([name, 'value', value]);
|
|
8413
|
-
return this;
|
|
8414
|
-
};
|
|
8415
|
-
|
|
8416
|
-
this.type = function(name, type) {
|
|
8417
|
-
providers.push([name, 'type', type]);
|
|
8418
|
-
return this;
|
|
8419
|
-
};
|
|
8420
|
-
|
|
8421
|
-
this.forEach = function(iterator) {
|
|
8422
|
-
providers.forEach(iterator);
|
|
8423
|
-
};
|
|
8424
|
-
|
|
8425
|
-
}
|
|
8693
|
+
/**
|
|
8694
|
+
* @typedef { import('./index').ModuleDeclaration } ModuleDeclaration
|
|
8695
|
+
* @typedef { import('./index').ModuleDefinition } ModuleDefinition
|
|
8696
|
+
* @typedef { import('./index').InjectorContext } InjectorContext
|
|
8697
|
+
*/
|
|
8426
8698
|
|
|
8699
|
+
/**
|
|
8700
|
+
* Create a new injector with the given modules.
|
|
8701
|
+
*
|
|
8702
|
+
* @param {ModuleDefinition[]} modules
|
|
8703
|
+
* @param {InjectorContext} [parent]
|
|
8704
|
+
*/
|
|
8427
8705
|
function Injector(modules, parent) {
|
|
8428
8706
|
parent = parent || {
|
|
8429
8707
|
get: function(name, strict) {
|
|
@@ -8452,12 +8730,12 @@
|
|
|
8452
8730
|
/**
|
|
8453
8731
|
* Return a named service.
|
|
8454
8732
|
*
|
|
8455
|
-
* @param {
|
|
8456
|
-
* @param {
|
|
8733
|
+
* @param {string} name
|
|
8734
|
+
* @param {boolean} [strict=true] if false, resolve missing services to null
|
|
8457
8735
|
*
|
|
8458
|
-
* @return {
|
|
8736
|
+
* @return {any}
|
|
8459
8737
|
*/
|
|
8460
|
-
|
|
8738
|
+
function get(name, strict) {
|
|
8461
8739
|
if (!providers[name] && name.indexOf('.') !== -1) {
|
|
8462
8740
|
var parts = name.split('.');
|
|
8463
8741
|
var pivot = get(parts.shift());
|
|
@@ -8487,16 +8765,16 @@
|
|
|
8487
8765
|
}
|
|
8488
8766
|
|
|
8489
8767
|
return parent.get(name, strict);
|
|
8490
|
-
}
|
|
8768
|
+
}
|
|
8491
8769
|
|
|
8492
|
-
|
|
8770
|
+
function fnDef(fn, locals) {
|
|
8493
8771
|
|
|
8494
8772
|
if (typeof locals === 'undefined') {
|
|
8495
8773
|
locals = {};
|
|
8496
8774
|
}
|
|
8497
8775
|
|
|
8498
8776
|
if (typeof fn !== 'function') {
|
|
8499
|
-
if (isArray$
|
|
8777
|
+
if (isArray$2(fn)) {
|
|
8500
8778
|
fn = annotate(fn.slice());
|
|
8501
8779
|
} else {
|
|
8502
8780
|
throw new Error('Cannot invoke "' + fn + '". Expected a function!');
|
|
@@ -8516,9 +8794,9 @@
|
|
|
8516
8794
|
fn: fn,
|
|
8517
8795
|
dependencies: dependencies
|
|
8518
8796
|
};
|
|
8519
|
-
}
|
|
8797
|
+
}
|
|
8520
8798
|
|
|
8521
|
-
|
|
8799
|
+
function instantiate(Type) {
|
|
8522
8800
|
var def = fnDef(Type);
|
|
8523
8801
|
|
|
8524
8802
|
var fn = def.fn,
|
|
@@ -8528,25 +8806,35 @@
|
|
|
8528
8806
|
var Constructor = Function.prototype.bind.apply(fn, [ null ].concat(dependencies));
|
|
8529
8807
|
|
|
8530
8808
|
return new Constructor();
|
|
8531
|
-
}
|
|
8809
|
+
}
|
|
8532
8810
|
|
|
8533
|
-
|
|
8811
|
+
function invoke(func, context, locals) {
|
|
8534
8812
|
var def = fnDef(func, locals);
|
|
8535
8813
|
|
|
8536
8814
|
var fn = def.fn,
|
|
8537
8815
|
dependencies = def.dependencies;
|
|
8538
8816
|
|
|
8539
8817
|
return fn.apply(context, dependencies);
|
|
8540
|
-
}
|
|
8541
|
-
|
|
8818
|
+
}
|
|
8542
8819
|
|
|
8543
|
-
|
|
8820
|
+
/**
|
|
8821
|
+
* @param {Injector} childInjector
|
|
8822
|
+
*
|
|
8823
|
+
* @return {Function}
|
|
8824
|
+
*/
|
|
8825
|
+
function createPrivateInjectorFactory(childInjector) {
|
|
8544
8826
|
return annotate(function(key) {
|
|
8545
|
-
return
|
|
8827
|
+
return childInjector.get(key);
|
|
8546
8828
|
});
|
|
8547
|
-
}
|
|
8829
|
+
}
|
|
8548
8830
|
|
|
8549
|
-
|
|
8831
|
+
/**
|
|
8832
|
+
* @param {ModuleDefinition[]} modules
|
|
8833
|
+
* @param {string[]} [forceNewInstances]
|
|
8834
|
+
*
|
|
8835
|
+
* @return {Injector}
|
|
8836
|
+
*/
|
|
8837
|
+
function createChild(modules, forceNewInstances) {
|
|
8550
8838
|
if (forceNewInstances && forceNewInstances.length) {
|
|
8551
8839
|
var fromParentModule = Object.create(null);
|
|
8552
8840
|
var matchedScopes = Object.create(null);
|
|
@@ -8571,12 +8859,12 @@
|
|
|
8571
8859
|
privateInjectorsCache.push(provider[3]);
|
|
8572
8860
|
privateChildInjectors.push(privateChildInjector);
|
|
8573
8861
|
privateChildFactories.push(privateChildInjectorFactory);
|
|
8574
|
-
fromParentModule[name] = [privateChildInjectorFactory, name, 'private', privateChildInjector];
|
|
8862
|
+
fromParentModule[name] = [ privateChildInjectorFactory, name, 'private', privateChildInjector ];
|
|
8575
8863
|
} else {
|
|
8576
|
-
fromParentModule[name] = [privateChildFactories[cacheIdx], name, 'private', privateChildInjectors[cacheIdx]];
|
|
8864
|
+
fromParentModule[name] = [ privateChildFactories[cacheIdx], name, 'private', privateChildInjectors[cacheIdx] ];
|
|
8577
8865
|
}
|
|
8578
8866
|
} else {
|
|
8579
|
-
fromParentModule[name] = [provider[2], provider[1]];
|
|
8867
|
+
fromParentModule[name] = [ provider[2], provider[1] ];
|
|
8580
8868
|
}
|
|
8581
8869
|
matchedScopes[name] = true;
|
|
8582
8870
|
}
|
|
@@ -8585,7 +8873,7 @@
|
|
|
8585
8873
|
/* jshint -W083 */
|
|
8586
8874
|
forceNewInstances.forEach(function(scope) {
|
|
8587
8875
|
if (provider[1].$scope.indexOf(scope) !== -1) {
|
|
8588
|
-
fromParentModule[name] = [provider[2], provider[1]];
|
|
8876
|
+
fromParentModule[name] = [ provider[2], provider[1] ];
|
|
8589
8877
|
matchedScopes[scope] = true;
|
|
8590
8878
|
}
|
|
8591
8879
|
});
|
|
@@ -8602,7 +8890,7 @@
|
|
|
8602
8890
|
}
|
|
8603
8891
|
|
|
8604
8892
|
return new Injector(modules, self);
|
|
8605
|
-
}
|
|
8893
|
+
}
|
|
8606
8894
|
|
|
8607
8895
|
var factoryMap = {
|
|
8608
8896
|
factory: invoke,
|
|
@@ -8612,62 +8900,169 @@
|
|
|
8612
8900
|
}
|
|
8613
8901
|
};
|
|
8614
8902
|
|
|
8615
|
-
|
|
8903
|
+
/**
|
|
8904
|
+
* @param {ModuleDefinition} moduleDefinition
|
|
8905
|
+
* @param {Injector} injector
|
|
8906
|
+
*/
|
|
8907
|
+
function createInitializer(moduleDefinition, injector) {
|
|
8616
8908
|
|
|
8617
|
-
|
|
8618
|
-
if (type !== 'value' && isArray$1(value)) {
|
|
8619
|
-
value = annotate(value.slice());
|
|
8620
|
-
}
|
|
8909
|
+
var initializers = moduleDefinition.__init__ || [];
|
|
8621
8910
|
|
|
8622
|
-
|
|
8623
|
-
|
|
8911
|
+
return function() {
|
|
8912
|
+
initializers.forEach(function(initializer) {
|
|
8624
8913
|
|
|
8625
|
-
|
|
8626
|
-
if (module instanceof Module) {
|
|
8627
|
-
module.forEach(function(provider) {
|
|
8628
|
-
var name = provider[0];
|
|
8629
|
-
var type = provider[1];
|
|
8630
|
-
var value = provider[2];
|
|
8914
|
+
try {
|
|
8631
8915
|
|
|
8632
|
-
|
|
8633
|
-
|
|
8634
|
-
|
|
8635
|
-
|
|
8636
|
-
|
|
8637
|
-
if (key.substring(0, 2) !== '__') {
|
|
8638
|
-
m[key] = module[key];
|
|
8916
|
+
// eagerly resolve component (fn or string)
|
|
8917
|
+
if (typeof initializer === 'string') {
|
|
8918
|
+
injector.get(initializer);
|
|
8919
|
+
} else {
|
|
8920
|
+
injector.invoke(initializer);
|
|
8639
8921
|
}
|
|
8640
|
-
|
|
8641
|
-
|
|
8642
|
-
|
|
8643
|
-
var privateInjector = new Injector((module.__modules__ || []).concat([clonedModule]), self);
|
|
8644
|
-
var getFromPrivateInjector = annotate(function(key) {
|
|
8645
|
-
return privateInjector.get(key);
|
|
8646
|
-
});
|
|
8647
|
-
module.__exports__.forEach(function(key) {
|
|
8648
|
-
providers[key] = [getFromPrivateInjector, key, 'private', privateInjector];
|
|
8649
|
-
});
|
|
8650
|
-
} else {
|
|
8651
|
-
Object.keys(module).forEach(function(name) {
|
|
8652
|
-
if (module[name][2] === 'private') {
|
|
8653
|
-
providers[name] = module[name];
|
|
8654
|
-
return;
|
|
8922
|
+
} catch (error) {
|
|
8923
|
+
if (typeof AggregateError !== 'undefined') {
|
|
8924
|
+
throw new AggregateError([ error ], 'Failed to initialize!');
|
|
8655
8925
|
}
|
|
8656
8926
|
|
|
8657
|
-
|
|
8658
|
-
|
|
8927
|
+
throw new Error('Failed to initialize! ' + error.message);
|
|
8928
|
+
}
|
|
8929
|
+
});
|
|
8930
|
+
};
|
|
8931
|
+
}
|
|
8659
8932
|
|
|
8660
|
-
|
|
8661
|
-
|
|
8933
|
+
/**
|
|
8934
|
+
* @param {ModuleDefinition} moduleDefinition
|
|
8935
|
+
*/
|
|
8936
|
+
function loadModule(moduleDefinition) {
|
|
8937
|
+
|
|
8938
|
+
var moduleExports = moduleDefinition.__exports__;
|
|
8939
|
+
|
|
8940
|
+
// private module
|
|
8941
|
+
if (moduleExports) {
|
|
8942
|
+
var nestedModules = moduleDefinition.__modules__;
|
|
8943
|
+
|
|
8944
|
+
var clonedModule = Object.keys(moduleDefinition).reduce(function(clonedModule, key) {
|
|
8945
|
+
|
|
8946
|
+
if (key !== '__exports__' && key !== '__modules__' && key !== '__init__' && key !== '__depends__') {
|
|
8947
|
+
clonedModule[key] = moduleDefinition[key];
|
|
8948
|
+
}
|
|
8949
|
+
|
|
8950
|
+
return clonedModule;
|
|
8951
|
+
}, Object.create(null));
|
|
8952
|
+
|
|
8953
|
+
var childModules = (nestedModules || []).concat(clonedModule);
|
|
8954
|
+
|
|
8955
|
+
var privateInjector = createChild(childModules);
|
|
8956
|
+
var getFromPrivateInjector = annotate(function(key) {
|
|
8957
|
+
return privateInjector.get(key);
|
|
8958
|
+
});
|
|
8959
|
+
|
|
8960
|
+
moduleExports.forEach(function(key) {
|
|
8961
|
+
providers[key] = [ getFromPrivateInjector, key, 'private', privateInjector ];
|
|
8962
|
+
});
|
|
8963
|
+
|
|
8964
|
+
// ensure child injector initializes
|
|
8965
|
+
var initializers = (moduleDefinition.__init__ || []).slice();
|
|
8966
|
+
|
|
8967
|
+
initializers.unshift(function() {
|
|
8968
|
+
privateInjector.init();
|
|
8969
|
+
});
|
|
8970
|
+
|
|
8971
|
+
moduleDefinition = Object.assign({}, moduleDefinition, {
|
|
8972
|
+
__init__: initializers
|
|
8973
|
+
});
|
|
8974
|
+
|
|
8975
|
+
return createInitializer(moduleDefinition, privateInjector);
|
|
8976
|
+
}
|
|
8977
|
+
|
|
8978
|
+
// normal module
|
|
8979
|
+
Object.keys(moduleDefinition).forEach(function(key) {
|
|
8980
|
+
|
|
8981
|
+
if (key === '__init__' || key === '__depends__') {
|
|
8982
|
+
return;
|
|
8662
8983
|
}
|
|
8984
|
+
|
|
8985
|
+
if (moduleDefinition[key][2] === 'private') {
|
|
8986
|
+
providers[key] = moduleDefinition[key];
|
|
8987
|
+
return;
|
|
8988
|
+
}
|
|
8989
|
+
|
|
8990
|
+
var type = moduleDefinition[key][0];
|
|
8991
|
+
var value = moduleDefinition[key][1];
|
|
8992
|
+
|
|
8993
|
+
providers[key] = [ factoryMap[type], arrayUnwrap(type, value), type ];
|
|
8994
|
+
});
|
|
8995
|
+
|
|
8996
|
+
return createInitializer(moduleDefinition, self);
|
|
8997
|
+
}
|
|
8998
|
+
|
|
8999
|
+
/**
|
|
9000
|
+
* @param {ModuleDefinition[]} moduleDefinitions
|
|
9001
|
+
* @param {ModuleDefinition} moduleDefinition
|
|
9002
|
+
*
|
|
9003
|
+
* @return {ModuleDefinition[]}
|
|
9004
|
+
*/
|
|
9005
|
+
function resolveDependencies(moduleDefinitions, moduleDefinition) {
|
|
9006
|
+
|
|
9007
|
+
if (moduleDefinitions.indexOf(moduleDefinition) !== -1) {
|
|
9008
|
+
return moduleDefinitions;
|
|
8663
9009
|
}
|
|
8664
|
-
|
|
9010
|
+
|
|
9011
|
+
moduleDefinitions = (moduleDefinition.__depends__ || []).reduce(resolveDependencies, moduleDefinitions);
|
|
9012
|
+
|
|
9013
|
+
if (moduleDefinitions.indexOf(moduleDefinition) !== -1) {
|
|
9014
|
+
return moduleDefinitions;
|
|
9015
|
+
}
|
|
9016
|
+
|
|
9017
|
+
return moduleDefinitions.concat(moduleDefinition);
|
|
9018
|
+
}
|
|
9019
|
+
|
|
9020
|
+
/**
|
|
9021
|
+
* @param {ModuleDefinition[]} moduleDefinitions
|
|
9022
|
+
*
|
|
9023
|
+
* @return { () => void } initializerFn
|
|
9024
|
+
*/
|
|
9025
|
+
function bootstrap(moduleDefinitions) {
|
|
9026
|
+
|
|
9027
|
+
var initializers = moduleDefinitions
|
|
9028
|
+
.reduce(resolveDependencies, [])
|
|
9029
|
+
.map(loadModule);
|
|
9030
|
+
|
|
9031
|
+
var initialized = false;
|
|
9032
|
+
|
|
9033
|
+
return function() {
|
|
9034
|
+
|
|
9035
|
+
if (initialized) {
|
|
9036
|
+
return;
|
|
9037
|
+
}
|
|
9038
|
+
|
|
9039
|
+
initialized = true;
|
|
9040
|
+
|
|
9041
|
+
initializers.forEach(function(initializer) {
|
|
9042
|
+
return initializer();
|
|
9043
|
+
});
|
|
9044
|
+
};
|
|
9045
|
+
}
|
|
8665
9046
|
|
|
8666
9047
|
// public API
|
|
8667
9048
|
this.get = get;
|
|
8668
9049
|
this.invoke = invoke;
|
|
8669
9050
|
this.instantiate = instantiate;
|
|
8670
9051
|
this.createChild = createChild;
|
|
9052
|
+
|
|
9053
|
+
// setup
|
|
9054
|
+
this.init = bootstrap(modules);
|
|
9055
|
+
}
|
|
9056
|
+
|
|
9057
|
+
|
|
9058
|
+
// helpers ///////////////
|
|
9059
|
+
|
|
9060
|
+
function arrayUnwrap(type, value) {
|
|
9061
|
+
if (type !== 'value' && isArray$2(value)) {
|
|
9062
|
+
value = annotate(value.slice());
|
|
9063
|
+
}
|
|
9064
|
+
|
|
9065
|
+
return value;
|
|
8671
9066
|
}
|
|
8672
9067
|
|
|
8673
9068
|
// apply default renderer with lowest possible priority
|
|
@@ -8690,7 +9085,7 @@
|
|
|
8690
9085
|
this.FRAME_STYLE = styles.style([ 'no-fill' ], { stroke: 'fuchsia', strokeDasharray: 4, strokeWidth: 2 });
|
|
8691
9086
|
}
|
|
8692
9087
|
|
|
8693
|
-
|
|
9088
|
+
e(DefaultRenderer, BaseRenderer);
|
|
8694
9089
|
|
|
8695
9090
|
|
|
8696
9091
|
DefaultRenderer.prototype.canRender = function() {
|
|
@@ -8946,7 +9341,7 @@
|
|
|
8946
9341
|
var parent = document.createElement('div');
|
|
8947
9342
|
parent.setAttribute('class', 'djs-container');
|
|
8948
9343
|
|
|
8949
|
-
assign(parent
|
|
9344
|
+
assign$1(parent, {
|
|
8950
9345
|
position: 'relative',
|
|
8951
9346
|
overflow: 'hidden',
|
|
8952
9347
|
width: ensurePx(options.width),
|
|
@@ -11025,7 +11420,7 @@
|
|
|
11025
11420
|
attacherRefs.bind(this, 'attachers');
|
|
11026
11421
|
}
|
|
11027
11422
|
|
|
11028
|
-
|
|
11423
|
+
e(Shape, Base);
|
|
11029
11424
|
|
|
11030
11425
|
|
|
11031
11426
|
/**
|
|
@@ -11040,7 +11435,7 @@
|
|
|
11040
11435
|
Shape.call(this);
|
|
11041
11436
|
}
|
|
11042
11437
|
|
|
11043
|
-
|
|
11438
|
+
e(Root, Shape);
|
|
11044
11439
|
|
|
11045
11440
|
|
|
11046
11441
|
/**
|
|
@@ -11063,7 +11458,7 @@
|
|
|
11063
11458
|
labelRefs.bind(this, 'labelTarget');
|
|
11064
11459
|
}
|
|
11065
11460
|
|
|
11066
|
-
|
|
11461
|
+
e(Label, Shape);
|
|
11067
11462
|
|
|
11068
11463
|
|
|
11069
11464
|
/**
|
|
@@ -11094,7 +11489,7 @@
|
|
|
11094
11489
|
incomingRefs.bind(this, 'target');
|
|
11095
11490
|
}
|
|
11096
11491
|
|
|
11097
|
-
|
|
11492
|
+
e(Connection, Base);
|
|
11098
11493
|
|
|
11099
11494
|
|
|
11100
11495
|
var types = {
|
|
@@ -11945,62 +12340,21 @@
|
|
|
11945
12340
|
graphicsFactory: [ 'type', GraphicsFactory ]
|
|
11946
12341
|
};
|
|
11947
12342
|
|
|
12343
|
+
/**
|
|
12344
|
+
* @typedef { import('didi').ModuleDeclaration } Module
|
|
12345
|
+
*/
|
|
12346
|
+
|
|
11948
12347
|
/**
|
|
11949
12348
|
* Bootstrap an injector from a list of modules, instantiating a number of default components
|
|
11950
12349
|
*
|
|
11951
|
-
* @
|
|
11952
|
-
* @param {Array<didi.Module>} bootstrapModules
|
|
12350
|
+
* @param {Array<Module>} modules
|
|
11953
12351
|
*
|
|
11954
|
-
* @return {
|
|
12352
|
+
* @return {Injector} a injector to use to access the components
|
|
11955
12353
|
*/
|
|
11956
|
-
function bootstrap(
|
|
11957
|
-
|
|
11958
|
-
var modules = [],
|
|
11959
|
-
components = [];
|
|
11960
|
-
|
|
11961
|
-
function hasModule(m) {
|
|
11962
|
-
return modules.indexOf(m) >= 0;
|
|
11963
|
-
}
|
|
11964
|
-
|
|
11965
|
-
function addModule(m) {
|
|
11966
|
-
modules.push(m);
|
|
11967
|
-
}
|
|
11968
|
-
|
|
11969
|
-
function visit(m) {
|
|
11970
|
-
if (hasModule(m)) {
|
|
11971
|
-
return;
|
|
11972
|
-
}
|
|
11973
|
-
|
|
11974
|
-
(m.__depends__ || []).forEach(visit);
|
|
11975
|
-
|
|
11976
|
-
if (hasModule(m)) {
|
|
11977
|
-
return;
|
|
11978
|
-
}
|
|
11979
|
-
|
|
11980
|
-
addModule(m);
|
|
11981
|
-
|
|
11982
|
-
(m.__init__ || []).forEach(function(c) {
|
|
11983
|
-
components.push(c);
|
|
11984
|
-
});
|
|
11985
|
-
}
|
|
11986
|
-
|
|
11987
|
-
bootstrapModules.forEach(visit);
|
|
11988
|
-
|
|
12354
|
+
function bootstrap(modules) {
|
|
11989
12355
|
var injector = new Injector(modules);
|
|
11990
12356
|
|
|
11991
|
-
|
|
11992
|
-
|
|
11993
|
-
try {
|
|
11994
|
-
|
|
11995
|
-
// eagerly resolve component (fn or string)
|
|
11996
|
-
injector[typeof c === 'string' ? 'get' : 'invoke'](c);
|
|
11997
|
-
} catch (e) {
|
|
11998
|
-
console.error('Failed to instantiate component');
|
|
11999
|
-
console.error(e.stack);
|
|
12000
|
-
|
|
12001
|
-
throw e;
|
|
12002
|
-
}
|
|
12003
|
-
});
|
|
12357
|
+
injector.init();
|
|
12004
12358
|
|
|
12005
12359
|
return injector;
|
|
12006
12360
|
}
|
|
@@ -12008,9 +12362,8 @@
|
|
|
12008
12362
|
/**
|
|
12009
12363
|
* Creates an injector from passed options.
|
|
12010
12364
|
*
|
|
12011
|
-
* @
|
|
12012
|
-
* @
|
|
12013
|
-
* @return {didi.Injector}
|
|
12365
|
+
* @param {Object} options
|
|
12366
|
+
* @return {Injector}
|
|
12014
12367
|
*/
|
|
12015
12368
|
function createInjector(options) {
|
|
12016
12369
|
|
|
@@ -12030,7 +12383,7 @@
|
|
|
12030
12383
|
* The main diagram-js entry point that bootstraps the diagram with the given
|
|
12031
12384
|
* configuration.
|
|
12032
12385
|
*
|
|
12033
|
-
* To register extensions with the diagram, pass them as Array<
|
|
12386
|
+
* To register extensions with the diagram, pass them as Array<Module> to the constructor.
|
|
12034
12387
|
*
|
|
12035
12388
|
* @class djs.Diagram
|
|
12036
12389
|
* @memberOf djs
|
|
@@ -12072,8 +12425,8 @@
|
|
|
12072
12425
|
* // 'shape ... was added to the diagram' logged to console
|
|
12073
12426
|
*
|
|
12074
12427
|
* @param {Object} options
|
|
12075
|
-
* @param {Array<
|
|
12076
|
-
* @param {
|
|
12428
|
+
* @param {Array<Module>} [options.modules] external modules to instantiate with the diagram
|
|
12429
|
+
* @param {Injector} [injector] an (optional) injector to bootstrap the diagram with
|
|
12077
12430
|
*/
|
|
12078
12431
|
function Diagram(options, injector) {
|
|
12079
12432
|
|
|
@@ -12738,7 +13091,7 @@
|
|
|
12738
13091
|
|
|
12739
13092
|
var propertyName = property && property.name;
|
|
12740
13093
|
|
|
12741
|
-
if (isUndefined$
|
|
13094
|
+
if (isUndefined$2(value)) {
|
|
12742
13095
|
// unset the property, if the specified value is undefined;
|
|
12743
13096
|
// delete from $attrs (for extensions) or the target itself
|
|
12744
13097
|
if (property) {
|
|
@@ -12829,7 +13182,7 @@
|
|
|
12829
13182
|
};
|
|
12830
13183
|
|
|
12831
13184
|
|
|
12832
|
-
function isUndefined$
|
|
13185
|
+
function isUndefined$2(val) {
|
|
12833
13186
|
return typeof val === 'undefined';
|
|
12834
13187
|
}
|
|
12835
13188
|
|
|
@@ -20384,53 +20737,53 @@
|
|
|
20384
20737
|
|
|
20385
20738
|
|
|
20386
20739
|
// inlined ../../resources/logo.svg
|
|
20387
|
-
var BPMNIO_LOGO_SVG = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14.02 5.57" width="53" height="21"
|
|
20740
|
+
var BPMNIO_LOGO_SVG = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14.02 5.57" width="53" height="21"><path fill="currentColor" d="M1.88.92v.14c0 .41-.13.68-.4.8.33.14.46.44.46.86v.33c0 .61-.33.95-.95.95H0V0h.95c.65 0 .93.3.93.92zM.63.57v1.06h.24c.24 0 .38-.1.38-.43V.98c0-.28-.1-.4-.32-.4zm0 1.63v1.22h.36c.2 0 .32-.1.32-.39v-.35c0-.37-.12-.48-.4-.48H.63zM4.18.99v.52c0 .64-.31.98-.94.98h-.3V4h-.62V0h.92c.63 0 .94.35.94.99zM2.94.57v1.35h.3c.2 0 .3-.09.3-.37v-.6c0-.29-.1-.38-.3-.38h-.3zm2.89 2.27L6.25 0h.88v4h-.6V1.12L6.1 3.99h-.6l-.46-2.82v2.82h-.55V0h.87zM8.14 1.1V4h-.56V0h.79L9 2.4V0h.56v4h-.64zm2.49 2.29v.6h-.6v-.6zM12.12 1c0-.63.33-1 .95-1 .61 0 .95.37.95 1v2.04c0 .64-.34 1-.95 1-.62 0-.95-.37-.95-1zm.62 2.08c0 .28.13.39.33.39s.32-.1.32-.4V.98c0-.29-.12-.4-.32-.4s-.33.11-.33.4z"/><path fill="currentColor" d="M0 4.53h14.02v1.04H0zM11.08 0h.63v.62h-.63zm.63 4V1h-.63v2.98z"/></svg>';
|
|
20388
20741
|
|
|
20389
20742
|
var BPMNIO_IMG = BPMNIO_LOGO_SVG;
|
|
20390
20743
|
|
|
20391
|
-
|
|
20392
|
-
|
|
20393
|
-
}
|
|
20394
|
-
|
|
20395
|
-
var LINK_STYLES =
|
|
20396
|
-
'color: #404040'
|
|
20397
|
-
|
|
20398
|
-
|
|
20399
|
-
var LIGHTBOX_STYLES =
|
|
20400
|
-
'
|
|
20401
|
-
'position: fixed',
|
|
20402
|
-
'top: 0',
|
|
20403
|
-
'left: 0',
|
|
20404
|
-
'right: 0',
|
|
20405
|
-
'bottom: 0'
|
|
20406
|
-
|
|
20407
|
-
|
|
20408
|
-
var BACKDROP_STYLES =
|
|
20409
|
-
'width: 100%',
|
|
20410
|
-
'height: 100%',
|
|
20411
|
-
'background: rgba(40,40,40,0.2)'
|
|
20412
|
-
|
|
20413
|
-
|
|
20414
|
-
var NOTICE_STYLES =
|
|
20415
|
-
'position: absolute',
|
|
20416
|
-
'left: 50%',
|
|
20417
|
-
'top: 40%',
|
|
20418
|
-
'transform: translate(-50%)',
|
|
20419
|
-
'width: 260px',
|
|
20420
|
-
'padding: 10px',
|
|
20421
|
-
'background: white',
|
|
20422
|
-
'
|
|
20423
|
-
'
|
|
20424
|
-
'
|
|
20425
|
-
'display: flex',
|
|
20426
|
-
'
|
|
20427
|
-
|
|
20744
|
+
var LOGO_STYLES = {
|
|
20745
|
+
verticalAlign: 'middle'
|
|
20746
|
+
};
|
|
20747
|
+
|
|
20748
|
+
var LINK_STYLES = {
|
|
20749
|
+
'color': '#404040'
|
|
20750
|
+
};
|
|
20751
|
+
|
|
20752
|
+
var LIGHTBOX_STYLES = {
|
|
20753
|
+
'zIndex': '1001',
|
|
20754
|
+
'position': 'fixed',
|
|
20755
|
+
'top': '0',
|
|
20756
|
+
'left': '0',
|
|
20757
|
+
'right': '0',
|
|
20758
|
+
'bottom': '0'
|
|
20759
|
+
};
|
|
20760
|
+
|
|
20761
|
+
var BACKDROP_STYLES = {
|
|
20762
|
+
'width': '100%',
|
|
20763
|
+
'height': '100%',
|
|
20764
|
+
'background': 'rgba(40,40,40,0.2)'
|
|
20765
|
+
};
|
|
20766
|
+
|
|
20767
|
+
var NOTICE_STYLES = {
|
|
20768
|
+
'position': 'absolute',
|
|
20769
|
+
'left': '50%',
|
|
20770
|
+
'top': '40%',
|
|
20771
|
+
'transform': 'translate(-50%)',
|
|
20772
|
+
'width': '260px',
|
|
20773
|
+
'padding': '10px',
|
|
20774
|
+
'background': 'white',
|
|
20775
|
+
'boxShadow': '0 1px 4px rgba(0,0,0,0.3)',
|
|
20776
|
+
'fontFamily': 'Helvetica, Arial, sans-serif',
|
|
20777
|
+
'fontSize': '14px',
|
|
20778
|
+
'display': 'flex',
|
|
20779
|
+
'lineHeight': '1.3'
|
|
20780
|
+
};
|
|
20428
20781
|
|
|
20429
20782
|
var LIGHTBOX_MARKUP =
|
|
20430
|
-
'<div class="bjs-powered-by-lightbox"
|
|
20431
|
-
'<div class="backdrop"
|
|
20432
|
-
'<div class="notice"
|
|
20433
|
-
'<a href="https://bpmn.io" target="_blank" rel="noopener"
|
|
20783
|
+
'<div class="bjs-powered-by-lightbox">' +
|
|
20784
|
+
'<div class="backdrop"></div>' +
|
|
20785
|
+
'<div class="notice">' +
|
|
20786
|
+
'<a href="https://bpmn.io" target="_blank" rel="noopener" class="link">' +
|
|
20434
20787
|
BPMNIO_IMG +
|
|
20435
20788
|
'</a>' +
|
|
20436
20789
|
'<span>' +
|
|
@@ -20443,10 +20796,23 @@
|
|
|
20443
20796
|
|
|
20444
20797
|
var lightbox;
|
|
20445
20798
|
|
|
20799
|
+
function createLightbox() {
|
|
20800
|
+
lightbox = domify(LIGHTBOX_MARKUP);
|
|
20801
|
+
|
|
20802
|
+
assign$1(lightbox, LIGHTBOX_STYLES);
|
|
20803
|
+
assign$1(query('svg', lightbox), LOGO_STYLES);
|
|
20804
|
+
assign$1(query('.backdrop', lightbox), BACKDROP_STYLES);
|
|
20805
|
+
assign$1(query('.notice', lightbox), NOTICE_STYLES);
|
|
20806
|
+
assign$1(query('.link', lightbox), LINK_STYLES, {
|
|
20807
|
+
'margin': '15px 20px 15px 10px',
|
|
20808
|
+
'alignSelf': 'center'
|
|
20809
|
+
});
|
|
20810
|
+
}
|
|
20811
|
+
|
|
20446
20812
|
function open() {
|
|
20447
20813
|
|
|
20448
20814
|
if (!lightbox) {
|
|
20449
|
-
|
|
20815
|
+
createLightbox();
|
|
20450
20816
|
|
|
20451
20817
|
delegate.bind(lightbox, '.backdrop', 'click', function(event) {
|
|
20452
20818
|
document.body.removeChild(lightbox);
|
|
@@ -20494,7 +20860,7 @@
|
|
|
20494
20860
|
this._init(this._container, this._moddle, options);
|
|
20495
20861
|
}
|
|
20496
20862
|
|
|
20497
|
-
|
|
20863
|
+
e(BaseViewer, Diagram);
|
|
20498
20864
|
|
|
20499
20865
|
/**
|
|
20500
20866
|
* The importXML result.
|
|
@@ -21082,7 +21448,7 @@
|
|
|
21082
21448
|
|
|
21083
21449
|
var container = domify('<div class="bjs-container"></div>');
|
|
21084
21450
|
|
|
21085
|
-
assign(container
|
|
21451
|
+
assign$1(container, {
|
|
21086
21452
|
width: ensureUnit(options.width),
|
|
21087
21453
|
height: ensureUnit(options.height),
|
|
21088
21454
|
position: options.position
|
|
@@ -21172,12 +21538,20 @@
|
|
|
21172
21538
|
'target="_blank" ' +
|
|
21173
21539
|
'class="bjs-powered-by" ' +
|
|
21174
21540
|
'title="Powered by bpmn.io" ' +
|
|
21175
|
-
|
|
21541
|
+
'>' +
|
|
21176
21542
|
img +
|
|
21177
21543
|
'</a>';
|
|
21178
21544
|
|
|
21179
21545
|
var linkElement = domify(linkMarkup);
|
|
21180
21546
|
|
|
21547
|
+
assign$1(query('svg', linkElement), LOGO_STYLES);
|
|
21548
|
+
assign$1(linkElement, LINK_STYLES, {
|
|
21549
|
+
position: 'absolute',
|
|
21550
|
+
bottom: '15px',
|
|
21551
|
+
right: '15px',
|
|
21552
|
+
zIndex: '100'
|
|
21553
|
+
});
|
|
21554
|
+
|
|
21181
21555
|
container.appendChild(linkElement);
|
|
21182
21556
|
|
|
21183
21557
|
componentEvent.bind(linkElement, 'click', function(event) {
|
|
@@ -21240,7 +21614,7 @@
|
|
|
21240
21614
|
BaseViewer.call(this, options);
|
|
21241
21615
|
}
|
|
21242
21616
|
|
|
21243
|
-
|
|
21617
|
+
e(Viewer, BaseViewer);
|
|
21244
21618
|
|
|
21245
21619
|
// modules the viewer is composed of
|
|
21246
21620
|
Viewer.prototype._modules = [
|
|
@@ -22426,27 +22800,27 @@
|
|
|
22426
22800
|
emumerations: emumerations
|
|
22427
22801
|
};
|
|
22428
22802
|
|
|
22429
|
-
const commonModdleExtensions = {
|
|
22430
|
-
camunda: camundaModdle
|
|
22803
|
+
const commonModdleExtensions = {
|
|
22804
|
+
camunda: camundaModdle
|
|
22431
22805
|
};
|
|
22432
22806
|
|
|
22433
|
-
/**
|
|
22434
|
-
*
|
|
22435
|
-
* @param {Object} options
|
|
22436
|
-
*/
|
|
22437
|
-
function Viewer$1(options = {}) {
|
|
22438
|
-
|
|
22439
|
-
options = {
|
|
22440
|
-
...options,
|
|
22441
|
-
moddleExtensions: {
|
|
22442
|
-
...commonModdleExtensions,
|
|
22443
|
-
...options.moddleExtensions
|
|
22444
|
-
}
|
|
22445
|
-
};
|
|
22446
|
-
|
|
22447
|
-
Viewer.call(this, options);
|
|
22448
|
-
}
|
|
22449
|
-
|
|
22807
|
+
/**
|
|
22808
|
+
*
|
|
22809
|
+
* @param {Object} options
|
|
22810
|
+
*/
|
|
22811
|
+
function Viewer$1(options = {}) {
|
|
22812
|
+
|
|
22813
|
+
options = {
|
|
22814
|
+
...options,
|
|
22815
|
+
moddleExtensions: {
|
|
22816
|
+
...commonModdleExtensions,
|
|
22817
|
+
...options.moddleExtensions
|
|
22818
|
+
}
|
|
22819
|
+
};
|
|
22820
|
+
|
|
22821
|
+
Viewer.call(this, options);
|
|
22822
|
+
}
|
|
22823
|
+
|
|
22450
22824
|
inherits_browser(Viewer$1, Viewer);
|
|
22451
22825
|
|
|
22452
22826
|
return Viewer$1;
|