@wcardinal/wcardinal-ui 0.267.0 → 0.268.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.
@@ -13,8 +13,11 @@ export interface EThemeSnapperGrid {
13
13
  }
14
14
  export declare class ESnapperGrid extends utils.EventEmitter {
15
15
  protected _isEnabled: boolean;
16
+ protected _isEnabledDefault: boolean;
16
17
  protected _size: number;
18
+ protected _sizeDefault: number;
17
19
  protected _isVisible: boolean;
20
+ protected _isVisibleDefault: boolean;
18
21
  constructor(theme: EThemeSnapperGrid, options?: ESnapperGridOptions);
19
22
  get visible(): boolean;
20
23
  set visible(visible: boolean);
@@ -13,7 +13,9 @@ export interface EThemeSnapperTarget {
13
13
  export declare class ESnapperTarget extends utils.EventEmitter {
14
14
  values: ESnapperTargetValue[];
15
15
  protected _isVisible: boolean;
16
+ protected _isVisibleDefault: boolean;
16
17
  protected _isEnabled: boolean;
18
+ protected _isEnabledDefault: boolean;
17
19
  constructor(theme: EThemeSnapperTarget, options?: ESnapperTargetOptions);
18
20
  get enable(): boolean;
19
21
  set enable(enable: boolean);
@@ -53,6 +53,7 @@ export declare class ESnapper extends utils.EventEmitter {
53
53
  protected _workSnapResultY: ESnapperResult;
54
54
  protected _parent: ESnapperParent;
55
55
  protected _isEnabled: boolean;
56
+ protected _isEnabledDefault: boolean;
56
57
  grid: ESnapperGrid;
57
58
  target: ESnapperTarget;
58
59
  constructor(parent: ESnapperParent, theme: EThemeSnapper, options?: ESnapperOptions);
@@ -10,9 +10,12 @@ var ESnapperGrid = /** @class */ (function (_super) {
10
10
  var _this = this;
11
11
  var _a, _b, _c;
12
12
  _this = _super.call(this) || this;
13
- _this._isVisible = (_a = options === null || options === void 0 ? void 0 : options.visible) !== null && _a !== void 0 ? _a : theme.isSnapperGridVisible();
14
- _this._isEnabled = (_b = options === null || options === void 0 ? void 0 : options.enable) !== null && _b !== void 0 ? _b : theme.isSnapperGridEnabled();
15
- _this._size = (_c = options === null || options === void 0 ? void 0 : options.size) !== null && _c !== void 0 ? _c : theme.getSnapperGridSize();
13
+ _this._isVisibleDefault = (_a = options === null || options === void 0 ? void 0 : options.visible) !== null && _a !== void 0 ? _a : theme.isSnapperGridVisible();
14
+ _this._isVisible = _this._isVisibleDefault;
15
+ _this._isEnabledDefault = (_b = options === null || options === void 0 ? void 0 : options.enable) !== null && _b !== void 0 ? _b : theme.isSnapperGridEnabled();
16
+ _this._isEnabled = _this._isEnabledDefault;
17
+ _this._sizeDefault = (_c = options === null || options === void 0 ? void 0 : options.size) !== null && _c !== void 0 ? _c : theme.getSnapperGridSize();
18
+ _this._size = _this._sizeDefault;
16
19
  return _this;
17
20
  }
18
21
  Object.defineProperty(ESnapperGrid.prototype, "visible", {
@@ -61,8 +64,9 @@ var ESnapperGrid = /** @class */ (function (_super) {
61
64
  }
62
65
  };
63
66
  ESnapperGrid.prototype.reset = function () {
64
- this._isEnabled = true;
65
- this._size = 10;
67
+ this._isVisible = this._isVisibleDefault;
68
+ this._isEnabled = this._isEnabledDefault;
69
+ this._size = this._sizeDefault;
66
70
  this.emit("change", this);
67
71
  };
68
72
  ESnapperGrid.prototype.serialize = function () {
@@ -1 +1 @@
1
- {"version":3,"file":"e-snapper-grid.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/snapper/e-snapper-grid.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { utils } from \"pixi.js\";\nimport { DDiagramSerializedSnapGrid } from \"../d-diagram-serialized\";\nimport { ESnapperResult } from \"./e-snapper-result\";\n\nexport interface ESnapperGridOptions {\n\tvisible?: boolean;\n\tenable?: boolean;\n\tsize?: number;\n}\nexport interface EThemeSnapperGrid {\n\tisSnapperGridVisible(): boolean;\n\tisSnapperGridEnabled(): boolean;\n\tgetSnapperGridSize(): number;\n}\n\nexport class ESnapperGrid extends utils.EventEmitter {\n\tprotected _isEnabled: boolean;\n\tprotected _size: number;\n\tprotected _isVisible: boolean;\n\n\tconstructor(theme: EThemeSnapperGrid, options?: ESnapperGridOptions) {\n\t\tsuper();\n\t\tthis._isVisible = options?.visible ?? theme.isSnapperGridVisible();\n\t\tthis._isEnabled = options?.enable ?? theme.isSnapperGridEnabled();\n\t\tthis._size = options?.size ?? theme.getSnapperGridSize();\n\t}\n\n\tget visible(): boolean {\n\t\treturn this._isVisible;\n\t}\n\n\tset visible(visible: boolean) {\n\t\tif (this._isVisible !== visible) {\n\t\t\tthis._isVisible = visible;\n\t\t\tthis.emit(\"change\", this);\n\t\t}\n\t}\n\n\tget enable(): boolean {\n\t\treturn this._isEnabled;\n\t}\n\n\tset enable(enable: boolean) {\n\t\tif (this._isEnabled !== enable) {\n\t\t\tthis._isEnabled = enable;\n\t\t\tthis.emit(\"change\", this);\n\t\t}\n\t}\n\n\tget size(): number {\n\t\treturn this._size;\n\t}\n\n\tset size(size: number) {\n\t\tif (this._size !== size) {\n\t\t\tthis._size = size;\n\t\t\tthis.emit(\"change\", size, this);\n\t\t}\n\t}\n\n\tsnap(value: number, result: ESnapperResult): void {\n\t\tif (this._isEnabled) {\n\t\t\tconst size = this._size;\n\t\t\tresult.set(value, Math.round(value / size) * size);\n\t\t}\n\t}\n\n\treset(): void {\n\t\tthis._isEnabled = true;\n\t\tthis._size = 10;\n\t\tthis.emit(\"change\", this);\n\t}\n\n\tserialize(): DDiagramSerializedSnapGrid {\n\t\treturn [this._isEnabled ? 1 : 0, this._isVisible ? 1 : 0, this._size];\n\t}\n\n\tdeserialize(serialized: DDiagramSerializedSnapGrid): void {\n\t\tthis.enable = !!serialized[0];\n\t\tif (2 in serialized) {\n\t\t\tthis.visible = !!serialized[1];\n\t\t\tthis.size = (serialized as any)[2];\n\t\t} else {\n\t\t\tthis.visible = false;\n\t\t\tthis.size = serialized[1];\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"e-snapper-grid.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/snapper/e-snapper-grid.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { utils } from \"pixi.js\";\nimport { DDiagramSerializedSnapGrid } from \"../d-diagram-serialized\";\nimport { ESnapperResult } from \"./e-snapper-result\";\n\nexport interface ESnapperGridOptions {\n\tvisible?: boolean;\n\tenable?: boolean;\n\tsize?: number;\n}\nexport interface EThemeSnapperGrid {\n\tisSnapperGridVisible(): boolean;\n\tisSnapperGridEnabled(): boolean;\n\tgetSnapperGridSize(): number;\n}\n\nexport class ESnapperGrid extends utils.EventEmitter {\n\tprotected _isEnabled: boolean;\n\tprotected _isEnabledDefault: boolean;\n\tprotected _size: number;\n\tprotected _sizeDefault: number;\n\tprotected _isVisible: boolean;\n\tprotected _isVisibleDefault: boolean;\n\n\tconstructor(theme: EThemeSnapperGrid, options?: ESnapperGridOptions) {\n\t\tsuper();\n\t\tthis._isVisibleDefault = options?.visible ?? theme.isSnapperGridVisible();\n\t\tthis._isVisible = this._isVisibleDefault;\n\t\tthis._isEnabledDefault = options?.enable ?? theme.isSnapperGridEnabled();\n\t\tthis._isEnabled = this._isEnabledDefault;\n\t\tthis._sizeDefault = options?.size ?? theme.getSnapperGridSize();\n\t\tthis._size = this._sizeDefault;\n\t}\n\n\tget visible(): boolean {\n\t\treturn this._isVisible;\n\t}\n\n\tset visible(visible: boolean) {\n\t\tif (this._isVisible !== visible) {\n\t\t\tthis._isVisible = visible;\n\t\t\tthis.emit(\"change\", this);\n\t\t}\n\t}\n\n\tget enable(): boolean {\n\t\treturn this._isEnabled;\n\t}\n\n\tset enable(enable: boolean) {\n\t\tif (this._isEnabled !== enable) {\n\t\t\tthis._isEnabled = enable;\n\t\t\tthis.emit(\"change\", this);\n\t\t}\n\t}\n\n\tget size(): number {\n\t\treturn this._size;\n\t}\n\n\tset size(size: number) {\n\t\tif (this._size !== size) {\n\t\t\tthis._size = size;\n\t\t\tthis.emit(\"change\", size, this);\n\t\t}\n\t}\n\n\tsnap(value: number, result: ESnapperResult): void {\n\t\tif (this._isEnabled) {\n\t\t\tconst size = this._size;\n\t\t\tresult.set(value, Math.round(value / size) * size);\n\t\t}\n\t}\n\n\treset(): void {\n\t\tthis._isVisible = this._isVisibleDefault;\n\t\tthis._isEnabled = this._isEnabledDefault;\n\t\tthis._size = this._sizeDefault;\n\t\tthis.emit(\"change\", this);\n\t}\n\n\tserialize(): DDiagramSerializedSnapGrid {\n\t\treturn [this._isEnabled ? 1 : 0, this._isVisible ? 1 : 0, this._size];\n\t}\n\n\tdeserialize(serialized: DDiagramSerializedSnapGrid): void {\n\t\tthis.enable = !!serialized[0];\n\t\tif (2 in serialized) {\n\t\t\tthis.visible = !!serialized[1];\n\t\t\tthis.size = (serialized as any)[2];\n\t\t} else {\n\t\t\tthis.visible = false;\n\t\t\tthis.size = serialized[1];\n\t\t}\n\t}\n}\n"]}
@@ -12,8 +12,10 @@ var ESnapperTarget = /** @class */ (function (_super) {
12
12
  var _a, _b;
13
13
  _this = _super.call(this) || this;
14
14
  _this.values = [];
15
- _this._isVisible = (_a = options === null || options === void 0 ? void 0 : options.visible) !== null && _a !== void 0 ? _a : theme.isSnapperTargetVisible();
16
- _this._isEnabled = (_b = options === null || options === void 0 ? void 0 : options.enable) !== null && _b !== void 0 ? _b : theme.isSnapperTargetEnabled();
15
+ _this._isVisibleDefault = (_a = options === null || options === void 0 ? void 0 : options.visible) !== null && _a !== void 0 ? _a : theme.isSnapperTargetVisible();
16
+ _this._isVisible = _this._isVisibleDefault;
17
+ _this._isEnabledDefault = (_b = options === null || options === void 0 ? void 0 : options.enable) !== null && _b !== void 0 ? _b : theme.isSnapperTargetEnabled();
18
+ _this._isEnabled = _this._isEnabledDefault;
17
19
  return _this;
18
20
  }
19
21
  Object.defineProperty(ESnapperTarget.prototype, "enable", {
@@ -99,8 +101,8 @@ var ESnapperTarget = /** @class */ (function (_super) {
99
101
  }
100
102
  };
101
103
  ESnapperTarget.prototype.reset = function () {
102
- this._isEnabled = true;
103
- this._isVisible = true;
104
+ this._isEnabled = this._isEnabledDefault;
105
+ this._isVisible = this._isVisibleDefault;
104
106
  this.values.length = 0;
105
107
  this.emit("change", this);
106
108
  };
@@ -1 +1 @@
1
- {"version":3,"file":"e-snapper-target.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/snapper/e-snapper-target.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAMhC,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AAYxF;IAAoC,kCAAkB;IAKrD,wBAAY,KAA0B,EAAE,OAA+B;QAAvE,iBAKC;;gBAJA,iBAAO;QACP,KAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QACjB,KAAI,CAAC,UAAU,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,mCAAI,KAAK,CAAC,sBAAsB,EAAE,CAAC;QACrE,KAAI,CAAC,UAAU,GAAG,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,MAAM,mCAAI,KAAK,CAAC,sBAAsB,EAAE,CAAC;;IACrE,CAAC;IAED,sBAAI,kCAAM;aAAV;YACC,OAAO,IAAI,CAAC,UAAU,CAAC;QACxB,CAAC;aAED,UAAW,MAAe;YACzB,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,EAAE;gBAC/B,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;gBACzB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;aAC1B;QACF,CAAC;;;OAPA;IASD,sBAAI,mCAAO;aAAX;YACC,OAAO,IAAI,CAAC,UAAU,CAAC;QACxB,CAAC;aAED,UAAY,OAAgB;YAC3B,IAAI,IAAI,CAAC,UAAU,KAAK,OAAO,EAAE;gBAChC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC;gBAC1B,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;aAC1B;QACF,CAAC;;;OAPA;IASD,sBAAI,gCAAI;aAAR;YACC,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;QAC3B,CAAC;;;OAAA;IAED,4BAAG,GAAH,UAAI,MAA2B,EAAE,KAAc;QAC9C,IAAI,KAAK,IAAI,IAAI,EAAE;YAClB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;SACrC;aAAM;YACN,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SACzB;QACD,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,+BAAM,GAAN,UAAO,KAAa;QACnB,IAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,IAAI,KAAK,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE;YACxC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YACxB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;SAC1B;IACF,CAAC;IAED,gCAAO,GAAP,UAAQ,KAAa,EAAE,KAA0B;QAChD,IAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,IAAI,CAAC,IAAI,KAAK,IAAI,KAAK,GAAG,MAAM,CAAC,MAAM,EAAE;YACxC,IAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YAC7B,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;YACtB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YAC1B,OAAO,MAAM,CAAC;SACd;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,6BAAI,GAAJ,UAAK,MAAc,EAAE,MAAc;QAClC,IAAI,MAAM,KAAK,MAAM,EAAE;YACtB,IAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAC3B,IAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;YAC9B,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;YAChC,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;YACxB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;SAC1B;IACF,CAAC;IAED,6BAAI,GAAJ,UAAK,EAAU,EAAE,EAAU,EAAE,CAAiB,EAAE,CAAiB;QAChE,IAAI,IAAI,CAAC,UAAU,EAAE;YACpB,IAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,EAAE;gBACpD,IAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;gBACxB,IAAI,KAAK,CAAC,IAAI,KAAK,uBAAuB,CAAC,QAAQ,EAAE;oBACpD,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;iBAC1B;qBAAM;oBACN,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;iBAC1B;aACD;SACD;IACF,CAAC;IAED,8BAAK,GAAL;QACC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QACvB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED,kCAAS,GAAT;QACC,IAAM,OAAO,GAAwC,EAAE,CAAC;QACxD,IAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,EAAE;YACpD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;SACpC;QACD,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IACpE,CAAC;IAED,oCAAW,GAAX,UAAY,UAAwC;QACnD,eAAe;QACf,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAElC,aAAa;QACb,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAElC,SAAS;QACT,IAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAC9B,IAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,EAAE;YACrD,IAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YAC1B,MAAM,CAAC,IAAI,CAAC,IAAI,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAC3D;QACD,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC3B,CAAC;IACF,qBAAC;AAAD,CAAC,AA3HD,CAAoC,KAAK,CAAC,YAAY,GA2HrD","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { utils } from \"pixi.js\";\nimport {\n\tDDiagramSerializedSnapTarget,\n\tDDiagramSerializedSnapTargetValue\n} from \"../d-diagram-serialized\";\nimport { ESnapperResult } from \"./e-snapper-result\";\nimport { ESnapperTargetValue, ESnapperTargetValueType } from \"./e-snapper-target-value\";\n\nexport interface ESnapperTargetOptions {\n\tvisible?: boolean;\n\tenable?: boolean;\n}\n\nexport interface EThemeSnapperTarget {\n\tisSnapperTargetVisible(): boolean;\n\tisSnapperTargetEnabled(): boolean;\n}\n\nexport class ESnapperTarget extends utils.EventEmitter {\n\tvalues: ESnapperTargetValue[];\n\tprotected _isVisible: boolean;\n\tprotected _isEnabled: boolean;\n\n\tconstructor(theme: EThemeSnapperTarget, options?: ESnapperTargetOptions) {\n\t\tsuper();\n\t\tthis.values = [];\n\t\tthis._isVisible = options?.visible ?? theme.isSnapperTargetVisible();\n\t\tthis._isEnabled = options?.enable ?? theme.isSnapperTargetEnabled();\n\t}\n\n\tget enable(): boolean {\n\t\treturn this._isEnabled;\n\t}\n\n\tset enable(enable: boolean) {\n\t\tif (this._isEnabled !== enable) {\n\t\t\tthis._isEnabled = enable;\n\t\t\tthis.emit(\"change\", this);\n\t\t}\n\t}\n\n\tget visible(): boolean {\n\t\treturn this._isVisible;\n\t}\n\n\tset visible(visible: boolean) {\n\t\tif (this._isVisible !== visible) {\n\t\t\tthis._isVisible = visible;\n\t\t\tthis.emit(\"change\", this);\n\t\t}\n\t}\n\n\tget size(): number {\n\t\treturn this.values.length;\n\t}\n\n\tadd(target: ESnapperTargetValue, index?: number): void {\n\t\tif (index != null) {\n\t\t\tthis.values.splice(index, 0, target);\n\t\t} else {\n\t\t\tthis.values.push(target);\n\t\t}\n\t\tthis.emit(\"change\", this);\n\t}\n\n\tremove(index: number): void {\n\t\tconst values = this.values;\n\t\tif (0 <= index && index < values.length) {\n\t\t\tvalues.splice(index, 1);\n\t\t\tthis.emit(\"change\", this);\n\t\t}\n\t}\n\n\treplace(index: number, value: ESnapperTargetValue): ESnapperTargetValue | null {\n\t\tconst values = this.values;\n\t\tif (0 <= index && index < values.length) {\n\t\t\tconst result = values[index];\n\t\t\tvalues[index] = value;\n\t\t\tthis.emit(\"change\", this);\n\t\t\treturn result;\n\t\t}\n\t\treturn null;\n\t}\n\n\tswap(indexA: number, indexB: number): void {\n\t\tif (indexA !== indexB) {\n\t\t\tconst values = this.values;\n\t\t\tconst valueA = values[indexA];\n\t\t\tvalues[indexA] = values[indexB];\n\t\t\tvalues[indexB] = valueA;\n\t\t\tthis.emit(\"change\", this);\n\t\t}\n\t}\n\n\tsnap(px: number, py: number, x: ESnapperResult, y: ESnapperResult): void {\n\t\tif (this._isEnabled) {\n\t\t\tconst values = this.values;\n\t\t\tfor (let i = 0, imax = values.length; i < imax; ++i) {\n\t\t\t\tconst value = values[i];\n\t\t\t\tif (value.type === ESnapperTargetValueType.VERTICAL) {\n\t\t\t\t\tx.set(px, value.position);\n\t\t\t\t} else {\n\t\t\t\t\ty.set(py, value.position);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treset(): void {\n\t\tthis._isEnabled = true;\n\t\tthis._isVisible = true;\n\t\tthis.values.length = 0;\n\t\tthis.emit(\"change\", this);\n\t}\n\n\tserialize(): DDiagramSerializedSnapTarget {\n\t\tconst targets: DDiagramSerializedSnapTargetValue[] = [];\n\t\tconst values = this.values;\n\t\tfor (let i = 0, imax = values.length; i < imax; ++i) {\n\t\t\ttargets.push(values[i].serialize());\n\t\t}\n\t\treturn [this._isEnabled ? 1 : 0, this._isVisible ? 1 : 0, targets];\n\t}\n\n\tdeserialize(serialized: DDiagramSerializedSnapTarget): void {\n\t\t// Availability\n\t\tthis._isEnabled = !!serialized[0];\n\n\t\t// Visibility\n\t\tthis._isVisible = !!serialized[1];\n\n\t\t// Values\n\t\tconst sources = serialized[2];\n\t\tconst values = this.values;\n\t\tvalues.length = 0;\n\t\tfor (let i = 0, imax = sources.length; i < imax; ++i) {\n\t\t\tconst source = sources[i];\n\t\t\tvalues.push(new ESnapperTargetValue(source[0], source[1]));\n\t\t}\n\t\tthis.emit(\"change\", this);\n\t}\n}\n"]}
1
+ {"version":3,"file":"e-snapper-target.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/snapper/e-snapper-target.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { utils } from \"pixi.js\";\nimport {\n\tDDiagramSerializedSnapTarget,\n\tDDiagramSerializedSnapTargetValue\n} from \"../d-diagram-serialized\";\nimport { ESnapperResult } from \"./e-snapper-result\";\nimport { ESnapperTargetValue, ESnapperTargetValueType } from \"./e-snapper-target-value\";\n\nexport interface ESnapperTargetOptions {\n\tvisible?: boolean;\n\tenable?: boolean;\n}\n\nexport interface EThemeSnapperTarget {\n\tisSnapperTargetVisible(): boolean;\n\tisSnapperTargetEnabled(): boolean;\n}\n\nexport class ESnapperTarget extends utils.EventEmitter {\n\tvalues: ESnapperTargetValue[];\n\tprotected _isVisible: boolean;\n\tprotected _isVisibleDefault: boolean;\n\tprotected _isEnabled: boolean;\n\tprotected _isEnabledDefault: boolean;\n\n\tconstructor(theme: EThemeSnapperTarget, options?: ESnapperTargetOptions) {\n\t\tsuper();\n\t\tthis.values = [];\n\t\tthis._isVisibleDefault = options?.visible ?? theme.isSnapperTargetVisible();\n\t\tthis._isVisible = this._isVisibleDefault;\n\t\tthis._isEnabledDefault = options?.enable ?? theme.isSnapperTargetEnabled();\n\t\tthis._isEnabled = this._isEnabledDefault;\n\t}\n\n\tget enable(): boolean {\n\t\treturn this._isEnabled;\n\t}\n\n\tset enable(enable: boolean) {\n\t\tif (this._isEnabled !== enable) {\n\t\t\tthis._isEnabled = enable;\n\t\t\tthis.emit(\"change\", this);\n\t\t}\n\t}\n\n\tget visible(): boolean {\n\t\treturn this._isVisible;\n\t}\n\n\tset visible(visible: boolean) {\n\t\tif (this._isVisible !== visible) {\n\t\t\tthis._isVisible = visible;\n\t\t\tthis.emit(\"change\", this);\n\t\t}\n\t}\n\n\tget size(): number {\n\t\treturn this.values.length;\n\t}\n\n\tadd(target: ESnapperTargetValue, index?: number): void {\n\t\tif (index != null) {\n\t\t\tthis.values.splice(index, 0, target);\n\t\t} else {\n\t\t\tthis.values.push(target);\n\t\t}\n\t\tthis.emit(\"change\", this);\n\t}\n\n\tremove(index: number): void {\n\t\tconst values = this.values;\n\t\tif (0 <= index && index < values.length) {\n\t\t\tvalues.splice(index, 1);\n\t\t\tthis.emit(\"change\", this);\n\t\t}\n\t}\n\n\treplace(index: number, value: ESnapperTargetValue): ESnapperTargetValue | null {\n\t\tconst values = this.values;\n\t\tif (0 <= index && index < values.length) {\n\t\t\tconst result = values[index];\n\t\t\tvalues[index] = value;\n\t\t\tthis.emit(\"change\", this);\n\t\t\treturn result;\n\t\t}\n\t\treturn null;\n\t}\n\n\tswap(indexA: number, indexB: number): void {\n\t\tif (indexA !== indexB) {\n\t\t\tconst values = this.values;\n\t\t\tconst valueA = values[indexA];\n\t\t\tvalues[indexA] = values[indexB];\n\t\t\tvalues[indexB] = valueA;\n\t\t\tthis.emit(\"change\", this);\n\t\t}\n\t}\n\n\tsnap(px: number, py: number, x: ESnapperResult, y: ESnapperResult): void {\n\t\tif (this._isEnabled) {\n\t\t\tconst values = this.values;\n\t\t\tfor (let i = 0, imax = values.length; i < imax; ++i) {\n\t\t\t\tconst value = values[i];\n\t\t\t\tif (value.type === ESnapperTargetValueType.VERTICAL) {\n\t\t\t\t\tx.set(px, value.position);\n\t\t\t\t} else {\n\t\t\t\t\ty.set(py, value.position);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treset(): void {\n\t\tthis._isEnabled = this._isEnabledDefault;\n\t\tthis._isVisible = this._isVisibleDefault;\n\t\tthis.values.length = 0;\n\t\tthis.emit(\"change\", this);\n\t}\n\n\tserialize(): DDiagramSerializedSnapTarget {\n\t\tconst targets: DDiagramSerializedSnapTargetValue[] = [];\n\t\tconst values = this.values;\n\t\tfor (let i = 0, imax = values.length; i < imax; ++i) {\n\t\t\ttargets.push(values[i].serialize());\n\t\t}\n\t\treturn [this._isEnabled ? 1 : 0, this._isVisible ? 1 : 0, targets];\n\t}\n\n\tdeserialize(serialized: DDiagramSerializedSnapTarget): void {\n\t\t// Availability\n\t\tthis._isEnabled = !!serialized[0];\n\n\t\t// Visibility\n\t\tthis._isVisible = !!serialized[1];\n\n\t\t// Values\n\t\tconst sources = serialized[2];\n\t\tconst values = this.values;\n\t\tvalues.length = 0;\n\t\tfor (let i = 0, imax = sources.length; i < imax; ++i) {\n\t\t\tconst source = sources[i];\n\t\t\tvalues.push(new ESnapperTargetValue(source[0], source[1]));\n\t\t}\n\t\tthis.emit(\"change\", this);\n\t}\n}\n"]}
@@ -49,7 +49,8 @@ var ESnapper = /** @class */ (function (_super) {
49
49
  _this.grid = new ESnapperGrid(theme, options === null || options === void 0 ? void 0 : options.grid);
50
50
  _this.target = new ESnapperTarget(theme, options === null || options === void 0 ? void 0 : options.target);
51
51
  _this._parent = parent;
52
- _this._isEnabled = (_a = options === null || options === void 0 ? void 0 : options.enable) !== null && _a !== void 0 ? _a : theme.isSnapperEnabled();
52
+ _this._isEnabledDefault = (_a = options === null || options === void 0 ? void 0 : options.enable) !== null && _a !== void 0 ? _a : theme.isSnapperEnabled();
53
+ _this._isEnabled = _this._isEnabledDefault;
53
54
  return _this;
54
55
  }
55
56
  Object.defineProperty(ESnapper.prototype, "enable", {
@@ -425,7 +426,7 @@ var ESnapper = /** @class */ (function (_super) {
425
426
  return false;
426
427
  };
427
428
  ESnapper.prototype.reset = function () {
428
- this.enable = true;
429
+ this.enable = this._isEnabledDefault;
429
430
  this.target.reset();
430
431
  this.grid.reset();
431
432
  };
@@ -1 +1 @@
1
- {"version":3,"file":"e-snapper.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/snapper/e-snapper.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DisplayObject, IPoint, Matrix, Point, Rectangle, utils } from \"pixi.js\";\nimport { DDiagramSerializedSnap } from \"../d-diagram-serialized\";\nimport { isNaN } from \"../util/is-nan\";\nimport { ESnapperGrid, ESnapperGridOptions, EThemeSnapperGrid } from \"./e-snapper-grid\";\nimport { ESnapperResult } from \"./e-snapper-result\";\nimport { ESnapperResultScale } from \"./e-snapper-result-scale\";\nimport { ESnapperTarget, ESnapperTargetOptions, EThemeSnapperTarget } from \"./e-snapper-target\";\n\nconst EPSILON = 0.00001;\n\nexport interface ESnapperModifier extends DisplayObject {\n\twidth: number;\n\theight: number;\n}\n\nexport const ESnapperModifierAnchor = {\n\tNONE: 0,\n\tTOP_LEFT: 1,\n\tTOP_CENTER: 2,\n\tTOP_RIGHT: 3,\n\tMIDDLE_LEFT: 4,\n\tMIDDLE_RIGHT: 5,\n\tBOTTOM_LEFT: 6,\n\tBOTTOM_CENTER: 7,\n\tBOTTOM_RIGHT: 8,\n\tROTATION: 9\n} as const;\n\nexport type ESnapperModifierAnchor =\n\ttypeof ESnapperModifierAnchor[keyof typeof ESnapperModifierAnchor];\n\nexport interface ESnapperParentCanvas {\n\tscale: {\n\t\tx: number;\n\t\ty: number;\n\t};\n\twidth: number;\n\theight: number;\n}\n\nexport interface ESnapperParent {\n\tcanvas: ESnapperParentCanvas | null;\n}\n\nexport interface ESnapperOptions {\n\tenable?: boolean;\n\tgrid?: ESnapperGridOptions;\n\ttarget?: ESnapperTargetOptions;\n}\n\nexport interface EThemeSnapper extends EThemeSnapperGrid, EThemeSnapperTarget {\n\tisSnapperEnabled(): boolean;\n}\n\nexport class ESnapper extends utils.EventEmitter {\n\tprotected _points: Point[];\n\tprotected _normals: Point[];\n\tprotected _lengths: number[];\n\n\tprotected _workScale: Point;\n\tprotected _workScaleResult: ESnapperResultScale;\n\n\tprotected _workTranslate: Point;\n\n\tprotected _workSnap: Point;\n\tprotected _workSnapRectangle: Rectangle;\n\tprotected _workSnapResultX: ESnapperResult;\n\tprotected _workSnapResultY: ESnapperResult;\n\n\tprotected _parent: ESnapperParent;\n\n\tprotected _isEnabled: boolean;\n\n\tgrid: ESnapperGrid;\n\n\ttarget: ESnapperTarget;\n\n\tconstructor(parent: ESnapperParent, theme: EThemeSnapper, options?: ESnapperOptions) {\n\t\tsuper();\n\n\t\tthis._points = [\n\t\t\tnew Point(), // Top left\n\t\t\tnew Point(), // Top right\n\t\t\tnew Point(), // Bottom left\n\t\t\tnew Point(), // Bottom right\n\t\t\tnew Point() // Center\n\t\t];\n\n\t\tthis._normals = [new Point(), new Point()];\n\n\t\tthis._lengths = [1, 1];\n\n\t\tthis._workScale = new Point();\n\t\tthis._workSnapResultX = new ESnapperResult();\n\t\tthis._workSnapResultY = new ESnapperResult();\n\t\tthis._workScaleResult = {\n\t\t\tdistance: 0,\n\t\t\tscale: new Point()\n\t\t};\n\n\t\tthis._workTranslate = new Point();\n\n\t\tthis._workSnapRectangle = new Rectangle();\n\t\tthis._workSnap = new Point();\n\n\t\tthis.grid = new ESnapperGrid(theme, options?.grid);\n\n\t\tthis.target = new ESnapperTarget(theme, options?.target);\n\n\t\tthis._parent = parent;\n\t\tthis._isEnabled = options?.enable ?? theme.isSnapperEnabled();\n\t}\n\n\tget enable(): boolean {\n\t\treturn this._isEnabled;\n\t}\n\n\tset enable(enable: boolean) {\n\t\tif (this._isEnabled !== enable) {\n\t\t\tthis._isEnabled = enable;\n\t\t\tthis.emit(\"change\", this);\n\t\t}\n\t}\n\n\tprotected prepare(modifier: ESnapperModifier): void {\n\t\tmodifier.updateTransform();\n\t\tconst localTransform = modifier.transform.localTransform;\n\t\tconst sx = modifier.width;\n\t\tconst sy = modifier.height;\n\n\t\tconst points = this._points;\n\t\tpoints[0].set(0, 0);\n\t\tpoints[1].set(sx, 0);\n\t\tpoints[2].set(sx, sy);\n\t\tpoints[3].set(0, sy);\n\t\tpoints[4].set(sx * 0.5, sy * 0.5);\n\n\t\tlocalTransform.apply(points[0], points[0]);\n\t\tlocalTransform.apply(points[1], points[1]);\n\t\tlocalTransform.apply(points[2], points[2]);\n\t\tlocalTransform.apply(points[3], points[3]);\n\t\tlocalTransform.apply(points[4], points[4]);\n\t}\n\n\tprepareForTranslate(modifier: ESnapperModifier): void {\n\t\tif (this._isEnabled) {\n\t\t\tthis.prepare(modifier);\n\t\t}\n\t}\n\n\tprotected snap(point: IPoint, result: IPoint): IPoint {\n\t\tconst px = point.x;\n\t\tconst py = point.y;\n\t\tconst canvas = this._parent.canvas;\n\t\tconst x = this._workSnapResultX;\n\t\tconst y = this._workSnapResultY;\n\n\t\t// Canvas\n\t\tif (canvas != null) {\n\t\t\tconst scale = Math.max(canvas.scale.x, canvas.scale.y);\n\t\t\tx.reset(px, scale);\n\t\t\ty.reset(py, scale);\n\t\t\tx.set(px, 0);\n\t\t\tx.set(px, canvas.width);\n\t\t\ty.set(py, 0);\n\t\t\ty.set(py, canvas.height);\n\t\t} else {\n\t\t\tx.reset(px, 1);\n\t\t\ty.reset(py, 1);\n\t\t}\n\n\t\t// Target\n\t\tthis.target.snap(px, py, x, y);\n\n\t\t// Grid\n\t\tthis.grid.snap(px, x);\n\t\tthis.grid.snap(py, y);\n\n\t\t//\n\t\tresult.x = isNaN(x.distance) ? NaN : x.result;\n\t\tresult.y = isNaN(y.distance) ? NaN : y.result;\n\t\treturn result;\n\t}\n\n\ttoSnapped(point: IPoint, result: IPoint): IPoint {\n\t\tconst px = point.x;\n\t\tconst py = point.y;\n\t\tif (this._isEnabled) {\n\t\t\tthis.snap(point, result);\n\t\t\tconst x = result.x;\n\t\t\tconst y = result.y;\n\t\t\tresult.set(isNaN(x) ? px : x, isNaN(y) ? py : y);\n\t\t} else {\n\t\t\tresult.set(px, py);\n\t\t}\n\t\treturn result;\n\t}\n\n\ttoTranslationSnapped(delta: IPoint, result: IPoint): IPoint {\n\t\tconst dx = delta.x;\n\t\tconst dy = delta.y;\n\t\tlet x = NaN;\n\t\tlet y = NaN;\n\t\tif (this._isEnabled) {\n\t\t\tconst workTranslate = this._workTranslate;\n\t\t\tconst points = this._points;\n\t\t\tfor (let i = 0, imax = points.length; i < imax; ++i) {\n\t\t\t\tconst point = points[i];\n\t\t\t\tworkTranslate.set(point.x + dx, point.y + dy);\n\t\t\t\tthis.snap(workTranslate, workTranslate);\n\n\t\t\t\t// X\n\t\t\t\tif (!isNaN(workTranslate.x)) {\n\t\t\t\t\tconst newDx = workTranslate.x - point.x;\n\t\t\t\t\tif (isNaN(x) || Math.abs(newDx - dx) < Math.abs(x - dx)) {\n\t\t\t\t\t\tx = newDx;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Y\n\t\t\t\tif (!isNaN(workTranslate.y)) {\n\t\t\t\t\tconst newDy = workTranslate.y - point.y;\n\t\t\t\t\tif (isNaN(y) || Math.abs(newDy - dy) < Math.abs(y - dy)) {\n\t\t\t\t\t\ty = newDy;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tresult.x = isNaN(x) ? dx : x;\n\t\tresult.y = isNaN(y) ? dy : y;\n\t\treturn result;\n\t}\n\n\tprepareForRotate(modifier: ESnapperModifier): void {\n\t\t//\n\t}\n\n\tprotected getGridSizeRotation(): number {\n\t\treturn 5;\n\t}\n\n\tprotected toRadian(value: number): number {\n\t\treturn (value / 180) * Math.PI;\n\t}\n\n\tprotected toDegree(value: number): number {\n\t\treturn (value / Math.PI) * 180;\n\t}\n\n\ttoRotationSnapped(baseRotation: number, deltaRotation: number): number {\n\t\tif (this._isEnabled) {\n\t\t\tconst gridSize = this.getGridSizeRotation();\n\t\t\tconst newRotation = baseRotation + deltaRotation;\n\t\t\tconst newRotationDegree = Math.round(this.toDegree(newRotation));\n\t\t\tconst newRotationDegreeResidual = newRotationDegree % 90;\n\t\t\tif (Math.abs(newRotationDegreeResidual) <= gridSize) {\n\t\t\t\treturn this.toRadian(newRotationDegree - newRotationDegreeResidual) - baseRotation;\n\t\t\t} else {\n\t\t\t\tif (90 - gridSize <= newRotationDegreeResidual) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\tthis.toRadian(newRotationDegree + (90 - newRotationDegreeResidual)) -\n\t\t\t\t\t\tbaseRotation\n\t\t\t\t\t);\n\t\t\t\t} else if (newRotationDegreeResidual <= -90 + gridSize) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\tthis.toRadian(newRotationDegree - (90 + newRotationDegreeResidual)) -\n\t\t\t\t\t\tbaseRotation\n\t\t\t\t\t);\n\t\t\t\t} else {\n\t\t\t\t\treturn deltaRotation;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn deltaRotation;\n\t}\n\n\tprotected calcNormalizedVector(p0: IPoint, p1: IPoint, result: Point): number {\n\t\tconst dx = p1.x - p0.x;\n\t\tconst dy = p1.y - p0.y;\n\t\tconst l = Math.sqrt(dx * dx + dy * dy);\n\t\tif (EPSILON < l) {\n\t\t\tconst d = 1 / l;\n\t\t\tresult.x = dx * d;\n\t\t\tresult.y = dy * d;\n\t\t} else {\n\t\t\tresult.x = 1;\n\t\t\tresult.y = 0;\n\t\t}\n\t\treturn l;\n\t}\n\n\tprepareForScale(modifier: ESnapperModifier, anchor: ESnapperModifierAnchor): void {\n\t\tif (this._isEnabled) {\n\t\t\tthis.prepare(modifier);\n\n\t\t\tconst points = this._points;\n\t\t\tconst normals = this._normals;\n\t\t\tconst lengths = this._lengths;\n\t\t\tswitch (anchor) {\n\t\t\t\tcase ESnapperModifierAnchor.TOP_LEFT:\n\t\t\t\t\tlengths[0] = this.calcNormalizedVector(points[1], points[0], normals[0]);\n\t\t\t\t\tlengths[1] = this.calcNormalizedVector(points[3], points[0], normals[1]);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.TOP_CENTER:\n\t\t\t\t\tlengths[0] = this.calcNormalizedVector(points[3], points[0], normals[0]);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.TOP_RIGHT:\n\t\t\t\t\tlengths[0] = this.calcNormalizedVector(points[0], points[1], normals[0]);\n\t\t\t\t\tlengths[1] = this.calcNormalizedVector(points[2], points[1], normals[1]);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.MIDDLE_LEFT:\n\t\t\t\t\tlengths[0] = this.calcNormalizedVector(points[1], points[0], normals[0]);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.NONE:\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.MIDDLE_RIGHT:\n\t\t\t\t\tlengths[0] = this.calcNormalizedVector(points[0], points[1], normals[0]);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.BOTTOM_LEFT:\n\t\t\t\t\tlengths[0] = this.calcNormalizedVector(points[2], points[3], normals[0]);\n\t\t\t\t\tlengths[1] = this.calcNormalizedVector(points[0], points[3], normals[1]);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.BOTTOM_CENTER:\n\t\t\t\t\tlengths[0] = this.calcNormalizedVector(points[0], points[3], normals[0]);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.BOTTOM_RIGHT:\n\t\t\t\t\tlengths[0] = this.calcNormalizedVector(points[3], points[2], normals[0]);\n\t\t\t\t\tlengths[1] = this.calcNormalizedVector(points[1], points[2], normals[1]);\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected setScaleSnappedResult(\n\t\tdistance: number,\n\t\tlength: number,\n\t\tmove: number,\n\t\taxis: boolean, // true => x axis, false y axis\n\t\tresult: ESnapperResultScale\n\t): void {\n\t\tif (EPSILON < length) {\n\t\t\tif (isNaN(result.distance) || distance < result.distance) {\n\t\t\t\tresult.distance = distance;\n\t\t\t\tconst newScale = 1 + move / length;\n\t\t\t\tif (axis) {\n\t\t\t\t\tresult.scale.x = newScale;\n\t\t\t\t} else {\n\t\t\t\t\tresult.scale.y = newScale;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected calcScaleSnapped1D(\n\t\ttransform: Matrix,\n\t\tpoint: Point,\n\t\tnormal: IPoint,\n\t\tlength: number,\n\t\taxis: boolean,\n\t\tresult: ESnapperResultScale\n\t): void {\n\t\tconst work = this._workScale;\n\t\ttransform.apply(point, work);\n\t\tconst tx = work.x;\n\t\tconst ty = work.y;\n\t\tthis.snap(work, work);\n\t\tconst x = work.x;\n\t\tconst y = work.y;\n\n\t\t// X coordinate\n\t\tif (!isNaN(x)) {\n\t\t\tconst nx = Math.abs(normal.x);\n\t\t\tif (EPSILON < nx) {\n\t\t\t\tconst dx = (x - tx) / normal.x;\n\t\t\t\tconst distance = Math.abs(dx);\n\t\t\t\tconst mx = (x - point.x) / normal.x;\n\t\t\t\tthis.setScaleSnappedResult(distance, length, mx, axis, result);\n\t\t\t}\n\t\t}\n\n\t\t// Y coordinate\n\t\tif (!isNaN(y)) {\n\t\t\tconst ny = Math.abs(normal.y);\n\t\t\tif (EPSILON < ny) {\n\t\t\t\tconst dy = (y - ty) / normal.y;\n\t\t\t\tconst distance = Math.abs(dy);\n\t\t\t\tconst my = (y - point.y) / normal.y;\n\t\t\t\tthis.setScaleSnappedResult(distance, length, my, axis, result);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected calcScaleSnappedX(\n\t\ttransform: Matrix,\n\t\tpoint: Point,\n\t\tnormal: IPoint,\n\t\tlength: number,\n\t\tresult: ESnapperResultScale\n\t): void {\n\t\tthis.calcScaleSnapped1D(transform, point, normal, length, true, result);\n\t}\n\n\tprotected calcScaleSnappedY(\n\t\ttransform: Matrix,\n\t\tpoint: Point,\n\t\tnormal: IPoint,\n\t\tlength: number,\n\t\tresult: ESnapperResultScale\n\t): void {\n\t\tthis.calcScaleSnapped1D(transform, point, normal, length, false, result);\n\t}\n\n\tcalcScaleSnapped2D(\n\t\ttransform: Matrix,\n\t\tpoint: Point,\n\t\tnormals: IPoint[],\n\t\tlengths: number[],\n\t\tresult: ESnapperResultScale\n\t): void {\n\t\tconst work = this._workScale;\n\t\ttransform.apply(point, work);\n\t\tconst tx = work.x;\n\t\tconst ty = work.y;\n\n\t\tthis.snap(work, work);\n\t\tlet x = work.x;\n\t\tlet y = work.y;\n\t\tif (isNaN(x)) {\n\t\t\tif (isNaN(y)) {\n\t\t\t\treturn;\n\t\t\t} else {\n\t\t\t\tx = tx;\n\t\t\t}\n\t\t} else {\n\t\t\tif (isNaN(y)) {\n\t\t\t\ty = ty;\n\t\t\t}\n\t\t}\n\n\t\t// (x, y) = (tx, ty) + normalA * a + normalB * b\n\t\t// dx = x - tx\n\t\t// dy = y - ty\n\t\t// V = ( a, b )^T\n\t\t// D = ( dx, dy )^T\n\t\t// A = | normalA.x normalB.x |\n\t\t// | normalA.y normalB.y |\n\t\t// A V = D\n\t\t// det A = normalA.x * normalB.y - normalB.x * normalA.y\n\t\t// A^-1 = | normalB.y -normalB.x | / det A\n\t\t// | -normalA.y normalA.x |\n\t\tconst detA = normals[0].x * normals[1].y - normals[1].x * normals[0].y;\n\t\tif (EPSILON < Math.abs(detA)) {\n\t\t\tconst dx = x - tx;\n\t\t\tconst dy = y - ty;\n\t\t\tconst distance = Math.abs(dx * dx + dy * dy);\n\t\t\tif (isNaN(result.distance) || distance < result.distance) {\n\t\t\t\tresult.distance = distance;\n\t\t\t\tconst mdx = x - point.x;\n\t\t\t\tconst mdy = y - point.y;\n\t\t\t\tconst mx = (+normals[1].y * mdx - normals[1].x * mdy) / detA;\n\t\t\t\tconst my = (-normals[0].y * mdx + normals[0].x * mdy) / detA;\n\t\t\t\tresult.scale.set(1 + mx / lengths[0], 1 + my / lengths[1]);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected calcScaleSnappedXY(\n\t\ttransform: Matrix,\n\t\tpointO: Point,\n\t\tpointX: Point,\n\t\tpointY: Point,\n\t\tnormals: IPoint[],\n\t\tlengths: number[],\n\t\tresult: ESnapperResultScale\n\t): void {\n\t\tthis.calcScaleSnapped2D(transform, pointO, normals, lengths, result);\n\t\tthis.calcScaleSnappedX(transform, pointY, normals[0], lengths[0], result);\n\t\tthis.calcScaleSnappedY(transform, pointX, normals[1], lengths[1], result);\n\t}\n\n\ttoScaleSnapped(\n\t\ttransform: Matrix,\n\t\tanchor: ESnapperModifierAnchor,\n\t\tkeepRatio: boolean,\n\t\tscale: IPoint\n\t): boolean {\n\t\tif (this._isEnabled) {\n\t\t\tconst points = this._points;\n\t\t\tconst normals = this._normals;\n\t\t\tconst lengths = this._lengths;\n\t\t\tconst work = this._workScaleResult;\n\t\t\twork.distance = NaN;\n\t\t\twork.scale.set(scale.x, scale.y);\n\n\t\t\tswitch (anchor) {\n\t\t\t\tcase ESnapperModifierAnchor.TOP_LEFT:\n\t\t\t\t\tthis.calcScaleSnappedXY(\n\t\t\t\t\t\ttransform,\n\t\t\t\t\t\tpoints[0],\n\t\t\t\t\t\tpoints[1],\n\t\t\t\t\t\tpoints[3],\n\t\t\t\t\t\tnormals,\n\t\t\t\t\t\tlengths,\n\t\t\t\t\t\twork\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.TOP_CENTER:\n\t\t\t\t\tthis.calcScaleSnappedY(transform, points[0], normals[0], lengths[0], work);\n\t\t\t\t\tthis.calcScaleSnappedY(transform, points[1], normals[0], lengths[0], work);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.TOP_RIGHT:\n\t\t\t\t\tthis.calcScaleSnappedXY(\n\t\t\t\t\t\ttransform,\n\t\t\t\t\t\tpoints[1],\n\t\t\t\t\t\tpoints[0],\n\t\t\t\t\t\tpoints[2],\n\t\t\t\t\t\tnormals,\n\t\t\t\t\t\tlengths,\n\t\t\t\t\t\twork\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.MIDDLE_LEFT:\n\t\t\t\t\tthis.calcScaleSnappedX(transform, points[0], normals[0], lengths[0], work);\n\t\t\t\t\tthis.calcScaleSnappedX(transform, points[3], normals[0], lengths[0], work);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.NONE:\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.MIDDLE_RIGHT:\n\t\t\t\t\tthis.calcScaleSnappedX(transform, points[1], normals[0], lengths[0], work);\n\t\t\t\t\tthis.calcScaleSnappedX(transform, points[2], normals[0], lengths[0], work);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.BOTTOM_LEFT:\n\t\t\t\t\tthis.calcScaleSnappedXY(\n\t\t\t\t\t\ttransform,\n\t\t\t\t\t\tpoints[3],\n\t\t\t\t\t\tpoints[2],\n\t\t\t\t\t\tpoints[0],\n\t\t\t\t\t\tnormals,\n\t\t\t\t\t\tlengths,\n\t\t\t\t\t\twork\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.BOTTOM_CENTER:\n\t\t\t\t\tthis.calcScaleSnappedY(transform, points[2], normals[0], lengths[0], work);\n\t\t\t\t\tthis.calcScaleSnappedY(transform, points[3], normals[0], lengths[0], work);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.BOTTOM_RIGHT:\n\t\t\t\t\tthis.calcScaleSnappedXY(\n\t\t\t\t\t\ttransform,\n\t\t\t\t\t\tpoints[2],\n\t\t\t\t\t\tpoints[3],\n\t\t\t\t\t\tpoints[1],\n\t\t\t\t\t\tnormals,\n\t\t\t\t\t\tlengths,\n\t\t\t\t\t\twork\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tif (!isNaN(work.distance)) {\n\t\t\t\tscale.copyFrom(work.scale);\n\t\t\t\tif (keepRatio) {\n\t\t\t\t\tswitch (anchor) {\n\t\t\t\t\t\tcase ESnapperModifierAnchor.TOP_LEFT:\n\t\t\t\t\t\tcase ESnapperModifierAnchor.TOP_RIGHT:\n\t\t\t\t\t\tcase ESnapperModifierAnchor.BOTTOM_LEFT:\n\t\t\t\t\t\tcase ESnapperModifierAnchor.BOTTOM_RIGHT:\n\t\t\t\t\t\t\tscale.x = scale.y = Math.max(scale.x, scale.y);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase ESnapperModifierAnchor.TOP_CENTER:\n\t\t\t\t\t\tcase ESnapperModifierAnchor.BOTTOM_CENTER:\n\t\t\t\t\t\t\tscale.x = scale.y;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase ESnapperModifierAnchor.MIDDLE_LEFT:\n\t\t\t\t\t\tcase ESnapperModifierAnchor.MIDDLE_RIGHT:\n\t\t\t\t\t\t\tscale.y = scale.x;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase ESnapperModifierAnchor.NONE:\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\treset(): void {\n\t\tthis.enable = true;\n\t\tthis.target.reset();\n\t\tthis.grid.reset();\n\t}\n\n\tserialize(): DDiagramSerializedSnap {\n\t\treturn [this._isEnabled ? 1 : 0, this.target.serialize(), this.grid.serialize()];\n\t}\n\n\tdeserialize(serialized: DDiagramSerializedSnap): void {\n\t\tthis.enable = !!serialized[0];\n\t\tthis.target.deserialize(serialized[1]);\n\t\tthis.grid.deserialize(serialized[2]);\n\t}\n}\n"]}
1
+ {"version":3,"file":"e-snapper.js","sourceRoot":"","sources":["../../../../src/main/typescript/wcardinal/ui/snapper/e-snapper.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { DisplayObject, IPoint, Matrix, Point, Rectangle, utils } from \"pixi.js\";\nimport { DDiagramSerializedSnap } from \"../d-diagram-serialized\";\nimport { isNaN } from \"../util/is-nan\";\nimport { ESnapperGrid, ESnapperGridOptions, EThemeSnapperGrid } from \"./e-snapper-grid\";\nimport { ESnapperResult } from \"./e-snapper-result\";\nimport { ESnapperResultScale } from \"./e-snapper-result-scale\";\nimport { ESnapperTarget, ESnapperTargetOptions, EThemeSnapperTarget } from \"./e-snapper-target\";\n\nconst EPSILON = 0.00001;\n\nexport interface ESnapperModifier extends DisplayObject {\n\twidth: number;\n\theight: number;\n}\n\nexport const ESnapperModifierAnchor = {\n\tNONE: 0,\n\tTOP_LEFT: 1,\n\tTOP_CENTER: 2,\n\tTOP_RIGHT: 3,\n\tMIDDLE_LEFT: 4,\n\tMIDDLE_RIGHT: 5,\n\tBOTTOM_LEFT: 6,\n\tBOTTOM_CENTER: 7,\n\tBOTTOM_RIGHT: 8,\n\tROTATION: 9\n} as const;\n\nexport type ESnapperModifierAnchor =\n\ttypeof ESnapperModifierAnchor[keyof typeof ESnapperModifierAnchor];\n\nexport interface ESnapperParentCanvas {\n\tscale: {\n\t\tx: number;\n\t\ty: number;\n\t};\n\twidth: number;\n\theight: number;\n}\n\nexport interface ESnapperParent {\n\tcanvas: ESnapperParentCanvas | null;\n}\n\nexport interface ESnapperOptions {\n\tenable?: boolean;\n\tgrid?: ESnapperGridOptions;\n\ttarget?: ESnapperTargetOptions;\n}\n\nexport interface EThemeSnapper extends EThemeSnapperGrid, EThemeSnapperTarget {\n\tisSnapperEnabled(): boolean;\n}\n\nexport class ESnapper extends utils.EventEmitter {\n\tprotected _points: Point[];\n\tprotected _normals: Point[];\n\tprotected _lengths: number[];\n\n\tprotected _workScale: Point;\n\tprotected _workScaleResult: ESnapperResultScale;\n\n\tprotected _workTranslate: Point;\n\n\tprotected _workSnap: Point;\n\tprotected _workSnapRectangle: Rectangle;\n\tprotected _workSnapResultX: ESnapperResult;\n\tprotected _workSnapResultY: ESnapperResult;\n\n\tprotected _parent: ESnapperParent;\n\n\tprotected _isEnabled: boolean;\n\tprotected _isEnabledDefault: boolean;\n\n\tgrid: ESnapperGrid;\n\n\ttarget: ESnapperTarget;\n\n\tconstructor(parent: ESnapperParent, theme: EThemeSnapper, options?: ESnapperOptions) {\n\t\tsuper();\n\n\t\tthis._points = [\n\t\t\tnew Point(), // Top left\n\t\t\tnew Point(), // Top right\n\t\t\tnew Point(), // Bottom left\n\t\t\tnew Point(), // Bottom right\n\t\t\tnew Point() // Center\n\t\t];\n\n\t\tthis._normals = [new Point(), new Point()];\n\n\t\tthis._lengths = [1, 1];\n\n\t\tthis._workScale = new Point();\n\t\tthis._workSnapResultX = new ESnapperResult();\n\t\tthis._workSnapResultY = new ESnapperResult();\n\t\tthis._workScaleResult = {\n\t\t\tdistance: 0,\n\t\t\tscale: new Point()\n\t\t};\n\n\t\tthis._workTranslate = new Point();\n\n\t\tthis._workSnapRectangle = new Rectangle();\n\t\tthis._workSnap = new Point();\n\n\t\tthis.grid = new ESnapperGrid(theme, options?.grid);\n\n\t\tthis.target = new ESnapperTarget(theme, options?.target);\n\n\t\tthis._parent = parent;\n\t\tthis._isEnabledDefault = options?.enable ?? theme.isSnapperEnabled();\n\t\tthis._isEnabled = this._isEnabledDefault;\n\t}\n\n\tget enable(): boolean {\n\t\treturn this._isEnabled;\n\t}\n\n\tset enable(enable: boolean) {\n\t\tif (this._isEnabled !== enable) {\n\t\t\tthis._isEnabled = enable;\n\t\t\tthis.emit(\"change\", this);\n\t\t}\n\t}\n\n\tprotected prepare(modifier: ESnapperModifier): void {\n\t\tmodifier.updateTransform();\n\t\tconst localTransform = modifier.transform.localTransform;\n\t\tconst sx = modifier.width;\n\t\tconst sy = modifier.height;\n\n\t\tconst points = this._points;\n\t\tpoints[0].set(0, 0);\n\t\tpoints[1].set(sx, 0);\n\t\tpoints[2].set(sx, sy);\n\t\tpoints[3].set(0, sy);\n\t\tpoints[4].set(sx * 0.5, sy * 0.5);\n\n\t\tlocalTransform.apply(points[0], points[0]);\n\t\tlocalTransform.apply(points[1], points[1]);\n\t\tlocalTransform.apply(points[2], points[2]);\n\t\tlocalTransform.apply(points[3], points[3]);\n\t\tlocalTransform.apply(points[4], points[4]);\n\t}\n\n\tprepareForTranslate(modifier: ESnapperModifier): void {\n\t\tif (this._isEnabled) {\n\t\t\tthis.prepare(modifier);\n\t\t}\n\t}\n\n\tprotected snap(point: IPoint, result: IPoint): IPoint {\n\t\tconst px = point.x;\n\t\tconst py = point.y;\n\t\tconst canvas = this._parent.canvas;\n\t\tconst x = this._workSnapResultX;\n\t\tconst y = this._workSnapResultY;\n\n\t\t// Canvas\n\t\tif (canvas != null) {\n\t\t\tconst scale = Math.max(canvas.scale.x, canvas.scale.y);\n\t\t\tx.reset(px, scale);\n\t\t\ty.reset(py, scale);\n\t\t\tx.set(px, 0);\n\t\t\tx.set(px, canvas.width);\n\t\t\ty.set(py, 0);\n\t\t\ty.set(py, canvas.height);\n\t\t} else {\n\t\t\tx.reset(px, 1);\n\t\t\ty.reset(py, 1);\n\t\t}\n\n\t\t// Target\n\t\tthis.target.snap(px, py, x, y);\n\n\t\t// Grid\n\t\tthis.grid.snap(px, x);\n\t\tthis.grid.snap(py, y);\n\n\t\t//\n\t\tresult.x = isNaN(x.distance) ? NaN : x.result;\n\t\tresult.y = isNaN(y.distance) ? NaN : y.result;\n\t\treturn result;\n\t}\n\n\ttoSnapped(point: IPoint, result: IPoint): IPoint {\n\t\tconst px = point.x;\n\t\tconst py = point.y;\n\t\tif (this._isEnabled) {\n\t\t\tthis.snap(point, result);\n\t\t\tconst x = result.x;\n\t\t\tconst y = result.y;\n\t\t\tresult.set(isNaN(x) ? px : x, isNaN(y) ? py : y);\n\t\t} else {\n\t\t\tresult.set(px, py);\n\t\t}\n\t\treturn result;\n\t}\n\n\ttoTranslationSnapped(delta: IPoint, result: IPoint): IPoint {\n\t\tconst dx = delta.x;\n\t\tconst dy = delta.y;\n\t\tlet x = NaN;\n\t\tlet y = NaN;\n\t\tif (this._isEnabled) {\n\t\t\tconst workTranslate = this._workTranslate;\n\t\t\tconst points = this._points;\n\t\t\tfor (let i = 0, imax = points.length; i < imax; ++i) {\n\t\t\t\tconst point = points[i];\n\t\t\t\tworkTranslate.set(point.x + dx, point.y + dy);\n\t\t\t\tthis.snap(workTranslate, workTranslate);\n\n\t\t\t\t// X\n\t\t\t\tif (!isNaN(workTranslate.x)) {\n\t\t\t\t\tconst newDx = workTranslate.x - point.x;\n\t\t\t\t\tif (isNaN(x) || Math.abs(newDx - dx) < Math.abs(x - dx)) {\n\t\t\t\t\t\tx = newDx;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Y\n\t\t\t\tif (!isNaN(workTranslate.y)) {\n\t\t\t\t\tconst newDy = workTranslate.y - point.y;\n\t\t\t\t\tif (isNaN(y) || Math.abs(newDy - dy) < Math.abs(y - dy)) {\n\t\t\t\t\t\ty = newDy;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tresult.x = isNaN(x) ? dx : x;\n\t\tresult.y = isNaN(y) ? dy : y;\n\t\treturn result;\n\t}\n\n\tprepareForRotate(modifier: ESnapperModifier): void {\n\t\t//\n\t}\n\n\tprotected getGridSizeRotation(): number {\n\t\treturn 5;\n\t}\n\n\tprotected toRadian(value: number): number {\n\t\treturn (value / 180) * Math.PI;\n\t}\n\n\tprotected toDegree(value: number): number {\n\t\treturn (value / Math.PI) * 180;\n\t}\n\n\ttoRotationSnapped(baseRotation: number, deltaRotation: number): number {\n\t\tif (this._isEnabled) {\n\t\t\tconst gridSize = this.getGridSizeRotation();\n\t\t\tconst newRotation = baseRotation + deltaRotation;\n\t\t\tconst newRotationDegree = Math.round(this.toDegree(newRotation));\n\t\t\tconst newRotationDegreeResidual = newRotationDegree % 90;\n\t\t\tif (Math.abs(newRotationDegreeResidual) <= gridSize) {\n\t\t\t\treturn this.toRadian(newRotationDegree - newRotationDegreeResidual) - baseRotation;\n\t\t\t} else {\n\t\t\t\tif (90 - gridSize <= newRotationDegreeResidual) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\tthis.toRadian(newRotationDegree + (90 - newRotationDegreeResidual)) -\n\t\t\t\t\t\tbaseRotation\n\t\t\t\t\t);\n\t\t\t\t} else if (newRotationDegreeResidual <= -90 + gridSize) {\n\t\t\t\t\treturn (\n\t\t\t\t\t\tthis.toRadian(newRotationDegree - (90 + newRotationDegreeResidual)) -\n\t\t\t\t\t\tbaseRotation\n\t\t\t\t\t);\n\t\t\t\t} else {\n\t\t\t\t\treturn deltaRotation;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn deltaRotation;\n\t}\n\n\tprotected calcNormalizedVector(p0: IPoint, p1: IPoint, result: Point): number {\n\t\tconst dx = p1.x - p0.x;\n\t\tconst dy = p1.y - p0.y;\n\t\tconst l = Math.sqrt(dx * dx + dy * dy);\n\t\tif (EPSILON < l) {\n\t\t\tconst d = 1 / l;\n\t\t\tresult.x = dx * d;\n\t\t\tresult.y = dy * d;\n\t\t} else {\n\t\t\tresult.x = 1;\n\t\t\tresult.y = 0;\n\t\t}\n\t\treturn l;\n\t}\n\n\tprepareForScale(modifier: ESnapperModifier, anchor: ESnapperModifierAnchor): void {\n\t\tif (this._isEnabled) {\n\t\t\tthis.prepare(modifier);\n\n\t\t\tconst points = this._points;\n\t\t\tconst normals = this._normals;\n\t\t\tconst lengths = this._lengths;\n\t\t\tswitch (anchor) {\n\t\t\t\tcase ESnapperModifierAnchor.TOP_LEFT:\n\t\t\t\t\tlengths[0] = this.calcNormalizedVector(points[1], points[0], normals[0]);\n\t\t\t\t\tlengths[1] = this.calcNormalizedVector(points[3], points[0], normals[1]);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.TOP_CENTER:\n\t\t\t\t\tlengths[0] = this.calcNormalizedVector(points[3], points[0], normals[0]);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.TOP_RIGHT:\n\t\t\t\t\tlengths[0] = this.calcNormalizedVector(points[0], points[1], normals[0]);\n\t\t\t\t\tlengths[1] = this.calcNormalizedVector(points[2], points[1], normals[1]);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.MIDDLE_LEFT:\n\t\t\t\t\tlengths[0] = this.calcNormalizedVector(points[1], points[0], normals[0]);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.NONE:\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.MIDDLE_RIGHT:\n\t\t\t\t\tlengths[0] = this.calcNormalizedVector(points[0], points[1], normals[0]);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.BOTTOM_LEFT:\n\t\t\t\t\tlengths[0] = this.calcNormalizedVector(points[2], points[3], normals[0]);\n\t\t\t\t\tlengths[1] = this.calcNormalizedVector(points[0], points[3], normals[1]);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.BOTTOM_CENTER:\n\t\t\t\t\tlengths[0] = this.calcNormalizedVector(points[0], points[3], normals[0]);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.BOTTOM_RIGHT:\n\t\t\t\t\tlengths[0] = this.calcNormalizedVector(points[3], points[2], normals[0]);\n\t\t\t\t\tlengths[1] = this.calcNormalizedVector(points[1], points[2], normals[1]);\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected setScaleSnappedResult(\n\t\tdistance: number,\n\t\tlength: number,\n\t\tmove: number,\n\t\taxis: boolean, // true => x axis, false y axis\n\t\tresult: ESnapperResultScale\n\t): void {\n\t\tif (EPSILON < length) {\n\t\t\tif (isNaN(result.distance) || distance < result.distance) {\n\t\t\t\tresult.distance = distance;\n\t\t\t\tconst newScale = 1 + move / length;\n\t\t\t\tif (axis) {\n\t\t\t\t\tresult.scale.x = newScale;\n\t\t\t\t} else {\n\t\t\t\t\tresult.scale.y = newScale;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected calcScaleSnapped1D(\n\t\ttransform: Matrix,\n\t\tpoint: Point,\n\t\tnormal: IPoint,\n\t\tlength: number,\n\t\taxis: boolean,\n\t\tresult: ESnapperResultScale\n\t): void {\n\t\tconst work = this._workScale;\n\t\ttransform.apply(point, work);\n\t\tconst tx = work.x;\n\t\tconst ty = work.y;\n\t\tthis.snap(work, work);\n\t\tconst x = work.x;\n\t\tconst y = work.y;\n\n\t\t// X coordinate\n\t\tif (!isNaN(x)) {\n\t\t\tconst nx = Math.abs(normal.x);\n\t\t\tif (EPSILON < nx) {\n\t\t\t\tconst dx = (x - tx) / normal.x;\n\t\t\t\tconst distance = Math.abs(dx);\n\t\t\t\tconst mx = (x - point.x) / normal.x;\n\t\t\t\tthis.setScaleSnappedResult(distance, length, mx, axis, result);\n\t\t\t}\n\t\t}\n\n\t\t// Y coordinate\n\t\tif (!isNaN(y)) {\n\t\t\tconst ny = Math.abs(normal.y);\n\t\t\tif (EPSILON < ny) {\n\t\t\t\tconst dy = (y - ty) / normal.y;\n\t\t\t\tconst distance = Math.abs(dy);\n\t\t\t\tconst my = (y - point.y) / normal.y;\n\t\t\t\tthis.setScaleSnappedResult(distance, length, my, axis, result);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected calcScaleSnappedX(\n\t\ttransform: Matrix,\n\t\tpoint: Point,\n\t\tnormal: IPoint,\n\t\tlength: number,\n\t\tresult: ESnapperResultScale\n\t): void {\n\t\tthis.calcScaleSnapped1D(transform, point, normal, length, true, result);\n\t}\n\n\tprotected calcScaleSnappedY(\n\t\ttransform: Matrix,\n\t\tpoint: Point,\n\t\tnormal: IPoint,\n\t\tlength: number,\n\t\tresult: ESnapperResultScale\n\t): void {\n\t\tthis.calcScaleSnapped1D(transform, point, normal, length, false, result);\n\t}\n\n\tcalcScaleSnapped2D(\n\t\ttransform: Matrix,\n\t\tpoint: Point,\n\t\tnormals: IPoint[],\n\t\tlengths: number[],\n\t\tresult: ESnapperResultScale\n\t): void {\n\t\tconst work = this._workScale;\n\t\ttransform.apply(point, work);\n\t\tconst tx = work.x;\n\t\tconst ty = work.y;\n\n\t\tthis.snap(work, work);\n\t\tlet x = work.x;\n\t\tlet y = work.y;\n\t\tif (isNaN(x)) {\n\t\t\tif (isNaN(y)) {\n\t\t\t\treturn;\n\t\t\t} else {\n\t\t\t\tx = tx;\n\t\t\t}\n\t\t} else {\n\t\t\tif (isNaN(y)) {\n\t\t\t\ty = ty;\n\t\t\t}\n\t\t}\n\n\t\t// (x, y) = (tx, ty) + normalA * a + normalB * b\n\t\t// dx = x - tx\n\t\t// dy = y - ty\n\t\t// V = ( a, b )^T\n\t\t// D = ( dx, dy )^T\n\t\t// A = | normalA.x normalB.x |\n\t\t// | normalA.y normalB.y |\n\t\t// A V = D\n\t\t// det A = normalA.x * normalB.y - normalB.x * normalA.y\n\t\t// A^-1 = | normalB.y -normalB.x | / det A\n\t\t// | -normalA.y normalA.x |\n\t\tconst detA = normals[0].x * normals[1].y - normals[1].x * normals[0].y;\n\t\tif (EPSILON < Math.abs(detA)) {\n\t\t\tconst dx = x - tx;\n\t\t\tconst dy = y - ty;\n\t\t\tconst distance = Math.abs(dx * dx + dy * dy);\n\t\t\tif (isNaN(result.distance) || distance < result.distance) {\n\t\t\t\tresult.distance = distance;\n\t\t\t\tconst mdx = x - point.x;\n\t\t\t\tconst mdy = y - point.y;\n\t\t\t\tconst mx = (+normals[1].y * mdx - normals[1].x * mdy) / detA;\n\t\t\t\tconst my = (-normals[0].y * mdx + normals[0].x * mdy) / detA;\n\t\t\t\tresult.scale.set(1 + mx / lengths[0], 1 + my / lengths[1]);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected calcScaleSnappedXY(\n\t\ttransform: Matrix,\n\t\tpointO: Point,\n\t\tpointX: Point,\n\t\tpointY: Point,\n\t\tnormals: IPoint[],\n\t\tlengths: number[],\n\t\tresult: ESnapperResultScale\n\t): void {\n\t\tthis.calcScaleSnapped2D(transform, pointO, normals, lengths, result);\n\t\tthis.calcScaleSnappedX(transform, pointY, normals[0], lengths[0], result);\n\t\tthis.calcScaleSnappedY(transform, pointX, normals[1], lengths[1], result);\n\t}\n\n\ttoScaleSnapped(\n\t\ttransform: Matrix,\n\t\tanchor: ESnapperModifierAnchor,\n\t\tkeepRatio: boolean,\n\t\tscale: IPoint\n\t): boolean {\n\t\tif (this._isEnabled) {\n\t\t\tconst points = this._points;\n\t\t\tconst normals = this._normals;\n\t\t\tconst lengths = this._lengths;\n\t\t\tconst work = this._workScaleResult;\n\t\t\twork.distance = NaN;\n\t\t\twork.scale.set(scale.x, scale.y);\n\n\t\t\tswitch (anchor) {\n\t\t\t\tcase ESnapperModifierAnchor.TOP_LEFT:\n\t\t\t\t\tthis.calcScaleSnappedXY(\n\t\t\t\t\t\ttransform,\n\t\t\t\t\t\tpoints[0],\n\t\t\t\t\t\tpoints[1],\n\t\t\t\t\t\tpoints[3],\n\t\t\t\t\t\tnormals,\n\t\t\t\t\t\tlengths,\n\t\t\t\t\t\twork\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.TOP_CENTER:\n\t\t\t\t\tthis.calcScaleSnappedY(transform, points[0], normals[0], lengths[0], work);\n\t\t\t\t\tthis.calcScaleSnappedY(transform, points[1], normals[0], lengths[0], work);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.TOP_RIGHT:\n\t\t\t\t\tthis.calcScaleSnappedXY(\n\t\t\t\t\t\ttransform,\n\t\t\t\t\t\tpoints[1],\n\t\t\t\t\t\tpoints[0],\n\t\t\t\t\t\tpoints[2],\n\t\t\t\t\t\tnormals,\n\t\t\t\t\t\tlengths,\n\t\t\t\t\t\twork\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.MIDDLE_LEFT:\n\t\t\t\t\tthis.calcScaleSnappedX(transform, points[0], normals[0], lengths[0], work);\n\t\t\t\t\tthis.calcScaleSnappedX(transform, points[3], normals[0], lengths[0], work);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.NONE:\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.MIDDLE_RIGHT:\n\t\t\t\t\tthis.calcScaleSnappedX(transform, points[1], normals[0], lengths[0], work);\n\t\t\t\t\tthis.calcScaleSnappedX(transform, points[2], normals[0], lengths[0], work);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.BOTTOM_LEFT:\n\t\t\t\t\tthis.calcScaleSnappedXY(\n\t\t\t\t\t\ttransform,\n\t\t\t\t\t\tpoints[3],\n\t\t\t\t\t\tpoints[2],\n\t\t\t\t\t\tpoints[0],\n\t\t\t\t\t\tnormals,\n\t\t\t\t\t\tlengths,\n\t\t\t\t\t\twork\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.BOTTOM_CENTER:\n\t\t\t\t\tthis.calcScaleSnappedY(transform, points[2], normals[0], lengths[0], work);\n\t\t\t\t\tthis.calcScaleSnappedY(transform, points[3], normals[0], lengths[0], work);\n\t\t\t\t\tbreak;\n\t\t\t\tcase ESnapperModifierAnchor.BOTTOM_RIGHT:\n\t\t\t\t\tthis.calcScaleSnappedXY(\n\t\t\t\t\t\ttransform,\n\t\t\t\t\t\tpoints[2],\n\t\t\t\t\t\tpoints[3],\n\t\t\t\t\t\tpoints[1],\n\t\t\t\t\t\tnormals,\n\t\t\t\t\t\tlengths,\n\t\t\t\t\t\twork\n\t\t\t\t\t);\n\t\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tif (!isNaN(work.distance)) {\n\t\t\t\tscale.copyFrom(work.scale);\n\t\t\t\tif (keepRatio) {\n\t\t\t\t\tswitch (anchor) {\n\t\t\t\t\t\tcase ESnapperModifierAnchor.TOP_LEFT:\n\t\t\t\t\t\tcase ESnapperModifierAnchor.TOP_RIGHT:\n\t\t\t\t\t\tcase ESnapperModifierAnchor.BOTTOM_LEFT:\n\t\t\t\t\t\tcase ESnapperModifierAnchor.BOTTOM_RIGHT:\n\t\t\t\t\t\t\tscale.x = scale.y = Math.max(scale.x, scale.y);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase ESnapperModifierAnchor.TOP_CENTER:\n\t\t\t\t\t\tcase ESnapperModifierAnchor.BOTTOM_CENTER:\n\t\t\t\t\t\t\tscale.x = scale.y;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase ESnapperModifierAnchor.MIDDLE_LEFT:\n\t\t\t\t\t\tcase ESnapperModifierAnchor.MIDDLE_RIGHT:\n\t\t\t\t\t\t\tscale.y = scale.x;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase ESnapperModifierAnchor.NONE:\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\treset(): void {\n\t\tthis.enable = this._isEnabledDefault;\n\t\tthis.target.reset();\n\t\tthis.grid.reset();\n\t}\n\n\tserialize(): DDiagramSerializedSnap {\n\t\treturn [this._isEnabled ? 1 : 0, this.target.serialize(), this.grid.serialize()];\n\t}\n\n\tdeserialize(serialized: DDiagramSerializedSnap): void {\n\t\tthis.enable = !!serialized[0];\n\t\tthis.target.deserialize(serialized[1]);\n\t\tthis.grid.deserialize(serialized[2]);\n\t}\n}\n"]}
@@ -1,5 +1,5 @@
1
1
  /*
2
- Winter Cardinal UI v0.267.0
2
+ Winter Cardinal UI v0.268.0
3
3
  Copyright (C) 2019 Toshiba Corporation
4
4
  SPDX-License-Identifier: Apache-2.0
5
5
 
@@ -1,5 +1,5 @@
1
1
  /*
2
- Winter Cardinal UI v0.267.0
2
+ Winter Cardinal UI v0.268.0
3
3
  Copyright (C) 2019 Toshiba Corporation
4
4
  SPDX-License-Identifier: Apache-2.0
5
5
 
@@ -1,5 +1,5 @@
1
1
  /*
2
- Winter Cardinal UI v0.267.0
2
+ Winter Cardinal UI v0.268.0
3
3
  Copyright (C) 2019 Toshiba Corporation
4
4
  SPDX-License-Identifier: Apache-2.0
5
5
 
@@ -1,5 +1,5 @@
1
1
  /*
2
- Winter Cardinal UI v0.267.0
2
+ Winter Cardinal UI v0.268.0
3
3
  Copyright (C) 2019 Toshiba Corporation
4
4
  SPDX-License-Identifier: Apache-2.0
5
5
 
@@ -1,5 +1,5 @@
1
1
  /*
2
- Winter Cardinal UI v0.267.0
2
+ Winter Cardinal UI v0.268.0
3
3
  Copyright (C) 2019 Toshiba Corporation
4
4
  SPDX-License-Identifier: Apache-2.0
5
5
 
@@ -44095,9 +44095,12 @@ var ESnapperGrid = /** @class */ (function (_super) {
44095
44095
  var _this = this;
44096
44096
  var _a, _b, _c;
44097
44097
  _this = _super.call(this) || this;
44098
- _this._isVisible = (_a = options === null || options === void 0 ? void 0 : options.visible) !== null && _a !== void 0 ? _a : theme.isSnapperGridVisible();
44099
- _this._isEnabled = (_b = options === null || options === void 0 ? void 0 : options.enable) !== null && _b !== void 0 ? _b : theme.isSnapperGridEnabled();
44100
- _this._size = (_c = options === null || options === void 0 ? void 0 : options.size) !== null && _c !== void 0 ? _c : theme.getSnapperGridSize();
44098
+ _this._isVisibleDefault = (_a = options === null || options === void 0 ? void 0 : options.visible) !== null && _a !== void 0 ? _a : theme.isSnapperGridVisible();
44099
+ _this._isVisible = _this._isVisibleDefault;
44100
+ _this._isEnabledDefault = (_b = options === null || options === void 0 ? void 0 : options.enable) !== null && _b !== void 0 ? _b : theme.isSnapperGridEnabled();
44101
+ _this._isEnabled = _this._isEnabledDefault;
44102
+ _this._sizeDefault = (_c = options === null || options === void 0 ? void 0 : options.size) !== null && _c !== void 0 ? _c : theme.getSnapperGridSize();
44103
+ _this._size = _this._sizeDefault;
44101
44104
  return _this;
44102
44105
  }
44103
44106
  Object.defineProperty(ESnapperGrid.prototype, "visible", {
@@ -44146,8 +44149,9 @@ var ESnapperGrid = /** @class */ (function (_super) {
44146
44149
  }
44147
44150
  };
44148
44151
  ESnapperGrid.prototype.reset = function () {
44149
- this._isEnabled = true;
44150
- this._size = 10;
44152
+ this._isVisible = this._isVisibleDefault;
44153
+ this._isEnabled = this._isEnabledDefault;
44154
+ this._size = this._sizeDefault;
44151
44155
  this.emit("change", this);
44152
44156
  };
44153
44157
  ESnapperGrid.prototype.serialize = function () {
@@ -44237,8 +44241,10 @@ var ESnapperTarget = /** @class */ (function (_super) {
44237
44241
  var _a, _b;
44238
44242
  _this = _super.call(this) || this;
44239
44243
  _this.values = [];
44240
- _this._isVisible = (_a = options === null || options === void 0 ? void 0 : options.visible) !== null && _a !== void 0 ? _a : theme.isSnapperTargetVisible();
44241
- _this._isEnabled = (_b = options === null || options === void 0 ? void 0 : options.enable) !== null && _b !== void 0 ? _b : theme.isSnapperTargetEnabled();
44244
+ _this._isVisibleDefault = (_a = options === null || options === void 0 ? void 0 : options.visible) !== null && _a !== void 0 ? _a : theme.isSnapperTargetVisible();
44245
+ _this._isVisible = _this._isVisibleDefault;
44246
+ _this._isEnabledDefault = (_b = options === null || options === void 0 ? void 0 : options.enable) !== null && _b !== void 0 ? _b : theme.isSnapperTargetEnabled();
44247
+ _this._isEnabled = _this._isEnabledDefault;
44242
44248
  return _this;
44243
44249
  }
44244
44250
  Object.defineProperty(ESnapperTarget.prototype, "enable", {
@@ -44324,8 +44330,8 @@ var ESnapperTarget = /** @class */ (function (_super) {
44324
44330
  }
44325
44331
  };
44326
44332
  ESnapperTarget.prototype.reset = function () {
44327
- this._isEnabled = true;
44328
- this._isVisible = true;
44333
+ this._isEnabled = this._isEnabledDefault;
44334
+ this._isVisible = this._isVisibleDefault;
44329
44335
  this.values.length = 0;
44330
44336
  this.emit("change", this);
44331
44337
  };
@@ -44400,7 +44406,8 @@ var ESnapper = /** @class */ (function (_super) {
44400
44406
  _this.grid = new ESnapperGrid(theme, options === null || options === void 0 ? void 0 : options.grid);
44401
44407
  _this.target = new ESnapperTarget(theme, options === null || options === void 0 ? void 0 : options.target);
44402
44408
  _this._parent = parent;
44403
- _this._isEnabled = (_a = options === null || options === void 0 ? void 0 : options.enable) !== null && _a !== void 0 ? _a : theme.isSnapperEnabled();
44409
+ _this._isEnabledDefault = (_a = options === null || options === void 0 ? void 0 : options.enable) !== null && _a !== void 0 ? _a : theme.isSnapperEnabled();
44410
+ _this._isEnabled = _this._isEnabledDefault;
44404
44411
  return _this;
44405
44412
  }
44406
44413
  Object.defineProperty(ESnapper.prototype, "enable", {
@@ -44776,7 +44783,7 @@ var ESnapper = /** @class */ (function (_super) {
44776
44783
  return false;
44777
44784
  };
44778
44785
  ESnapper.prototype.reset = function () {
44779
- this.enable = true;
44786
+ this.enable = this._isEnabledDefault;
44780
44787
  this.target.reset();
44781
44788
  this.grid.reset();
44782
44789
  };
@@ -1,5 +1,5 @@
1
1
  /*
2
- Winter Cardinal UI v0.267.0
2
+ Winter Cardinal UI v0.268.0
3
3
  Copyright (C) 2019 Toshiba Corporation
4
4
  SPDX-License-Identifier: Apache-2.0
5
5
 
@@ -44092,9 +44092,12 @@
44092
44092
  var _this = this;
44093
44093
  var _a, _b, _c;
44094
44094
  _this = _super.call(this) || this;
44095
- _this._isVisible = (_a = options === null || options === void 0 ? void 0 : options.visible) !== null && _a !== void 0 ? _a : theme.isSnapperGridVisible();
44096
- _this._isEnabled = (_b = options === null || options === void 0 ? void 0 : options.enable) !== null && _b !== void 0 ? _b : theme.isSnapperGridEnabled();
44097
- _this._size = (_c = options === null || options === void 0 ? void 0 : options.size) !== null && _c !== void 0 ? _c : theme.getSnapperGridSize();
44095
+ _this._isVisibleDefault = (_a = options === null || options === void 0 ? void 0 : options.visible) !== null && _a !== void 0 ? _a : theme.isSnapperGridVisible();
44096
+ _this._isVisible = _this._isVisibleDefault;
44097
+ _this._isEnabledDefault = (_b = options === null || options === void 0 ? void 0 : options.enable) !== null && _b !== void 0 ? _b : theme.isSnapperGridEnabled();
44098
+ _this._isEnabled = _this._isEnabledDefault;
44099
+ _this._sizeDefault = (_c = options === null || options === void 0 ? void 0 : options.size) !== null && _c !== void 0 ? _c : theme.getSnapperGridSize();
44100
+ _this._size = _this._sizeDefault;
44098
44101
  return _this;
44099
44102
  }
44100
44103
  Object.defineProperty(ESnapperGrid.prototype, "visible", {
@@ -44143,8 +44146,9 @@
44143
44146
  }
44144
44147
  };
44145
44148
  ESnapperGrid.prototype.reset = function () {
44146
- this._isEnabled = true;
44147
- this._size = 10;
44149
+ this._isVisible = this._isVisibleDefault;
44150
+ this._isEnabled = this._isEnabledDefault;
44151
+ this._size = this._sizeDefault;
44148
44152
  this.emit("change", this);
44149
44153
  };
44150
44154
  ESnapperGrid.prototype.serialize = function () {
@@ -44234,8 +44238,10 @@
44234
44238
  var _a, _b;
44235
44239
  _this = _super.call(this) || this;
44236
44240
  _this.values = [];
44237
- _this._isVisible = (_a = options === null || options === void 0 ? void 0 : options.visible) !== null && _a !== void 0 ? _a : theme.isSnapperTargetVisible();
44238
- _this._isEnabled = (_b = options === null || options === void 0 ? void 0 : options.enable) !== null && _b !== void 0 ? _b : theme.isSnapperTargetEnabled();
44241
+ _this._isVisibleDefault = (_a = options === null || options === void 0 ? void 0 : options.visible) !== null && _a !== void 0 ? _a : theme.isSnapperTargetVisible();
44242
+ _this._isVisible = _this._isVisibleDefault;
44243
+ _this._isEnabledDefault = (_b = options === null || options === void 0 ? void 0 : options.enable) !== null && _b !== void 0 ? _b : theme.isSnapperTargetEnabled();
44244
+ _this._isEnabled = _this._isEnabledDefault;
44239
44245
  return _this;
44240
44246
  }
44241
44247
  Object.defineProperty(ESnapperTarget.prototype, "enable", {
@@ -44321,8 +44327,8 @@
44321
44327
  }
44322
44328
  };
44323
44329
  ESnapperTarget.prototype.reset = function () {
44324
- this._isEnabled = true;
44325
- this._isVisible = true;
44330
+ this._isEnabled = this._isEnabledDefault;
44331
+ this._isVisible = this._isVisibleDefault;
44326
44332
  this.values.length = 0;
44327
44333
  this.emit("change", this);
44328
44334
  };
@@ -44397,7 +44403,8 @@
44397
44403
  _this.grid = new ESnapperGrid(theme, options === null || options === void 0 ? void 0 : options.grid);
44398
44404
  _this.target = new ESnapperTarget(theme, options === null || options === void 0 ? void 0 : options.target);
44399
44405
  _this._parent = parent;
44400
- _this._isEnabled = (_a = options === null || options === void 0 ? void 0 : options.enable) !== null && _a !== void 0 ? _a : theme.isSnapperEnabled();
44406
+ _this._isEnabledDefault = (_a = options === null || options === void 0 ? void 0 : options.enable) !== null && _a !== void 0 ? _a : theme.isSnapperEnabled();
44407
+ _this._isEnabled = _this._isEnabledDefault;
44401
44408
  return _this;
44402
44409
  }
44403
44410
  Object.defineProperty(ESnapper.prototype, "enable", {
@@ -44773,7 +44780,7 @@
44773
44780
  return false;
44774
44781
  };
44775
44782
  ESnapper.prototype.reset = function () {
44776
- this.enable = true;
44783
+ this.enable = this._isEnabledDefault;
44777
44784
  this.target.reset();
44778
44785
  this.grid.reset();
44779
44786
  };