@wcardinal/wcardinal-ui 0.432.0 → 0.433.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.
Files changed (30) hide show
  1. package/dist/types/wcardinal/ui/d-diagram-canvas-editor-snap.d.ts +7 -5
  2. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-diagram-canvas-editor.d.ts +0 -1
  3. package/dist/types/wcardinal/ui/theme/white/d-theme-white-diagram-canvas-editor.d.ts +0 -1
  4. package/dist/wcardinal/ui/d-diagram-canvas-editor-snap.js +22 -24
  5. package/dist/wcardinal/ui/d-diagram-canvas-editor-snap.js.map +1 -1
  6. package/dist/wcardinal/ui/theme/dark/d-theme-dark-diagram-canvas-editor.js +13 -4
  7. package/dist/wcardinal/ui/theme/dark/d-theme-dark-diagram-canvas-editor.js.map +1 -1
  8. package/dist/wcardinal/ui/theme/white/d-theme-white-diagram-canvas-editor.js +13 -4
  9. package/dist/wcardinal/ui/theme/white/d-theme-white-diagram-canvas-editor.js.map +1 -1
  10. package/dist/wcardinal-ui-theme-dark-en-us.js +14 -5
  11. package/dist/wcardinal-ui-theme-dark-en-us.min.js +2 -2
  12. package/dist/wcardinal-ui-theme-dark-en-us.min.js.map +1 -1
  13. package/dist/wcardinal-ui-theme-dark-ja-jp.js +14 -5
  14. package/dist/wcardinal-ui-theme-dark-ja-jp.min.js +2 -2
  15. package/dist/wcardinal-ui-theme-dark-ja-jp.min.js.map +1 -1
  16. package/dist/wcardinal-ui-theme-dark.js +14 -5
  17. package/dist/wcardinal-ui-theme-dark.min.js +2 -2
  18. package/dist/wcardinal-ui-theme-white-en-us.js +14 -5
  19. package/dist/wcardinal-ui-theme-white-en-us.min.js +2 -2
  20. package/dist/wcardinal-ui-theme-white-en-us.min.js.map +1 -1
  21. package/dist/wcardinal-ui-theme-white-ja-jp.js +14 -5
  22. package/dist/wcardinal-ui-theme-white-ja-jp.min.js +2 -2
  23. package/dist/wcardinal-ui-theme-white-ja-jp.min.js.map +1 -1
  24. package/dist/wcardinal-ui-theme-white.js +14 -5
  25. package/dist/wcardinal-ui-theme-white.min.js +2 -2
  26. package/dist/wcardinal-ui.cjs.js +49 -33
  27. package/dist/wcardinal-ui.js +23 -25
  28. package/dist/wcardinal-ui.min.js +2 -2
  29. package/dist/wcardinal-ui.min.js.map +1 -1
  30. package/package.json +1 -1
@@ -18,7 +18,7 @@ export interface DDiagramCanvasEditorSnapGridMinorOptions {
18
18
  width?: number;
19
19
  style?: EShapeStrokeStyle;
20
20
  }
21
- export type DDiagramCanvasEditorSnapGridSize = (given: number, width: number, height: number) => number;
21
+ export type DDiagramCanvasEditorSnapGridSize = (given: number, width: number, height: number, scale: number) => number;
22
22
  export interface DDiagramCanvasEditorSnapGridOptions {
23
23
  major?: DDiagramCanvasEditorSnapGridMajorOptions;
24
24
  minor?: DDiagramCanvasEditorSnapGridMinorOptions;
@@ -47,7 +47,6 @@ export interface DThemeDiagramCanvasEditorSnap {
47
47
  getSnapGridMinorWidth(): number;
48
48
  getSnapGridMinorStyle(): EShapeStrokeStyle;
49
49
  getSnapGridSize(): DDiagramCanvasEditorSnapGridSize;
50
- isSnapGridAdaptive(): boolean;
51
50
  getSnapTargetColor(): number;
52
51
  getSnapTargetAlpha(): number;
53
52
  getSnapTargetWidth(): number;
@@ -75,7 +74,6 @@ export interface DDiagramCanvasEditorSnapGrid {
75
74
  major: DDiagramCanvasEditorSnapGridMajor;
76
75
  minor: DDiagramCanvasEditorSnapGridMinor;
77
76
  size: DDiagramCanvasEditorSnapGridSize;
78
- adaptive: boolean;
79
77
  }
80
78
  export interface DDiagramCanvasEditorSnapTarget {
81
79
  color: number;
@@ -89,7 +87,10 @@ export declare class DDiagramCanvasEditorSnap {
89
87
  protected _container: EShapeContainer;
90
88
  protected _isDirty: boolean;
91
89
  protected _grid: DDiagramCanvasEditorSnapGrid;
92
- protected _gridScale: number;
90
+ protected _gridParentWidth: number;
91
+ protected _gridParentHeight: number;
92
+ protected _gridParentScale: number;
93
+ protected _gridSize: number;
93
94
  protected _target: DDiagramCanvasEditorSnapTarget;
94
95
  constructor(parent: DDiagramCanvasEditorSnapParent, theme: DThemeDiagramCanvasEditorSnap, options: DDiagramCanvasEditorSnapOptions);
95
96
  protected toGrid(theme: DThemeDiagramCanvasEditorSnap, options?: DDiagramCanvasEditorSnapGridOptions): DDiagramCanvasEditorSnapGrid;
@@ -101,7 +102,8 @@ export declare class DDiagramCanvasEditorSnap {
101
102
  serialize(): DDiagramSerializedSnap;
102
103
  onResize(newWidth: number, newHeight: number, oldWidth: number, oldHeight: number): void;
103
104
  onScale(newX: number, newY: number, oldX: number, oldY: number): void;
104
- protected toGridScale(sx: number): number;
105
+ protected updateGridSize(): void;
106
+ protected newGridSize(): number;
105
107
  onRender(): void;
106
108
  protected updateAll(): void;
107
109
  protected update(container: EShapeContainer, shapes: EShapeBar[], index: number, x: number, y: number, position: EShapeBarPosition, w: number, h: number, style: DDiagramCanvasEditorSnapGridMajor | DDiagramCanvasEditorSnapGridMinor | DDiagramCanvasEditorSnapTarget): void;
@@ -17,7 +17,6 @@ export declare class DThemeDarkDiagramCanvasEditor extends DThemeDarkDiagramCanv
17
17
  getSnapGridMinorWidth(): number;
18
18
  getSnapGridMinorStyle(): EShapeStrokeStyle;
19
19
  getSnapGridSize(): DDiagramCanvasEditorSnapGridSize;
20
- isSnapGridAdaptive(): boolean;
21
20
  getSnapTargetColor(): number;
22
21
  getSnapTargetAlpha(): number;
23
22
  getSnapTargetWidth(): number;
@@ -17,7 +17,6 @@ export declare class DThemeWhiteDiagramCanvasEditor extends DThemeWhiteDiagramCa
17
17
  getSnapGridMinorWidth(): number;
18
18
  getSnapGridMinorStyle(): EShapeStrokeStyle;
19
19
  getSnapGridSize(): DDiagramCanvasEditorSnapGridSize;
20
- isSnapGridAdaptive(): boolean;
21
20
  getSnapTargetColor(): number;
22
21
  getSnapTargetAlpha(): number;
23
22
  getSnapTargetWidth(): number;
@@ -28,25 +28,26 @@ var DDiagramCanvasEditorSnap = /** @class */ (function () {
28
28
  parent.addChildAt(container, parent.children.length - 1);
29
29
  // Grid
30
30
  this._grid = this.toGrid(theme, options.grid);
31
- this._gridScale = this.toGridScale(parent.scale.x);
31
+ this._gridParentWidth = parent.width;
32
+ this._gridParentHeight = parent.height;
33
+ this._gridParentScale = parent.scale.x;
34
+ this._gridSize = this.newGridSize();
32
35
  // Target
33
36
  this._target = this.toTarget(theme, options.target);
34
37
  }
35
38
  DDiagramCanvasEditorSnap.prototype.toGrid = function (theme, options) {
36
- var _a, _b;
39
+ var _a;
37
40
  if (options != null) {
38
41
  return {
39
42
  major: this.toGridMajor(theme, options.major),
40
43
  minor: this.toGridMinor(theme, options.minor),
41
- size: (_a = options.size) !== null && _a !== void 0 ? _a : theme.getSnapGridSize(),
42
- adaptive: (_b = options.adaptive) !== null && _b !== void 0 ? _b : theme.isSnapGridAdaptive()
44
+ size: (_a = options.size) !== null && _a !== void 0 ? _a : theme.getSnapGridSize()
43
45
  };
44
46
  }
45
47
  return {
46
48
  major: this.toGridMajor(theme),
47
49
  minor: this.toGridMinor(theme),
48
- size: theme.getSnapGridSize(),
49
- adaptive: theme.isSnapGridAdaptive()
50
+ size: theme.getSnapGridSize()
50
51
  };
51
52
  };
52
53
  DDiagramCanvasEditorSnap.prototype.toGridMajor = function (theme, options) {
@@ -117,25 +118,23 @@ var DDiagramCanvasEditorSnap = /** @class */ (function () {
117
118
  return this._controller.serialize();
118
119
  };
119
120
  DDiagramCanvasEditorSnap.prototype.onResize = function (newWidth, newHeight, oldWidth, oldHeight) {
120
- this._isDirty = true;
121
+ this._gridParentWidth = newWidth;
122
+ this._gridParentHeight = newHeight;
123
+ this.updateGridSize();
121
124
  };
122
125
  DDiagramCanvasEditorSnap.prototype.onScale = function (newX, newY, oldX, oldY) {
123
- var gridScale = this.toGridScale(newX);
124
- if (this._gridScale !== gridScale) {
125
- this._gridScale = gridScale;
126
+ this._gridParentScale = newX;
127
+ this.updateGridSize();
128
+ };
129
+ DDiagramCanvasEditorSnap.prototype.updateGridSize = function () {
130
+ var gridSize = this.newGridSize();
131
+ if (this._gridSize !== gridSize) {
132
+ this._gridSize = gridSize;
126
133
  this._isDirty = true;
127
134
  }
128
135
  };
129
- DDiagramCanvasEditorSnap.prototype.toGridScale = function (sx) {
130
- if (!this._grid.adaptive || sx <= 0 || 1 <= sx) {
131
- return 1;
132
- }
133
- var target = 1 / sx;
134
- var result = 1;
135
- while (result < target && result < Number.MAX_SAFE_INTEGER) {
136
- result <<= 1;
137
- }
138
- return result;
136
+ DDiagramCanvasEditorSnap.prototype.newGridSize = function () {
137
+ return this._grid.size(this._controller.grid.size, this._gridParentWidth, this._gridParentHeight, this._gridParentScale);
139
138
  };
140
139
  DDiagramCanvasEditorSnap.prototype.onRender = function () {
141
140
  if (this._isDirty) {
@@ -144,14 +143,13 @@ var DDiagramCanvasEditorSnap = /** @class */ (function () {
144
143
  }
145
144
  };
146
145
  DDiagramCanvasEditorSnap.prototype.updateAll = function () {
147
- var parent = this._parent;
148
146
  var container = this._container;
149
147
  var controller = this._controller;
150
148
  var isGridVisible = controller.grid.visible;
151
149
  var isTargetVisible = controller.target.visible;
152
150
  if (isGridVisible || isTargetVisible) {
153
- var w = parent.width;
154
- var h = parent.height;
151
+ var w = this._gridParentWidth;
152
+ var h = this._gridParentHeight;
155
153
  var wh = 0.5 * w;
156
154
  var hh = 0.5 * h;
157
155
  var TOP = EShapeBarPosition.TOP;
@@ -164,7 +162,7 @@ var DDiagramCanvasEditorSnap = /** @class */ (function () {
164
162
  var major = grid.major;
165
163
  var minor = grid.minor;
166
164
  var interval = major.interval;
167
- var size = grid.size(controller.grid.size * this._gridScale, w, h);
165
+ var size = this._gridSize;
168
166
  for (var x = size, ix = 1; x < w; x += size, ix += 1, index += 1) {
169
167
  var style = ix % interval === 0 ? major : minor;
170
168
  this.update(container, shapes, index, x, hh, TOP, w, h, style);
@@ -1 +1 @@
1
- {"version":3,"file":"d-diagram-canvas-editor-snap.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-diagram-canvas-editor-snap.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2021 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Container } from \"pixi.js\";\nimport { DApplications } from \"./d-applications\";\nimport { DDiagramSerializedSnap } from \"./d-diagram-serialized\";\nimport { EShapeContainer } from \"./shape/e-shape-container\";\nimport { EShapeStrokeStyle } from \"./shape/e-shape-stroke-style\";\nimport { EShapeBar } from \"./shape/variant/e-shape-bar\";\nimport { EShapeBarPosition } from \"./shape/variant/e-shape-bar-position\";\nimport { ESnapper } from \"./snapper/e-snapper\";\nimport { ESnapperTargetValueType } from \"./snapper/e-snapper-target-value\";\nimport { EShapeLockPart } from \"./shape/variant/e-shape-lock-part\";\n\nexport interface DDiagramCanvasEditorSnapGridMajorOptions {\n\tinterval?: number;\n\tcolor?: number;\n\talpha?: number;\n\twidth?: number;\n\tstyle?: EShapeStrokeStyle;\n}\n\nexport interface DDiagramCanvasEditorSnapGridMinorOptions {\n\tcolor?: number;\n\talpha?: number;\n\twidth?: number;\n\tstyle?: EShapeStrokeStyle;\n}\n\nexport type DDiagramCanvasEditorSnapGridSize = (\n\tgiven: number,\n\twidth: number,\n\theight: number\n) => number;\n\nexport interface DDiagramCanvasEditorSnapGridOptions {\n\tmajor?: DDiagramCanvasEditorSnapGridMajorOptions;\n\tminor?: DDiagramCanvasEditorSnapGridMinorOptions;\n\tsize?: DDiagramCanvasEditorSnapGridSize;\n\tadaptive?: boolean;\n}\n\nexport interface DDiagramCanvasEditorSnapTargetOptions {\n\tcolor?: number;\n\talpha?: number;\n\twidth?: number;\n\tstyle?: EShapeStrokeStyle;\n}\n\nexport interface DDiagramCanvasEditorSnapOptions {\n\tcontroller: ESnapper;\n\tgrid?: DDiagramCanvasEditorSnapGridOptions;\n\ttarget?: DDiagramCanvasEditorSnapTargetOptions;\n}\n\nexport interface DThemeDiagramCanvasEditorSnap {\n\tgetSnapGridMajorInterval(): number;\n\tgetSnapGridMajorColor(): number;\n\tgetSnapGridMajorAlpha(): number;\n\tgetSnapGridMajorWidth(): number;\n\tgetSnapGridMajorStyle(): EShapeStrokeStyle;\n\n\tgetSnapGridMinorColor(): number;\n\tgetSnapGridMinorAlpha(): number;\n\tgetSnapGridMinorWidth(): number;\n\tgetSnapGridMinorStyle(): EShapeStrokeStyle;\n\n\tgetSnapGridSize(): DDiagramCanvasEditorSnapGridSize;\n\tisSnapGridAdaptive(): boolean;\n\n\tgetSnapTargetColor(): number;\n\tgetSnapTargetAlpha(): number;\n\tgetSnapTargetWidth(): number;\n\tgetSnapTargetStyle(): EShapeStrokeStyle;\n}\n\nexport interface DDiagramCanvasEditorSnapParent extends Container {\n\treadonly width: number;\n\treadonly height: number;\n\ttoDirty(): void;\n}\n\nexport interface DDiagramCanvasEditorSnapGridMajor {\n\tinterval: number;\n\tcolor: number;\n\talpha: number;\n\twidth: number;\n\tstyle: EShapeStrokeStyle;\n}\n\nexport interface DDiagramCanvasEditorSnapGridMinor {\n\tcolor: number;\n\talpha: number;\n\twidth: number;\n\tstyle: EShapeStrokeStyle;\n}\n\nexport interface DDiagramCanvasEditorSnapGrid {\n\tmajor: DDiagramCanvasEditorSnapGridMajor;\n\tminor: DDiagramCanvasEditorSnapGridMinor;\n\tsize: DDiagramCanvasEditorSnapGridSize;\n\tadaptive: boolean;\n}\n\nexport interface DDiagramCanvasEditorSnapTarget {\n\tcolor: number;\n\talpha: number;\n\twidth: number;\n\tstyle: EShapeStrokeStyle;\n}\n\nexport class DDiagramCanvasEditorSnap {\n\tprotected _parent: DDiagramCanvasEditorSnapParent;\n\tprotected _controller: ESnapper;\n\tprotected _container: EShapeContainer;\n\n\tprotected _isDirty: boolean;\n\n\tprotected _grid: DDiagramCanvasEditorSnapGrid;\n\tprotected _gridScale: number;\n\n\tprotected _target: DDiagramCanvasEditorSnapTarget;\n\n\tconstructor(\n\t\tparent: DDiagramCanvasEditorSnapParent,\n\t\ttheme: DThemeDiagramCanvasEditorSnap,\n\t\toptions: DDiagramCanvasEditorSnapOptions\n\t) {\n\t\tthis._parent = parent;\n\t\tthis._isDirty = true;\n\n\t\t// Controller\n\t\tconst controller = options.controller;\n\t\tthis._controller = controller;\n\t\tconst onChangeBound = (): void => {\n\t\t\tthis.onChange();\n\t\t};\n\t\tcontroller.grid.on(\"change\", onChangeBound);\n\t\tcontroller.target.on(\"change\", onChangeBound);\n\n\t\t// Container\n\t\tconst container = new EShapeContainer();\n\t\tcontainer.visible = false;\n\t\tthis._container = container;\n\t\tparent.addChildAt(container, parent.children.length - 1);\n\n\t\t// Grid\n\t\tthis._grid = this.toGrid(theme, options.grid);\n\t\tthis._gridScale = this.toGridScale(parent.scale.x);\n\n\t\t// Target\n\t\tthis._target = this.toTarget(theme, options.target);\n\t}\n\n\tprotected toGrid(\n\t\ttheme: DThemeDiagramCanvasEditorSnap,\n\t\toptions?: DDiagramCanvasEditorSnapGridOptions\n\t): DDiagramCanvasEditorSnapGrid {\n\t\tif (options != null) {\n\t\t\treturn {\n\t\t\t\tmajor: this.toGridMajor(theme, options.major),\n\t\t\t\tminor: this.toGridMinor(theme, options.minor),\n\t\t\t\tsize: options.size ?? theme.getSnapGridSize(),\n\t\t\t\tadaptive: options.adaptive ?? theme.isSnapGridAdaptive()\n\t\t\t};\n\t\t}\n\t\treturn {\n\t\t\tmajor: this.toGridMajor(theme),\n\t\t\tminor: this.toGridMinor(theme),\n\t\t\tsize: theme.getSnapGridSize(),\n\t\t\tadaptive: theme.isSnapGridAdaptive()\n\t\t};\n\t}\n\n\tprotected toGridMajor(\n\t\ttheme: DThemeDiagramCanvasEditorSnap,\n\t\toptions?: DDiagramCanvasEditorSnapGridMajorOptions\n\t): DDiagramCanvasEditorSnapGridMajor {\n\t\tif (options != null) {\n\t\t\treturn {\n\t\t\t\tinterval: options.interval ?? theme.getSnapGridMajorInterval(),\n\t\t\t\tcolor: options.color ?? theme.getSnapGridMajorColor(),\n\t\t\t\talpha: options.alpha ?? theme.getSnapGridMajorAlpha(),\n\t\t\t\twidth: options.width ?? theme.getSnapGridMajorWidth(),\n\t\t\t\tstyle: options.style ?? theme.getSnapGridMajorStyle()\n\t\t\t};\n\t\t}\n\t\treturn {\n\t\t\tinterval: theme.getSnapGridMajorInterval(),\n\t\t\tcolor: theme.getSnapGridMajorColor(),\n\t\t\talpha: theme.getSnapGridMajorAlpha(),\n\t\t\twidth: theme.getSnapGridMajorWidth(),\n\t\t\tstyle: theme.getSnapGridMajorStyle()\n\t\t};\n\t}\n\n\tprotected toGridMinor(\n\t\ttheme: DThemeDiagramCanvasEditorSnap,\n\t\toptions?: DDiagramCanvasEditorSnapGridMinorOptions\n\t): DDiagramCanvasEditorSnapGridMinor {\n\t\tif (options != null) {\n\t\t\treturn {\n\t\t\t\tcolor: options.color ?? theme.getSnapGridMinorColor(),\n\t\t\t\talpha: options.alpha ?? theme.getSnapGridMinorAlpha(),\n\t\t\t\twidth: options.width ?? theme.getSnapGridMinorWidth(),\n\t\t\t\tstyle: options.style ?? theme.getSnapGridMinorStyle()\n\t\t\t};\n\t\t}\n\t\treturn {\n\t\t\tcolor: theme.getSnapGridMinorColor(),\n\t\t\talpha: theme.getSnapGridMinorAlpha(),\n\t\t\twidth: theme.getSnapGridMinorWidth(),\n\t\t\tstyle: theme.getSnapGridMinorStyle()\n\t\t};\n\t}\n\n\tprotected toTarget(\n\t\ttheme: DThemeDiagramCanvasEditorSnap,\n\t\toptions?: DDiagramCanvasEditorSnapTargetOptions\n\t): DDiagramCanvasEditorSnapTarget {\n\t\tif (options != null) {\n\t\t\treturn {\n\t\t\t\tcolor: options.color ?? theme.getSnapTargetColor(),\n\t\t\t\talpha: options.alpha ?? theme.getSnapTargetAlpha(),\n\t\t\t\twidth: options.width ?? theme.getSnapTargetWidth(),\n\t\t\t\tstyle: options.style ?? theme.getSnapTargetStyle()\n\t\t\t};\n\t\t}\n\t\treturn {\n\t\t\tcolor: theme.getSnapTargetColor(),\n\t\t\talpha: theme.getSnapTargetAlpha(),\n\t\t\twidth: theme.getSnapTargetWidth(),\n\t\t\tstyle: theme.getSnapTargetStyle()\n\t\t};\n\t}\n\n\tprotected onChange(): void {\n\t\tthis._isDirty = true;\n\t\tDApplications.update(this._parent);\n\t}\n\n\tget container(): EShapeContainer {\n\t\treturn this._container;\n\t}\n\n\tserialize(): DDiagramSerializedSnap {\n\t\treturn this._controller.serialize();\n\t}\n\n\tonResize(newWidth: number, newHeight: number, oldWidth: number, oldHeight: number): void {\n\t\tthis._isDirty = true;\n\t}\n\n\tonScale(newX: number, newY: number, oldX: number, oldY: number): void {\n\t\tconst gridScale = this.toGridScale(newX);\n\t\tif (this._gridScale !== gridScale) {\n\t\t\tthis._gridScale = gridScale;\n\t\t\tthis._isDirty = true;\n\t\t}\n\t}\n\n\tprotected toGridScale(sx: number): number {\n\t\tif (!this._grid.adaptive || sx <= 0 || 1 <= sx) {\n\t\t\treturn 1;\n\t\t}\n\t\tconst target = 1 / sx;\n\t\tlet result = 1;\n\t\twhile (result < target && result < Number.MAX_SAFE_INTEGER) {\n\t\t\tresult <<= 1;\n\t\t}\n\t\treturn result;\n\t}\n\n\tonRender(): void {\n\t\tif (this._isDirty) {\n\t\t\tthis._isDirty = false;\n\t\t\tthis.updateAll();\n\t\t}\n\t}\n\n\tprotected updateAll(): void {\n\t\tconst parent = this._parent;\n\t\tconst container = this._container;\n\t\tconst controller = this._controller;\n\n\t\tconst isGridVisible = controller.grid.visible;\n\t\tconst isTargetVisible = controller.target.visible;\n\t\tif (isGridVisible || isTargetVisible) {\n\t\t\tconst w = parent.width;\n\t\t\tconst h = parent.height;\n\t\t\tconst wh = 0.5 * w;\n\t\t\tconst hh = 0.5 * h;\n\t\t\tconst TOP = EShapeBarPosition.TOP;\n\t\t\tconst LEFT = EShapeBarPosition.LEFT;\n\n\t\t\tconst shapes = container.children as EShapeBar[];\n\t\t\tlet index = 0;\n\n\t\t\t// Grid\n\t\t\tif (isGridVisible) {\n\t\t\t\tconst grid = this._grid;\n\t\t\t\tconst major = grid.major;\n\t\t\t\tconst minor = grid.minor;\n\t\t\t\tconst interval = major.interval;\n\t\t\t\tconst size = grid.size(controller.grid.size * this._gridScale, w, h);\n\t\t\t\tfor (let x = size, ix = 1; x < w; x += size, ix += 1, index += 1) {\n\t\t\t\t\tconst style = ix % interval === 0 ? major : minor;\n\t\t\t\t\tthis.update(container, shapes, index, x, hh, TOP, w, h, style);\n\t\t\t\t}\n\t\t\t\tfor (let y = size, iy = 1; y < h; y += size, iy += 1, index += 1) {\n\t\t\t\t\tconst style = iy % interval === 0 ? major : minor;\n\t\t\t\t\tthis.update(container, shapes, index, wh, y, LEFT, w, h, style);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Target\n\t\t\tif (isTargetVisible) {\n\t\t\t\tconst values = controller.target.values;\n\t\t\t\tconst target = this._target;\n\t\t\t\tfor (let i = 0, imax = values.length; i < imax; i += 1, index += 1) {\n\t\t\t\t\tconst value = values[i];\n\t\t\t\t\tconst position = value.position;\n\t\t\t\t\tif (value.type === ESnapperTargetValueType.VERTICAL) {\n\t\t\t\t\t\tthis.update(container, shapes, index, position, hh, TOP, w, h, target);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.update(container, shapes, index, wh, position, LEFT, w, h, target);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tfor (let i = index, imax = shapes.length; i < imax; ++i) {\n\t\t\t\tshapes[i].visible = false;\n\t\t\t}\n\n\t\t\tcontainer.visible = true;\n\t\t} else {\n\t\t\tcontainer.visible = false;\n\t\t}\n\t}\n\n\tprotected update(\n\t\tcontainer: EShapeContainer,\n\t\tshapes: EShapeBar[],\n\t\tindex: number,\n\t\tx: number,\n\t\ty: number,\n\t\tposition: EShapeBarPosition,\n\t\tw: number,\n\t\th: number,\n\t\tstyle:\n\t\t\t| DDiagramCanvasEditorSnapGridMajor\n\t\t\t| DDiagramCanvasEditorSnapGridMinor\n\t\t\t| DDiagramCanvasEditorSnapTarget\n\t): void {\n\t\tlet shape = null;\n\t\tif (index < shapes.length) {\n\t\t\tshape = shapes[index];\n\t\t\tshape.lock(EShapeLockPart.UPLOADED);\n\t\t\tshape.points.position = position;\n\t\t\tshape.transform.position.set(x, y);\n\t\t\tshape.stroke.set(\n\t\t\t\ttrue,\n\t\t\t\tstyle.color,\n\t\t\t\tstyle.alpha,\n\t\t\t\tstyle.width,\n\t\t\t\tundefined,\n\t\t\t\tundefined,\n\t\t\t\tstyle.style\n\t\t\t);\n\t\t\tshape.size.set(w, h);\n\t\t\tshape.visible = true;\n\t\t\tshape.unlock(EShapeLockPart.UPLOADED, true);\n\t\t} else {\n\t\t\tshape = new EShapeBar();\n\t\t\tshape.lock(EShapeLockPart.UPLOADED);\n\t\t\tshape.points.position = position;\n\t\t\tshape.transform.position.set(x, y);\n\t\t\tshape.stroke.set(\n\t\t\t\ttrue,\n\t\t\t\tstyle.color,\n\t\t\t\tstyle.alpha,\n\t\t\t\tstyle.width,\n\t\t\t\tundefined,\n\t\t\t\tundefined,\n\t\t\t\tstyle.style\n\t\t\t);\n\t\t\tshape.size.set(w, h);\n\t\t\tshape.visible = true;\n\t\t\tshape.unlock(EShapeLockPart.UPLOADED, true);\n\t\t\tshape.attach(container);\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"d-diagram-canvas-editor-snap.js","sourceRoot":"","sources":["../../../src/main/typescript/wcardinal/ui/d-diagram-canvas-editor-snap.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2021 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Container } from \"pixi.js\";\nimport { DApplications } from \"./d-applications\";\nimport { DDiagramSerializedSnap } from \"./d-diagram-serialized\";\nimport { EShapeContainer } from \"./shape/e-shape-container\";\nimport { EShapeStrokeStyle } from \"./shape/e-shape-stroke-style\";\nimport { EShapeBar } from \"./shape/variant/e-shape-bar\";\nimport { EShapeBarPosition } from \"./shape/variant/e-shape-bar-position\";\nimport { ESnapper } from \"./snapper/e-snapper\";\nimport { ESnapperTargetValueType } from \"./snapper/e-snapper-target-value\";\nimport { EShapeLockPart } from \"./shape/variant/e-shape-lock-part\";\n\nexport interface DDiagramCanvasEditorSnapGridMajorOptions {\n\tinterval?: number;\n\tcolor?: number;\n\talpha?: number;\n\twidth?: number;\n\tstyle?: EShapeStrokeStyle;\n}\n\nexport interface DDiagramCanvasEditorSnapGridMinorOptions {\n\tcolor?: number;\n\talpha?: number;\n\twidth?: number;\n\tstyle?: EShapeStrokeStyle;\n}\n\nexport type DDiagramCanvasEditorSnapGridSize = (\n\tgiven: number,\n\twidth: number,\n\theight: number,\n\tscale: number\n) => number;\n\nexport interface DDiagramCanvasEditorSnapGridOptions {\n\tmajor?: DDiagramCanvasEditorSnapGridMajorOptions;\n\tminor?: DDiagramCanvasEditorSnapGridMinorOptions;\n\tsize?: DDiagramCanvasEditorSnapGridSize;\n\tadaptive?: boolean;\n}\n\nexport interface DDiagramCanvasEditorSnapTargetOptions {\n\tcolor?: number;\n\talpha?: number;\n\twidth?: number;\n\tstyle?: EShapeStrokeStyle;\n}\n\nexport interface DDiagramCanvasEditorSnapOptions {\n\tcontroller: ESnapper;\n\tgrid?: DDiagramCanvasEditorSnapGridOptions;\n\ttarget?: DDiagramCanvasEditorSnapTargetOptions;\n}\n\nexport interface DThemeDiagramCanvasEditorSnap {\n\tgetSnapGridMajorInterval(): number;\n\tgetSnapGridMajorColor(): number;\n\tgetSnapGridMajorAlpha(): number;\n\tgetSnapGridMajorWidth(): number;\n\tgetSnapGridMajorStyle(): EShapeStrokeStyle;\n\n\tgetSnapGridMinorColor(): number;\n\tgetSnapGridMinorAlpha(): number;\n\tgetSnapGridMinorWidth(): number;\n\tgetSnapGridMinorStyle(): EShapeStrokeStyle;\n\n\tgetSnapGridSize(): DDiagramCanvasEditorSnapGridSize;\n\n\tgetSnapTargetColor(): number;\n\tgetSnapTargetAlpha(): number;\n\tgetSnapTargetWidth(): number;\n\tgetSnapTargetStyle(): EShapeStrokeStyle;\n}\n\nexport interface DDiagramCanvasEditorSnapParent extends Container {\n\treadonly width: number;\n\treadonly height: number;\n\ttoDirty(): void;\n}\n\nexport interface DDiagramCanvasEditorSnapGridMajor {\n\tinterval: number;\n\tcolor: number;\n\talpha: number;\n\twidth: number;\n\tstyle: EShapeStrokeStyle;\n}\n\nexport interface DDiagramCanvasEditorSnapGridMinor {\n\tcolor: number;\n\talpha: number;\n\twidth: number;\n\tstyle: EShapeStrokeStyle;\n}\n\nexport interface DDiagramCanvasEditorSnapGrid {\n\tmajor: DDiagramCanvasEditorSnapGridMajor;\n\tminor: DDiagramCanvasEditorSnapGridMinor;\n\tsize: DDiagramCanvasEditorSnapGridSize;\n}\n\nexport interface DDiagramCanvasEditorSnapTarget {\n\tcolor: number;\n\talpha: number;\n\twidth: number;\n\tstyle: EShapeStrokeStyle;\n}\n\nexport class DDiagramCanvasEditorSnap {\n\tprotected _parent: DDiagramCanvasEditorSnapParent;\n\tprotected _controller: ESnapper;\n\tprotected _container: EShapeContainer;\n\n\tprotected _isDirty: boolean;\n\n\tprotected _grid: DDiagramCanvasEditorSnapGrid;\n\tprotected _gridParentWidth: number;\n\tprotected _gridParentHeight: number;\n\tprotected _gridParentScale: number;\n\tprotected _gridSize: number;\n\n\tprotected _target: DDiagramCanvasEditorSnapTarget;\n\n\tconstructor(\n\t\tparent: DDiagramCanvasEditorSnapParent,\n\t\ttheme: DThemeDiagramCanvasEditorSnap,\n\t\toptions: DDiagramCanvasEditorSnapOptions\n\t) {\n\t\tthis._parent = parent;\n\t\tthis._isDirty = true;\n\n\t\t// Controller\n\t\tconst controller = options.controller;\n\t\tthis._controller = controller;\n\t\tconst onChangeBound = (): void => {\n\t\t\tthis.onChange();\n\t\t};\n\t\tcontroller.grid.on(\"change\", onChangeBound);\n\t\tcontroller.target.on(\"change\", onChangeBound);\n\n\t\t// Container\n\t\tconst container = new EShapeContainer();\n\t\tcontainer.visible = false;\n\t\tthis._container = container;\n\t\tparent.addChildAt(container, parent.children.length - 1);\n\n\t\t// Grid\n\t\tthis._grid = this.toGrid(theme, options.grid);\n\t\tthis._gridParentWidth = parent.width;\n\t\tthis._gridParentHeight = parent.height;\n\t\tthis._gridParentScale = parent.scale.x;\n\t\tthis._gridSize = this.newGridSize();\n\n\t\t// Target\n\t\tthis._target = this.toTarget(theme, options.target);\n\t}\n\n\tprotected toGrid(\n\t\ttheme: DThemeDiagramCanvasEditorSnap,\n\t\toptions?: DDiagramCanvasEditorSnapGridOptions\n\t): DDiagramCanvasEditorSnapGrid {\n\t\tif (options != null) {\n\t\t\treturn {\n\t\t\t\tmajor: this.toGridMajor(theme, options.major),\n\t\t\t\tminor: this.toGridMinor(theme, options.minor),\n\t\t\t\tsize: options.size ?? theme.getSnapGridSize()\n\t\t\t};\n\t\t}\n\t\treturn {\n\t\t\tmajor: this.toGridMajor(theme),\n\t\t\tminor: this.toGridMinor(theme),\n\t\t\tsize: theme.getSnapGridSize()\n\t\t};\n\t}\n\n\tprotected toGridMajor(\n\t\ttheme: DThemeDiagramCanvasEditorSnap,\n\t\toptions?: DDiagramCanvasEditorSnapGridMajorOptions\n\t): DDiagramCanvasEditorSnapGridMajor {\n\t\tif (options != null) {\n\t\t\treturn {\n\t\t\t\tinterval: options.interval ?? theme.getSnapGridMajorInterval(),\n\t\t\t\tcolor: options.color ?? theme.getSnapGridMajorColor(),\n\t\t\t\talpha: options.alpha ?? theme.getSnapGridMajorAlpha(),\n\t\t\t\twidth: options.width ?? theme.getSnapGridMajorWidth(),\n\t\t\t\tstyle: options.style ?? theme.getSnapGridMajorStyle()\n\t\t\t};\n\t\t}\n\t\treturn {\n\t\t\tinterval: theme.getSnapGridMajorInterval(),\n\t\t\tcolor: theme.getSnapGridMajorColor(),\n\t\t\talpha: theme.getSnapGridMajorAlpha(),\n\t\t\twidth: theme.getSnapGridMajorWidth(),\n\t\t\tstyle: theme.getSnapGridMajorStyle()\n\t\t};\n\t}\n\n\tprotected toGridMinor(\n\t\ttheme: DThemeDiagramCanvasEditorSnap,\n\t\toptions?: DDiagramCanvasEditorSnapGridMinorOptions\n\t): DDiagramCanvasEditorSnapGridMinor {\n\t\tif (options != null) {\n\t\t\treturn {\n\t\t\t\tcolor: options.color ?? theme.getSnapGridMinorColor(),\n\t\t\t\talpha: options.alpha ?? theme.getSnapGridMinorAlpha(),\n\t\t\t\twidth: options.width ?? theme.getSnapGridMinorWidth(),\n\t\t\t\tstyle: options.style ?? theme.getSnapGridMinorStyle()\n\t\t\t};\n\t\t}\n\t\treturn {\n\t\t\tcolor: theme.getSnapGridMinorColor(),\n\t\t\talpha: theme.getSnapGridMinorAlpha(),\n\t\t\twidth: theme.getSnapGridMinorWidth(),\n\t\t\tstyle: theme.getSnapGridMinorStyle()\n\t\t};\n\t}\n\n\tprotected toTarget(\n\t\ttheme: DThemeDiagramCanvasEditorSnap,\n\t\toptions?: DDiagramCanvasEditorSnapTargetOptions\n\t): DDiagramCanvasEditorSnapTarget {\n\t\tif (options != null) {\n\t\t\treturn {\n\t\t\t\tcolor: options.color ?? theme.getSnapTargetColor(),\n\t\t\t\talpha: options.alpha ?? theme.getSnapTargetAlpha(),\n\t\t\t\twidth: options.width ?? theme.getSnapTargetWidth(),\n\t\t\t\tstyle: options.style ?? theme.getSnapTargetStyle()\n\t\t\t};\n\t\t}\n\t\treturn {\n\t\t\tcolor: theme.getSnapTargetColor(),\n\t\t\talpha: theme.getSnapTargetAlpha(),\n\t\t\twidth: theme.getSnapTargetWidth(),\n\t\t\tstyle: theme.getSnapTargetStyle()\n\t\t};\n\t}\n\n\tprotected onChange(): void {\n\t\tthis._isDirty = true;\n\t\tDApplications.update(this._parent);\n\t}\n\n\tget container(): EShapeContainer {\n\t\treturn this._container;\n\t}\n\n\tserialize(): DDiagramSerializedSnap {\n\t\treturn this._controller.serialize();\n\t}\n\n\tonResize(newWidth: number, newHeight: number, oldWidth: number, oldHeight: number): void {\n\t\tthis._gridParentWidth = newWidth;\n\t\tthis._gridParentHeight = newHeight;\n\t\tthis.updateGridSize();\n\t}\n\n\tonScale(newX: number, newY: number, oldX: number, oldY: number): void {\n\t\tthis._gridParentScale = newX;\n\t\tthis.updateGridSize();\n\t}\n\n\tprotected updateGridSize(): void {\n\t\tconst gridSize = this.newGridSize();\n\t\tif (this._gridSize !== gridSize) {\n\t\t\tthis._gridSize = gridSize;\n\t\t\tthis._isDirty = true;\n\t\t}\n\t}\n\n\tprotected newGridSize(): number {\n\t\treturn this._grid.size(\n\t\t\tthis._controller.grid.size,\n\t\t\tthis._gridParentWidth,\n\t\t\tthis._gridParentHeight,\n\t\t\tthis._gridParentScale\n\t\t);\n\t}\n\n\tonRender(): void {\n\t\tif (this._isDirty) {\n\t\t\tthis._isDirty = false;\n\t\t\tthis.updateAll();\n\t\t}\n\t}\n\n\tprotected updateAll(): void {\n\t\tconst container = this._container;\n\t\tconst controller = this._controller;\n\n\t\tconst isGridVisible = controller.grid.visible;\n\t\tconst isTargetVisible = controller.target.visible;\n\t\tif (isGridVisible || isTargetVisible) {\n\t\t\tconst w = this._gridParentWidth;\n\t\t\tconst h = this._gridParentHeight;\n\t\t\tconst wh = 0.5 * w;\n\t\t\tconst hh = 0.5 * h;\n\t\t\tconst TOP = EShapeBarPosition.TOP;\n\t\t\tconst LEFT = EShapeBarPosition.LEFT;\n\n\t\t\tconst shapes = container.children as EShapeBar[];\n\t\t\tlet index = 0;\n\n\t\t\t// Grid\n\t\t\tif (isGridVisible) {\n\t\t\t\tconst grid = this._grid;\n\t\t\t\tconst major = grid.major;\n\t\t\t\tconst minor = grid.minor;\n\t\t\t\tconst interval = major.interval;\n\t\t\t\tconst size = this._gridSize;\n\t\t\t\tfor (let x = size, ix = 1; x < w; x += size, ix += 1, index += 1) {\n\t\t\t\t\tconst style = ix % interval === 0 ? major : minor;\n\t\t\t\t\tthis.update(container, shapes, index, x, hh, TOP, w, h, style);\n\t\t\t\t}\n\t\t\t\tfor (let y = size, iy = 1; y < h; y += size, iy += 1, index += 1) {\n\t\t\t\t\tconst style = iy % interval === 0 ? major : minor;\n\t\t\t\t\tthis.update(container, shapes, index, wh, y, LEFT, w, h, style);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Target\n\t\t\tif (isTargetVisible) {\n\t\t\t\tconst values = controller.target.values;\n\t\t\t\tconst target = this._target;\n\t\t\t\tfor (let i = 0, imax = values.length; i < imax; i += 1, index += 1) {\n\t\t\t\t\tconst value = values[i];\n\t\t\t\t\tconst position = value.position;\n\t\t\t\t\tif (value.type === ESnapperTargetValueType.VERTICAL) {\n\t\t\t\t\t\tthis.update(container, shapes, index, position, hh, TOP, w, h, target);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.update(container, shapes, index, wh, position, LEFT, w, h, target);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tfor (let i = index, imax = shapes.length; i < imax; ++i) {\n\t\t\t\tshapes[i].visible = false;\n\t\t\t}\n\n\t\t\tcontainer.visible = true;\n\t\t} else {\n\t\t\tcontainer.visible = false;\n\t\t}\n\t}\n\n\tprotected update(\n\t\tcontainer: EShapeContainer,\n\t\tshapes: EShapeBar[],\n\t\tindex: number,\n\t\tx: number,\n\t\ty: number,\n\t\tposition: EShapeBarPosition,\n\t\tw: number,\n\t\th: number,\n\t\tstyle:\n\t\t\t| DDiagramCanvasEditorSnapGridMajor\n\t\t\t| DDiagramCanvasEditorSnapGridMinor\n\t\t\t| DDiagramCanvasEditorSnapTarget\n\t): void {\n\t\tlet shape = null;\n\t\tif (index < shapes.length) {\n\t\t\tshape = shapes[index];\n\t\t\tshape.lock(EShapeLockPart.UPLOADED);\n\t\t\tshape.points.position = position;\n\t\t\tshape.transform.position.set(x, y);\n\t\t\tshape.stroke.set(\n\t\t\t\ttrue,\n\t\t\t\tstyle.color,\n\t\t\t\tstyle.alpha,\n\t\t\t\tstyle.width,\n\t\t\t\tundefined,\n\t\t\t\tundefined,\n\t\t\t\tstyle.style\n\t\t\t);\n\t\t\tshape.size.set(w, h);\n\t\t\tshape.visible = true;\n\t\t\tshape.unlock(EShapeLockPart.UPLOADED, true);\n\t\t} else {\n\t\t\tshape = new EShapeBar();\n\t\t\tshape.lock(EShapeLockPart.UPLOADED);\n\t\t\tshape.points.position = position;\n\t\t\tshape.transform.position.set(x, y);\n\t\t\tshape.stroke.set(\n\t\t\t\ttrue,\n\t\t\t\tstyle.color,\n\t\t\t\tstyle.alpha,\n\t\t\t\tstyle.width,\n\t\t\t\tundefined,\n\t\t\t\tundefined,\n\t\t\t\tstyle.style\n\t\t\t);\n\t\t\tshape.size.set(w, h);\n\t\t\tshape.visible = true;\n\t\t\tshape.unlock(EShapeLockPart.UPLOADED, true);\n\t\t\tshape.attach(container);\n\t\t}\n\t}\n}\n"]}
@@ -6,9 +6,21 @@ import { __extends } from "tslib";
6
6
  import { EShapeStrokeStyle } from "../../shape/e-shape-stroke-style";
7
7
  import { DThemeDarkConstants } from "./d-theme-dark-constants";
8
8
  import { DThemeDarkDiagramCanvasBase } from "./d-theme-dark-diagram-canvas-base";
9
- var toGridSize = function (grid, width, height) {
9
+ var toGridScale = function (scale) {
10
+ if (scale <= 0 || 1 <= scale) {
11
+ return 1;
12
+ }
13
+ var target = 1 / scale;
14
+ var result = 1;
15
+ while (result < target && result < Number.MAX_SAFE_INTEGER) {
16
+ result <<= 1;
17
+ }
18
+ return result;
19
+ };
20
+ var toGridSize = function (grid, width, height, scale) {
10
21
  var canvas = Math.max(width, height);
11
22
  if (0 < grid) {
23
+ grid *= toGridScale(scale);
12
24
  var minimum = canvas / 1000;
13
25
  for (var i = 0; i < 10 && grid < minimum; ++i) {
14
26
  grid *= 10;
@@ -64,9 +76,6 @@ var DThemeDarkDiagramCanvasEditor = /** @class */ (function (_super) {
64
76
  DThemeDarkDiagramCanvasEditor.prototype.getSnapGridSize = function () {
65
77
  return toGridSize;
66
78
  };
67
- DThemeDarkDiagramCanvasEditor.prototype.isSnapGridAdaptive = function () {
68
- return true;
69
- };
70
79
  DThemeDarkDiagramCanvasEditor.prototype.getSnapTargetColor = function () {
71
80
  return DThemeDarkConstants.HIGHLIGHT_COLOR;
72
81
  };
@@ -1 +1 @@
1
- {"version":3,"file":"d-theme-dark-diagram-canvas-editor.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/dark/d-theme-dark-diagram-canvas-editor.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAKH,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,2BAA2B,EAAE,MAAM,oCAAoC,CAAC;AAEjF,IAAM,UAAU,GAAG,UAAC,IAAY,EAAE,KAAa,EAAE,MAAc;IAC9D,IAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACvC,IAAI,CAAC,GAAG,IAAI,EAAE;QACb,IAAM,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC;QAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,IAAI,GAAG,OAAO,EAAE,EAAE,CAAC,EAAE;YAC9C,IAAI,IAAI,EAAE,CAAC;SACX;QACD,IAAI,OAAO,IAAI,IAAI,EAAE;YACpB,OAAO,IAAI,CAAC;SACZ;KACD;IACD,OAAO,MAAM,CAAC;AACf,CAAC,CAAC;AAEF;IACS,iDAA2B;IADpC;;IA2EA,CAAC;IAvES,iDAAS,GAAlB;QACC,OAAO,KAAK,CAAC;IACd,CAAC;IAEQ,2DAAmB,GAA5B;QACC,OAAO,IAAI,CAAC;IACb,CAAC;IAEQ,uDAAe,GAAxB,UAAyB,KAAoB;QAC5C,OAAO,IAAI,CAAC;IACb,CAAC;IAED,gEAAwB,GAAxB;QACC,OAAO,EAAE,CAAC;IACX,CAAC;IAED,6DAAqB,GAArB;QACC,OAAO,QAAQ,CAAC;IACjB,CAAC;IAED,6DAAqB,GAArB;QACC,OAAO,GAAG,CAAC;IACZ,CAAC;IAED,6DAAqB,GAArB;;QACC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,MAAA,MAAM,CAAC,gBAAgB,mCAAI,CAAC,CAAC,CAAC,CAAC;IACxD,CAAC;IAED,6DAAqB,GAArB;QACC,OAAO,iBAAiB,CAAC,MAAM,GAAG,iBAAiB,CAAC,WAAW,CAAC;IACjE,CAAC;IAED,6DAAqB,GAArB;QACC,OAAO,IAAI,CAAC,qBAAqB,EAAE,CAAC;IACrC,CAAC;IAED,6DAAqB,GAArB;QACC,OAAO,KAAK,CAAC;IACd,CAAC;IAED,6DAAqB,GAArB;QACC,OAAO,IAAI,CAAC,qBAAqB,EAAE,CAAC;IACrC,CAAC;IAED,6DAAqB,GAArB;QACC,OAAO,IAAI,CAAC,qBAAqB,EAAE,CAAC;IACrC,CAAC;IAED,uDAAe,GAAf;QACC,OAAO,UAAU,CAAC;IACnB,CAAC;IAED,0DAAkB,GAAlB;QACC,OAAO,IAAI,CAAC;IACb,CAAC;IAED,0DAAkB,GAAlB;QACC,OAAO,mBAAmB,CAAC,eAAe,CAAC;IAC5C,CAAC;IAED,0DAAkB,GAAlB;QACC,OAAO,GAAG,CAAC;IACZ,CAAC;IAED,0DAAkB,GAAlB;QACC,OAAO,IAAI,CAAC,qBAAqB,EAAE,CAAC;IACrC,CAAC;IAED,0DAAkB,GAAlB;QACC,OAAO,IAAI,CAAC,qBAAqB,EAAE,CAAC;IACrC,CAAC;IACF,oCAAC;AAAD,CAAC,AA3ED,CACS,2BAA2B,GA0EnC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DBaseStateSet } from \"../../d-base-state-set\";\nimport { DThemeDiagramCanvasEditor } from \"../../d-diagram-canvas-editor\";\nimport { DDiagramCanvasEditorSnapGridSize } from \"../../d-diagram-canvas-editor-snap\";\nimport { EShapeStrokeStyle } from \"../../shape/e-shape-stroke-style\";\nimport { DThemeDarkConstants } from \"./d-theme-dark-constants\";\nimport { DThemeDarkDiagramCanvasBase } from \"./d-theme-dark-diagram-canvas-base\";\n\nconst toGridSize = (grid: number, width: number, height: number): number => {\n\tconst canvas = Math.max(width, height);\n\tif (0 < grid) {\n\t\tconst minimum = canvas / 1000;\n\t\tfor (let i = 0; i < 10 && grid < minimum; ++i) {\n\t\t\tgrid *= 10;\n\t\t}\n\t\tif (minimum <= grid) {\n\t\t\treturn grid;\n\t\t}\n\t}\n\treturn canvas;\n};\n\nexport class DThemeDarkDiagramCanvasEditor\n\textends DThemeDarkDiagramCanvasBase\n\timplements DThemeDiagramCanvasEditor\n{\n\toverride isAmbient(): boolean {\n\t\treturn false;\n\t}\n\n\toverride getLocalBoundsLimit(): number {\n\t\treturn 1000;\n\t}\n\n\toverride getOutlineColor(state: DBaseStateSet): number | null {\n\t\treturn null;\n\t}\n\n\tgetSnapGridMajorInterval(): number {\n\t\treturn 10;\n\t}\n\n\tgetSnapGridMajorColor(): number {\n\t\treturn 0x999999;\n\t}\n\n\tgetSnapGridMajorAlpha(): number {\n\t\treturn 0.5;\n\t}\n\n\tgetSnapGridMajorWidth(): number {\n\t\treturn Math.max(1, 2 / (window.devicePixelRatio ?? 1));\n\t}\n\n\tgetSnapGridMajorStyle(): EShapeStrokeStyle {\n\t\treturn EShapeStrokeStyle.DASHED | EShapeStrokeStyle.NON_SCALING;\n\t}\n\n\tgetSnapGridMinorColor(): number {\n\t\treturn this.getSnapGridMajorColor();\n\t}\n\n\tgetSnapGridMinorAlpha(): number {\n\t\treturn 0.125;\n\t}\n\n\tgetSnapGridMinorWidth(): number {\n\t\treturn this.getSnapGridMajorWidth();\n\t}\n\n\tgetSnapGridMinorStyle(): EShapeStrokeStyle {\n\t\treturn this.getSnapGridMajorStyle();\n\t}\n\n\tgetSnapGridSize(): DDiagramCanvasEditorSnapGridSize {\n\t\treturn toGridSize;\n\t}\n\n\tisSnapGridAdaptive(): boolean {\n\t\treturn true;\n\t}\n\n\tgetSnapTargetColor(): number {\n\t\treturn DThemeDarkConstants.HIGHLIGHT_COLOR;\n\t}\n\n\tgetSnapTargetAlpha(): number {\n\t\treturn 1.0;\n\t}\n\n\tgetSnapTargetWidth(): number {\n\t\treturn this.getSnapGridMajorWidth();\n\t}\n\n\tgetSnapTargetStyle(): EShapeStrokeStyle {\n\t\treturn this.getSnapGridMajorStyle();\n\t}\n}\n"]}
1
+ {"version":3,"file":"d-theme-dark-diagram-canvas-editor.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/dark/d-theme-dark-diagram-canvas-editor.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DBaseStateSet } from \"../../d-base-state-set\";\nimport { DThemeDiagramCanvasEditor } from \"../../d-diagram-canvas-editor\";\nimport { DDiagramCanvasEditorSnapGridSize } from \"../../d-diagram-canvas-editor-snap\";\nimport { EShapeStrokeStyle } from \"../../shape/e-shape-stroke-style\";\nimport { DThemeDarkConstants } from \"./d-theme-dark-constants\";\nimport { DThemeDarkDiagramCanvasBase } from \"./d-theme-dark-diagram-canvas-base\";\n\nconst toGridScale = (scale: number): number => {\n\tif (scale <= 0 || 1 <= scale) {\n\t\treturn 1;\n\t}\n\tconst target = 1 / scale;\n\tlet result = 1;\n\twhile (result < target && result < Number.MAX_SAFE_INTEGER) {\n\t\tresult <<= 1;\n\t}\n\treturn result;\n};\n\nconst toGridSize = (grid: number, width: number, height: number, scale: number): number => {\n\tconst canvas = Math.max(width, height);\n\tif (0 < grid) {\n\t\tgrid *= toGridScale(scale);\n\t\tconst minimum = canvas / 1000;\n\t\tfor (let i = 0; i < 10 && grid < minimum; ++i) {\n\t\t\tgrid *= 10;\n\t\t}\n\t\tif (minimum <= grid) {\n\t\t\treturn grid;\n\t\t}\n\t}\n\treturn canvas;\n};\n\nexport class DThemeDarkDiagramCanvasEditor\n\textends DThemeDarkDiagramCanvasBase\n\timplements DThemeDiagramCanvasEditor\n{\n\toverride isAmbient(): boolean {\n\t\treturn false;\n\t}\n\n\toverride getLocalBoundsLimit(): number {\n\t\treturn 1000;\n\t}\n\n\toverride getOutlineColor(state: DBaseStateSet): number | null {\n\t\treturn null;\n\t}\n\n\tgetSnapGridMajorInterval(): number {\n\t\treturn 10;\n\t}\n\n\tgetSnapGridMajorColor(): number {\n\t\treturn 0x999999;\n\t}\n\n\tgetSnapGridMajorAlpha(): number {\n\t\treturn 0.5;\n\t}\n\n\tgetSnapGridMajorWidth(): number {\n\t\treturn Math.max(1, 2 / (window.devicePixelRatio ?? 1));\n\t}\n\n\tgetSnapGridMajorStyle(): EShapeStrokeStyle {\n\t\treturn EShapeStrokeStyle.DASHED | EShapeStrokeStyle.NON_SCALING;\n\t}\n\n\tgetSnapGridMinorColor(): number {\n\t\treturn this.getSnapGridMajorColor();\n\t}\n\n\tgetSnapGridMinorAlpha(): number {\n\t\treturn 0.125;\n\t}\n\n\tgetSnapGridMinorWidth(): number {\n\t\treturn this.getSnapGridMajorWidth();\n\t}\n\n\tgetSnapGridMinorStyle(): EShapeStrokeStyle {\n\t\treturn this.getSnapGridMajorStyle();\n\t}\n\n\tgetSnapGridSize(): DDiagramCanvasEditorSnapGridSize {\n\t\treturn toGridSize;\n\t}\n\n\tgetSnapTargetColor(): number {\n\t\treturn DThemeDarkConstants.HIGHLIGHT_COLOR;\n\t}\n\n\tgetSnapTargetAlpha(): number {\n\t\treturn 1.0;\n\t}\n\n\tgetSnapTargetWidth(): number {\n\t\treturn this.getSnapGridMajorWidth();\n\t}\n\n\tgetSnapTargetStyle(): EShapeStrokeStyle {\n\t\treturn this.getSnapGridMajorStyle();\n\t}\n}\n"]}
@@ -6,9 +6,21 @@ import { __extends } from "tslib";
6
6
  import { EShapeStrokeStyle } from "../../shape/e-shape-stroke-style";
7
7
  import { DThemeWhiteConstants } from "./d-theme-white-constants";
8
8
  import { DThemeWhiteDiagramCanvasBase } from "./d-theme-white-diagram-canvas-base";
9
- var toGridSize = function (grid, width, height) {
9
+ var toGridScale = function (scale) {
10
+ if (scale <= 0 || 1 <= scale) {
11
+ return 1;
12
+ }
13
+ var target = 1 / scale;
14
+ var result = 1;
15
+ while (result < target && result < Number.MAX_SAFE_INTEGER) {
16
+ result <<= 1;
17
+ }
18
+ return result;
19
+ };
20
+ var toGridSize = function (grid, width, height, scale) {
10
21
  var canvas = Math.max(width, height);
11
22
  if (0 < grid) {
23
+ grid *= toGridScale(scale);
12
24
  var minimum = canvas / 1000;
13
25
  for (var i = 0; i < 10 && grid < minimum; ++i) {
14
26
  grid *= 10;
@@ -64,9 +76,6 @@ var DThemeWhiteDiagramCanvasEditor = /** @class */ (function (_super) {
64
76
  DThemeWhiteDiagramCanvasEditor.prototype.getSnapGridSize = function () {
65
77
  return toGridSize;
66
78
  };
67
- DThemeWhiteDiagramCanvasEditor.prototype.isSnapGridAdaptive = function () {
68
- return true;
69
- };
70
79
  DThemeWhiteDiagramCanvasEditor.prototype.getSnapTargetColor = function () {
71
80
  return DThemeWhiteConstants.HIGHLIGHT_COLOR;
72
81
  };
@@ -1 +1 @@
1
- {"version":3,"file":"d-theme-white-diagram-canvas-editor.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/white/d-theme-white-diagram-canvas-editor.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAKH,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,4BAA4B,EAAE,MAAM,qCAAqC,CAAC;AAEnF,IAAM,UAAU,GAAG,UAAC,IAAY,EAAE,KAAa,EAAE,MAAc;IAC9D,IAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACvC,IAAI,CAAC,GAAG,IAAI,EAAE;QACb,IAAM,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC;QAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,IAAI,GAAG,OAAO,EAAE,EAAE,CAAC,EAAE;YAC9C,IAAI,IAAI,EAAE,CAAC;SACX;QACD,IAAI,OAAO,IAAI,IAAI,EAAE;YACpB,OAAO,IAAI,CAAC;SACZ;KACD;IACD,OAAO,MAAM,CAAC;AACf,CAAC,CAAC;AAEF;IACS,kDAA4B;IADrC;;IA2EA,CAAC;IAvES,kDAAS,GAAlB;QACC,OAAO,KAAK,CAAC;IACd,CAAC;IAEQ,4DAAmB,GAA5B;QACC,OAAO,IAAI,CAAC;IACb,CAAC;IAEQ,wDAAe,GAAxB,UAAyB,KAAoB;QAC5C,OAAO,IAAI,CAAC;IACb,CAAC;IAED,iEAAwB,GAAxB;QACC,OAAO,EAAE,CAAC;IACX,CAAC;IAED,8DAAqB,GAArB;QACC,OAAO,QAAQ,CAAC;IACjB,CAAC;IAED,8DAAqB,GAArB;QACC,OAAO,GAAG,CAAC;IACZ,CAAC;IAED,8DAAqB,GAArB;;QACC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,MAAA,MAAM,CAAC,gBAAgB,mCAAI,CAAC,CAAC,CAAC,CAAC;IACxD,CAAC;IAED,8DAAqB,GAArB;QACC,OAAO,iBAAiB,CAAC,MAAM,GAAG,iBAAiB,CAAC,WAAW,CAAC;IACjE,CAAC;IAED,8DAAqB,GAArB;QACC,OAAO,IAAI,CAAC,qBAAqB,EAAE,CAAC;IACrC,CAAC;IAED,8DAAqB,GAArB;QACC,OAAO,KAAK,CAAC;IACd,CAAC;IAED,8DAAqB,GAArB;QACC,OAAO,IAAI,CAAC,qBAAqB,EAAE,CAAC;IACrC,CAAC;IAED,8DAAqB,GAArB;QACC,OAAO,IAAI,CAAC,qBAAqB,EAAE,CAAC;IACrC,CAAC;IAED,wDAAe,GAAf;QACC,OAAO,UAAU,CAAC;IACnB,CAAC;IAED,2DAAkB,GAAlB;QACC,OAAO,IAAI,CAAC;IACb,CAAC;IAED,2DAAkB,GAAlB;QACC,OAAO,oBAAoB,CAAC,eAAe,CAAC;IAC7C,CAAC;IAED,2DAAkB,GAAlB;QACC,OAAO,GAAG,CAAC;IACZ,CAAC;IAED,2DAAkB,GAAlB;QACC,OAAO,IAAI,CAAC,qBAAqB,EAAE,CAAC;IACrC,CAAC;IAED,2DAAkB,GAAlB;QACC,OAAO,IAAI,CAAC,qBAAqB,EAAE,CAAC;IACrC,CAAC;IACF,qCAAC;AAAD,CAAC,AA3ED,CACS,4BAA4B,GA0EpC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DBaseStateSet } from \"../../d-base-state-set\";\nimport { DThemeDiagramCanvasEditor } from \"../../d-diagram-canvas-editor\";\nimport { DDiagramCanvasEditorSnapGridSize } from \"../../d-diagram-canvas-editor-snap\";\nimport { EShapeStrokeStyle } from \"../../shape/e-shape-stroke-style\";\nimport { DThemeWhiteConstants } from \"./d-theme-white-constants\";\nimport { DThemeWhiteDiagramCanvasBase } from \"./d-theme-white-diagram-canvas-base\";\n\nconst toGridSize = (grid: number, width: number, height: number): number => {\n\tconst canvas = Math.max(width, height);\n\tif (0 < grid) {\n\t\tconst minimum = canvas / 1000;\n\t\tfor (let i = 0; i < 10 && grid < minimum; ++i) {\n\t\t\tgrid *= 10;\n\t\t}\n\t\tif (minimum <= grid) {\n\t\t\treturn grid;\n\t\t}\n\t}\n\treturn canvas;\n};\n\nexport class DThemeWhiteDiagramCanvasEditor\n\textends DThemeWhiteDiagramCanvasBase\n\timplements DThemeDiagramCanvasEditor\n{\n\toverride isAmbient(): boolean {\n\t\treturn false;\n\t}\n\n\toverride getLocalBoundsLimit(): number {\n\t\treturn 1000;\n\t}\n\n\toverride getOutlineColor(state: DBaseStateSet): number | null {\n\t\treturn null;\n\t}\n\n\tgetSnapGridMajorInterval(): number {\n\t\treturn 10;\n\t}\n\n\tgetSnapGridMajorColor(): number {\n\t\treturn 0x999999;\n\t}\n\n\tgetSnapGridMajorAlpha(): number {\n\t\treturn 0.5;\n\t}\n\n\tgetSnapGridMajorWidth(): number {\n\t\treturn Math.max(1, 2 / (window.devicePixelRatio ?? 1));\n\t}\n\n\tgetSnapGridMajorStyle(): EShapeStrokeStyle {\n\t\treturn EShapeStrokeStyle.DASHED | EShapeStrokeStyle.NON_SCALING;\n\t}\n\n\tgetSnapGridMinorColor(): number {\n\t\treturn this.getSnapGridMajorColor();\n\t}\n\n\tgetSnapGridMinorAlpha(): number {\n\t\treturn 0.125;\n\t}\n\n\tgetSnapGridMinorWidth(): number {\n\t\treturn this.getSnapGridMajorWidth();\n\t}\n\n\tgetSnapGridMinorStyle(): EShapeStrokeStyle {\n\t\treturn this.getSnapGridMajorStyle();\n\t}\n\n\tgetSnapGridSize(): DDiagramCanvasEditorSnapGridSize {\n\t\treturn toGridSize;\n\t}\n\n\tisSnapGridAdaptive(): boolean {\n\t\treturn true;\n\t}\n\n\tgetSnapTargetColor(): number {\n\t\treturn DThemeWhiteConstants.HIGHLIGHT_COLOR;\n\t}\n\n\tgetSnapTargetAlpha(): number {\n\t\treturn 1.0;\n\t}\n\n\tgetSnapTargetWidth(): number {\n\t\treturn this.getSnapGridMajorWidth();\n\t}\n\n\tgetSnapTargetStyle(): EShapeStrokeStyle {\n\t\treturn this.getSnapGridMajorStyle();\n\t}\n}\n"]}
1
+ {"version":3,"file":"d-theme-white-diagram-canvas-editor.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/theme/white/d-theme-white-diagram-canvas-editor.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DBaseStateSet } from \"../../d-base-state-set\";\nimport { DThemeDiagramCanvasEditor } from \"../../d-diagram-canvas-editor\";\nimport { DDiagramCanvasEditorSnapGridSize } from \"../../d-diagram-canvas-editor-snap\";\nimport { EShapeStrokeStyle } from \"../../shape/e-shape-stroke-style\";\nimport { DThemeWhiteConstants } from \"./d-theme-white-constants\";\nimport { DThemeWhiteDiagramCanvasBase } from \"./d-theme-white-diagram-canvas-base\";\n\nconst toGridScale = (scale: number): number => {\n\tif (scale <= 0 || 1 <= scale) {\n\t\treturn 1;\n\t}\n\tconst target = 1 / scale;\n\tlet result = 1;\n\twhile (result < target && result < Number.MAX_SAFE_INTEGER) {\n\t\tresult <<= 1;\n\t}\n\treturn result;\n};\n\nconst toGridSize = (grid: number, width: number, height: number, scale: number): number => {\n\tconst canvas = Math.max(width, height);\n\tif (0 < grid) {\n\t\tgrid *= toGridScale(scale);\n\t\tconst minimum = canvas / 1000;\n\t\tfor (let i = 0; i < 10 && grid < minimum; ++i) {\n\t\t\tgrid *= 10;\n\t\t}\n\t\tif (minimum <= grid) {\n\t\t\treturn grid;\n\t\t}\n\t}\n\treturn canvas;\n};\n\nexport class DThemeWhiteDiagramCanvasEditor\n\textends DThemeWhiteDiagramCanvasBase\n\timplements DThemeDiagramCanvasEditor\n{\n\toverride isAmbient(): boolean {\n\t\treturn false;\n\t}\n\n\toverride getLocalBoundsLimit(): number {\n\t\treturn 1000;\n\t}\n\n\toverride getOutlineColor(state: DBaseStateSet): number | null {\n\t\treturn null;\n\t}\n\n\tgetSnapGridMajorInterval(): number {\n\t\treturn 10;\n\t}\n\n\tgetSnapGridMajorColor(): number {\n\t\treturn 0x999999;\n\t}\n\n\tgetSnapGridMajorAlpha(): number {\n\t\treturn 0.5;\n\t}\n\n\tgetSnapGridMajorWidth(): number {\n\t\treturn Math.max(1, 2 / (window.devicePixelRatio ?? 1));\n\t}\n\n\tgetSnapGridMajorStyle(): EShapeStrokeStyle {\n\t\treturn EShapeStrokeStyle.DASHED | EShapeStrokeStyle.NON_SCALING;\n\t}\n\n\tgetSnapGridMinorColor(): number {\n\t\treturn this.getSnapGridMajorColor();\n\t}\n\n\tgetSnapGridMinorAlpha(): number {\n\t\treturn 0.125;\n\t}\n\n\tgetSnapGridMinorWidth(): number {\n\t\treturn this.getSnapGridMajorWidth();\n\t}\n\n\tgetSnapGridMinorStyle(): EShapeStrokeStyle {\n\t\treturn this.getSnapGridMajorStyle();\n\t}\n\n\tgetSnapGridSize(): DDiagramCanvasEditorSnapGridSize {\n\t\treturn toGridSize;\n\t}\n\n\tgetSnapTargetColor(): number {\n\t\treturn DThemeWhiteConstants.HIGHLIGHT_COLOR;\n\t}\n\n\tgetSnapTargetAlpha(): number {\n\t\treturn 1.0;\n\t}\n\n\tgetSnapTargetWidth(): number {\n\t\treturn this.getSnapGridMajorWidth();\n\t}\n\n\tgetSnapTargetStyle(): EShapeStrokeStyle {\n\t\treturn this.getSnapGridMajorStyle();\n\t}\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  /*
2
- Winter Cardinal UI v0.432.0
2
+ Winter Cardinal UI v0.433.0
3
3
  Copyright (C) 2019 Toshiba Corporation
4
4
  SPDX-License-Identifier: Apache-2.0
5
5
 
@@ -7233,9 +7233,21 @@
7233
7233
  * Copyright (C) 2019 Toshiba Corporation
7234
7234
  * SPDX-License-Identifier: Apache-2.0
7235
7235
  */
7236
- var toGridSize = function (grid, width, height) {
7236
+ var toGridScale = function (scale) {
7237
+ if (scale <= 0 || 1 <= scale) {
7238
+ return 1;
7239
+ }
7240
+ var target = 1 / scale;
7241
+ var result = 1;
7242
+ while (result < target && result < Number.MAX_SAFE_INTEGER) {
7243
+ result <<= 1;
7244
+ }
7245
+ return result;
7246
+ };
7247
+ var toGridSize = function (grid, width, height, scale) {
7237
7248
  var canvas = Math.max(width, height);
7238
7249
  if (0 < grid) {
7250
+ grid *= toGridScale(scale);
7239
7251
  var minimum = canvas / 1000;
7240
7252
  for (var i = 0; i < 10 && grid < minimum; ++i) {
7241
7253
  grid *= 10;
@@ -7291,9 +7303,6 @@
7291
7303
  DThemeDarkDiagramCanvasEditor.prototype.getSnapGridSize = function () {
7292
7304
  return toGridSize;
7293
7305
  };
7294
- DThemeDarkDiagramCanvasEditor.prototype.isSnapGridAdaptive = function () {
7295
- return true;
7296
- };
7297
7306
  DThemeDarkDiagramCanvasEditor.prototype.getSnapTargetColor = function () {
7298
7307
  return DThemeDarkConstants.HIGHLIGHT_COLOR;
7299
7308
  };