@wcardinal/wcardinal-ui 0.455.0 → 0.456.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/types/wcardinal/ui/shape/action/e-shape-actions.d.ts +3 -0
- package/dist/types/wcardinal/ui/shape/action/e-shapes.d.ts +5 -0
- package/dist/wcardinal/ui/d-diagram-canvas.js +29 -0
- package/dist/wcardinal/ui/d-diagram-canvas.js.map +1 -1
- package/dist/wcardinal/ui/d-diagram-layer.js +3 -0
- package/dist/wcardinal/ui/d-diagram-layer.js.map +1 -1
- package/dist/wcardinal/ui/shape/action/e-shape-actions.js +8 -0
- package/dist/wcardinal/ui/shape/action/e-shape-actions.js.map +1 -1
- package/dist/wcardinal/ui/shape/action/e-shapes.js +4 -0
- package/dist/wcardinal/ui/shape/action/e-shapes.js.map +1 -0
- package/dist/wcardinal/ui/shape/variant/e-shape-base.js +17 -2
- package/dist/wcardinal/ui/shape/variant/e-shape-base.js.map +1 -1
- package/dist/wcardinal-ui-theme-dark-en-us.js +1 -1
- package/dist/wcardinal-ui-theme-dark-en-us.min.js +1 -1
- package/dist/wcardinal-ui-theme-dark-ja-jp.js +1 -1
- package/dist/wcardinal-ui-theme-dark-ja-jp.min.js +1 -1
- package/dist/wcardinal-ui-theme-dark.js +1 -1
- package/dist/wcardinal-ui-theme-dark.min.js +1 -1
- package/dist/wcardinal-ui-theme-white-en-us.js +1 -1
- package/dist/wcardinal-ui-theme-white-en-us.min.js +1 -1
- package/dist/wcardinal-ui-theme-white-ja-jp.js +1 -1
- package/dist/wcardinal-ui-theme-white-ja-jp.min.js +1 -1
- package/dist/wcardinal-ui-theme-white.js +1 -1
- package/dist/wcardinal-ui-theme-white.min.js +1 -1
- package/dist/wcardinal-ui.cjs.js +58 -3
- package/dist/wcardinal-ui.js +58 -3
- package/dist/wcardinal-ui.min.js +2 -2
- package/dist/wcardinal-ui.min.js.map +1 -1
- package/package.json +1 -1
|
@@ -5,6 +5,9 @@ import { EShapeEmbedded } from "../variant/e-shape-embedded";
|
|
|
5
5
|
import { DDiagram } from "../../d-diagram";
|
|
6
6
|
import { EShapeActionEnvironment } from "./e-shape-action-environment";
|
|
7
7
|
export declare class EShapeActions {
|
|
8
|
+
static SHAPE: EShape | null;
|
|
9
|
+
static getShape(): EShape | null;
|
|
10
|
+
static getDiagram(): DDiagram | null;
|
|
8
11
|
static isDiagram(target: unknown): target is DDiagram;
|
|
9
12
|
static isEmbedded(target: unknown): target is EShapeEmbedded;
|
|
10
13
|
static toDiagram(shape?: EShape | null): DDiagram | null;
|
|
@@ -20,6 +20,7 @@ import { EShapeDataValueExtensions } from "./shape/e-shape-data-value-extensions
|
|
|
20
20
|
import { EShapeActionEnvironment } from "./shape/action/e-shape-action-environment";
|
|
21
21
|
import { EShapeRuntimeImpl } from "./shape/e-shape-runtime-impl";
|
|
22
22
|
import { EShapeActionRuntimes } from "./shape/action/e-shape-action-runtimes";
|
|
23
|
+
import { EShapes } from "./shape/action/e-shapes";
|
|
23
24
|
var INITIAL_ZERO = "0";
|
|
24
25
|
var INITIAL_ARRAY = "[]";
|
|
25
26
|
var INITIAL_STRING = '""';
|
|
@@ -118,12 +119,16 @@ var DDiagramCanvas = /** @class */ (function (_super) {
|
|
|
118
119
|
// Action
|
|
119
120
|
this_1.initActions(shape, runtime, actionValueToRuntime);
|
|
120
121
|
// Init the runtime
|
|
122
|
+
EShapes.CURRENT = shape;
|
|
121
123
|
runtime.initialize(shape);
|
|
124
|
+
EShapes.CURRENT = null;
|
|
122
125
|
// Shortcut
|
|
123
126
|
var shortcut = shape.shortcut;
|
|
124
127
|
if (shortcut != null) {
|
|
125
128
|
UtilKeyboardEvent.on(shape, shortcut, function (e) {
|
|
129
|
+
EShapes.CURRENT = shape;
|
|
126
130
|
runtime.onClick(shape, e);
|
|
131
|
+
EShapes.CURRENT = null;
|
|
127
132
|
});
|
|
128
133
|
}
|
|
129
134
|
// Actionables
|
|
@@ -427,7 +432,9 @@ var DDiagramCanvas = /** @class */ (function (_super) {
|
|
|
427
432
|
if (found != null) {
|
|
428
433
|
var runtime = found.runtime;
|
|
429
434
|
if (runtime) {
|
|
435
|
+
EShapes.CURRENT = found;
|
|
430
436
|
runtime.onMove(found, e);
|
|
437
|
+
EShapes.CURRENT = null;
|
|
431
438
|
}
|
|
432
439
|
}
|
|
433
440
|
}
|
|
@@ -479,7 +486,9 @@ var DDiagramCanvas = /** @class */ (function (_super) {
|
|
|
479
486
|
while (target != null && target !== except && target instanceof EShapeBase) {
|
|
480
487
|
var runtime = target.runtime;
|
|
481
488
|
if (runtime) {
|
|
489
|
+
EShapes.CURRENT = target;
|
|
482
490
|
runtime.onOut(target, e);
|
|
491
|
+
EShapes.CURRENT = null;
|
|
483
492
|
}
|
|
484
493
|
target = target.parent;
|
|
485
494
|
}
|
|
@@ -488,7 +497,9 @@ var DDiagramCanvas = /** @class */ (function (_super) {
|
|
|
488
497
|
while (target != null && target !== except && target instanceof EShapeBase) {
|
|
489
498
|
var runtime = target.runtime;
|
|
490
499
|
if (runtime) {
|
|
500
|
+
EShapes.CURRENT = target;
|
|
491
501
|
runtime.onOver(target, e);
|
|
502
|
+
EShapes.CURRENT = null;
|
|
492
503
|
}
|
|
493
504
|
target = target.parent;
|
|
494
505
|
}
|
|
@@ -502,7 +513,9 @@ var DDiagramCanvas = /** @class */ (function (_super) {
|
|
|
502
513
|
while (true) {
|
|
503
514
|
var runtime = target.runtime;
|
|
504
515
|
if (runtime) {
|
|
516
|
+
EShapes.CURRENT = target;
|
|
505
517
|
runtime.onDown(target, e);
|
|
518
|
+
EShapes.CURRENT = null;
|
|
506
519
|
}
|
|
507
520
|
var parent_3 = target.parent;
|
|
508
521
|
if (parent_3 instanceof EShapeBase) {
|
|
@@ -525,7 +538,9 @@ var DDiagramCanvas = /** @class */ (function (_super) {
|
|
|
525
538
|
while (true) {
|
|
526
539
|
var runtime = target.runtime;
|
|
527
540
|
if (runtime) {
|
|
541
|
+
EShapes.CURRENT = target;
|
|
528
542
|
runtime.onUp(target, e);
|
|
543
|
+
EShapes.CURRENT = null;
|
|
529
544
|
}
|
|
530
545
|
var parent_4 = target.parent;
|
|
531
546
|
if (parent_4 instanceof EShapeBase) {
|
|
@@ -547,7 +562,9 @@ var DDiagramCanvas = /** @class */ (function (_super) {
|
|
|
547
562
|
while (true) {
|
|
548
563
|
var runtime = target.runtime;
|
|
549
564
|
if (runtime) {
|
|
565
|
+
EShapes.CURRENT = target;
|
|
550
566
|
runtime.onUpOutside(target, e);
|
|
567
|
+
EShapes.CURRENT = null;
|
|
551
568
|
}
|
|
552
569
|
var parent_5 = target.parent;
|
|
553
570
|
if (parent_5 instanceof EShapeBase) {
|
|
@@ -570,7 +587,9 @@ var DDiagramCanvas = /** @class */ (function (_super) {
|
|
|
570
587
|
while (true) {
|
|
571
588
|
var runtime = target.runtime;
|
|
572
589
|
if (runtime) {
|
|
590
|
+
EShapes.CURRENT = target;
|
|
573
591
|
runtime.onClick(target, e);
|
|
592
|
+
EShapes.CURRENT = null;
|
|
574
593
|
}
|
|
575
594
|
var parent_6 = target.parent;
|
|
576
595
|
if (parent_6 instanceof EShapeBase) {
|
|
@@ -594,7 +613,9 @@ var DDiagramCanvas = /** @class */ (function (_super) {
|
|
|
594
613
|
while (true) {
|
|
595
614
|
var runtime = target.runtime;
|
|
596
615
|
if (runtime) {
|
|
616
|
+
EShapes.CURRENT = target;
|
|
597
617
|
runtime.onDblClick(target, e, interactionManager);
|
|
618
|
+
EShapes.CURRENT = null;
|
|
598
619
|
}
|
|
599
620
|
var parent_7 = target.parent;
|
|
600
621
|
if (parent_7 instanceof EShapeBase) {
|
|
@@ -615,7 +636,9 @@ var DDiagramCanvas = /** @class */ (function (_super) {
|
|
|
615
636
|
while (true) {
|
|
616
637
|
var runtime = target.runtime;
|
|
617
638
|
if (runtime) {
|
|
639
|
+
EShapes.CURRENT = target;
|
|
618
640
|
runtime.onRightClick(target, e);
|
|
641
|
+
EShapes.CURRENT = null;
|
|
619
642
|
}
|
|
620
643
|
var parent_8 = target.parent;
|
|
621
644
|
if (parent_8 instanceof EShapeBase) {
|
|
@@ -638,7 +661,9 @@ var DDiagramCanvas = /** @class */ (function (_super) {
|
|
|
638
661
|
while (true) {
|
|
639
662
|
var runtime = target.runtime;
|
|
640
663
|
if (runtime) {
|
|
664
|
+
EShapes.CURRENT = target;
|
|
641
665
|
runtime.onRightDown(target, e);
|
|
666
|
+
EShapes.CURRENT = null;
|
|
642
667
|
}
|
|
643
668
|
var parent_9 = target.parent;
|
|
644
669
|
if (parent_9 instanceof EShapeBase) {
|
|
@@ -661,7 +686,9 @@ var DDiagramCanvas = /** @class */ (function (_super) {
|
|
|
661
686
|
while (true) {
|
|
662
687
|
var runtime = target.runtime;
|
|
663
688
|
if (runtime) {
|
|
689
|
+
EShapes.CURRENT = target;
|
|
664
690
|
runtime.onRightUp(target, e);
|
|
691
|
+
EShapes.CURRENT = null;
|
|
665
692
|
}
|
|
666
693
|
var parent_10 = target.parent;
|
|
667
694
|
if (parent_10 instanceof EShapeBase) {
|
|
@@ -683,7 +710,9 @@ var DDiagramCanvas = /** @class */ (function (_super) {
|
|
|
683
710
|
while (true) {
|
|
684
711
|
var runtime = target.runtime;
|
|
685
712
|
if (runtime) {
|
|
713
|
+
EShapes.CURRENT = target;
|
|
686
714
|
runtime.onRightUpOutside(target, e);
|
|
715
|
+
EShapes.CURRENT = null;
|
|
687
716
|
}
|
|
688
717
|
var parent_11 = target.parent;
|
|
689
718
|
if (parent_11 instanceof EShapeBase) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"d-diagram-canvas.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-diagram-canvas.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { IPoint, InteractionEvent, InteractionManager, Point, Renderer } from \"pixi.js\";\nimport { DApplications } from \"./d-applications\";\nimport {\n\tDDiagramCanvasBase,\n\tDDiagramCanvasBaseOptions,\n\tDThemeDiagramCanvasBase\n} from \"./d-diagram-canvas-base\";\nimport { EShape } from \"./shape/e-shape\";\nimport { EShapeBase } from \"./shape/variant/e-shape-base\";\nimport { UtilPointerEvent } from \"./util/util-pointer-event\";\nimport { EShapeActionValue } from \"./shape/action/e-shape-action-value\";\nimport { EShapeActionRuntime } from \"./shape/action/e-shape-action-runtime\";\nimport { DDiagramDataMapper } from \"./d-diagram-data-mapper\";\nimport { EShapeRuntimes } from \"./shape/e-shape-runtimes\";\nimport { EShapeRuntime } from \"./shape/e-shape-runtime\";\nimport { EShapeDataValue } from \"./shape/e-shape-data-value\";\nimport { EShapeDataValueType } from \"./shape/e-shape-data-value-type\";\nimport { EShapeContainer } from \"./shape/e-shape-container\";\nimport { UtilKeyboardEvent } from \"./util/util-keyboard-event\";\nimport { DDiagramCanvasData } from \"./d-diagram-canvas-data\";\nimport { DDiagramCanvasDataImpl } from \"./d-diagram-canvas-data-impl\";\nimport { DDiagramCanvasShape } from \"./d-diagram-canvas-shape\";\nimport { DDiagramCanvasShapeImpl } from \"./d-diagram-canvas-shape-impl\";\nimport { DDiagramCanvasTicker } from \"./d-diagram-canvas-ticker\";\nimport { DDiagramCanvasTickerImpl } from \"./d-diagram-canvas-ticker-impl\";\nimport { EShapeDataValueScope } from \"./shape/e-shape-data-value-scope\";\nimport { EShapeEmbedded } from \"./shape/variant/e-shape-embedded\";\nimport { EShapeDataValueExtensions } from \"./shape/e-shape-data-value-extensions\";\nimport { EShapeActionEnvironment } from \"./shape/action/e-shape-action-environment\";\nimport { EShapeRuntimeImpl } from \"./shape/e-shape-runtime-impl\";\nimport { EShapeActionRuntimes } from \"./shape/action/e-shape-action-runtimes\";\n\nexport interface DDiagramCanvasOptions<THEME extends DThemeDiagramCanvas = DThemeDiagramCanvas>\n\textends DDiagramCanvasBaseOptions<THEME> {}\n\nexport interface DThemeDiagramCanvas extends DThemeDiagramCanvasBase {}\n\nconst INITIAL_ZERO = \"0\";\n\nconst INITIAL_ARRAY = \"[]\";\n\nconst INITIAL_STRING = '\"\"';\n\nconst INITIAL_OBJECT = \"{}\";\n\nconst INITIAL_FALSE = \"false\";\n\nconst INITIALIZER_ZERO = () => {\n\treturn 0;\n};\n\nconst INITIALIZER_ARRAY = () => {\n\treturn [];\n};\n\nconst INITIALIZER_STRING = () => {\n\treturn \"\";\n};\n\nconst INITIALIZER_OBJECT = () => {\n\treturn {};\n};\n\nconst INITIALIZER_FALSE = () => {\n\treturn false;\n};\n\nexport class DDiagramCanvas<\n\tTHEME extends DThemeDiagramCanvas = DThemeDiagramCanvas,\n\tOPTIONS extends DDiagramCanvasOptions<THEME> = DDiagramCanvasOptions<THEME>\n> extends DDiagramCanvasBase<THEME, OPTIONS> {\n\tprotected static WORK_DBLCLICK?: Point;\n\n\tprotected _data: DDiagramCanvasData;\n\tprotected _shape: DDiagramCanvasShape;\n\tprotected _ticker: DDiagramCanvasTicker;\n\tprotected _actionables: EShape[];\n\n\tprotected _overed?: EShape | null;\n\tprotected _downed?: EShape | null;\n\tprotected _downeds: Set<EShape>;\n\n\tprotected _updateBound: () => void;\n\n\tconstructor(options: OPTIONS) {\n\t\tsuper(options);\n\t\tthis._data = new DDiagramCanvasDataImpl();\n\t\tthis._shape = new DDiagramCanvasShapeImpl(this);\n\t\tthis._ticker = new DDiagramCanvasTickerImpl(this);\n\t\tthis._actionables = [];\n\t\tthis._downeds = new Set<EShape>();\n\t\tthis._updateBound = (): void => {\n\t\t\tDApplications.update(this);\n\t\t};\n\t}\n\n\tget data(): DDiagramCanvasData {\n\t\treturn this._data;\n\t}\n\n\tget shape(): DDiagramCanvasShape {\n\t\treturn this._shape;\n\t}\n\n\tget ticker(): DDiagramCanvasTicker {\n\t\treturn this._ticker;\n\t}\n\n\tinitialize(shapes: EShape[], mapper?: DDiagramDataMapper | null): void {\n\t\tconst actionables = this._actionables;\n\t\tconst data = this._data;\n\t\tthis.initialize_(\n\t\t\tshapes,\n\t\t\tnull,\n\t\t\tnull,\n\t\t\tmapper,\n\t\t\tnew Map<EShapeDataValueType, Map<string, (value: unknown) => unknown>>(),\n\t\t\tnew Map<EShapeDataValueType, Map<string, () => unknown>>(),\n\t\t\tnew Map<EShapeActionValue, EShapeActionRuntime>(),\n\t\t\tthis._ticker,\n\t\t\tthis._shape,\n\t\t\tdata,\n\t\t\tactionables\n\t\t);\n\t\tconst layers = this._layer.children;\n\t\tconst layersLength = layers.length;\n\t\tfor (let i = 0; i < layersLength; ++i) {\n\t\t\tlayers[i].initialize(actionables);\n\t\t}\n\t\tEShapeActionEnvironment.isInitializing = true;\n\t\tconst time = Date.now();\n\t\tfor (let i = 0; i < layersLength; ++i) {\n\t\t\tlayers[i].update(time);\n\t\t}\n\t\tEShapeActionEnvironment.isInitializing = false;\n\t\tdata.extended.each((id): void => {\n\t\t\tconst extension = EShapeDataValueExtensions.getById(id);\n\t\t\tif (extension) {\n\t\t\t\tconst start = extension.start;\n\t\t\t\tif (start) {\n\t\t\t\t\tstart(this);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\tthis._ticker.start();\n\t}\n\n\tprotected initialize_(\n\t\tshapes: EShape[],\n\t\tdataShape: EShape | null,\n\t\tcontainerShape: EShape | null,\n\t\tmapper: DDiagramDataMapper | null | undefined,\n\t\tformatters: Map<EShapeDataValueType, Map<string, (value: unknown) => unknown>>,\n\t\tinitializers: Map<EShapeDataValueType, Map<string, () => unknown>>,\n\t\tactionValueToRuntime: Map<EShapeActionValue, EShapeActionRuntime>,\n\t\tcanvasTicker: DDiagramCanvasTicker,\n\t\tcanvasShape: DDiagramCanvasShape,\n\t\tcanvasData: DDiagramCanvasData,\n\t\tactionables: EShape[]\n\t): void {\n\t\tfor (let i = 0, imax = shapes.length; i < imax; ++i) {\n\t\t\tconst shape = shapes[i];\n\n\t\t\t// ID\n\t\t\tconst id = shape.id;\n\t\t\tif (0 < id.length) {\n\t\t\t\tcanvasShape.add(id, shape);\n\t\t\t}\n\n\t\t\t// Data\n\t\t\tthis.initData(\n\t\t\t\tshape,\n\t\t\t\tdataShape,\n\t\t\t\tcontainerShape,\n\t\t\t\tmapper,\n\t\t\t\tformatters,\n\t\t\t\tinitializers,\n\t\t\t\tcanvasTicker,\n\t\t\t\tcanvasData\n\t\t\t);\n\n\t\t\t// Runtime\n\t\t\tconst runtime = new (EShapeRuntimes[shape.type] || EShapeRuntimeImpl)(shape);\n\t\t\tshape.runtime = runtime;\n\n\t\t\t// Action\n\t\t\tthis.initActions(shape, runtime, actionValueToRuntime);\n\n\t\t\t// Init the runtime\n\t\t\truntime.initialize(shape);\n\n\t\t\t// Shortcut\n\t\t\tconst shortcut = shape.shortcut;\n\t\t\tif (shortcut != null) {\n\t\t\t\tUtilKeyboardEvent.on(shape, shortcut, (e: KeyboardEvent): void => {\n\t\t\t\t\truntime.onClick(shape, e);\n\t\t\t\t});\n\t\t\t}\n\n\t\t\t// Actionables\n\t\t\tif (runtime.isActionable()) {\n\t\t\t\tactionables.push(shape);\n\t\t\t}\n\n\t\t\t// Children\n\t\t\tconst children = shape.children;\n\t\t\tif (0 < children.length) {\n\t\t\t\tlet newDataShape = dataShape;\n\t\t\t\tlet newContainerShape = containerShape;\n\t\t\t\tif (shape instanceof EShapeEmbedded) {\n\t\t\t\t\tif (newDataShape == null) {\n\t\t\t\t\t\tnewDataShape = shape;\n\t\t\t\t\t}\n\t\t\t\t\tnewContainerShape = shape;\n\t\t\t\t}\n\t\t\t\tthis.initialize_(\n\t\t\t\t\tchildren,\n\t\t\t\t\tnewDataShape,\n\t\t\t\t\tnewContainerShape,\n\t\t\t\t\tmapper,\n\t\t\t\t\tformatters,\n\t\t\t\t\tinitializers,\n\t\t\t\t\tactionValueToRuntime,\n\t\t\t\t\tcanvasTicker,\n\t\t\t\t\tcanvasShape,\n\t\t\t\t\tcanvasData,\n\t\t\t\t\tactionables\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected initData(\n\t\tshape: EShape,\n\t\tdataShape: EShape | null,\n\t\tcontainerShape: EShape | null,\n\t\tmapper: DDiagramDataMapper | null | undefined,\n\t\tformatters: Map<EShapeDataValueType, Map<string, (value: unknown) => unknown>>,\n\t\tinitializers: Map<EShapeDataValueType, Map<string, () => unknown>>,\n\t\tcanvasTicker: DDiagramCanvasTicker,\n\t\tcanvasData: DDiagramCanvasData\n\t): void {\n\t\tconst data = shape.data;\n\t\tfor (let i = 0, imax = data.size(); i < imax; ++i) {\n\t\t\tconst value = data.get(i);\n\t\t\tif (value == null) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tswitch (value.type) {\n\t\t\t\tcase EShapeDataValueType.BOOLEAN:\n\t\t\t\tcase EShapeDataValueType.BOOLEAN_ARRAY:\n\t\t\t\tcase EShapeDataValueType.NUMBER:\n\t\t\t\tcase EShapeDataValueType.NUMBER_ARRAY:\n\t\t\t\tcase EShapeDataValueType.STRING:\n\t\t\t\tcase EShapeDataValueType.STRING_ARRAY:\n\t\t\t\tcase EShapeDataValueType.OBJECT:\n\t\t\t\tcase EShapeDataValueType.OBJECT_ARRAY:\n\t\t\t\t\tthis.initDataValue(\n\t\t\t\t\t\tvalue,\n\t\t\t\t\t\tshape,\n\t\t\t\t\t\tdataShape,\n\t\t\t\t\t\tcontainerShape,\n\t\t\t\t\t\tmapper,\n\t\t\t\t\t\tformatters,\n\t\t\t\t\t\tinitializers,\n\t\t\t\t\t\tcanvasData\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t\tcase EShapeDataValueType.TICKER:\n\t\t\t\t\tthis.initDataTicker(value, initializers, canvasTicker);\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tthis.initDataExtension(value, canvasData);\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected initDataValue(\n\t\tvalue: EShapeDataValue,\n\t\tshape: EShape,\n\t\tdataShape: EShape | null,\n\t\tcontainerShape: EShape | null,\n\t\tmapper: DDiagramDataMapper | null | undefined,\n\t\tformatters: Map<EShapeDataValueType, Map<string, (value: unknown) => unknown>>,\n\t\tinitializers: Map<EShapeDataValueType, Map<string, () => unknown>>,\n\t\tcanvasData: DDiagramCanvasData\n\t): void {\n\t\t// Mapping\n\t\tif (value.scope === EShapeDataValueScope.PRIVATE) {\n\t\t\tconst id = value.id;\n\t\t\tif (0 < id.length) {\n\t\t\t\tif (containerShape) {\n\t\t\t\t\tcontainerShape.data.private.add(id, value);\n\t\t\t\t} else {\n\t\t\t\t\tcanvasData.private.add(id, value);\n\t\t\t\t}\n\t\t\t}\n\t\t} else if (value.scope === EShapeDataValueScope.PROTECTED) {\n\t\t\tconst id = value.id;\n\t\t\tif (0 < id.length) {\n\t\t\t\tcanvasData.protected.add(id, value);\n\t\t\t}\n\t\t} else {\n\t\t\tif (mapper) {\n\t\t\t\tmapper(value, dataShape || shape);\n\t\t\t}\n\t\t\tconst id = value.id;\n\t\t\tif (0 < id.length) {\n\t\t\t\tcanvasData.add(id, value);\n\t\t\t}\n\t\t}\n\n\t\t// Format\n\t\tconst format = value.format;\n\t\tconst initial = value.initial;\n\t\tlet formatToFormatter = formatters.get(value.type);\n\t\tif (formatToFormatter == null) {\n\t\t\tformatToFormatter = new Map<string, (value: unknown) => unknown>();\n\t\t\tformatters.set(value.type, formatToFormatter);\n\t\t}\n\t\tconst oldFormatter = formatToFormatter.get(format);\n\t\tif (oldFormatter != null) {\n\t\t\tvalue.formatter = oldFormatter;\n\t\t} else if (0 < format.length) {\n\t\t\tconst newFormatter = this.calcFormatter(value, format, initial);\n\t\t\tformatToFormatter.set(format, newFormatter);\n\t\t\tvalue.formatter = newFormatter;\n\t\t}\n\n\t\t// Initial\n\t\tlet initialToInitializer = initializers.get(value.type);\n\t\tif (initialToInitializer == null) {\n\t\t\tinitialToInitializer = new Map<string, () => unknown>();\n\t\t\tinitializers.set(value.type, initialToInitializer);\n\t\t}\n\t\tconst oldInitializer = initialToInitializer.get(initial);\n\t\tif (oldInitializer != null) {\n\t\t\tvalue.value = oldInitializer();\n\t\t} else {\n\t\t\tconst newInitializer = this.calcInitial(value, initial);\n\t\t\tinitialToInitializer.set(initial, newInitializer);\n\t\t\tvalue.value = newInitializer();\n\t\t}\n\t}\n\n\tprotected initDataTicker(\n\t\tvalue: EShapeDataValue,\n\t\tinitializers: Map<EShapeDataValueType, Map<string, () => unknown>>,\n\t\tcanvasTicker: DDiagramCanvasTicker\n\t): void {\n\t\tconst initial = value.initial;\n\t\tlet initialToInitializer = initializers.get(value.type);\n\t\tif (initialToInitializer == null) {\n\t\t\tinitialToInitializer = new Map<string, () => unknown>();\n\t\t\tinitializers.set(value.type, initialToInitializer);\n\t\t}\n\t\tconst oldInitializer = initialToInitializer.get(initial);\n\t\tif (oldInitializer !== undefined) {\n\t\t\tvalue.value = 0;\n\t\t\tcanvasTicker.add(oldInitializer()).add(value);\n\t\t} else {\n\t\t\tconst newInitializer = this.calcInitial(value, initial);\n\t\t\tinitialToInitializer.set(initial, newInitializer);\n\t\t\tvalue.value = 0;\n\t\t\tcanvasTicker.add(newInitializer()).add(value);\n\t\t}\n\t}\n\n\tprotected initDataExtension(value: EShapeDataValue, canvasData: DDiagramCanvasData): void {\n\t\tconst extension = EShapeDataValueExtensions.get(value.type);\n\t\tif (extension) {\n\t\t\tcanvasData.extended.add(extension.id, value);\n\t\t\tvalue.value = extension.initial;\n\t\t}\n\t}\n\n\tprotected initActions(\n\t\tshape: EShape,\n\t\tshapeRuntime: EShapeRuntime,\n\t\tvalueToRuntime: Map<EShapeActionValue, EShapeActionRuntime>\n\t): void {\n\t\tconst values = shape.action.values;\n\t\tconst runtimes = shapeRuntime.actions;\n\t\tconst typeRuntimes = EShapeActionRuntimes.get(shape.type);\n\t\tif (typeRuntimes != null) {\n\t\t\tfor (let i = 0, imax = typeRuntimes.length; i < imax; ++i) {\n\t\t\t\tconst typeRuntime = typeRuntimes[i];\n\t\t\t\truntimes.push(typeRuntime);\n\t\t\t\tshapeRuntime.reset |= typeRuntime.reset;\n\t\t\t}\n\t\t}\n\t\tfor (let i = 0, imax = values.length; i < imax; ++i) {\n\t\t\tconst value = values[i];\n\t\t\tlet runtime = valueToRuntime.get(value);\n\t\t\tif (runtime == null) {\n\t\t\t\truntime = value.toRuntime();\n\t\t\t\tif (runtime != null) {\n\t\t\t\t\tvalueToRuntime.set(value, runtime);\n\t\t\t\t\truntimes.push(runtime);\n\t\t\t\t\tshapeRuntime.reset |= runtime.reset;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\truntimes.push(runtime);\n\t\t\t\tshapeRuntime.reset |= runtime.reset;\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected calcFormatter(\n\t\tvalue: EShapeDataValue,\n\t\tformat: string,\n\t\tinitial: string\n\t): (value: unknown) => unknown {\n\t\tconst def = this.toInitial(value);\n\t\ttry {\n\t\t\treturn Function(\n\t\t\t\t\"value\",\n\t\t\t\t/* eslint-disable prettier/prettier */\n\t\t\t\t`try {` +\n\t\t\t\t\t`return (${format});` +\n\t\t\t\t`} catch( e1 ) {` +\n\t\t\t\t\t`try {` +\n\t\t\t\t\t\t`return (${0 < initial.length ? initial : def});` +\n\t\t\t\t\t`} catch( e2 ) {` +\n\t\t\t\t\t\t`return ${def};` +\n\t\t\t\t\t`}` +\n\t\t\t\t`}`\n\t\t\t\t/* eslint-enable prettier/prettier */\n\t\t\t) as any;\n\t\t} catch (e) {\n\t\t\treturn this.toInitializer(value);\n\t\t}\n\t}\n\n\tprotected calcInitial(value: EShapeDataValue, initial: string): () => unknown {\n\t\tif (initial.length <= 0) {\n\t\t\treturn this.toInitializer(value);\n\t\t}\n\t\ttry {\n\t\t\treturn Function(\n\t\t\t\t/* eslint-disable prettier/prettier */\n\t\t\t\t`try {` +\n\t\t\t\t\t`return (${initial});` +\n\t\t\t\t`} catch( e ) {` +\n\t\t\t\t\t`return ${this.toInitial(value)};` +\n\t\t\t\t`}`\n\t\t\t\t/* eslint-enable prettier/prettier */\n\t\t\t) as any;\n\t\t} catch (e) {\n\t\t\treturn this.toInitializer(value);\n\t\t}\n\t}\n\n\tprotected toInitial(value: EShapeDataValue): string {\n\t\tconst valueType = value.type;\n\t\tswitch (valueType) {\n\t\t\tcase EShapeDataValueType.BOOLEAN:\n\t\t\t\treturn INITIAL_FALSE;\n\t\t\tcase EShapeDataValueType.BOOLEAN_ARRAY:\n\t\t\t\treturn INITIAL_ARRAY;\n\t\t\tcase EShapeDataValueType.NUMBER:\n\t\t\t\treturn INITIAL_ZERO;\n\t\t\tcase EShapeDataValueType.NUMBER_ARRAY:\n\t\t\t\treturn INITIAL_ARRAY;\n\t\t\tcase EShapeDataValueType.STRING:\n\t\t\t\treturn INITIAL_STRING;\n\t\t\tcase EShapeDataValueType.STRING_ARRAY:\n\t\t\t\treturn INITIAL_ARRAY;\n\t\t\tcase EShapeDataValueType.OBJECT:\n\t\t\t\treturn INITIAL_OBJECT;\n\t\t\tcase EShapeDataValueType.OBJECT_ARRAY:\n\t\t\t\treturn INITIAL_ARRAY;\n\t\t\tcase EShapeDataValueType.TICKER:\n\t\t\t\treturn INITIAL_ZERO;\n\t\t\tdefault:\n\t\t\t\treturn INITIAL_ZERO;\n\t\t}\n\t}\n\n\tprotected toInitializer(value: EShapeDataValue): () => unknown {\n\t\tconst valueType = value.type;\n\t\tswitch (valueType) {\n\t\t\tcase EShapeDataValueType.BOOLEAN:\n\t\t\t\treturn INITIALIZER_FALSE;\n\t\t\tcase EShapeDataValueType.BOOLEAN_ARRAY:\n\t\t\t\treturn INITIALIZER_ARRAY;\n\t\t\tcase EShapeDataValueType.NUMBER:\n\t\t\t\treturn INITIALIZER_ZERO;\n\t\t\tcase EShapeDataValueType.NUMBER_ARRAY:\n\t\t\t\treturn INITIALIZER_ARRAY;\n\t\t\tcase EShapeDataValueType.STRING:\n\t\t\t\treturn INITIALIZER_STRING;\n\t\t\tcase EShapeDataValueType.STRING_ARRAY:\n\t\t\t\treturn INITIALIZER_ARRAY;\n\t\t\tcase EShapeDataValueType.OBJECT:\n\t\t\t\treturn INITIALIZER_OBJECT;\n\t\t\tcase EShapeDataValueType.OBJECT_ARRAY:\n\t\t\t\treturn INITIALIZER_ARRAY;\n\t\t\tcase EShapeDataValueType.TICKER:\n\t\t\t\treturn INITIALIZER_ZERO;\n\t\t\tdefault:\n\t\t\t\treturn INITIALIZER_ZERO;\n\t\t}\n\t}\n\n\tprotected onDestroy(): void {\n\t\tthis._data.extended.each((id): void => {\n\t\t\tconst extension = EShapeDataValueExtensions.getById(id);\n\t\t\tif (extension) {\n\t\t\t\tconst stop = extension.stop;\n\t\t\t\tif (stop) {\n\t\t\t\t\tstop(this);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\tthis._ticker.stop();\n\t\tsuper.onDestroy();\n\t}\n\n\thitTestInteractives(global: IPoint): EShape | null {\n\t\tconst layers = this._layer.children;\n\t\tfor (let i = layers.length - 1; 0 <= i; --i) {\n\t\t\tconst layer = layers[i];\n\t\t\tif (layer.visible) {\n\t\t\t\tconst result = layer.hitTestInteractives(global);\n\t\t\t\tif (result != null) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn null;\n\t}\n\n\tonShapeMove(e: InteractionEvent): boolean {\n\t\tconst found = this.hitTestInteractives(e.data.global);\n\n\t\t// Cursor\n\t\tthis.cursor = this._cursor = this.toShapeCursor(found);\n\n\t\t// TItle\n\t\tconst layer = DApplications.getLayer(this);\n\t\tif (layer) {\n\t\t\tconst title = this.toShapeTitle(found);\n\t\t\tconst view = layer.view;\n\t\t\tif (view.title !== title) {\n\t\t\t\tview.title = title;\n\t\t\t}\n\t\t}\n\n\t\tconst overed = this._overed;\n\t\tthis._overed = found;\n\t\tif (found === overed) {\n\t\t\tif (found != null) {\n\t\t\t\tconst runtime = found.runtime;\n\t\t\t\tif (runtime) {\n\t\t\t\t\truntime.onMove(found, e);\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tthis.onShapeOut(e, overed, found);\n\t\t\tthis.onShapeOver(e, found);\n\t\t}\n\t\treturn found != null;\n\t}\n\n\tprotected toShapeCursor(target: EShape | null): string {\n\t\tif (target != null) {\n\t\t\tlet current = target;\n\t\t\twhile (true) {\n\t\t\t\tconst cursor = current.cursor;\n\t\t\t\tif (cursor != null && 0 < cursor.length) {\n\t\t\t\t\treturn cursor;\n\t\t\t\t}\n\t\t\t\tconst parent = current.parent;\n\t\t\t\tif (parent instanceof EShapeBase) {\n\t\t\t\t\tcurrent = parent;\n\t\t\t\t} else {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn \"auto\";\n\t}\n\n\tprotected toShapeTitle(target: EShape | null): string {\n\t\tif (target != null) {\n\t\t\tlet current = target;\n\t\t\twhile (true) {\n\t\t\t\tconst title = current.title;\n\t\t\t\tif (title != null && 0 < title.length) {\n\t\t\t\t\treturn title;\n\t\t\t\t}\n\t\t\t\tconst parent = current.parent;\n\t\t\t\tif (parent instanceof EShapeBase) {\n\t\t\t\t\tcurrent = parent;\n\t\t\t\t} else {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn \"\";\n\t}\n\n\tprotected onShapeOut(\n\t\te: InteractionEvent,\n\t\ttarget?: EShape | EShapeContainer | null,\n\t\texcept?: EShape | null\n\t): void {\n\t\twhile (target != null && target !== except && target instanceof EShapeBase) {\n\t\t\tconst runtime = target.runtime;\n\t\t\tif (runtime) {\n\t\t\t\truntime.onOut(target, e);\n\t\t\t}\n\t\t\ttarget = target.parent;\n\t\t}\n\t}\n\n\tprotected onShapeOver(\n\t\te: InteractionEvent,\n\t\ttarget?: EShape | EShapeContainer | null,\n\t\texcept?: EShape | null\n\t): void {\n\t\twhile (target != null && target !== except && target instanceof EShapeBase) {\n\t\t\tconst runtime = target.runtime;\n\t\t\tif (runtime) {\n\t\t\t\truntime.onOver(target, e);\n\t\t\t}\n\t\t\ttarget = target.parent;\n\t\t}\n\t}\n\n\tonShapeDown(e: InteractionEvent): boolean {\n\t\tconst found = this.hitTestInteractives(e.data.global);\n\t\tthis._downed = found;\n\t\tif (found) {\n\t\t\tthis._downeds.add(found);\n\t\t\tlet target = found;\n\t\t\twhile (true) {\n\t\t\t\tconst runtime = target.runtime;\n\t\t\t\tif (runtime) {\n\t\t\t\t\truntime.onDown(target, e);\n\t\t\t\t}\n\t\t\t\tconst parent = target.parent;\n\t\t\t\tif (parent instanceof EShapeBase) {\n\t\t\t\t\ttarget = parent;\n\t\t\t\t} else {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tonShapeUp(e: InteractionEvent): boolean {\n\t\tconst downeds = this._downeds;\n\t\tconst found = this.hitTestInteractives(e.data.global);\n\t\tif (found) {\n\t\t\tdowneds.delete(found);\n\t\t\tlet target = found;\n\t\t\twhile (true) {\n\t\t\t\tconst runtime = target.runtime;\n\t\t\t\tif (runtime) {\n\t\t\t\t\truntime.onUp(target, e);\n\t\t\t\t}\n\t\t\t\tconst parent = target.parent;\n\t\t\t\tif (parent instanceof EShapeBase) {\n\t\t\t\t\ttarget = parent;\n\t\t\t\t} else {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tthis.onShapeCancel(e);\n\t\treturn found != null;\n\t}\n\n\tonShapeCancel(e: InteractionEvent): boolean {\n\t\tconst downeds = this._downeds;\n\t\tif (0 < downeds.size) {\n\t\t\tdowneds.forEach((downed: EShape): void => {\n\t\t\t\tlet target = downed;\n\t\t\t\twhile (true) {\n\t\t\t\t\tconst runtime = target.runtime;\n\t\t\t\t\tif (runtime) {\n\t\t\t\t\t\truntime.onUpOutside(target, e);\n\t\t\t\t\t}\n\t\t\t\t\tconst parent = target.parent;\n\t\t\t\t\tif (parent instanceof EShapeBase) {\n\t\t\t\t\t\ttarget = parent;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t\tdowneds.clear();\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tonShapeClick(e: InteractionEvent): boolean {\n\t\tconst found = this.hitTestInteractives(e.data.global);\n\t\tif (found && this._downed === found) {\n\t\t\tlet target = found;\n\t\t\twhile (true) {\n\t\t\t\tconst runtime = target.runtime;\n\t\t\t\tif (runtime) {\n\t\t\t\t\truntime.onClick(target, e);\n\t\t\t\t}\n\t\t\t\tconst parent = target.parent;\n\t\t\t\tif (parent instanceof EShapeBase) {\n\t\t\t\t\ttarget = parent;\n\t\t\t\t} else {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tonShapeDblClick(e: MouseEvent | TouchEvent, interactionManager: InteractionManager): boolean {\n\t\tconst global = (DDiagramCanvas.WORK_DBLCLICK ??= new Point());\n\t\tUtilPointerEvent.toGlobal(e, interactionManager, global);\n\t\tconst found = this.hitTestInteractives(global);\n\t\tif (found) {\n\t\t\tlet target = found;\n\t\t\twhile (true) {\n\t\t\t\tconst runtime = target.runtime;\n\t\t\t\tif (runtime) {\n\t\t\t\t\truntime.onDblClick(target, e, interactionManager);\n\t\t\t\t}\n\t\t\t\tconst parent = target.parent;\n\t\t\t\tif (parent instanceof EShapeBase) {\n\t\t\t\t\ttarget = parent;\n\t\t\t\t} else {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tonShapeRightClick(e: InteractionEvent): boolean {\n\t\tconst found = this.hitTestInteractives(e.data.global);\n\t\tif (found && this._downed === found) {\n\t\t\tlet target = found;\n\t\t\twhile (true) {\n\t\t\t\tconst runtime = target.runtime;\n\t\t\t\tif (runtime) {\n\t\t\t\t\truntime.onRightClick(target, e);\n\t\t\t\t}\n\t\t\t\tconst parent = target.parent;\n\t\t\t\tif (parent instanceof EShapeBase) {\n\t\t\t\t\ttarget = parent;\n\t\t\t\t} else {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tonShapeRightDown(e: InteractionEvent): boolean {\n\t\tconst found = this.hitTestInteractives(e.data.global);\n\t\tthis._downed = found;\n\t\tif (found) {\n\t\t\tthis._downeds.add(found);\n\t\t\tlet target = found;\n\t\t\twhile (true) {\n\t\t\t\tconst runtime = target.runtime;\n\t\t\t\tif (runtime) {\n\t\t\t\t\truntime.onRightDown(target, e);\n\t\t\t\t}\n\t\t\t\tconst parent = target.parent;\n\t\t\t\tif (parent instanceof EShapeBase) {\n\t\t\t\t\ttarget = parent;\n\t\t\t\t} else {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tonShapeRightUp(e: InteractionEvent): boolean {\n\t\tconst downeds = this._downeds;\n\t\tconst found = this.hitTestInteractives(e.data.global);\n\t\tif (found) {\n\t\t\tdowneds.delete(found);\n\t\t\tlet target = found;\n\t\t\twhile (true) {\n\t\t\t\tconst runtime = target.runtime;\n\t\t\t\tif (runtime) {\n\t\t\t\t\truntime.onRightUp(target, e);\n\t\t\t\t}\n\t\t\t\tconst parent = target.parent;\n\t\t\t\tif (parent instanceof EShapeBase) {\n\t\t\t\t\ttarget = parent;\n\t\t\t\t} else {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tthis.onShapeRightCancel(e);\n\t\treturn found != null;\n\t}\n\n\tonShapeRightCancel(e: InteractionEvent): boolean {\n\t\tconst downeds = this._downeds;\n\t\tif (0 < downeds.size) {\n\t\t\tdowneds.forEach((downed: EShape): void => {\n\t\t\t\tlet target = downed;\n\t\t\t\twhile (true) {\n\t\t\t\t\tconst runtime = target.runtime;\n\t\t\t\t\tif (runtime) {\n\t\t\t\t\t\truntime.onRightUpOutside(target, e);\n\t\t\t\t\t}\n\t\t\t\t\tconst parent = target.parent;\n\t\t\t\t\tif (parent instanceof EShapeBase) {\n\t\t\t\t\t\ttarget = parent;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t\tdowneds.clear();\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tupdate(): void {\n\t\tconst actionables = this._actionables;\n\t\tif (0 < actionables.length) {\n\t\t\tlet effect = -1;\n\t\t\tconst time = Date.now();\n\t\t\tfor (let i = 0, imax = actionables.length; i < imax; ++i) {\n\t\t\t\tconst actionable = actionables[i];\n\t\t\t\tactionable.update(time);\n\t\t\t\tconst runtime = actionable.runtime;\n\t\t\t\tif (runtime) {\n\t\t\t\t\tconst runtimeEffect = runtime.effect;\n\t\t\t\t\tif (0 <= runtimeEffect && time < runtimeEffect) {\n\t\t\t\t\t\teffect = effect < 0 ? runtimeEffect : Math.min(effect, runtimeEffect);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (0 <= effect) {\n\t\t\t\twindow.setTimeout(this._updateBound, effect - Date.now());\n\t\t\t}\n\t\t}\n\t}\n\n\tonRender(renderer: Renderer): void {\n\t\tconst actionables = this._actionables;\n\t\tif (0 < actionables.length) {\n\t\t\tlet effect = -1;\n\t\t\tconst time = Date.now();\n\t\t\tfor (let i = 0, imax = actionables.length; i < imax; ++i) {\n\t\t\t\tconst actionable = actionables[i];\n\t\t\t\tactionable.onRender(time, renderer);\n\t\t\t\tconst runtime = actionable.runtime;\n\t\t\t\tif (runtime) {\n\t\t\t\t\tconst runtimeEffect = runtime.effect;\n\t\t\t\t\tif (0 <= runtimeEffect && time < runtimeEffect) {\n\t\t\t\t\t\teffect = effect < 0 ? runtimeEffect : Math.min(effect, runtimeEffect);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (0 <= effect) {\n\t\t\t\twindow.setTimeout(this._updateBound, effect - Date.now());\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DDiagramCanvas\";\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"d-diagram-canvas.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-diagram-canvas.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { IPoint, InteractionEvent, InteractionManager, Point, Renderer } from \"pixi.js\";\nimport { DApplications } from \"./d-applications\";\nimport {\n\tDDiagramCanvasBase,\n\tDDiagramCanvasBaseOptions,\n\tDThemeDiagramCanvasBase\n} from \"./d-diagram-canvas-base\";\nimport { EShape } from \"./shape/e-shape\";\nimport { EShapeBase } from \"./shape/variant/e-shape-base\";\nimport { UtilPointerEvent } from \"./util/util-pointer-event\";\nimport { EShapeActionValue } from \"./shape/action/e-shape-action-value\";\nimport { EShapeActionRuntime } from \"./shape/action/e-shape-action-runtime\";\nimport { DDiagramDataMapper } from \"./d-diagram-data-mapper\";\nimport { EShapeRuntimes } from \"./shape/e-shape-runtimes\";\nimport { EShapeRuntime } from \"./shape/e-shape-runtime\";\nimport { EShapeDataValue } from \"./shape/e-shape-data-value\";\nimport { EShapeDataValueType } from \"./shape/e-shape-data-value-type\";\nimport { EShapeContainer } from \"./shape/e-shape-container\";\nimport { UtilKeyboardEvent } from \"./util/util-keyboard-event\";\nimport { DDiagramCanvasData } from \"./d-diagram-canvas-data\";\nimport { DDiagramCanvasDataImpl } from \"./d-diagram-canvas-data-impl\";\nimport { DDiagramCanvasShape } from \"./d-diagram-canvas-shape\";\nimport { DDiagramCanvasShapeImpl } from \"./d-diagram-canvas-shape-impl\";\nimport { DDiagramCanvasTicker } from \"./d-diagram-canvas-ticker\";\nimport { DDiagramCanvasTickerImpl } from \"./d-diagram-canvas-ticker-impl\";\nimport { EShapeDataValueScope } from \"./shape/e-shape-data-value-scope\";\nimport { EShapeEmbedded } from \"./shape/variant/e-shape-embedded\";\nimport { EShapeDataValueExtensions } from \"./shape/e-shape-data-value-extensions\";\nimport { EShapeActionEnvironment } from \"./shape/action/e-shape-action-environment\";\nimport { EShapeRuntimeImpl } from \"./shape/e-shape-runtime-impl\";\nimport { EShapeActionRuntimes } from \"./shape/action/e-shape-action-runtimes\";\nimport { EShapes } from \"./shape/action/e-shapes\";\n\nexport interface DDiagramCanvasOptions<THEME extends DThemeDiagramCanvas = DThemeDiagramCanvas>\n\textends DDiagramCanvasBaseOptions<THEME> {}\n\nexport interface DThemeDiagramCanvas extends DThemeDiagramCanvasBase {}\n\nconst INITIAL_ZERO = \"0\";\n\nconst INITIAL_ARRAY = \"[]\";\n\nconst INITIAL_STRING = '\"\"';\n\nconst INITIAL_OBJECT = \"{}\";\n\nconst INITIAL_FALSE = \"false\";\n\nconst INITIALIZER_ZERO = () => {\n\treturn 0;\n};\n\nconst INITIALIZER_ARRAY = () => {\n\treturn [];\n};\n\nconst INITIALIZER_STRING = () => {\n\treturn \"\";\n};\n\nconst INITIALIZER_OBJECT = () => {\n\treturn {};\n};\n\nconst INITIALIZER_FALSE = () => {\n\treturn false;\n};\n\nexport class DDiagramCanvas<\n\tTHEME extends DThemeDiagramCanvas = DThemeDiagramCanvas,\n\tOPTIONS extends DDiagramCanvasOptions<THEME> = DDiagramCanvasOptions<THEME>\n> extends DDiagramCanvasBase<THEME, OPTIONS> {\n\tprotected static WORK_DBLCLICK?: Point;\n\n\tprotected _data: DDiagramCanvasData;\n\tprotected _shape: DDiagramCanvasShape;\n\tprotected _ticker: DDiagramCanvasTicker;\n\tprotected _actionables: EShape[];\n\n\tprotected _overed?: EShape | null;\n\tprotected _downed?: EShape | null;\n\tprotected _downeds: Set<EShape>;\n\n\tprotected _updateBound: () => void;\n\n\tconstructor(options: OPTIONS) {\n\t\tsuper(options);\n\t\tthis._data = new DDiagramCanvasDataImpl();\n\t\tthis._shape = new DDiagramCanvasShapeImpl(this);\n\t\tthis._ticker = new DDiagramCanvasTickerImpl(this);\n\t\tthis._actionables = [];\n\t\tthis._downeds = new Set<EShape>();\n\t\tthis._updateBound = (): void => {\n\t\t\tDApplications.update(this);\n\t\t};\n\t}\n\n\tget data(): DDiagramCanvasData {\n\t\treturn this._data;\n\t}\n\n\tget shape(): DDiagramCanvasShape {\n\t\treturn this._shape;\n\t}\n\n\tget ticker(): DDiagramCanvasTicker {\n\t\treturn this._ticker;\n\t}\n\n\tinitialize(shapes: EShape[], mapper?: DDiagramDataMapper | null): void {\n\t\tconst actionables = this._actionables;\n\t\tconst data = this._data;\n\t\tthis.initialize_(\n\t\t\tshapes,\n\t\t\tnull,\n\t\t\tnull,\n\t\t\tmapper,\n\t\t\tnew Map<EShapeDataValueType, Map<string, (value: unknown) => unknown>>(),\n\t\t\tnew Map<EShapeDataValueType, Map<string, () => unknown>>(),\n\t\t\tnew Map<EShapeActionValue, EShapeActionRuntime>(),\n\t\t\tthis._ticker,\n\t\t\tthis._shape,\n\t\t\tdata,\n\t\t\tactionables\n\t\t);\n\t\tconst layers = this._layer.children;\n\t\tconst layersLength = layers.length;\n\t\tfor (let i = 0; i < layersLength; ++i) {\n\t\t\tlayers[i].initialize(actionables);\n\t\t}\n\t\tEShapeActionEnvironment.isInitializing = true;\n\t\tconst time = Date.now();\n\t\tfor (let i = 0; i < layersLength; ++i) {\n\t\t\tlayers[i].update(time);\n\t\t}\n\t\tEShapeActionEnvironment.isInitializing = false;\n\t\tdata.extended.each((id): void => {\n\t\t\tconst extension = EShapeDataValueExtensions.getById(id);\n\t\t\tif (extension) {\n\t\t\t\tconst start = extension.start;\n\t\t\t\tif (start) {\n\t\t\t\t\tstart(this);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\tthis._ticker.start();\n\t}\n\n\tprotected initialize_(\n\t\tshapes: EShape[],\n\t\tdataShape: EShape | null,\n\t\tcontainerShape: EShape | null,\n\t\tmapper: DDiagramDataMapper | null | undefined,\n\t\tformatters: Map<EShapeDataValueType, Map<string, (value: unknown) => unknown>>,\n\t\tinitializers: Map<EShapeDataValueType, Map<string, () => unknown>>,\n\t\tactionValueToRuntime: Map<EShapeActionValue, EShapeActionRuntime>,\n\t\tcanvasTicker: DDiagramCanvasTicker,\n\t\tcanvasShape: DDiagramCanvasShape,\n\t\tcanvasData: DDiagramCanvasData,\n\t\tactionables: EShape[]\n\t): void {\n\t\tfor (let i = 0, imax = shapes.length; i < imax; ++i) {\n\t\t\tconst shape = shapes[i];\n\n\t\t\t// ID\n\t\t\tconst id = shape.id;\n\t\t\tif (0 < id.length) {\n\t\t\t\tcanvasShape.add(id, shape);\n\t\t\t}\n\n\t\t\t// Data\n\t\t\tthis.initData(\n\t\t\t\tshape,\n\t\t\t\tdataShape,\n\t\t\t\tcontainerShape,\n\t\t\t\tmapper,\n\t\t\t\tformatters,\n\t\t\t\tinitializers,\n\t\t\t\tcanvasTicker,\n\t\t\t\tcanvasData\n\t\t\t);\n\n\t\t\t// Runtime\n\t\t\tconst runtime = new (EShapeRuntimes[shape.type] || EShapeRuntimeImpl)(shape);\n\t\t\tshape.runtime = runtime;\n\n\t\t\t// Action\n\t\t\tthis.initActions(shape, runtime, actionValueToRuntime);\n\n\t\t\t// Init the runtime\n\t\t\tEShapes.CURRENT = shape;\n\t\t\truntime.initialize(shape);\n\t\t\tEShapes.CURRENT = null;\n\n\t\t\t// Shortcut\n\t\t\tconst shortcut = shape.shortcut;\n\t\t\tif (shortcut != null) {\n\t\t\t\tUtilKeyboardEvent.on(shape, shortcut, (e: KeyboardEvent): void => {\n\t\t\t\t\tEShapes.CURRENT = shape;\n\t\t\t\t\truntime.onClick(shape, e);\n\t\t\t\t\tEShapes.CURRENT = null;\n\t\t\t\t});\n\t\t\t}\n\n\t\t\t// Actionables\n\t\t\tif (runtime.isActionable()) {\n\t\t\t\tactionables.push(shape);\n\t\t\t}\n\n\t\t\t// Children\n\t\t\tconst children = shape.children;\n\t\t\tif (0 < children.length) {\n\t\t\t\tlet newDataShape = dataShape;\n\t\t\t\tlet newContainerShape = containerShape;\n\t\t\t\tif (shape instanceof EShapeEmbedded) {\n\t\t\t\t\tif (newDataShape == null) {\n\t\t\t\t\t\tnewDataShape = shape;\n\t\t\t\t\t}\n\t\t\t\t\tnewContainerShape = shape;\n\t\t\t\t}\n\t\t\t\tthis.initialize_(\n\t\t\t\t\tchildren,\n\t\t\t\t\tnewDataShape,\n\t\t\t\t\tnewContainerShape,\n\t\t\t\t\tmapper,\n\t\t\t\t\tformatters,\n\t\t\t\t\tinitializers,\n\t\t\t\t\tactionValueToRuntime,\n\t\t\t\t\tcanvasTicker,\n\t\t\t\t\tcanvasShape,\n\t\t\t\t\tcanvasData,\n\t\t\t\t\tactionables\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected initData(\n\t\tshape: EShape,\n\t\tdataShape: EShape | null,\n\t\tcontainerShape: EShape | null,\n\t\tmapper: DDiagramDataMapper | null | undefined,\n\t\tformatters: Map<EShapeDataValueType, Map<string, (value: unknown) => unknown>>,\n\t\tinitializers: Map<EShapeDataValueType, Map<string, () => unknown>>,\n\t\tcanvasTicker: DDiagramCanvasTicker,\n\t\tcanvasData: DDiagramCanvasData\n\t): void {\n\t\tconst data = shape.data;\n\t\tfor (let i = 0, imax = data.size(); i < imax; ++i) {\n\t\t\tconst value = data.get(i);\n\t\t\tif (value == null) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tswitch (value.type) {\n\t\t\t\tcase EShapeDataValueType.BOOLEAN:\n\t\t\t\tcase EShapeDataValueType.BOOLEAN_ARRAY:\n\t\t\t\tcase EShapeDataValueType.NUMBER:\n\t\t\t\tcase EShapeDataValueType.NUMBER_ARRAY:\n\t\t\t\tcase EShapeDataValueType.STRING:\n\t\t\t\tcase EShapeDataValueType.STRING_ARRAY:\n\t\t\t\tcase EShapeDataValueType.OBJECT:\n\t\t\t\tcase EShapeDataValueType.OBJECT_ARRAY:\n\t\t\t\t\tthis.initDataValue(\n\t\t\t\t\t\tvalue,\n\t\t\t\t\t\tshape,\n\t\t\t\t\t\tdataShape,\n\t\t\t\t\t\tcontainerShape,\n\t\t\t\t\t\tmapper,\n\t\t\t\t\t\tformatters,\n\t\t\t\t\t\tinitializers,\n\t\t\t\t\t\tcanvasData\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t\tcase EShapeDataValueType.TICKER:\n\t\t\t\t\tthis.initDataTicker(value, initializers, canvasTicker);\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tthis.initDataExtension(value, canvasData);\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected initDataValue(\n\t\tvalue: EShapeDataValue,\n\t\tshape: EShape,\n\t\tdataShape: EShape | null,\n\t\tcontainerShape: EShape | null,\n\t\tmapper: DDiagramDataMapper | null | undefined,\n\t\tformatters: Map<EShapeDataValueType, Map<string, (value: unknown) => unknown>>,\n\t\tinitializers: Map<EShapeDataValueType, Map<string, () => unknown>>,\n\t\tcanvasData: DDiagramCanvasData\n\t): void {\n\t\t// Mapping\n\t\tif (value.scope === EShapeDataValueScope.PRIVATE) {\n\t\t\tconst id = value.id;\n\t\t\tif (0 < id.length) {\n\t\t\t\tif (containerShape) {\n\t\t\t\t\tcontainerShape.data.private.add(id, value);\n\t\t\t\t} else {\n\t\t\t\t\tcanvasData.private.add(id, value);\n\t\t\t\t}\n\t\t\t}\n\t\t} else if (value.scope === EShapeDataValueScope.PROTECTED) {\n\t\t\tconst id = value.id;\n\t\t\tif (0 < id.length) {\n\t\t\t\tcanvasData.protected.add(id, value);\n\t\t\t}\n\t\t} else {\n\t\t\tif (mapper) {\n\t\t\t\tmapper(value, dataShape || shape);\n\t\t\t}\n\t\t\tconst id = value.id;\n\t\t\tif (0 < id.length) {\n\t\t\t\tcanvasData.add(id, value);\n\t\t\t}\n\t\t}\n\n\t\t// Format\n\t\tconst format = value.format;\n\t\tconst initial = value.initial;\n\t\tlet formatToFormatter = formatters.get(value.type);\n\t\tif (formatToFormatter == null) {\n\t\t\tformatToFormatter = new Map<string, (value: unknown) => unknown>();\n\t\t\tformatters.set(value.type, formatToFormatter);\n\t\t}\n\t\tconst oldFormatter = formatToFormatter.get(format);\n\t\tif (oldFormatter != null) {\n\t\t\tvalue.formatter = oldFormatter;\n\t\t} else if (0 < format.length) {\n\t\t\tconst newFormatter = this.calcFormatter(value, format, initial);\n\t\t\tformatToFormatter.set(format, newFormatter);\n\t\t\tvalue.formatter = newFormatter;\n\t\t}\n\n\t\t// Initial\n\t\tlet initialToInitializer = initializers.get(value.type);\n\t\tif (initialToInitializer == null) {\n\t\t\tinitialToInitializer = new Map<string, () => unknown>();\n\t\t\tinitializers.set(value.type, initialToInitializer);\n\t\t}\n\t\tconst oldInitializer = initialToInitializer.get(initial);\n\t\tif (oldInitializer != null) {\n\t\t\tvalue.value = oldInitializer();\n\t\t} else {\n\t\t\tconst newInitializer = this.calcInitial(value, initial);\n\t\t\tinitialToInitializer.set(initial, newInitializer);\n\t\t\tvalue.value = newInitializer();\n\t\t}\n\t}\n\n\tprotected initDataTicker(\n\t\tvalue: EShapeDataValue,\n\t\tinitializers: Map<EShapeDataValueType, Map<string, () => unknown>>,\n\t\tcanvasTicker: DDiagramCanvasTicker\n\t): void {\n\t\tconst initial = value.initial;\n\t\tlet initialToInitializer = initializers.get(value.type);\n\t\tif (initialToInitializer == null) {\n\t\t\tinitialToInitializer = new Map<string, () => unknown>();\n\t\t\tinitializers.set(value.type, initialToInitializer);\n\t\t}\n\t\tconst oldInitializer = initialToInitializer.get(initial);\n\t\tif (oldInitializer !== undefined) {\n\t\t\tvalue.value = 0;\n\t\t\tcanvasTicker.add(oldInitializer()).add(value);\n\t\t} else {\n\t\t\tconst newInitializer = this.calcInitial(value, initial);\n\t\t\tinitialToInitializer.set(initial, newInitializer);\n\t\t\tvalue.value = 0;\n\t\t\tcanvasTicker.add(newInitializer()).add(value);\n\t\t}\n\t}\n\n\tprotected initDataExtension(value: EShapeDataValue, canvasData: DDiagramCanvasData): void {\n\t\tconst extension = EShapeDataValueExtensions.get(value.type);\n\t\tif (extension) {\n\t\t\tcanvasData.extended.add(extension.id, value);\n\t\t\tvalue.value = extension.initial;\n\t\t}\n\t}\n\n\tprotected initActions(\n\t\tshape: EShape,\n\t\tshapeRuntime: EShapeRuntime,\n\t\tvalueToRuntime: Map<EShapeActionValue, EShapeActionRuntime>\n\t): void {\n\t\tconst values = shape.action.values;\n\t\tconst runtimes = shapeRuntime.actions;\n\t\tconst typeRuntimes = EShapeActionRuntimes.get(shape.type);\n\t\tif (typeRuntimes != null) {\n\t\t\tfor (let i = 0, imax = typeRuntimes.length; i < imax; ++i) {\n\t\t\t\tconst typeRuntime = typeRuntimes[i];\n\t\t\t\truntimes.push(typeRuntime);\n\t\t\t\tshapeRuntime.reset |= typeRuntime.reset;\n\t\t\t}\n\t\t}\n\t\tfor (let i = 0, imax = values.length; i < imax; ++i) {\n\t\t\tconst value = values[i];\n\t\t\tlet runtime = valueToRuntime.get(value);\n\t\t\tif (runtime == null) {\n\t\t\t\truntime = value.toRuntime();\n\t\t\t\tif (runtime != null) {\n\t\t\t\t\tvalueToRuntime.set(value, runtime);\n\t\t\t\t\truntimes.push(runtime);\n\t\t\t\t\tshapeRuntime.reset |= runtime.reset;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\truntimes.push(runtime);\n\t\t\t\tshapeRuntime.reset |= runtime.reset;\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected calcFormatter(\n\t\tvalue: EShapeDataValue,\n\t\tformat: string,\n\t\tinitial: string\n\t): (value: unknown) => unknown {\n\t\tconst def = this.toInitial(value);\n\t\ttry {\n\t\t\treturn Function(\n\t\t\t\t\"value\",\n\t\t\t\t/* eslint-disable prettier/prettier */\n\t\t\t\t`try {` +\n\t\t\t\t\t`return (${format});` +\n\t\t\t\t`} catch( e1 ) {` +\n\t\t\t\t\t`try {` +\n\t\t\t\t\t\t`return (${0 < initial.length ? initial : def});` +\n\t\t\t\t\t`} catch( e2 ) {` +\n\t\t\t\t\t\t`return ${def};` +\n\t\t\t\t\t`}` +\n\t\t\t\t`}`\n\t\t\t\t/* eslint-enable prettier/prettier */\n\t\t\t) as any;\n\t\t} catch (e) {\n\t\t\treturn this.toInitializer(value);\n\t\t}\n\t}\n\n\tprotected calcInitial(value: EShapeDataValue, initial: string): () => unknown {\n\t\tif (initial.length <= 0) {\n\t\t\treturn this.toInitializer(value);\n\t\t}\n\t\ttry {\n\t\t\treturn Function(\n\t\t\t\t/* eslint-disable prettier/prettier */\n\t\t\t\t`try {` +\n\t\t\t\t\t`return (${initial});` +\n\t\t\t\t`} catch( e ) {` +\n\t\t\t\t\t`return ${this.toInitial(value)};` +\n\t\t\t\t`}`\n\t\t\t\t/* eslint-enable prettier/prettier */\n\t\t\t) as any;\n\t\t} catch (e) {\n\t\t\treturn this.toInitializer(value);\n\t\t}\n\t}\n\n\tprotected toInitial(value: EShapeDataValue): string {\n\t\tconst valueType = value.type;\n\t\tswitch (valueType) {\n\t\t\tcase EShapeDataValueType.BOOLEAN:\n\t\t\t\treturn INITIAL_FALSE;\n\t\t\tcase EShapeDataValueType.BOOLEAN_ARRAY:\n\t\t\t\treturn INITIAL_ARRAY;\n\t\t\tcase EShapeDataValueType.NUMBER:\n\t\t\t\treturn INITIAL_ZERO;\n\t\t\tcase EShapeDataValueType.NUMBER_ARRAY:\n\t\t\t\treturn INITIAL_ARRAY;\n\t\t\tcase EShapeDataValueType.STRING:\n\t\t\t\treturn INITIAL_STRING;\n\t\t\tcase EShapeDataValueType.STRING_ARRAY:\n\t\t\t\treturn INITIAL_ARRAY;\n\t\t\tcase EShapeDataValueType.OBJECT:\n\t\t\t\treturn INITIAL_OBJECT;\n\t\t\tcase EShapeDataValueType.OBJECT_ARRAY:\n\t\t\t\treturn INITIAL_ARRAY;\n\t\t\tcase EShapeDataValueType.TICKER:\n\t\t\t\treturn INITIAL_ZERO;\n\t\t\tdefault:\n\t\t\t\treturn INITIAL_ZERO;\n\t\t}\n\t}\n\n\tprotected toInitializer(value: EShapeDataValue): () => unknown {\n\t\tconst valueType = value.type;\n\t\tswitch (valueType) {\n\t\t\tcase EShapeDataValueType.BOOLEAN:\n\t\t\t\treturn INITIALIZER_FALSE;\n\t\t\tcase EShapeDataValueType.BOOLEAN_ARRAY:\n\t\t\t\treturn INITIALIZER_ARRAY;\n\t\t\tcase EShapeDataValueType.NUMBER:\n\t\t\t\treturn INITIALIZER_ZERO;\n\t\t\tcase EShapeDataValueType.NUMBER_ARRAY:\n\t\t\t\treturn INITIALIZER_ARRAY;\n\t\t\tcase EShapeDataValueType.STRING:\n\t\t\t\treturn INITIALIZER_STRING;\n\t\t\tcase EShapeDataValueType.STRING_ARRAY:\n\t\t\t\treturn INITIALIZER_ARRAY;\n\t\t\tcase EShapeDataValueType.OBJECT:\n\t\t\t\treturn INITIALIZER_OBJECT;\n\t\t\tcase EShapeDataValueType.OBJECT_ARRAY:\n\t\t\t\treturn INITIALIZER_ARRAY;\n\t\t\tcase EShapeDataValueType.TICKER:\n\t\t\t\treturn INITIALIZER_ZERO;\n\t\t\tdefault:\n\t\t\t\treturn INITIALIZER_ZERO;\n\t\t}\n\t}\n\n\tprotected onDestroy(): void {\n\t\tthis._data.extended.each((id): void => {\n\t\t\tconst extension = EShapeDataValueExtensions.getById(id);\n\t\t\tif (extension) {\n\t\t\t\tconst stop = extension.stop;\n\t\t\t\tif (stop) {\n\t\t\t\t\tstop(this);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\tthis._ticker.stop();\n\t\tsuper.onDestroy();\n\t}\n\n\thitTestInteractives(global: IPoint): EShape | null {\n\t\tconst layers = this._layer.children;\n\t\tfor (let i = layers.length - 1; 0 <= i; --i) {\n\t\t\tconst layer = layers[i];\n\t\t\tif (layer.visible) {\n\t\t\t\tconst result = layer.hitTestInteractives(global);\n\t\t\t\tif (result != null) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn null;\n\t}\n\n\tonShapeMove(e: InteractionEvent): boolean {\n\t\tconst found = this.hitTestInteractives(e.data.global);\n\n\t\t// Cursor\n\t\tthis.cursor = this._cursor = this.toShapeCursor(found);\n\n\t\t// TItle\n\t\tconst layer = DApplications.getLayer(this);\n\t\tif (layer) {\n\t\t\tconst title = this.toShapeTitle(found);\n\t\t\tconst view = layer.view;\n\t\t\tif (view.title !== title) {\n\t\t\t\tview.title = title;\n\t\t\t}\n\t\t}\n\n\t\tconst overed = this._overed;\n\t\tthis._overed = found;\n\t\tif (found === overed) {\n\t\t\tif (found != null) {\n\t\t\t\tconst runtime = found.runtime;\n\t\t\t\tif (runtime) {\n\t\t\t\t\tEShapes.CURRENT = found;\n\t\t\t\t\truntime.onMove(found, e);\n\t\t\t\t\tEShapes.CURRENT = null;\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tthis.onShapeOut(e, overed, found);\n\t\t\tthis.onShapeOver(e, found);\n\t\t}\n\t\treturn found != null;\n\t}\n\n\tprotected toShapeCursor(target: EShape | null): string {\n\t\tif (target != null) {\n\t\t\tlet current = target;\n\t\t\twhile (true) {\n\t\t\t\tconst cursor = current.cursor;\n\t\t\t\tif (cursor != null && 0 < cursor.length) {\n\t\t\t\t\treturn cursor;\n\t\t\t\t}\n\t\t\t\tconst parent = current.parent;\n\t\t\t\tif (parent instanceof EShapeBase) {\n\t\t\t\t\tcurrent = parent;\n\t\t\t\t} else {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn \"auto\";\n\t}\n\n\tprotected toShapeTitle(target: EShape | null): string {\n\t\tif (target != null) {\n\t\t\tlet current = target;\n\t\t\twhile (true) {\n\t\t\t\tconst title = current.title;\n\t\t\t\tif (title != null && 0 < title.length) {\n\t\t\t\t\treturn title;\n\t\t\t\t}\n\t\t\t\tconst parent = current.parent;\n\t\t\t\tif (parent instanceof EShapeBase) {\n\t\t\t\t\tcurrent = parent;\n\t\t\t\t} else {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn \"\";\n\t}\n\n\tprotected onShapeOut(\n\t\te: InteractionEvent,\n\t\ttarget?: EShape | EShapeContainer | null,\n\t\texcept?: EShape | null\n\t): void {\n\t\twhile (target != null && target !== except && target instanceof EShapeBase) {\n\t\t\tconst runtime = target.runtime;\n\t\t\tif (runtime) {\n\t\t\t\tEShapes.CURRENT = target;\n\t\t\t\truntime.onOut(target, e);\n\t\t\t\tEShapes.CURRENT = null;\n\t\t\t}\n\t\t\ttarget = target.parent;\n\t\t}\n\t}\n\n\tprotected onShapeOver(\n\t\te: InteractionEvent,\n\t\ttarget?: EShape | EShapeContainer | null,\n\t\texcept?: EShape | null\n\t): void {\n\t\twhile (target != null && target !== except && target instanceof EShapeBase) {\n\t\t\tconst runtime = target.runtime;\n\t\t\tif (runtime) {\n\t\t\t\tEShapes.CURRENT = target;\n\t\t\t\truntime.onOver(target, e);\n\t\t\t\tEShapes.CURRENT = null;\n\t\t\t}\n\t\t\ttarget = target.parent;\n\t\t}\n\t}\n\n\tonShapeDown(e: InteractionEvent): boolean {\n\t\tconst found = this.hitTestInteractives(e.data.global);\n\t\tthis._downed = found;\n\t\tif (found) {\n\t\t\tthis._downeds.add(found);\n\t\t\tlet target = found;\n\t\t\twhile (true) {\n\t\t\t\tconst runtime = target.runtime;\n\t\t\t\tif (runtime) {\n\t\t\t\t\tEShapes.CURRENT = target;\n\t\t\t\t\truntime.onDown(target, e);\n\t\t\t\t\tEShapes.CURRENT = null;\n\t\t\t\t}\n\t\t\t\tconst parent = target.parent;\n\t\t\t\tif (parent instanceof EShapeBase) {\n\t\t\t\t\ttarget = parent;\n\t\t\t\t} else {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tonShapeUp(e: InteractionEvent): boolean {\n\t\tconst downeds = this._downeds;\n\t\tconst found = this.hitTestInteractives(e.data.global);\n\t\tif (found) {\n\t\t\tdowneds.delete(found);\n\t\t\tlet target = found;\n\t\t\twhile (true) {\n\t\t\t\tconst runtime = target.runtime;\n\t\t\t\tif (runtime) {\n\t\t\t\t\tEShapes.CURRENT = target;\n\t\t\t\t\truntime.onUp(target, e);\n\t\t\t\t\tEShapes.CURRENT = null;\n\t\t\t\t}\n\t\t\t\tconst parent = target.parent;\n\t\t\t\tif (parent instanceof EShapeBase) {\n\t\t\t\t\ttarget = parent;\n\t\t\t\t} else {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tthis.onShapeCancel(e);\n\t\treturn found != null;\n\t}\n\n\tonShapeCancel(e: InteractionEvent): boolean {\n\t\tconst downeds = this._downeds;\n\t\tif (0 < downeds.size) {\n\t\t\tdowneds.forEach((downed: EShape): void => {\n\t\t\t\tlet target = downed;\n\t\t\t\twhile (true) {\n\t\t\t\t\tconst runtime = target.runtime;\n\t\t\t\t\tif (runtime) {\n\t\t\t\t\t\tEShapes.CURRENT = target;\n\t\t\t\t\t\truntime.onUpOutside(target, e);\n\t\t\t\t\t\tEShapes.CURRENT = null;\n\t\t\t\t\t}\n\t\t\t\t\tconst parent = target.parent;\n\t\t\t\t\tif (parent instanceof EShapeBase) {\n\t\t\t\t\t\ttarget = parent;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t\tdowneds.clear();\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tonShapeClick(e: InteractionEvent): boolean {\n\t\tconst found = this.hitTestInteractives(e.data.global);\n\t\tif (found && this._downed === found) {\n\t\t\tlet target = found;\n\t\t\twhile (true) {\n\t\t\t\tconst runtime = target.runtime;\n\t\t\t\tif (runtime) {\n\t\t\t\t\tEShapes.CURRENT = target;\n\t\t\t\t\truntime.onClick(target, e);\n\t\t\t\t\tEShapes.CURRENT = null;\n\t\t\t\t}\n\t\t\t\tconst parent = target.parent;\n\t\t\t\tif (parent instanceof EShapeBase) {\n\t\t\t\t\ttarget = parent;\n\t\t\t\t} else {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tonShapeDblClick(e: MouseEvent | TouchEvent, interactionManager: InteractionManager): boolean {\n\t\tconst global = (DDiagramCanvas.WORK_DBLCLICK ??= new Point());\n\t\tUtilPointerEvent.toGlobal(e, interactionManager, global);\n\t\tconst found = this.hitTestInteractives(global);\n\t\tif (found) {\n\t\t\tlet target = found;\n\t\t\twhile (true) {\n\t\t\t\tconst runtime = target.runtime;\n\t\t\t\tif (runtime) {\n\t\t\t\t\tEShapes.CURRENT = target;\n\t\t\t\t\truntime.onDblClick(target, e, interactionManager);\n\t\t\t\t\tEShapes.CURRENT = null;\n\t\t\t\t}\n\t\t\t\tconst parent = target.parent;\n\t\t\t\tif (parent instanceof EShapeBase) {\n\t\t\t\t\ttarget = parent;\n\t\t\t\t} else {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tonShapeRightClick(e: InteractionEvent): boolean {\n\t\tconst found = this.hitTestInteractives(e.data.global);\n\t\tif (found && this._downed === found) {\n\t\t\tlet target = found;\n\t\t\twhile (true) {\n\t\t\t\tconst runtime = target.runtime;\n\t\t\t\tif (runtime) {\n\t\t\t\t\tEShapes.CURRENT = target;\n\t\t\t\t\truntime.onRightClick(target, e);\n\t\t\t\t\tEShapes.CURRENT = null;\n\t\t\t\t}\n\t\t\t\tconst parent = target.parent;\n\t\t\t\tif (parent instanceof EShapeBase) {\n\t\t\t\t\ttarget = parent;\n\t\t\t\t} else {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tonShapeRightDown(e: InteractionEvent): boolean {\n\t\tconst found = this.hitTestInteractives(e.data.global);\n\t\tthis._downed = found;\n\t\tif (found) {\n\t\t\tthis._downeds.add(found);\n\t\t\tlet target = found;\n\t\t\twhile (true) {\n\t\t\t\tconst runtime = target.runtime;\n\t\t\t\tif (runtime) {\n\t\t\t\t\tEShapes.CURRENT = target;\n\t\t\t\t\truntime.onRightDown(target, e);\n\t\t\t\t\tEShapes.CURRENT = null;\n\t\t\t\t}\n\t\t\t\tconst parent = target.parent;\n\t\t\t\tif (parent instanceof EShapeBase) {\n\t\t\t\t\ttarget = parent;\n\t\t\t\t} else {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tonShapeRightUp(e: InteractionEvent): boolean {\n\t\tconst downeds = this._downeds;\n\t\tconst found = this.hitTestInteractives(e.data.global);\n\t\tif (found) {\n\t\t\tdowneds.delete(found);\n\t\t\tlet target = found;\n\t\t\twhile (true) {\n\t\t\t\tconst runtime = target.runtime;\n\t\t\t\tif (runtime) {\n\t\t\t\t\tEShapes.CURRENT = target;\n\t\t\t\t\truntime.onRightUp(target, e);\n\t\t\t\t\tEShapes.CURRENT = null;\n\t\t\t\t}\n\t\t\t\tconst parent = target.parent;\n\t\t\t\tif (parent instanceof EShapeBase) {\n\t\t\t\t\ttarget = parent;\n\t\t\t\t} else {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tthis.onShapeRightCancel(e);\n\t\treturn found != null;\n\t}\n\n\tonShapeRightCancel(e: InteractionEvent): boolean {\n\t\tconst downeds = this._downeds;\n\t\tif (0 < downeds.size) {\n\t\t\tdowneds.forEach((downed: EShape): void => {\n\t\t\t\tlet target = downed;\n\t\t\t\twhile (true) {\n\t\t\t\t\tconst runtime = target.runtime;\n\t\t\t\t\tif (runtime) {\n\t\t\t\t\t\tEShapes.CURRENT = target;\n\t\t\t\t\t\truntime.onRightUpOutside(target, e);\n\t\t\t\t\t\tEShapes.CURRENT = null;\n\t\t\t\t\t}\n\t\t\t\t\tconst parent = target.parent;\n\t\t\t\t\tif (parent instanceof EShapeBase) {\n\t\t\t\t\t\ttarget = parent;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t\tdowneds.clear();\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\tupdate(): void {\n\t\tconst actionables = this._actionables;\n\t\tif (0 < actionables.length) {\n\t\t\tlet effect = -1;\n\t\t\tconst time = Date.now();\n\t\t\tfor (let i = 0, imax = actionables.length; i < imax; ++i) {\n\t\t\t\tconst actionable = actionables[i];\n\t\t\t\tactionable.update(time);\n\t\t\t\tconst runtime = actionable.runtime;\n\t\t\t\tif (runtime) {\n\t\t\t\t\tconst runtimeEffect = runtime.effect;\n\t\t\t\t\tif (0 <= runtimeEffect && time < runtimeEffect) {\n\t\t\t\t\t\teffect = effect < 0 ? runtimeEffect : Math.min(effect, runtimeEffect);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (0 <= effect) {\n\t\t\t\twindow.setTimeout(this._updateBound, effect - Date.now());\n\t\t\t}\n\t\t}\n\t}\n\n\tonRender(renderer: Renderer): void {\n\t\tconst actionables = this._actionables;\n\t\tif (0 < actionables.length) {\n\t\t\tlet effect = -1;\n\t\t\tconst time = Date.now();\n\t\t\tfor (let i = 0, imax = actionables.length; i < imax; ++i) {\n\t\t\t\tconst actionable = actionables[i];\n\t\t\t\tactionable.onRender(time, renderer);\n\t\t\t\tconst runtime = actionable.runtime;\n\t\t\t\tif (runtime) {\n\t\t\t\t\tconst runtimeEffect = runtime.effect;\n\t\t\t\t\tif (0 <= runtimeEffect && time < runtimeEffect) {\n\t\t\t\t\t\teffect = effect < 0 ? runtimeEffect : Math.min(effect, runtimeEffect);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (0 <= effect) {\n\t\t\t\twindow.setTimeout(this._updateBound, effect - Date.now());\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected getType(): string {\n\t\treturn \"DDiagramCanvas\";\n\t}\n}\n"]}
|
|
@@ -12,6 +12,7 @@ import { EShapeResourceManagerDeserializationMode } from "./shape/e-shape-resour
|
|
|
12
12
|
import { EShapeRuntimeImpl } from "./shape/e-shape-runtime-impl";
|
|
13
13
|
import { EShapeRectanglePivoted } from "./shape/variant/e-shape-rectangle-pivoted";
|
|
14
14
|
import { isString } from "./util/is-string";
|
|
15
|
+
import { EShapes } from "./shape/action/e-shapes";
|
|
15
16
|
var DDiagramLayer = /** @class */ (function (_super) {
|
|
16
17
|
__extends(DDiagramLayer, _super);
|
|
17
18
|
function DDiagramLayer(name) {
|
|
@@ -83,7 +84,9 @@ var DDiagramLayer = /** @class */ (function (_super) {
|
|
|
83
84
|
: EShapeActionValueGestureOperationType.NONE);
|
|
84
85
|
runtime.actions.push(new EShapeActionValueGesture("", EShapeActionValueGestureType.LAYER, gestureType).toRuntime());
|
|
85
86
|
actionables.push(shape);
|
|
87
|
+
EShapes.CURRENT = shape;
|
|
86
88
|
runtime.initialize(shape);
|
|
89
|
+
EShapes.CURRENT = null;
|
|
87
90
|
}
|
|
88
91
|
if (isInteractive || isDraggable || isPinchable) {
|
|
89
92
|
shape.interactive = true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"d-diagram-layer.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-diagram-layer.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { IPoint } from \"pixi.js\";\nimport { DBaseStateSet } from \"./d-base-state-set\";\nimport { DDiagramLayerBackground } from \"./d-diagram-layer-background\";\nimport { DDiagramSerializedItem, DDiagramSerializedLayer } from \"./d-diagram-serialized\";\nimport { EShapeActionValueGesture } from \"./shape/action/e-shape-action-value-gesture\";\nimport { EShapeActionValueGestureOperationType } from \"./shape/action/e-shape-action-value-gesture-operation-type\";\nimport { EShapeActionValueGestureType } from \"./shape/action/e-shape-action-value-gesture-type\";\nimport { EShape } from \"./shape/e-shape\";\nimport { EShapeContainer } from \"./shape/e-shape-container\";\nimport { EShapeLayerState } from \"./shape/e-shape-layer-state\";\nimport { EShapeResourceManagerDeserialization } from \"./shape/e-shape-resource-manager-deserialization\";\nimport { EShapeResourceManagerDeserializationMode } from \"./shape/e-shape-resource-manager-deserialization-mode\";\nimport { EShapeResourceManagerSerialization } from \"./shape/e-shape-resource-manager-serialization\";\nimport { EShapeRuntimeImpl } from \"./shape/e-shape-runtime-impl\";\nimport { EShapeRectanglePivoted } from \"./shape/variant/e-shape-rectangle-pivoted\";\nimport { isString } from \"./util/is-string\";\n\nexport class DDiagramLayer extends EShapeContainer {\n\treference: number;\n\tinteractives: EShape[];\n\tprotected declare _shape: EShape;\n\n\tconstructor(name: string) {\n\t\tsuper();\n\t\tthis.name = name;\n\t\tthis.interactive = false;\n\t\tthis.reference = 0;\n\t\tconst shape = this.newShape();\n\t\tshape.parent = this;\n\t\tthis._shape = shape;\n\t\tthis.interactives = [];\n\t}\n\n\tget width(): number {\n\t\treturn this._shape.size.x;\n\t}\n\n\tset width(width: number) {\n\t\tthis._shape.size.x = width;\n\t}\n\n\tget height(): number {\n\t\treturn this._shape.size.y;\n\t}\n\n\tset height(height: number) {\n\t\tthis._shape.size.y = height;\n\t}\n\n\tget background(): DDiagramLayerBackground {\n\t\treturn this._shape.fill;\n\t}\n\n\tget state(): DBaseStateSet {\n\t\treturn this._shape.state;\n\t}\n\n\tprotected newShape(): EShape {\n\t\tconst result = new EShapeRectanglePivoted();\n\t\tresult.fill.set(false, 0xffffff, 1);\n\t\tresult.stroke.set(false);\n\t\tresult.state.add(EShapeLayerState.INTERACTIVE);\n\t\treturn result;\n\t}\n\n\tinitialize(actionables: EShape[]): void {\n\t\tconst interactives = this.interactives;\n\t\tconst shape = this._shape;\n\t\tconst isInteractive = shape.state.is(EShapeLayerState.INTERACTIVE);\n\t\tconst isDraggable = shape.state.is(EShapeLayerState.DRAGGABLE);\n\t\tconst isPinchable = shape.state.is(EShapeLayerState.PINCHABLE);\n\t\tif (isDraggable || isPinchable) {\n\t\t\tconst runtime = new EShapeRuntimeImpl(shape);\n\t\t\tshape.runtime = runtime;\n\t\t\tconst gestureType =\n\t\t\t\t(isDraggable\n\t\t\t\t\t? EShapeActionValueGestureOperationType.DRAG\n\t\t\t\t\t: EShapeActionValueGestureOperationType.NONE) |\n\t\t\t\t(isPinchable\n\t\t\t\t\t? EShapeActionValueGestureOperationType.PINCH\n\t\t\t\t\t: EShapeActionValueGestureOperationType.NONE);\n\t\t\truntime.actions.push(\n\t\t\t\tnew EShapeActionValueGesture(\n\t\t\t\t\t\"\",\n\t\t\t\t\tEShapeActionValueGestureType.LAYER,\n\t\t\t\t\tgestureType\n\t\t\t\t).toRuntime()\n\t\t\t);\n\t\t\tactionables.push(shape);\n\t\t\truntime.initialize(shape);\n\t\t}\n\t\tif (isInteractive || isDraggable || isPinchable) {\n\t\t\tshape.interactive = true;\n\t\t\tinteractives.push(shape);\n\t\t}\n\t\tthis.doInitialize(this.children, interactives);\n\t}\n\n\tprotected doInitialize(shapes: EShape[], interactives: EShape[]): void {\n\t\tfor (let i = 0, imax = shapes.length; i < imax; ++i) {\n\t\t\tconst shape = shapes[i];\n\n\t\t\tconst runtime = shape.runtime;\n\t\t\tif (runtime) {\n\t\t\t\t// Interactives\n\t\t\t\tif (shape.interactive || runtime.interactive) {\n\t\t\t\t\tinteractives.push(shape);\n\t\t\t\t} else {\n\t\t\t\t\tconst cursor = shape.cursor;\n\t\t\t\t\tif (cursor != null && 0 < cursor.length) {\n\t\t\t\t\t\tinteractives.push(shape);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Children\n\t\t\tconst children = shape.children;\n\t\t\tif (0 < children.length) {\n\t\t\t\tthis.doInitialize(children, interactives);\n\t\t\t}\n\t\t}\n\t}\n\n\tupdate(time: number): void {\n\t\tthis.doUpdate(this.children, time);\n\t}\n\n\tprotected doUpdate(shapes: EShape[], time: number): void {\n\t\tfor (let i = 0, imax = shapes.length; i < imax; ++i) {\n\t\t\tconst shape = shapes[i];\n\t\t\tshape.update(time);\n\n\t\t\t// Children\n\t\t\tconst children = shape.children;\n\t\t\tif (0 < children.length) {\n\t\t\t\tthis.doUpdate(children, time);\n\t\t\t}\n\t\t}\n\t}\n\n\thitTestInteractives(global: IPoint): EShape | null {\n\t\tconst local = this._work;\n\t\tconst interactives = this.interactives;\n\t\tfor (let i = interactives.length - 1; 0 <= i; --i) {\n\t\t\tconst interactive = interactives[i];\n\t\t\tif (interactive.visible) {\n\t\t\t\tinteractive.toLocal(global, undefined, local);\n\t\t\t\tif (interactive.contains(local.x, local.y) != null) {\n\t\t\t\t\treturn interactive;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn null;\n\t}\n\n\taddUuid(manager: EShapeResourceManagerSerialization): void {\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tchildren[i].addUuid(manager);\n\t\t}\n\t}\n\n\tupdateUuid(manager: EShapeResourceManagerSerialization): void {\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tchildren[i].updateUuid(manager);\n\t\t}\n\t}\n\n\tdestroy(): void {\n\t\tif (!this._destroyed) {\n\t\t\tconst children = this.children;\n\t\t\tfor (let i = children.length - 1; 0 <= i; --i) {\n\t\t\t\tchildren[i].destroy();\n\t\t\t}\n\t\t\tchildren.length = 0;\n\t\t\tsuper.destroy();\n\t\t}\n\t}\n\n\tserialize(\n\t\tlayer: number,\n\t\tmanager: EShapeResourceManagerSerialization,\n\t\titems: DDiagramSerializedItem[]\n\t): DDiagramSerializedLayer {\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tconst shape = children[i];\n\t\t\tconst item = shape.serialize(manager);\n\t\t\titem[16] = layer;\n\t\t\titems.push(item);\n\t\t}\n\n\t\tconst shape = this._shape;\n\t\tconst nameId = manager.addResource(this.name || \"\");\n\t\tconst visible =\n\t\t\t(this.visible ? 1 : 0) | (shape.state.is(EShapeLayerState.INVISIBLE) ? 0 : 2);\n\t\tconst position = this.position;\n\t\tconst size = shape.size;\n\t\tconst fill = shape.fill.serialize(manager);\n\t\tconst isInteractive = shape.state.is(EShapeLayerState.INTERACTIVE) ? 1 : 0;\n\t\tconst isDraggable = shape.state.is(EShapeLayerState.DRAGGABLE) ? 2 : 0;\n\t\tconst isPinchable = shape.state.is(EShapeLayerState.PINCHABLE) ? 4 : 0;\n\t\treturn [\n\t\t\tnameId,\n\t\t\tvisible,\n\t\t\tposition.x,\n\t\t\tposition.y,\n\t\t\tsize.x,\n\t\t\tsize.y,\n\t\t\tfill,\n\t\t\tisInteractive | isDraggable | isPinchable\n\t\t];\n\t}\n\n\tstatic deserialize(\n\t\tserialized: DDiagramSerializedLayer,\n\t\tmanager: EShapeResourceManagerDeserialization,\n\t\twidth: number,\n\t\theight: number\n\t): DDiagramLayer {\n\t\tconst result = new DDiagramLayer(this.deserializeName(serialized[0], manager));\n\t\tconst shape = result._shape;\n\n\t\tconst visibility = serialized[1];\n\t\tif (visibility != null) {\n\t\t\tconst isEditorMode = manager.mode !== EShapeResourceManagerDeserializationMode.VIEWER;\n\t\t\tif (isEditorMode && !(visibility & 0x1)) {\n\t\t\t\tresult.visible = false;\n\t\t\t}\n\t\t\tif (!(visibility & 0x2)) {\n\t\t\t\tshape.state.add(EShapeLayerState.INVISIBLE);\n\t\t\t\tif (!isEditorMode) {\n\t\t\t\t\tresult.visible = false;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tconst positionX = serialized[2];\n\t\tconst positionY = serialized[3];\n\t\tresult.position.set(positionX, positionY);\n\n\t\tconst sizeX = serialized[4] ?? width;\n\t\tconst sizeY = serialized[5] ?? height;\n\t\tshape.size.set(sizeX, sizeY);\n\n\t\tconst fillId = serialized[6];\n\t\tif (fillId != null) {\n\t\t\tshape.fill.deserialize(fillId, manager);\n\t\t}\n\n\t\tconst state = serialized[7] ?? 1;\n\t\tshape.state.set(EShapeLayerState.INTERACTIVE, !!(state & 0x1));\n\t\tshape.state.set(EShapeLayerState.DRAGGABLE, !!(state & 0x2));\n\t\tshape.state.set(EShapeLayerState.PINCHABLE, !!(state & 0x4));\n\t\treturn result;\n\t}\n\n\tstatic deserializeName(\n\t\ttarget: string | number,\n\t\tmanager: EShapeResourceManagerDeserialization\n\t): string {\n\t\tif (isString(target)) {\n\t\t\treturn target;\n\t\t} else {\n\t\t\tconst resources = manager.resources;\n\t\t\tif (0 <= target && target <= resources.length) {\n\t\t\t\treturn resources[target];\n\t\t\t}\n\t\t\treturn \"\";\n\t\t}\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"d-diagram-layer.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-diagram-layer.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { IPoint } from \"pixi.js\";\nimport { DBaseStateSet } from \"./d-base-state-set\";\nimport { DDiagramLayerBackground } from \"./d-diagram-layer-background\";\nimport { DDiagramSerializedItem, DDiagramSerializedLayer } from \"./d-diagram-serialized\";\nimport { EShapeActionValueGesture } from \"./shape/action/e-shape-action-value-gesture\";\nimport { EShapeActionValueGestureOperationType } from \"./shape/action/e-shape-action-value-gesture-operation-type\";\nimport { EShapeActionValueGestureType } from \"./shape/action/e-shape-action-value-gesture-type\";\nimport { EShape } from \"./shape/e-shape\";\nimport { EShapeContainer } from \"./shape/e-shape-container\";\nimport { EShapeLayerState } from \"./shape/e-shape-layer-state\";\nimport { EShapeResourceManagerDeserialization } from \"./shape/e-shape-resource-manager-deserialization\";\nimport { EShapeResourceManagerDeserializationMode } from \"./shape/e-shape-resource-manager-deserialization-mode\";\nimport { EShapeResourceManagerSerialization } from \"./shape/e-shape-resource-manager-serialization\";\nimport { EShapeRuntimeImpl } from \"./shape/e-shape-runtime-impl\";\nimport { EShapeRectanglePivoted } from \"./shape/variant/e-shape-rectangle-pivoted\";\nimport { isString } from \"./util/is-string\";\nimport { EShapes } from \"./shape/action/e-shapes\";\n\nexport class DDiagramLayer extends EShapeContainer {\n\treference: number;\n\tinteractives: EShape[];\n\tprotected declare _shape: EShape;\n\n\tconstructor(name: string) {\n\t\tsuper();\n\t\tthis.name = name;\n\t\tthis.interactive = false;\n\t\tthis.reference = 0;\n\t\tconst shape = this.newShape();\n\t\tshape.parent = this;\n\t\tthis._shape = shape;\n\t\tthis.interactives = [];\n\t}\n\n\tget width(): number {\n\t\treturn this._shape.size.x;\n\t}\n\n\tset width(width: number) {\n\t\tthis._shape.size.x = width;\n\t}\n\n\tget height(): number {\n\t\treturn this._shape.size.y;\n\t}\n\n\tset height(height: number) {\n\t\tthis._shape.size.y = height;\n\t}\n\n\tget background(): DDiagramLayerBackground {\n\t\treturn this._shape.fill;\n\t}\n\n\tget state(): DBaseStateSet {\n\t\treturn this._shape.state;\n\t}\n\n\tprotected newShape(): EShape {\n\t\tconst result = new EShapeRectanglePivoted();\n\t\tresult.fill.set(false, 0xffffff, 1);\n\t\tresult.stroke.set(false);\n\t\tresult.state.add(EShapeLayerState.INTERACTIVE);\n\t\treturn result;\n\t}\n\n\tinitialize(actionables: EShape[]): void {\n\t\tconst interactives = this.interactives;\n\t\tconst shape = this._shape;\n\t\tconst isInteractive = shape.state.is(EShapeLayerState.INTERACTIVE);\n\t\tconst isDraggable = shape.state.is(EShapeLayerState.DRAGGABLE);\n\t\tconst isPinchable = shape.state.is(EShapeLayerState.PINCHABLE);\n\t\tif (isDraggable || isPinchable) {\n\t\t\tconst runtime = new EShapeRuntimeImpl(shape);\n\t\t\tshape.runtime = runtime;\n\t\t\tconst gestureType =\n\t\t\t\t(isDraggable\n\t\t\t\t\t? EShapeActionValueGestureOperationType.DRAG\n\t\t\t\t\t: EShapeActionValueGestureOperationType.NONE) |\n\t\t\t\t(isPinchable\n\t\t\t\t\t? EShapeActionValueGestureOperationType.PINCH\n\t\t\t\t\t: EShapeActionValueGestureOperationType.NONE);\n\t\t\truntime.actions.push(\n\t\t\t\tnew EShapeActionValueGesture(\n\t\t\t\t\t\"\",\n\t\t\t\t\tEShapeActionValueGestureType.LAYER,\n\t\t\t\t\tgestureType\n\t\t\t\t).toRuntime()\n\t\t\t);\n\t\t\tactionables.push(shape);\n\t\t\tEShapes.CURRENT = shape;\n\t\t\truntime.initialize(shape);\n\t\t\tEShapes.CURRENT = null;\n\t\t}\n\t\tif (isInteractive || isDraggable || isPinchable) {\n\t\t\tshape.interactive = true;\n\t\t\tinteractives.push(shape);\n\t\t}\n\t\tthis.doInitialize(this.children, interactives);\n\t}\n\n\tprotected doInitialize(shapes: EShape[], interactives: EShape[]): void {\n\t\tfor (let i = 0, imax = shapes.length; i < imax; ++i) {\n\t\t\tconst shape = shapes[i];\n\n\t\t\tconst runtime = shape.runtime;\n\t\t\tif (runtime) {\n\t\t\t\t// Interactives\n\t\t\t\tif (shape.interactive || runtime.interactive) {\n\t\t\t\t\tinteractives.push(shape);\n\t\t\t\t} else {\n\t\t\t\t\tconst cursor = shape.cursor;\n\t\t\t\t\tif (cursor != null && 0 < cursor.length) {\n\t\t\t\t\t\tinteractives.push(shape);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Children\n\t\t\tconst children = shape.children;\n\t\t\tif (0 < children.length) {\n\t\t\t\tthis.doInitialize(children, interactives);\n\t\t\t}\n\t\t}\n\t}\n\n\tupdate(time: number): void {\n\t\tthis.doUpdate(this.children, time);\n\t}\n\n\tprotected doUpdate(shapes: EShape[], time: number): void {\n\t\tfor (let i = 0, imax = shapes.length; i < imax; ++i) {\n\t\t\tconst shape = shapes[i];\n\t\t\tshape.update(time);\n\n\t\t\t// Children\n\t\t\tconst children = shape.children;\n\t\t\tif (0 < children.length) {\n\t\t\t\tthis.doUpdate(children, time);\n\t\t\t}\n\t\t}\n\t}\n\n\thitTestInteractives(global: IPoint): EShape | null {\n\t\tconst local = this._work;\n\t\tconst interactives = this.interactives;\n\t\tfor (let i = interactives.length - 1; 0 <= i; --i) {\n\t\t\tconst interactive = interactives[i];\n\t\t\tif (interactive.visible) {\n\t\t\t\tinteractive.toLocal(global, undefined, local);\n\t\t\t\tif (interactive.contains(local.x, local.y) != null) {\n\t\t\t\t\treturn interactive;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn null;\n\t}\n\n\taddUuid(manager: EShapeResourceManagerSerialization): void {\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tchildren[i].addUuid(manager);\n\t\t}\n\t}\n\n\tupdateUuid(manager: EShapeResourceManagerSerialization): void {\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tchildren[i].updateUuid(manager);\n\t\t}\n\t}\n\n\tdestroy(): void {\n\t\tif (!this._destroyed) {\n\t\t\tconst children = this.children;\n\t\t\tfor (let i = children.length - 1; 0 <= i; --i) {\n\t\t\t\tchildren[i].destroy();\n\t\t\t}\n\t\t\tchildren.length = 0;\n\t\t\tsuper.destroy();\n\t\t}\n\t}\n\n\tserialize(\n\t\tlayer: number,\n\t\tmanager: EShapeResourceManagerSerialization,\n\t\titems: DDiagramSerializedItem[]\n\t): DDiagramSerializedLayer {\n\t\tconst children = this.children;\n\t\tfor (let i = 0, imax = children.length; i < imax; ++i) {\n\t\t\tconst shape = children[i];\n\t\t\tconst item = shape.serialize(manager);\n\t\t\titem[16] = layer;\n\t\t\titems.push(item);\n\t\t}\n\n\t\tconst shape = this._shape;\n\t\tconst nameId = manager.addResource(this.name || \"\");\n\t\tconst visible =\n\t\t\t(this.visible ? 1 : 0) | (shape.state.is(EShapeLayerState.INVISIBLE) ? 0 : 2);\n\t\tconst position = this.position;\n\t\tconst size = shape.size;\n\t\tconst fill = shape.fill.serialize(manager);\n\t\tconst isInteractive = shape.state.is(EShapeLayerState.INTERACTIVE) ? 1 : 0;\n\t\tconst isDraggable = shape.state.is(EShapeLayerState.DRAGGABLE) ? 2 : 0;\n\t\tconst isPinchable = shape.state.is(EShapeLayerState.PINCHABLE) ? 4 : 0;\n\t\treturn [\n\t\t\tnameId,\n\t\t\tvisible,\n\t\t\tposition.x,\n\t\t\tposition.y,\n\t\t\tsize.x,\n\t\t\tsize.y,\n\t\t\tfill,\n\t\t\tisInteractive | isDraggable | isPinchable\n\t\t];\n\t}\n\n\tstatic deserialize(\n\t\tserialized: DDiagramSerializedLayer,\n\t\tmanager: EShapeResourceManagerDeserialization,\n\t\twidth: number,\n\t\theight: number\n\t): DDiagramLayer {\n\t\tconst result = new DDiagramLayer(this.deserializeName(serialized[0], manager));\n\t\tconst shape = result._shape;\n\n\t\tconst visibility = serialized[1];\n\t\tif (visibility != null) {\n\t\t\tconst isEditorMode = manager.mode !== EShapeResourceManagerDeserializationMode.VIEWER;\n\t\t\tif (isEditorMode && !(visibility & 0x1)) {\n\t\t\t\tresult.visible = false;\n\t\t\t}\n\t\t\tif (!(visibility & 0x2)) {\n\t\t\t\tshape.state.add(EShapeLayerState.INVISIBLE);\n\t\t\t\tif (!isEditorMode) {\n\t\t\t\t\tresult.visible = false;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tconst positionX = serialized[2];\n\t\tconst positionY = serialized[3];\n\t\tresult.position.set(positionX, positionY);\n\n\t\tconst sizeX = serialized[4] ?? width;\n\t\tconst sizeY = serialized[5] ?? height;\n\t\tshape.size.set(sizeX, sizeY);\n\n\t\tconst fillId = serialized[6];\n\t\tif (fillId != null) {\n\t\t\tshape.fill.deserialize(fillId, manager);\n\t\t}\n\n\t\tconst state = serialized[7] ?? 1;\n\t\tshape.state.set(EShapeLayerState.INTERACTIVE, !!(state & 0x1));\n\t\tshape.state.set(EShapeLayerState.DRAGGABLE, !!(state & 0x2));\n\t\tshape.state.set(EShapeLayerState.PINCHABLE, !!(state & 0x4));\n\t\treturn result;\n\t}\n\n\tstatic deserializeName(\n\t\ttarget: string | number,\n\t\tmanager: EShapeResourceManagerDeserialization\n\t): string {\n\t\tif (isString(target)) {\n\t\t\treturn target;\n\t\t} else {\n\t\t\tconst resources = manager.resources;\n\t\t\tif (0 <= target && target <= resources.length) {\n\t\t\t\treturn resources[target];\n\t\t\t}\n\t\t\treturn \"\";\n\t\t}\n\t}\n}\n"]}
|
|
@@ -10,9 +10,16 @@ import { EShapeEmbedded } from "../variant/e-shape-embedded";
|
|
|
10
10
|
import { EShapeActionOpenOpeners } from "./e-shape-action-open-openers";
|
|
11
11
|
import { isString } from "../../util/is-string";
|
|
12
12
|
import { DDiagram } from "../../d-diagram";
|
|
13
|
+
import { EShapes } from "./e-shapes";
|
|
13
14
|
var EShapeActions = /** @class */ (function () {
|
|
14
15
|
function EShapeActions() {
|
|
15
16
|
}
|
|
17
|
+
EShapeActions.getShape = function () {
|
|
18
|
+
return EShapes.CURRENT;
|
|
19
|
+
};
|
|
20
|
+
EShapeActions.getDiagram = function () {
|
|
21
|
+
return EShapeActions.toDiagram(EShapes.CURRENT);
|
|
22
|
+
};
|
|
16
23
|
EShapeActions.isDiagram = function (target) {
|
|
17
24
|
return target instanceof DDiagram;
|
|
18
25
|
};
|
|
@@ -115,6 +122,7 @@ var EShapeActions = /** @class */ (function () {
|
|
|
115
122
|
}
|
|
116
123
|
}
|
|
117
124
|
};
|
|
125
|
+
EShapeActions.SHAPE = null;
|
|
118
126
|
return EShapeActions;
|
|
119
127
|
}());
|
|
120
128
|
export { EShapeActions };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"e-shape-actions.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/action/e-shape-actions.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,8BAA8B,EAAE,MAAM,iCAAiC,CAAC;AACjF,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"e-shape-actions.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/action/e-shape-actions.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DApplications } from \"../../d-applications\";\nimport { DDiagramBaseControllerOpenType } from \"../../d-diagram-base-controller\";\nimport { DDiagrams } from \"../../d-diagrams\";\nimport { EShape } from \"../e-shape\";\nimport { EShapeDataValueState } from \"../e-shape-data-value-state\";\nimport { EShapeEmbedded } from \"../variant/e-shape-embedded\";\nimport { EShapeActionOpenOpeners } from \"./e-shape-action-open-openers\";\nimport { isString } from \"../../util/is-string\";\nimport { DDiagram } from \"../../d-diagram\";\nimport { EShapeActionEnvironment } from \"./e-shape-action-environment\";\nimport { EShapes } from \"./e-shapes\";\n\nexport class EShapeActions {\n\tpublic static SHAPE: EShape | null = null;\n\n\tstatic getShape(): EShape | null {\n\t\treturn EShapes.CURRENT;\n\t}\n\n\tstatic getDiagram(): DDiagram | null {\n\t\treturn EShapeActions.toDiagram(EShapes.CURRENT);\n\t}\n\n\tstatic isDiagram(target: unknown): target is DDiagram {\n\t\treturn target instanceof DDiagram;\n\t}\n\n\tstatic isEmbedded(target: unknown): target is EShapeEmbedded {\n\t\treturn target instanceof EShapeEmbedded;\n\t}\n\n\tstatic toDiagram(shape?: EShape | null): DDiagram | null {\n\t\tlet current: { parent: any } | null | undefined = shape;\n\t\twhile (current != null) {\n\t\t\tif (this.isDiagram(current)) {\n\t\t\t\treturn current;\n\t\t\t}\n\t\t\tcurrent = current.parent;\n\t\t}\n\t\treturn null;\n\t}\n\n\tstatic open(\n\t\tshape: EShape,\n\t\ttype: DDiagramBaseControllerOpenType,\n\t\ttarget: unknown,\n\t\tinNewWindow: boolean,\n\t\tenvironment: EShapeActionEnvironment\n\t): void {\n\t\tconst opener = EShapeActionOpenOpeners[type];\n\t\tif (opener != null) {\n\t\t\tconst diagram = this.toDiagram(shape);\n\t\t\tif (diagram) {\n\t\t\t\topener(target, inNewWindow, shape, diagram, environment);\n\t\t\t}\n\t\t} else if (isString(target)) {\n\t\t\tswitch (type) {\n\t\t\t\tcase DDiagramBaseControllerOpenType.DIAGRAM:\n\t\t\t\t\tconst diagram = this.toDiagram(shape);\n\t\t\t\t\tif (diagram) {\n\t\t\t\t\t\tconst controller = diagram.controller;\n\t\t\t\t\t\tif (controller) {\n\t\t\t\t\t\t\tcontroller.getByName(target).then((found): void => {\n\t\t\t\t\t\t\t\tdiagram.set(DDiagrams.toSerialized(found));\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t\tcase DDiagramBaseControllerOpenType.PAGE:\n\t\t\t\t\tif (inNewWindow) {\n\t\t\t\t\t\twindow.open(target);\n\t\t\t\t\t} else {\n\t\t\t\t\t\twindow.location.href = target;\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tstatic writeLocal(\n\t\tshape: EShape,\n\t\tid: string,\n\t\tvalue: unknown,\n\t\ttime: number,\n\t\tstate: EShapeDataValueState = EShapeDataValueState.FOUND\n\t): boolean {\n\t\tlet current: { parent: any } | null | undefined = shape;\n\t\twhile (current != null) {\n\t\t\tif (this.isDiagram(current)) {\n\t\t\t\tif (current.data.private.set(id, value, time, state)) {\n\t\t\t\t\tDApplications.update(current);\n\t\t\t\t\treturn true;\n\t\t\t\t} else if (current.data.protected.set(id, value, time, state)) {\n\t\t\t\t\tDApplications.update(current);\n\t\t\t\t\treturn true;\n\t\t\t\t} else {\n\t\t\t\t\tif (current.data.set(id, value, time, state)) {\n\t\t\t\t\t\tDApplications.update(current);\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn false;\n\t\t\t} else if (this.isEmbedded(current)) {\n\t\t\t\tif (current.data.getPrivate()?.set(id, value, time, state)) {\n\t\t\t\t\tDApplications.update(current);\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t\tcurrent = current.parent;\n\t\t}\n\t\treturn false;\n\t}\n\n\tstatic writeRemote(shape: EShape, id: string, value: unknown): boolean {\n\t\tconst diagram = this.toDiagram(shape);\n\t\tif (diagram) {\n\t\t\treturn diagram.data.remote.set(id, value);\n\t\t}\n\t\treturn false;\n\t}\n\n\tstatic emit(shape: EShape, name: string): void;\n\tstatic emit(shape: EShape, name: string, value: unknown, time: number): void;\n\tstatic emit(shape: EShape, name: string, value?: unknown, time?: number): void {\n\t\tconst diagram = EShapeActions.toDiagram(shape);\n\t\tif (time === undefined) {\n\t\t\tshape.emit(name, shape);\n\t\t\tif (diagram) {\n\t\t\t\tdiagram.shape.emit(name, shape);\n\t\t\t}\n\t\t} else {\n\t\t\tshape.emit(name, value, time, shape);\n\t\t\tif (diagram) {\n\t\t\t\tdiagram.shape.emit(name, value, time, shape);\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"e-shapes.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/action/e-shapes.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,IAAM,OAAO,GAAY;IAC/B,OAAO,EAAE,IAAI;CACb,CAAC","sourcesContent":["import { EShape } from \"../e-shape\";\n\nexport interface EShapes {\n\tCURRENT: EShape | null;\n}\n\nexport const EShapes: EShapes = {\n\tCURRENT: null\n};\n"]}
|