@itwin/hypermodeling-frontend 3.2.0-dev.8 → 3.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,6 +1,48 @@
1
1
  # Change Log - @itwin/hypermodeling-frontend
2
2
 
3
- This log was last generated on Thu, 24 Feb 2022 15:26:55 GMT and should not be manually modified.
3
+ This log was last generated on Tue, 07 Jun 2022 15:02:56 GMT and should not be manually modified.
4
+
5
+ ## 3.2.1
6
+ Tue, 07 Jun 2022 15:02:56 GMT
7
+
8
+ _Version update only_
9
+
10
+ ## 3.2.0
11
+ Fri, 20 May 2022 13:10:54 GMT
12
+
13
+ ### Updates
14
+
15
+ - Increase delay before popup toolbar disappears.
16
+
17
+ ## 3.1.3
18
+ Fri, 15 Apr 2022 13:49:25 GMT
19
+
20
+ _Version update only_
21
+
22
+ ## 3.1.2
23
+ Wed, 06 Apr 2022 22:27:56 GMT
24
+
25
+ _Version update only_
26
+
27
+ ## 3.1.1
28
+ Thu, 31 Mar 2022 15:55:48 GMT
29
+
30
+ _Version update only_
31
+
32
+ ## 3.1.0
33
+ Tue, 29 Mar 2022 20:53:47 GMT
34
+
35
+ _Version update only_
36
+
37
+ ## 3.0.3
38
+ Fri, 25 Mar 2022 15:10:02 GMT
39
+
40
+ _Version update only_
41
+
42
+ ## 3.0.2
43
+ Thu, 10 Mar 2022 21:18:13 GMT
44
+
45
+ _Version update only_
4
46
 
5
47
  ## 3.0.1
6
48
  Thu, 24 Feb 2022 15:26:55 GMT
@@ -1 +1 @@
1
- {"version":3,"file":"PopupToolbar.d.ts","sourceRoot":"","sources":["../../src/PopupToolbar.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAGlE,gBAAgB;AAChB,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,oBAAoB,CAAC;IACnC,kBAAkB,EAAE,OAAO,CAAC;IAC5B,eAAe,EAAE,KAAK,CAAC;IACvB,WAAW,EAAE,WAAW,GAAG,SAAS,CAAC;IACrC,qBAAqB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;CACzC;AAED,gBAAgB;AAChB,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAuB;IAChD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAuB;IAE/C,OAAO,CAAC,MAAM,CAAC,IAAI;IAenB,OAAO,CAAC,MAAM,CAAC,aAAa,CAM1B;IAEF,OAAO,CAAC,MAAM,CAAC,OAAO,CAIpB;IAEF,OAAO,CAAC,MAAM,CAAC,KAAK;IAKpB,OAAO,CAAC,MAAM,CAAC,iBAAiB;WAUlB,uBAAuB,CAAC,QAAQ,EAAE,oBAAoB,GAAG,IAAI;CAO5E"}
1
+ {"version":3,"file":"PopupToolbar.d.ts","sourceRoot":"","sources":["../../src/PopupToolbar.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAGlE,gBAAgB;AAChB,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,oBAAoB,CAAC;IACnC,kBAAkB,EAAE,OAAO,CAAC;IAC5B,eAAe,EAAE,KAAK,CAAC;IACvB,WAAW,EAAE,WAAW,GAAG,SAAS,CAAC;IACrC,qBAAqB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;CACzC;AAED,gBAAgB;AAChB,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAuB;IAChD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAuB;IAE/C,OAAO,CAAC,MAAM,CAAC,IAAI;IAenB,OAAO,CAAC,MAAM,CAAC,aAAa,CAM1B;IAEF,OAAO,CAAC,MAAM,CAAC,OAAO,CAIpB;IAEF,OAAO,CAAC,MAAM,CAAC,KAAK;IAKpB,OAAO,CAAC,MAAM,CAAC,iBAAiB;WAWlB,uBAAuB,CAAC,QAAQ,EAAE,oBAAoB,GAAG,IAAI;CAO5E"}
@@ -30,8 +30,9 @@ class PopupToolbarManager {
30
30
  static closeAfterTimeout() {
31
31
  if (!this._current)
32
32
  return;
33
+ const delay = 1000;
33
34
  if (this._current.overToolbarHotspot || !core_frontend_1.IModelApp.toolAdmin.cursorView)
34
- setTimeout(() => this.closeAfterTimeout(), 500); // Cursor not in view or over hotspot, check again
35
+ setTimeout(() => this.closeAfterTimeout(), delay); // Cursor not in view or over hotspot, check again
35
36
  else
36
37
  this.close();
37
38
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PopupToolbar.js","sourceRoot":"","sources":["../../src/PopupToolbar.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAIH,wDAAiD;AAWjD,gBAAgB;AAChB,MAAa,mBAAmB;IAItB,MAAM,CAAC,IAAI;QACjB,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAC5B,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,kBAAkB;YACnC,OAAO,KAAK,CAAC;QAEf,MAAM,KAAK,GAAG,yBAAS,CAAC,OAAO,CAAC;QAChC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC;YACrJ,OAAO,KAAK,CAAC;QAEf,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;QAC/B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAgBO,MAAM,CAAC,KAAK;QAClB,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;QAC1B,OAAO,yBAAS,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IACzC,CAAC;IAEO,MAAM,CAAC,iBAAiB;QAC9B,IAAI,CAAC,IAAI,CAAC,QAAQ;YAChB,OAAO;QAET,IAAI,IAAI,CAAC,QAAQ,CAAC,kBAAkB,IAAI,CAAC,yBAAS,CAAC,SAAS,CAAC,UAAU;YACrE,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,kDAAkD;;YAEnG,IAAI,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC;IAEM,MAAM,CAAC,uBAAuB,CAAC,QAA8B;QAClE,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ;YAC5B,OAAO;QAET,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;IACrC,CAAC;;AAtDH,kDAuDC;AApCgB,iCAAa,GAAG,CAAC,IAAS,EAAE,EAAE;IAC3C,MAAM,GAAG,GAAG,mBAAmB,CAAC;IAChC,IAAI,GAAG,CAAC,QAAQ;QACd,GAAG,CAAC,QAAQ,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAE9C,GAAG,CAAC,KAAK,EAAE,CAAC;AACd,CAAC,CAAC;AAEa,2BAAO,GAAG,GAAG,EAAE;IAC5B,MAAM,GAAG,GAAG,mBAAmB,CAAC;IAChC,IAAI,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,kBAAkB;QACnD,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,wCAAwC;AACzD,CAAC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module HyperModeling\r\n */\r\n\r\nimport { XAndY } from \"@itwin/core-geometry\";\r\nimport type { AbstractToolbarProps } from \"@itwin/appui-abstract\";\r\nimport { IModelApp } from \"@itwin/core-frontend\";\r\n\r\n/** @internal */\r\nexport interface PopupToolbarProvider {\r\n toolbarProps: AbstractToolbarProps;\r\n overToolbarHotspot: boolean;\r\n toolbarLocation: XAndY;\r\n htmlElement: HTMLElement | undefined;\r\n onToolbarItemExecuted(id: string): void;\r\n}\r\n\r\n/** @internal */\r\nexport class PopupToolbarManager {\r\n private static _provider?: PopupToolbarProvider;\r\n private static _current?: PopupToolbarProvider;\r\n\r\n private static show(): boolean {\r\n const prov = this._provider;\r\n if (!prov || !prov.overToolbarHotspot)\r\n return false;\r\n\r\n const admin = IModelApp.uiAdmin;\r\n if (!admin.showToolbar(prov.toolbarProps, prov.toolbarLocation, admin.createXAndY(0, 0), this._itemExecuted, this._cancel, undefined, prov.htmlElement))\r\n return false;\r\n\r\n this._current = this._provider;\r\n this._provider = undefined;\r\n this.closeAfterTimeout();\r\n return true;\r\n }\r\n\r\n private static _itemExecuted = (item: any) => {\r\n const mgr = PopupToolbarManager;\r\n if (mgr._current)\r\n mgr._current.onToolbarItemExecuted(item.id);\r\n\r\n mgr.close();\r\n };\r\n\r\n private static _cancel = () => {\r\n const mgr = PopupToolbarManager;\r\n if (!mgr._current || !mgr._current.overToolbarHotspot)\r\n mgr.close(); // Don't hide when click is over hotspot\r\n };\r\n\r\n private static close(): boolean {\r\n this._current = undefined;\r\n return IModelApp.uiAdmin.hideToolbar();\r\n }\r\n\r\n private static closeAfterTimeout(): void {\r\n if (!this._current)\r\n return;\r\n\r\n if (this._current.overToolbarHotspot || !IModelApp.toolAdmin.cursorView)\r\n setTimeout(() => this.closeAfterTimeout(), 500); // Cursor not in view or over hotspot, check again\r\n else\r\n this.close();\r\n }\r\n\r\n public static showToolbarAfterTimeout(provider: PopupToolbarProvider): void {\r\n if (this._current === provider)\r\n return;\r\n\r\n this._provider = provider;\r\n setTimeout(() => this.show(), 500);\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"PopupToolbar.js","sourceRoot":"","sources":["../../src/PopupToolbar.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAIH,wDAAiD;AAWjD,gBAAgB;AAChB,MAAa,mBAAmB;IAItB,MAAM,CAAC,IAAI;QACjB,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAC5B,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,kBAAkB;YACnC,OAAO,KAAK,CAAC;QAEf,MAAM,KAAK,GAAG,yBAAS,CAAC,OAAO,CAAC;QAChC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC;YACrJ,OAAO,KAAK,CAAC;QAEf,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;QAC/B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAgBO,MAAM,CAAC,KAAK;QAClB,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;QAC1B,OAAO,yBAAS,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IACzC,CAAC;IAEO,MAAM,CAAC,iBAAiB;QAC9B,IAAI,CAAC,IAAI,CAAC,QAAQ;YAChB,OAAO;QAET,MAAM,KAAK,GAAG,IAAI,CAAC;QACnB,IAAI,IAAI,CAAC,QAAQ,CAAC,kBAAkB,IAAI,CAAC,yBAAS,CAAC,SAAS,CAAC,UAAU;YACrE,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,kDAAkD;;YAErG,IAAI,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC;IAEM,MAAM,CAAC,uBAAuB,CAAC,QAA8B;QAClE,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ;YAC5B,OAAO;QAET,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;IACrC,CAAC;;AAvDH,kDAwDC;AArCgB,iCAAa,GAAG,CAAC,IAAS,EAAE,EAAE;IAC3C,MAAM,GAAG,GAAG,mBAAmB,CAAC;IAChC,IAAI,GAAG,CAAC,QAAQ;QACd,GAAG,CAAC,QAAQ,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAE9C,GAAG,CAAC,KAAK,EAAE,CAAC;AACd,CAAC,CAAC;AAEa,2BAAO,GAAG,GAAG,EAAE;IAC5B,MAAM,GAAG,GAAG,mBAAmB,CAAC;IAChC,IAAI,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,kBAAkB;QACnD,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,wCAAwC;AACzD,CAAC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module HyperModeling\r\n */\r\n\r\nimport { XAndY } from \"@itwin/core-geometry\";\r\nimport type { AbstractToolbarProps } from \"@itwin/appui-abstract\";\r\nimport { IModelApp } from \"@itwin/core-frontend\";\r\n\r\n/** @internal */\r\nexport interface PopupToolbarProvider {\r\n toolbarProps: AbstractToolbarProps;\r\n overToolbarHotspot: boolean;\r\n toolbarLocation: XAndY;\r\n htmlElement: HTMLElement | undefined;\r\n onToolbarItemExecuted(id: string): void;\r\n}\r\n\r\n/** @internal */\r\nexport class PopupToolbarManager {\r\n private static _provider?: PopupToolbarProvider;\r\n private static _current?: PopupToolbarProvider;\r\n\r\n private static show(): boolean {\r\n const prov = this._provider;\r\n if (!prov || !prov.overToolbarHotspot)\r\n return false;\r\n\r\n const admin = IModelApp.uiAdmin;\r\n if (!admin.showToolbar(prov.toolbarProps, prov.toolbarLocation, admin.createXAndY(0, 0), this._itemExecuted, this._cancel, undefined, prov.htmlElement))\r\n return false;\r\n\r\n this._current = this._provider;\r\n this._provider = undefined;\r\n this.closeAfterTimeout();\r\n return true;\r\n }\r\n\r\n private static _itemExecuted = (item: any) => {\r\n const mgr = PopupToolbarManager;\r\n if (mgr._current)\r\n mgr._current.onToolbarItemExecuted(item.id);\r\n\r\n mgr.close();\r\n };\r\n\r\n private static _cancel = () => {\r\n const mgr = PopupToolbarManager;\r\n if (!mgr._current || !mgr._current.overToolbarHotspot)\r\n mgr.close(); // Don't hide when click is over hotspot\r\n };\r\n\r\n private static close(): boolean {\r\n this._current = undefined;\r\n return IModelApp.uiAdmin.hideToolbar();\r\n }\r\n\r\n private static closeAfterTimeout(): void {\r\n if (!this._current)\r\n return;\r\n\r\n const delay = 1000;\r\n if (this._current.overToolbarHotspot || !IModelApp.toolAdmin.cursorView)\r\n setTimeout(() => this.closeAfterTimeout(), delay); // Cursor not in view or over hotspot, check again\r\n else\r\n this.close();\r\n }\r\n\r\n public static showToolbarAfterTimeout(provider: PopupToolbarProvider): void {\r\n if (this._current === provider)\r\n return;\r\n\r\n this._provider = provider;\r\n setTimeout(() => this.show(), 500);\r\n }\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"PopupToolbar.d.ts","sourceRoot":"","sources":["../../src/PopupToolbar.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAGlE,gBAAgB;AAChB,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,oBAAoB,CAAC;IACnC,kBAAkB,EAAE,OAAO,CAAC;IAC5B,eAAe,EAAE,KAAK,CAAC;IACvB,WAAW,EAAE,WAAW,GAAG,SAAS,CAAC;IACrC,qBAAqB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;CACzC;AAED,gBAAgB;AAChB,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAuB;IAChD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAuB;IAE/C,OAAO,CAAC,MAAM,CAAC,IAAI;IAenB,OAAO,CAAC,MAAM,CAAC,aAAa,CAM1B;IAEF,OAAO,CAAC,MAAM,CAAC,OAAO,CAIpB;IAEF,OAAO,CAAC,MAAM,CAAC,KAAK;IAKpB,OAAO,CAAC,MAAM,CAAC,iBAAiB;WAUlB,uBAAuB,CAAC,QAAQ,EAAE,oBAAoB,GAAG,IAAI;CAO5E"}
1
+ {"version":3,"file":"PopupToolbar.d.ts","sourceRoot":"","sources":["../../src/PopupToolbar.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAGlE,gBAAgB;AAChB,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,oBAAoB,CAAC;IACnC,kBAAkB,EAAE,OAAO,CAAC;IAC5B,eAAe,EAAE,KAAK,CAAC;IACvB,WAAW,EAAE,WAAW,GAAG,SAAS,CAAC;IACrC,qBAAqB,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;CACzC;AAED,gBAAgB;AAChB,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAuB;IAChD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAuB;IAE/C,OAAO,CAAC,MAAM,CAAC,IAAI;IAenB,OAAO,CAAC,MAAM,CAAC,aAAa,CAM1B;IAEF,OAAO,CAAC,MAAM,CAAC,OAAO,CAIpB;IAEF,OAAO,CAAC,MAAM,CAAC,KAAK;IAKpB,OAAO,CAAC,MAAM,CAAC,iBAAiB;WAWlB,uBAAuB,CAAC,QAAQ,EAAE,oBAAoB,GAAG,IAAI;CAO5E"}
@@ -27,8 +27,9 @@ export class PopupToolbarManager {
27
27
  static closeAfterTimeout() {
28
28
  if (!this._current)
29
29
  return;
30
+ const delay = 1000;
30
31
  if (this._current.overToolbarHotspot || !IModelApp.toolAdmin.cursorView)
31
- setTimeout(() => this.closeAfterTimeout(), 500); // Cursor not in view or over hotspot, check again
32
+ setTimeout(() => this.closeAfterTimeout(), delay); // Cursor not in view or over hotspot, check again
32
33
  else
33
34
  this.close();
34
35
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PopupToolbar.js","sourceRoot":"","sources":["../../src/PopupToolbar.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAIH,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAWjD,gBAAgB;AAChB,MAAM,OAAO,mBAAmB;IAItB,MAAM,CAAC,IAAI;QACjB,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAC5B,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,kBAAkB;YACnC,OAAO,KAAK,CAAC;QAEf,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC;QAChC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC;YACrJ,OAAO,KAAK,CAAC;QAEf,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;QAC/B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAgBO,MAAM,CAAC,KAAK;QAClB,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;QAC1B,OAAO,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IACzC,CAAC;IAEO,MAAM,CAAC,iBAAiB;QAC9B,IAAI,CAAC,IAAI,CAAC,QAAQ;YAChB,OAAO;QAET,IAAI,IAAI,CAAC,QAAQ,CAAC,kBAAkB,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,UAAU;YACrE,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,kDAAkD;;YAEnG,IAAI,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC;IAEM,MAAM,CAAC,uBAAuB,CAAC,QAA8B;QAClE,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ;YAC5B,OAAO;QAET,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;IACrC,CAAC;;AAnCc,iCAAa,GAAG,CAAC,IAAS,EAAE,EAAE;IAC3C,MAAM,GAAG,GAAG,mBAAmB,CAAC;IAChC,IAAI,GAAG,CAAC,QAAQ;QACd,GAAG,CAAC,QAAQ,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAE9C,GAAG,CAAC,KAAK,EAAE,CAAC;AACd,CAAC,CAAC;AAEa,2BAAO,GAAG,GAAG,EAAE;IAC5B,MAAM,GAAG,GAAG,mBAAmB,CAAC;IAChC,IAAI,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,kBAAkB;QACnD,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,wCAAwC;AACzD,CAAC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module HyperModeling\r\n */\r\n\r\nimport { XAndY } from \"@itwin/core-geometry\";\r\nimport type { AbstractToolbarProps } from \"@itwin/appui-abstract\";\r\nimport { IModelApp } from \"@itwin/core-frontend\";\r\n\r\n/** @internal */\r\nexport interface PopupToolbarProvider {\r\n toolbarProps: AbstractToolbarProps;\r\n overToolbarHotspot: boolean;\r\n toolbarLocation: XAndY;\r\n htmlElement: HTMLElement | undefined;\r\n onToolbarItemExecuted(id: string): void;\r\n}\r\n\r\n/** @internal */\r\nexport class PopupToolbarManager {\r\n private static _provider?: PopupToolbarProvider;\r\n private static _current?: PopupToolbarProvider;\r\n\r\n private static show(): boolean {\r\n const prov = this._provider;\r\n if (!prov || !prov.overToolbarHotspot)\r\n return false;\r\n\r\n const admin = IModelApp.uiAdmin;\r\n if (!admin.showToolbar(prov.toolbarProps, prov.toolbarLocation, admin.createXAndY(0, 0), this._itemExecuted, this._cancel, undefined, prov.htmlElement))\r\n return false;\r\n\r\n this._current = this._provider;\r\n this._provider = undefined;\r\n this.closeAfterTimeout();\r\n return true;\r\n }\r\n\r\n private static _itemExecuted = (item: any) => {\r\n const mgr = PopupToolbarManager;\r\n if (mgr._current)\r\n mgr._current.onToolbarItemExecuted(item.id);\r\n\r\n mgr.close();\r\n };\r\n\r\n private static _cancel = () => {\r\n const mgr = PopupToolbarManager;\r\n if (!mgr._current || !mgr._current.overToolbarHotspot)\r\n mgr.close(); // Don't hide when click is over hotspot\r\n };\r\n\r\n private static close(): boolean {\r\n this._current = undefined;\r\n return IModelApp.uiAdmin.hideToolbar();\r\n }\r\n\r\n private static closeAfterTimeout(): void {\r\n if (!this._current)\r\n return;\r\n\r\n if (this._current.overToolbarHotspot || !IModelApp.toolAdmin.cursorView)\r\n setTimeout(() => this.closeAfterTimeout(), 500); // Cursor not in view or over hotspot, check again\r\n else\r\n this.close();\r\n }\r\n\r\n public static showToolbarAfterTimeout(provider: PopupToolbarProvider): void {\r\n if (this._current === provider)\r\n return;\r\n\r\n this._provider = provider;\r\n setTimeout(() => this.show(), 500);\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"PopupToolbar.js","sourceRoot":"","sources":["../../src/PopupToolbar.ts"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAIH,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAWjD,gBAAgB;AAChB,MAAM,OAAO,mBAAmB;IAItB,MAAM,CAAC,IAAI;QACjB,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAC5B,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,kBAAkB;YACnC,OAAO,KAAK,CAAC;QAEf,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC;QAChC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC;YACrJ,OAAO,KAAK,CAAC;QAEf,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;QAC/B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAgBO,MAAM,CAAC,KAAK;QAClB,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;QAC1B,OAAO,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;IACzC,CAAC;IAEO,MAAM,CAAC,iBAAiB;QAC9B,IAAI,CAAC,IAAI,CAAC,QAAQ;YAChB,OAAO;QAET,MAAM,KAAK,GAAG,IAAI,CAAC;QACnB,IAAI,IAAI,CAAC,QAAQ,CAAC,kBAAkB,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,UAAU;YACrE,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,kDAAkD;;YAErG,IAAI,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC;IAEM,MAAM,CAAC,uBAAuB,CAAC,QAA8B;QAClE,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ;YAC5B,OAAO;QAET,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC1B,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC;IACrC,CAAC;;AApCc,iCAAa,GAAG,CAAC,IAAS,EAAE,EAAE;IAC3C,MAAM,GAAG,GAAG,mBAAmB,CAAC;IAChC,IAAI,GAAG,CAAC,QAAQ;QACd,GAAG,CAAC,QAAQ,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAE9C,GAAG,CAAC,KAAK,EAAE,CAAC;AACd,CAAC,CAAC;AAEa,2BAAO,GAAG,GAAG,EAAE;IAC5B,MAAM,GAAG,GAAG,mBAAmB,CAAC;IAChC,IAAI,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,kBAAkB;QACnD,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,wCAAwC;AACzD,CAAC,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module HyperModeling\r\n */\r\n\r\nimport { XAndY } from \"@itwin/core-geometry\";\r\nimport type { AbstractToolbarProps } from \"@itwin/appui-abstract\";\r\nimport { IModelApp } from \"@itwin/core-frontend\";\r\n\r\n/** @internal */\r\nexport interface PopupToolbarProvider {\r\n toolbarProps: AbstractToolbarProps;\r\n overToolbarHotspot: boolean;\r\n toolbarLocation: XAndY;\r\n htmlElement: HTMLElement | undefined;\r\n onToolbarItemExecuted(id: string): void;\r\n}\r\n\r\n/** @internal */\r\nexport class PopupToolbarManager {\r\n private static _provider?: PopupToolbarProvider;\r\n private static _current?: PopupToolbarProvider;\r\n\r\n private static show(): boolean {\r\n const prov = this._provider;\r\n if (!prov || !prov.overToolbarHotspot)\r\n return false;\r\n\r\n const admin = IModelApp.uiAdmin;\r\n if (!admin.showToolbar(prov.toolbarProps, prov.toolbarLocation, admin.createXAndY(0, 0), this._itemExecuted, this._cancel, undefined, prov.htmlElement))\r\n return false;\r\n\r\n this._current = this._provider;\r\n this._provider = undefined;\r\n this.closeAfterTimeout();\r\n return true;\r\n }\r\n\r\n private static _itemExecuted = (item: any) => {\r\n const mgr = PopupToolbarManager;\r\n if (mgr._current)\r\n mgr._current.onToolbarItemExecuted(item.id);\r\n\r\n mgr.close();\r\n };\r\n\r\n private static _cancel = () => {\r\n const mgr = PopupToolbarManager;\r\n if (!mgr._current || !mgr._current.overToolbarHotspot)\r\n mgr.close(); // Don't hide when click is over hotspot\r\n };\r\n\r\n private static close(): boolean {\r\n this._current = undefined;\r\n return IModelApp.uiAdmin.hideToolbar();\r\n }\r\n\r\n private static closeAfterTimeout(): void {\r\n if (!this._current)\r\n return;\r\n\r\n const delay = 1000;\r\n if (this._current.overToolbarHotspot || !IModelApp.toolAdmin.cursorView)\r\n setTimeout(() => this.closeAfterTimeout(), delay); // Cursor not in view or over hotspot, check again\r\n else\r\n this.close();\r\n }\r\n\r\n public static showToolbarAfterTimeout(provider: PopupToolbarProvider): void {\r\n if (this._current === provider)\r\n return;\r\n\r\n this._provider = provider;\r\n setTimeout(() => this.show(), 500);\r\n }\r\n}\r\n"]}
package/package.json CHANGED
@@ -1,11 +1,10 @@
1
1
  {
2
2
  "name": "@itwin/hypermodeling-frontend",
3
- "version": "3.2.0-dev.8",
3
+ "version": "3.2.1",
4
4
  "description": "iTwin.js hypermodeling package",
5
5
  "main": "lib/cjs/hypermodeling-frontend.js",
6
6
  "module": "lib/esm/hypermodeling-frontend.js",
7
7
  "typings": "lib/cjs/hypermodeling-frontend",
8
- "imodeljsSharedLibrary": true,
9
8
  "license": "MIT",
10
9
  "repository": {
11
10
  "type": "git",
@@ -22,22 +21,22 @@
22
21
  "url": "http://www.bentley.com"
23
22
  },
24
23
  "peerDependencies": {
25
- "@itwin/core-bentley": "^3.2.0-dev.8",
26
- "@itwin/core-common": "^3.2.0-dev.8",
27
- "@itwin/core-frontend": "^3.2.0-dev.8",
28
- "@itwin/core-geometry": "^3.2.0-dev.8"
24
+ "@itwin/core-bentley": "^3.2.1",
25
+ "@itwin/core-common": "^3.2.1",
26
+ "@itwin/core-frontend": "^3.2.1",
27
+ "@itwin/core-geometry": "^3.2.1"
29
28
  },
30
29
  "devDependencies": {
31
- "@itwin/build-tools": "3.2.0-dev.8",
32
- "@itwin/core-bentley": "3.2.0-dev.8",
33
- "@itwin/core-common": "3.2.0-dev.8",
34
- "@itwin/core-frontend": "3.2.0-dev.8",
35
- "@itwin/core-geometry": "3.2.0-dev.8",
36
- "@itwin/certa": "3.2.0-dev.8",
37
- "@itwin/eslint-plugin": "3.2.0-dev.8",
30
+ "@itwin/build-tools": "3.2.1",
31
+ "@itwin/core-bentley": "3.2.1",
32
+ "@itwin/core-common": "3.2.1",
33
+ "@itwin/core-frontend": "3.2.1",
34
+ "@itwin/core-geometry": "3.2.1",
35
+ "@itwin/certa": "3.2.1",
36
+ "@itwin/eslint-plugin": "3.2.1",
38
37
  "@types/chai": "^4.1.4",
39
38
  "@types/mocha": "^8.2.2",
40
- "@types/node": "14.14.31",
39
+ "@types/node": "16.11.7",
41
40
  "chai": "^4.1.2",
42
41
  "cpx2": "^3.0.0",
43
42
  "eslint": "^7.11.0",
@@ -50,7 +49,7 @@
50
49
  "webpack": "4.42.0"
51
50
  },
52
51
  "dependencies": {
53
- "@itwin/appui-abstract": "3.2.0-dev.8"
52
+ "@itwin/appui-abstract": "3.2.1"
54
53
  },
55
54
  "nyc": {
56
55
  "extends": "./node_modules/@itwin/build-tools/.nycrc"