@itwin/appui-abstract 3.4.0-dev.61 → 3.4.0-dev.63

Sign up to get free protection for your applications and to get access to all the features.
Files changed (308) hide show
  1. package/CHANGELOG.md +16 -1
  2. package/lib/cjs/appui-abstract/BaseUiItemsProvider.d.ts +30 -30
  3. package/lib/cjs/appui-abstract/BaseUiItemsProvider.js +79 -79
  4. package/lib/cjs/appui-abstract/BaseUiItemsProvider.js.map +1 -1
  5. package/lib/cjs/appui-abstract/UiAdmin.d.ts +221 -221
  6. package/lib/cjs/appui-abstract/UiAdmin.js +224 -224
  7. package/lib/cjs/appui-abstract/UiAdmin.js.map +1 -1
  8. package/lib/cjs/appui-abstract/UiItemsManager.d.ts +110 -110
  9. package/lib/cjs/appui-abstract/UiItemsManager.js +199 -199
  10. package/lib/cjs/appui-abstract/UiItemsManager.js.map +1 -1
  11. package/lib/cjs/appui-abstract/UiItemsProvider.d.ts +27 -27
  12. package/lib/cjs/appui-abstract/UiItemsProvider.js +10 -10
  13. package/lib/cjs/appui-abstract/UiItemsProvider.js.map +1 -1
  14. package/lib/cjs/appui-abstract/backstage/BackstageItem.d.ts +83 -83
  15. package/lib/cjs/appui-abstract/backstage/BackstageItem.js +64 -64
  16. package/lib/cjs/appui-abstract/backstage/BackstageItem.js.map +1 -1
  17. package/lib/cjs/appui-abstract/backstage/BackstageItemsManager.d.ts +38 -38
  18. package/lib/cjs/appui-abstract/backstage/BackstageItemsManager.js +133 -133
  19. package/lib/cjs/appui-abstract/backstage/BackstageItemsManager.js.map +1 -1
  20. package/lib/cjs/appui-abstract/common/KeyboardKey.d.ts +51 -51
  21. package/lib/cjs/appui-abstract/common/KeyboardKey.js +63 -63
  22. package/lib/cjs/appui-abstract/common/KeyboardKey.js.map +1 -1
  23. package/lib/cjs/appui-abstract/content/ContentLayoutProps.d.ts +62 -62
  24. package/lib/cjs/appui-abstract/content/ContentLayoutProps.js +9 -9
  25. package/lib/cjs/appui-abstract/content/ContentLayoutProps.js.map +1 -1
  26. package/lib/cjs/appui-abstract/content/StandardContentLayouts.d.ts +19 -19
  27. package/lib/cjs/appui-abstract/content/StandardContentLayouts.js +108 -108
  28. package/lib/cjs/appui-abstract/content/StandardContentLayouts.js.map +1 -1
  29. package/lib/cjs/appui-abstract/dialogs/DialogItem.d.ts +76 -76
  30. package/lib/cjs/appui-abstract/dialogs/DialogItem.js +67 -67
  31. package/lib/cjs/appui-abstract/dialogs/DialogItem.js.map +1 -1
  32. package/lib/cjs/appui-abstract/dialogs/UiDataProvider.d.ts +55 -55
  33. package/lib/cjs/appui-abstract/dialogs/UiDataProvider.js +66 -66
  34. package/lib/cjs/appui-abstract/dialogs/UiDataProvider.js.map +1 -1
  35. package/lib/cjs/appui-abstract/dialogs/UiLayoutDataProvider.d.ts +97 -97
  36. package/lib/cjs/appui-abstract/dialogs/UiLayoutDataProvider.js +175 -175
  37. package/lib/cjs/appui-abstract/dialogs/UiLayoutDataProvider.js.map +1 -1
  38. package/lib/cjs/appui-abstract/items/AbstractItemProps.d.ts +53 -53
  39. package/lib/cjs/appui-abstract/items/AbstractItemProps.js +9 -9
  40. package/lib/cjs/appui-abstract/items/AbstractItemProps.js.map +1 -1
  41. package/lib/cjs/appui-abstract/items/AbstractMenuItemProps.d.ts +20 -20
  42. package/lib/cjs/appui-abstract/items/AbstractMenuItemProps.js +9 -9
  43. package/lib/cjs/appui-abstract/items/AbstractMenuItemProps.js.map +1 -1
  44. package/lib/cjs/appui-abstract/items/AbstractToolbarProps.d.ts +13 -13
  45. package/lib/cjs/appui-abstract/items/AbstractToolbarProps.js +9 -9
  46. package/lib/cjs/appui-abstract/items/AbstractToolbarProps.js.map +1 -1
  47. package/lib/cjs/appui-abstract/items/BadgeType.d.ts +14 -14
  48. package/lib/cjs/appui-abstract/items/BadgeType.js +22 -22
  49. package/lib/cjs/appui-abstract/items/BadgeType.js.map +1 -1
  50. package/lib/cjs/appui-abstract/items/ConditionalBooleanValue.d.ts +27 -27
  51. package/lib/cjs/appui-abstract/items/ConditionalBooleanValue.js +60 -60
  52. package/lib/cjs/appui-abstract/items/ConditionalBooleanValue.js.map +1 -1
  53. package/lib/cjs/appui-abstract/items/ConditionalStringValue.d.ts +29 -29
  54. package/lib/cjs/appui-abstract/items/ConditionalStringValue.js +62 -62
  55. package/lib/cjs/appui-abstract/items/ConditionalStringValue.js.map +1 -1
  56. package/lib/cjs/appui-abstract/items/ProvidedItem.d.ts +10 -10
  57. package/lib/cjs/appui-abstract/items/ProvidedItem.js +9 -9
  58. package/lib/cjs/appui-abstract/items/ProvidedItem.js.map +1 -1
  59. package/lib/cjs/appui-abstract/items/RelativePosition.d.ts +18 -18
  60. package/lib/cjs/appui-abstract/items/RelativePosition.js +26 -26
  61. package/lib/cjs/appui-abstract/items/RelativePosition.js.map +1 -1
  62. package/lib/cjs/appui-abstract/items/StageUsage.d.ts +15 -15
  63. package/lib/cjs/appui-abstract/items/StageUsage.js +23 -23
  64. package/lib/cjs/appui-abstract/items/StageUsage.js.map +1 -1
  65. package/lib/cjs/appui-abstract/notification/MessagePresenter.d.ts +42 -42
  66. package/lib/cjs/appui-abstract/notification/MessagePresenter.js +24 -24
  67. package/lib/cjs/appui-abstract/notification/MessagePresenter.js.map +1 -1
  68. package/lib/cjs/appui-abstract/notification/MessageSeverity.d.ts +15 -15
  69. package/lib/cjs/appui-abstract/notification/MessageSeverity.js +23 -23
  70. package/lib/cjs/appui-abstract/notification/MessageSeverity.js.map +1 -1
  71. package/lib/cjs/appui-abstract/properties/Description.d.ts +127 -127
  72. package/lib/cjs/appui-abstract/properties/Description.js +196 -196
  73. package/lib/cjs/appui-abstract/properties/Description.js.map +1 -1
  74. package/lib/cjs/appui-abstract/properties/EditorParams.d.ts +260 -260
  75. package/lib/cjs/appui-abstract/properties/EditorParams.js +106 -106
  76. package/lib/cjs/appui-abstract/properties/EditorParams.js.map +1 -1
  77. package/lib/cjs/appui-abstract/properties/PrimitiveTypes.d.ts +60 -60
  78. package/lib/cjs/appui-abstract/properties/PrimitiveTypes.js +9 -9
  79. package/lib/cjs/appui-abstract/properties/PrimitiveTypes.js.map +1 -1
  80. package/lib/cjs/appui-abstract/properties/Record.d.ts +57 -57
  81. package/lib/cjs/appui-abstract/properties/Record.js +78 -78
  82. package/lib/cjs/appui-abstract/properties/Record.js.map +1 -1
  83. package/lib/cjs/appui-abstract/properties/StandardEditorNames.d.ts +22 -22
  84. package/lib/cjs/appui-abstract/properties/StandardEditorNames.js +30 -30
  85. package/lib/cjs/appui-abstract/properties/StandardEditorNames.js.map +1 -1
  86. package/lib/cjs/appui-abstract/properties/StandardTypeNames.d.ts +30 -30
  87. package/lib/cjs/appui-abstract/properties/StandardTypeNames.js +39 -39
  88. package/lib/cjs/appui-abstract/properties/StandardTypeNames.js.map +1 -1
  89. package/lib/cjs/appui-abstract/properties/Value.d.ts +49 -49
  90. package/lib/cjs/appui-abstract/properties/Value.js +20 -20
  91. package/lib/cjs/appui-abstract/properties/Value.js.map +1 -1
  92. package/lib/cjs/appui-abstract/quantity/BaseQuantityDescription.d.ts +22 -22
  93. package/lib/cjs/appui-abstract/quantity/BaseQuantityDescription.js +48 -48
  94. package/lib/cjs/appui-abstract/quantity/BaseQuantityDescription.js.map +1 -1
  95. package/lib/cjs/appui-abstract/statusbar/StatusBarItem.d.ts +116 -116
  96. package/lib/cjs/appui-abstract/statusbar/StatusBarItem.js +81 -81
  97. package/lib/cjs/appui-abstract/statusbar/StatusBarItem.js.map +1 -1
  98. package/lib/cjs/appui-abstract/statusbar/StatusBarItemsManager.d.ts +39 -39
  99. package/lib/cjs/appui-abstract/statusbar/StatusBarItemsManager.js +135 -135
  100. package/lib/cjs/appui-abstract/statusbar/StatusBarItemsManager.js.map +1 -1
  101. package/lib/cjs/appui-abstract/toolbars/ToolbarItem.d.ts +118 -118
  102. package/lib/cjs/appui-abstract/toolbars/ToolbarItem.js +62 -62
  103. package/lib/cjs/appui-abstract/toolbars/ToolbarItem.js.map +1 -1
  104. package/lib/cjs/appui-abstract/toolbars/ToolbarItemsManager.d.ts +45 -45
  105. package/lib/cjs/appui-abstract/toolbars/ToolbarItemsManager.js +235 -235
  106. package/lib/cjs/appui-abstract/toolbars/ToolbarItemsManager.js.map +1 -1
  107. package/lib/cjs/appui-abstract/utils/IconSpecUtilities.d.ts +29 -29
  108. package/lib/cjs/appui-abstract/utils/IconSpecUtilities.js +51 -51
  109. package/lib/cjs/appui-abstract/utils/IconSpecUtilities.js.map +1 -1
  110. package/lib/cjs/appui-abstract/utils/PointProps.d.ts +10 -10
  111. package/lib/cjs/appui-abstract/utils/PointProps.js +9 -9
  112. package/lib/cjs/appui-abstract/utils/PointProps.js.map +1 -1
  113. package/lib/cjs/appui-abstract/utils/UiError.d.ts +12 -12
  114. package/lib/cjs/appui-abstract/utils/UiError.js +22 -22
  115. package/lib/cjs/appui-abstract/utils/UiError.js.map +1 -1
  116. package/lib/cjs/appui-abstract/utils/UiEvent.d.ts +9 -9
  117. package/lib/cjs/appui-abstract/utils/UiEvent.js +17 -17
  118. package/lib/cjs/appui-abstract/utils/UiEvent.js.map +1 -1
  119. package/lib/cjs/appui-abstract/utils/UiEventDispatcher.d.ts +46 -46
  120. package/lib/cjs/appui-abstract/utils/UiEventDispatcher.js +131 -131
  121. package/lib/cjs/appui-abstract/utils/UiEventDispatcher.js.map +1 -1
  122. package/lib/cjs/appui-abstract/utils/callbacks.d.ts +20 -20
  123. package/lib/cjs/appui-abstract/utils/callbacks.js +9 -9
  124. package/lib/cjs/appui-abstract/utils/callbacks.js.map +1 -1
  125. package/lib/cjs/appui-abstract/utils/filter/charCode.d.ts +416 -416
  126. package/lib/cjs/appui-abstract/utils/filter/charCode.js +6 -6
  127. package/lib/cjs/appui-abstract/utils/filter/charCode.js.map +1 -1
  128. package/lib/cjs/appui-abstract/utils/filter/filters.d.ts +98 -98
  129. package/lib/cjs/appui-abstract/utils/filter/filters.js +709 -709
  130. package/lib/cjs/appui-abstract/utils/filter/filters.js.map +1 -1
  131. package/lib/cjs/appui-abstract/utils/filter/map.d.ts +59 -59
  132. package/lib/cjs/appui-abstract/utils/filter/map.js +404 -404
  133. package/lib/cjs/appui-abstract/utils/filter/map.js.map +1 -1
  134. package/lib/cjs/appui-abstract/utils/filter/strings.d.ts +20 -20
  135. package/lib/cjs/appui-abstract/utils/filter/strings.js +78 -78
  136. package/lib/cjs/appui-abstract/utils/filter/strings.js.map +1 -1
  137. package/lib/cjs/appui-abstract/utils/isLetter.d.ts +9 -9
  138. package/lib/cjs/appui-abstract/utils/isLetter.js +19 -19
  139. package/lib/cjs/appui-abstract/utils/isLetter.js.map +1 -1
  140. package/lib/cjs/appui-abstract/utils/misc.d.ts +11 -11
  141. package/lib/cjs/appui-abstract/utils/misc.js +36 -36
  142. package/lib/cjs/appui-abstract/utils/misc.js.map +1 -1
  143. package/lib/cjs/appui-abstract/widget/AbstractWidgetProps.d.ts +80 -80
  144. package/lib/cjs/appui-abstract/widget/AbstractWidgetProps.js +9 -9
  145. package/lib/cjs/appui-abstract/widget/AbstractWidgetProps.js.map +1 -1
  146. package/lib/cjs/appui-abstract/widget/StagePanel.d.ts +32 -32
  147. package/lib/cjs/appui-abstract/widget/StagePanel.js +42 -42
  148. package/lib/cjs/appui-abstract/widget/StagePanel.js.map +1 -1
  149. package/lib/cjs/appui-abstract/widget/WidgetState.d.ts +18 -18
  150. package/lib/cjs/appui-abstract/widget/WidgetState.js +26 -26
  151. package/lib/cjs/appui-abstract/widget/WidgetState.js.map +1 -1
  152. package/lib/cjs/appui-abstract.d.ts +105 -105
  153. package/lib/cjs/appui-abstract.js +121 -121
  154. package/lib/cjs/appui-abstract.js.map +1 -1
  155. package/lib/esm/appui-abstract/BaseUiItemsProvider.d.ts +30 -30
  156. package/lib/esm/appui-abstract/BaseUiItemsProvider.js +75 -75
  157. package/lib/esm/appui-abstract/BaseUiItemsProvider.js.map +1 -1
  158. package/lib/esm/appui-abstract/UiAdmin.d.ts +221 -221
  159. package/lib/esm/appui-abstract/UiAdmin.js +219 -219
  160. package/lib/esm/appui-abstract/UiAdmin.js.map +1 -1
  161. package/lib/esm/appui-abstract/UiItemsManager.d.ts +110 -110
  162. package/lib/esm/appui-abstract/UiItemsManager.js +195 -195
  163. package/lib/esm/appui-abstract/UiItemsManager.js.map +1 -1
  164. package/lib/esm/appui-abstract/UiItemsProvider.d.ts +27 -27
  165. package/lib/esm/appui-abstract/UiItemsProvider.js +9 -9
  166. package/lib/esm/appui-abstract/UiItemsProvider.js.map +1 -1
  167. package/lib/esm/appui-abstract/backstage/BackstageItem.d.ts +83 -83
  168. package/lib/esm/appui-abstract/backstage/BackstageItem.js +58 -58
  169. package/lib/esm/appui-abstract/backstage/BackstageItem.js.map +1 -1
  170. package/lib/esm/appui-abstract/backstage/BackstageItemsManager.d.ts +38 -38
  171. package/lib/esm/appui-abstract/backstage/BackstageItemsManager.js +129 -129
  172. package/lib/esm/appui-abstract/backstage/BackstageItemsManager.js.map +1 -1
  173. package/lib/esm/appui-abstract/common/KeyboardKey.d.ts +51 -51
  174. package/lib/esm/appui-abstract/common/KeyboardKey.js +59 -59
  175. package/lib/esm/appui-abstract/common/KeyboardKey.js.map +1 -1
  176. package/lib/esm/appui-abstract/content/ContentLayoutProps.d.ts +62 -62
  177. package/lib/esm/appui-abstract/content/ContentLayoutProps.js +8 -8
  178. package/lib/esm/appui-abstract/content/ContentLayoutProps.js.map +1 -1
  179. package/lib/esm/appui-abstract/content/StandardContentLayouts.d.ts +19 -19
  180. package/lib/esm/appui-abstract/content/StandardContentLayouts.js +104 -104
  181. package/lib/esm/appui-abstract/content/StandardContentLayouts.js.map +1 -1
  182. package/lib/esm/appui-abstract/dialogs/DialogItem.d.ts +76 -76
  183. package/lib/esm/appui-abstract/dialogs/DialogItem.js +63 -63
  184. package/lib/esm/appui-abstract/dialogs/DialogItem.js.map +1 -1
  185. package/lib/esm/appui-abstract/dialogs/UiDataProvider.d.ts +55 -55
  186. package/lib/esm/appui-abstract/dialogs/UiDataProvider.js +61 -61
  187. package/lib/esm/appui-abstract/dialogs/UiDataProvider.js.map +1 -1
  188. package/lib/esm/appui-abstract/dialogs/UiLayoutDataProvider.d.ts +97 -97
  189. package/lib/esm/appui-abstract/dialogs/UiLayoutDataProvider.js +170 -170
  190. package/lib/esm/appui-abstract/dialogs/UiLayoutDataProvider.js.map +1 -1
  191. package/lib/esm/appui-abstract/items/AbstractItemProps.d.ts +53 -53
  192. package/lib/esm/appui-abstract/items/AbstractItemProps.js +8 -8
  193. package/lib/esm/appui-abstract/items/AbstractItemProps.js.map +1 -1
  194. package/lib/esm/appui-abstract/items/AbstractMenuItemProps.d.ts +20 -20
  195. package/lib/esm/appui-abstract/items/AbstractMenuItemProps.js +8 -8
  196. package/lib/esm/appui-abstract/items/AbstractMenuItemProps.js.map +1 -1
  197. package/lib/esm/appui-abstract/items/AbstractToolbarProps.d.ts +13 -13
  198. package/lib/esm/appui-abstract/items/AbstractToolbarProps.js +8 -8
  199. package/lib/esm/appui-abstract/items/AbstractToolbarProps.js.map +1 -1
  200. package/lib/esm/appui-abstract/items/BadgeType.d.ts +14 -14
  201. package/lib/esm/appui-abstract/items/BadgeType.js +19 -19
  202. package/lib/esm/appui-abstract/items/BadgeType.js.map +1 -1
  203. package/lib/esm/appui-abstract/items/ConditionalBooleanValue.d.ts +27 -27
  204. package/lib/esm/appui-abstract/items/ConditionalBooleanValue.js +56 -56
  205. package/lib/esm/appui-abstract/items/ConditionalBooleanValue.js.map +1 -1
  206. package/lib/esm/appui-abstract/items/ConditionalStringValue.d.ts +29 -29
  207. package/lib/esm/appui-abstract/items/ConditionalStringValue.js +58 -58
  208. package/lib/esm/appui-abstract/items/ConditionalStringValue.js.map +1 -1
  209. package/lib/esm/appui-abstract/items/ProvidedItem.d.ts +10 -10
  210. package/lib/esm/appui-abstract/items/ProvidedItem.js +8 -8
  211. package/lib/esm/appui-abstract/items/ProvidedItem.js.map +1 -1
  212. package/lib/esm/appui-abstract/items/RelativePosition.d.ts +18 -18
  213. package/lib/esm/appui-abstract/items/RelativePosition.js +23 -23
  214. package/lib/esm/appui-abstract/items/RelativePosition.js.map +1 -1
  215. package/lib/esm/appui-abstract/items/StageUsage.d.ts +15 -15
  216. package/lib/esm/appui-abstract/items/StageUsage.js +20 -20
  217. package/lib/esm/appui-abstract/items/StageUsage.js.map +1 -1
  218. package/lib/esm/appui-abstract/notification/MessagePresenter.d.ts +42 -42
  219. package/lib/esm/appui-abstract/notification/MessagePresenter.js +21 -21
  220. package/lib/esm/appui-abstract/notification/MessagePresenter.js.map +1 -1
  221. package/lib/esm/appui-abstract/notification/MessageSeverity.d.ts +15 -15
  222. package/lib/esm/appui-abstract/notification/MessageSeverity.js +20 -20
  223. package/lib/esm/appui-abstract/notification/MessageSeverity.js.map +1 -1
  224. package/lib/esm/appui-abstract/properties/Description.d.ts +127 -127
  225. package/lib/esm/appui-abstract/properties/Description.js +192 -192
  226. package/lib/esm/appui-abstract/properties/Description.js.map +1 -1
  227. package/lib/esm/appui-abstract/properties/EditorParams.d.ts +260 -260
  228. package/lib/esm/appui-abstract/properties/EditorParams.js +97 -97
  229. package/lib/esm/appui-abstract/properties/EditorParams.js.map +1 -1
  230. package/lib/esm/appui-abstract/properties/PrimitiveTypes.d.ts +60 -60
  231. package/lib/esm/appui-abstract/properties/PrimitiveTypes.js +8 -8
  232. package/lib/esm/appui-abstract/properties/PrimitiveTypes.js.map +1 -1
  233. package/lib/esm/appui-abstract/properties/Record.d.ts +57 -57
  234. package/lib/esm/appui-abstract/properties/Record.js +74 -74
  235. package/lib/esm/appui-abstract/properties/Record.js.map +1 -1
  236. package/lib/esm/appui-abstract/properties/StandardEditorNames.d.ts +22 -22
  237. package/lib/esm/appui-abstract/properties/StandardEditorNames.js +27 -27
  238. package/lib/esm/appui-abstract/properties/StandardEditorNames.js.map +1 -1
  239. package/lib/esm/appui-abstract/properties/StandardTypeNames.d.ts +30 -30
  240. package/lib/esm/appui-abstract/properties/StandardTypeNames.js +36 -36
  241. package/lib/esm/appui-abstract/properties/StandardTypeNames.js.map +1 -1
  242. package/lib/esm/appui-abstract/properties/Value.d.ts +49 -49
  243. package/lib/esm/appui-abstract/properties/Value.js +17 -17
  244. package/lib/esm/appui-abstract/properties/Value.js.map +1 -1
  245. package/lib/esm/appui-abstract/quantity/BaseQuantityDescription.d.ts +22 -22
  246. package/lib/esm/appui-abstract/quantity/BaseQuantityDescription.js +44 -44
  247. package/lib/esm/appui-abstract/quantity/BaseQuantityDescription.js.map +1 -1
  248. package/lib/esm/appui-abstract/statusbar/StatusBarItem.d.ts +116 -116
  249. package/lib/esm/appui-abstract/statusbar/StatusBarItem.js +74 -74
  250. package/lib/esm/appui-abstract/statusbar/StatusBarItem.js.map +1 -1
  251. package/lib/esm/appui-abstract/statusbar/StatusBarItemsManager.d.ts +39 -39
  252. package/lib/esm/appui-abstract/statusbar/StatusBarItemsManager.js +131 -131
  253. package/lib/esm/appui-abstract/statusbar/StatusBarItemsManager.js.map +1 -1
  254. package/lib/esm/appui-abstract/toolbars/ToolbarItem.d.ts +118 -118
  255. package/lib/esm/appui-abstract/toolbars/ToolbarItem.js +58 -58
  256. package/lib/esm/appui-abstract/toolbars/ToolbarItem.js.map +1 -1
  257. package/lib/esm/appui-abstract/toolbars/ToolbarItemsManager.d.ts +45 -45
  258. package/lib/esm/appui-abstract/toolbars/ToolbarItemsManager.js +231 -231
  259. package/lib/esm/appui-abstract/toolbars/ToolbarItemsManager.js.map +1 -1
  260. package/lib/esm/appui-abstract/utils/IconSpecUtilities.d.ts +29 -29
  261. package/lib/esm/appui-abstract/utils/IconSpecUtilities.js +47 -47
  262. package/lib/esm/appui-abstract/utils/IconSpecUtilities.js.map +1 -1
  263. package/lib/esm/appui-abstract/utils/PointProps.d.ts +10 -10
  264. package/lib/esm/appui-abstract/utils/PointProps.js +8 -8
  265. package/lib/esm/appui-abstract/utils/PointProps.js.map +1 -1
  266. package/lib/esm/appui-abstract/utils/UiError.d.ts +12 -12
  267. package/lib/esm/appui-abstract/utils/UiError.js +18 -18
  268. package/lib/esm/appui-abstract/utils/UiError.js.map +1 -1
  269. package/lib/esm/appui-abstract/utils/UiEvent.d.ts +9 -9
  270. package/lib/esm/appui-abstract/utils/UiEvent.js +13 -13
  271. package/lib/esm/appui-abstract/utils/UiEvent.js.map +1 -1
  272. package/lib/esm/appui-abstract/utils/UiEventDispatcher.d.ts +46 -46
  273. package/lib/esm/appui-abstract/utils/UiEventDispatcher.js +126 -126
  274. package/lib/esm/appui-abstract/utils/UiEventDispatcher.js.map +1 -1
  275. package/lib/esm/appui-abstract/utils/callbacks.d.ts +20 -20
  276. package/lib/esm/appui-abstract/utils/callbacks.js +8 -8
  277. package/lib/esm/appui-abstract/utils/callbacks.js.map +1 -1
  278. package/lib/esm/appui-abstract/utils/filter/charCode.d.ts +416 -416
  279. package/lib/esm/appui-abstract/utils/filter/charCode.js +5 -5
  280. package/lib/esm/appui-abstract/utils/filter/charCode.js.map +1 -1
  281. package/lib/esm/appui-abstract/utils/filter/filters.d.ts +98 -98
  282. package/lib/esm/appui-abstract/utils/filter/filters.js +694 -694
  283. package/lib/esm/appui-abstract/utils/filter/filters.js.map +1 -1
  284. package/lib/esm/appui-abstract/utils/filter/map.d.ts +59 -59
  285. package/lib/esm/appui-abstract/utils/filter/map.js +399 -399
  286. package/lib/esm/appui-abstract/utils/filter/map.js.map +1 -1
  287. package/lib/esm/appui-abstract/utils/filter/strings.d.ts +20 -20
  288. package/lib/esm/appui-abstract/utils/filter/strings.js +70 -70
  289. package/lib/esm/appui-abstract/utils/filter/strings.js.map +1 -1
  290. package/lib/esm/appui-abstract/utils/isLetter.d.ts +9 -9
  291. package/lib/esm/appui-abstract/utils/isLetter.js +15 -15
  292. package/lib/esm/appui-abstract/utils/isLetter.js.map +1 -1
  293. package/lib/esm/appui-abstract/utils/misc.d.ts +11 -11
  294. package/lib/esm/appui-abstract/utils/misc.js +31 -31
  295. package/lib/esm/appui-abstract/utils/misc.js.map +1 -1
  296. package/lib/esm/appui-abstract/widget/AbstractWidgetProps.d.ts +80 -80
  297. package/lib/esm/appui-abstract/widget/AbstractWidgetProps.js +8 -8
  298. package/lib/esm/appui-abstract/widget/AbstractWidgetProps.js.map +1 -1
  299. package/lib/esm/appui-abstract/widget/StagePanel.d.ts +32 -32
  300. package/lib/esm/appui-abstract/widget/StagePanel.js +39 -39
  301. package/lib/esm/appui-abstract/widget/StagePanel.js.map +1 -1
  302. package/lib/esm/appui-abstract/widget/WidgetState.d.ts +18 -18
  303. package/lib/esm/appui-abstract/widget/WidgetState.js +23 -23
  304. package/lib/esm/appui-abstract/widget/WidgetState.js.map +1 -1
  305. package/lib/esm/appui-abstract.d.ts +105 -105
  306. package/lib/esm/appui-abstract.js +109 -109
  307. package/lib/esm/appui-abstract.js.map +1 -1
  308. package/package.json +5 -5
@@ -1,111 +1,111 @@
1
- /** @packageDocumentation
2
- * @module UiItemsProvider
3
- */
4
- import { BeEvent, MarkRequired } from "@itwin/core-bentley";
5
- import { BackstageItem } from "./backstage/BackstageItem";
6
- import { CommonStatusBarItem } from "./statusbar/StatusBarItem";
7
- import { CommonToolbarItem, ToolbarOrientation, ToolbarUsage } from "./toolbars/ToolbarItem";
8
- import { AbstractWidgetProps } from "./widget/AbstractWidgetProps";
9
- import { AbstractZoneLocation, StagePanelLocation, StagePanelSection } from "./widget/StagePanel";
10
- import { UiItemsProvider } from "./UiItemsProvider";
11
- /** Action taken by the application on item provided by a UiItemsProvider
12
- * @public @deprecated this was only used by the previously removed UiItemsArbiter.
13
- */
14
- export declare enum UiItemsApplicationAction {
15
- /** Allow the change to the item */
16
- Allow = 0,
17
- /** Disallow the change to the item */
18
- Disallow = 1,
19
- /** Update the item during the change */
20
- Update = 2
21
- }
22
- /** UIProvider Registered Event Args interface.
23
- * @public
24
- */
25
- export interface UiItemProviderRegisteredEventArgs {
26
- providerId: string;
27
- }
28
- /** UiItemProviderOverrides allows the application that registers a provider to limit when it is allowed to provide items
29
- * @public
30
- */
31
- export interface AllowedUiItemProviderOverrides {
32
- /** allows providerId to be overridden in the items manager for cases where the same provider needs to provide different content to different stages
33
- * @beta
34
- */
35
- providerId?: string;
36
- /** if specified then the current stage's Usage will be compared before allowing any items to be provided
37
- * @beta
38
- */
39
- stageUsages?: string[];
40
- /** if specified then the current stage's Id will be compared before allowing any items to be provided
41
- * @beta
42
- */
43
- stageIds?: string[];
44
- }
45
- /** Allowed overrides applied to a UiItemsProvider the application that registers a provider to limit when it is allowed to provide items.
46
- * Note that if an override `providerId` is specified then either `stageIds` or `stageUsages` must be defined to limit when the provider's
47
- * items are allowed.
48
- * @public
49
- */
50
- export declare type UiItemProviderOverrides = MarkRequired<AllowedUiItemProviderOverrides, "providerId" | "stageUsages"> | MarkRequired<AllowedUiItemProviderOverrides, "providerId" | "stageIds"> | // eslint-disable-line @typescript-eslint/indent
51
- MarkRequired<AllowedUiItemProviderOverrides, "stageIds"> | // eslint-disable-line @typescript-eslint/indent
52
- MarkRequired<AllowedUiItemProviderOverrides, "stageUsages"> | // eslint-disable-line @typescript-eslint/indent
53
- MarkRequired<AllowedUiItemProviderOverrides, "providerId" | "stageUsages" | "stageIds">;
54
- /**
55
- * Controls registering of UiItemsProviders and calls the provider's methods when populating different parts of the User Interface.
56
- * @public
57
- */
58
- export declare class UiItemsManager {
59
- private static _registeredUiItemsProviders;
60
- /** For use in unit testing
61
- * @internal */
62
- static clearAllProviders(): void;
63
- /** Event raised any time a UiProvider is registered or unregistered. */
64
- static readonly onUiProviderRegisteredEvent: BeEvent<(ev: UiItemProviderRegisteredEventArgs) => void>;
65
- /** Return number of registered UiProvider. */
66
- static get registeredProviderIds(): string[];
67
- /** Return true if there is any registered UiProvider. */
68
- static get hasRegisteredProviders(): boolean;
69
- /**
70
- * Retrieves a previously loaded UiItemsProvider.
71
- * @param providerId id of the UiItemsProvider to get
72
- */
73
- static getUiItemsProvider(providerId: string): UiItemsProvider | undefined;
74
- private static sendRegisteredEvent;
75
- /**
76
- * Registers a UiItemsProvider with the UiItemsManager.
77
- * @param uiProvider the UI items provider to register.
78
- */
79
- static register(uiProvider: UiItemsProvider, overrides?: UiItemProviderOverrides): void;
80
- /** Remove a specific UiItemsProvider from the list of available providers. */
81
- static unregister(uiProviderId: string): void;
82
- private static allowItemsFromProvider;
83
- /** Called when the application is populating a toolbar so that any registered UiItemsProvider can add tool buttons that either either execute
84
- * an action or specify a registered ToolId into toolbar.
85
- * @param stageId a string identifier the active stage.
86
- * @param stageUsage the StageUsage of the active stage.
87
- * @param toolbarUsage usage of the toolbar
88
- * @param toolbarOrientation orientation of the toolbar
89
- * @returns an array of error messages. The array will be empty if the load is successful, otherwise it is a list of one or more problems.
90
- */
91
- static getToolbarButtonItems(stageId: string, stageUsage: string, toolbarUsage: ToolbarUsage, toolbarOrientation: ToolbarOrientation, stageAppData?: any): CommonToolbarItem[];
92
- /** Called when the application is populating the statusbar so that any registered UiItemsProvider can add status fields
93
- * @param stageId a string identifier the active stage.
94
- * @param stageUsage the StageUsage of the active stage.
95
- * @returns An array of CommonStatusBarItem that will be used to create controls for the status bar.
96
- */
97
- static getStatusBarItems(stageId: string, stageUsage: string, stageAppData?: any): CommonStatusBarItem[];
98
- /** Called when the application is populating the statusbar so that any registered UiItemsProvider can add status fields
99
- * @returns An array of BackstageItem that will be used to create controls for the backstage menu.
100
- */
101
- static getBackstageItems(): BackstageItem[];
102
- /** Called when the application is populating the Stage Panels so that any registered UiItemsProvider can add widgets
103
- * @param stageId a string identifier the active stage.
104
- * @param stageUsage the StageUsage of the active stage.
105
- * @param location the location within the stage.
106
- * @param section the section within location.
107
- * @returns An array of AbstractWidgetProps that will be used to create widgets.
108
- */
109
- static getWidgets(stageId: string, stageUsage: string, location: StagePanelLocation, section?: StagePanelSection, zoneLocation?: AbstractZoneLocation, stageAppData?: any): ReadonlyArray<AbstractWidgetProps>;
110
- }
1
+ /** @packageDocumentation
2
+ * @module UiItemsProvider
3
+ */
4
+ import { BeEvent, MarkRequired } from "@itwin/core-bentley";
5
+ import { BackstageItem } from "./backstage/BackstageItem";
6
+ import { CommonStatusBarItem } from "./statusbar/StatusBarItem";
7
+ import { CommonToolbarItem, ToolbarOrientation, ToolbarUsage } from "./toolbars/ToolbarItem";
8
+ import { AbstractWidgetProps } from "./widget/AbstractWidgetProps";
9
+ import { AbstractZoneLocation, StagePanelLocation, StagePanelSection } from "./widget/StagePanel";
10
+ import { UiItemsProvider } from "./UiItemsProvider";
11
+ /** Action taken by the application on item provided by a UiItemsProvider
12
+ * @public @deprecated this was only used by the previously removed UiItemsArbiter.
13
+ */
14
+ export declare enum UiItemsApplicationAction {
15
+ /** Allow the change to the item */
16
+ Allow = 0,
17
+ /** Disallow the change to the item */
18
+ Disallow = 1,
19
+ /** Update the item during the change */
20
+ Update = 2
21
+ }
22
+ /** UIProvider Registered Event Args interface.
23
+ * @public
24
+ */
25
+ export interface UiItemProviderRegisteredEventArgs {
26
+ providerId: string;
27
+ }
28
+ /** UiItemProviderOverrides allows the application that registers a provider to limit when it is allowed to provide items
29
+ * @public
30
+ */
31
+ export interface AllowedUiItemProviderOverrides {
32
+ /** allows providerId to be overridden in the items manager for cases where the same provider needs to provide different content to different stages
33
+ * @beta
34
+ */
35
+ providerId?: string;
36
+ /** if specified then the current stage's Usage will be compared before allowing any items to be provided
37
+ * @beta
38
+ */
39
+ stageUsages?: string[];
40
+ /** if specified then the current stage's Id will be compared before allowing any items to be provided
41
+ * @beta
42
+ */
43
+ stageIds?: string[];
44
+ }
45
+ /** Allowed overrides applied to a UiItemsProvider the application that registers a provider to limit when it is allowed to provide items.
46
+ * Note that if an override `providerId` is specified then either `stageIds` or `stageUsages` must be defined to limit when the provider's
47
+ * items are allowed.
48
+ * @public
49
+ */
50
+ export declare type UiItemProviderOverrides = MarkRequired<AllowedUiItemProviderOverrides, "providerId" | "stageUsages"> | MarkRequired<AllowedUiItemProviderOverrides, "providerId" | "stageIds"> | // eslint-disable-line @typescript-eslint/indent
51
+ MarkRequired<AllowedUiItemProviderOverrides, "stageIds"> | // eslint-disable-line @typescript-eslint/indent
52
+ MarkRequired<AllowedUiItemProviderOverrides, "stageUsages"> | // eslint-disable-line @typescript-eslint/indent
53
+ MarkRequired<AllowedUiItemProviderOverrides, "providerId" | "stageUsages" | "stageIds">;
54
+ /**
55
+ * Controls registering of UiItemsProviders and calls the provider's methods when populating different parts of the User Interface.
56
+ * @public
57
+ */
58
+ export declare class UiItemsManager {
59
+ private static _registeredUiItemsProviders;
60
+ /** For use in unit testing
61
+ * @internal */
62
+ static clearAllProviders(): void;
63
+ /** Event raised any time a UiProvider is registered or unregistered. */
64
+ static readonly onUiProviderRegisteredEvent: BeEvent<(ev: UiItemProviderRegisteredEventArgs) => void>;
65
+ /** Return number of registered UiProvider. */
66
+ static get registeredProviderIds(): string[];
67
+ /** Return true if there is any registered UiProvider. */
68
+ static get hasRegisteredProviders(): boolean;
69
+ /**
70
+ * Retrieves a previously loaded UiItemsProvider.
71
+ * @param providerId id of the UiItemsProvider to get
72
+ */
73
+ static getUiItemsProvider(providerId: string): UiItemsProvider | undefined;
74
+ private static sendRegisteredEvent;
75
+ /**
76
+ * Registers a UiItemsProvider with the UiItemsManager.
77
+ * @param uiProvider the UI items provider to register.
78
+ */
79
+ static register(uiProvider: UiItemsProvider, overrides?: UiItemProviderOverrides): void;
80
+ /** Remove a specific UiItemsProvider from the list of available providers. */
81
+ static unregister(uiProviderId: string): void;
82
+ private static allowItemsFromProvider;
83
+ /** Called when the application is populating a toolbar so that any registered UiItemsProvider can add tool buttons that either either execute
84
+ * an action or specify a registered ToolId into toolbar.
85
+ * @param stageId a string identifier the active stage.
86
+ * @param stageUsage the StageUsage of the active stage.
87
+ * @param toolbarUsage usage of the toolbar
88
+ * @param toolbarOrientation orientation of the toolbar
89
+ * @returns an array of error messages. The array will be empty if the load is successful, otherwise it is a list of one or more problems.
90
+ */
91
+ static getToolbarButtonItems(stageId: string, stageUsage: string, toolbarUsage: ToolbarUsage, toolbarOrientation: ToolbarOrientation, stageAppData?: any): CommonToolbarItem[];
92
+ /** Called when the application is populating the statusbar so that any registered UiItemsProvider can add status fields
93
+ * @param stageId a string identifier the active stage.
94
+ * @param stageUsage the StageUsage of the active stage.
95
+ * @returns An array of CommonStatusBarItem that will be used to create controls for the status bar.
96
+ */
97
+ static getStatusBarItems(stageId: string, stageUsage: string, stageAppData?: any): CommonStatusBarItem[];
98
+ /** Called when the application is populating the statusbar so that any registered UiItemsProvider can add status fields
99
+ * @returns An array of BackstageItem that will be used to create controls for the backstage menu.
100
+ */
101
+ static getBackstageItems(): BackstageItem[];
102
+ /** Called when the application is populating the Stage Panels so that any registered UiItemsProvider can add widgets
103
+ * @param stageId a string identifier the active stage.
104
+ * @param stageUsage the StageUsage of the active stage.
105
+ * @param location the location within the stage.
106
+ * @param section the section within location.
107
+ * @returns An array of AbstractWidgetProps that will be used to create widgets.
108
+ */
109
+ static getWidgets(stageId: string, stageUsage: string, location: StagePanelLocation, section?: StagePanelSection, zoneLocation?: AbstractZoneLocation, stageAppData?: any): ReadonlyArray<AbstractWidgetProps>;
110
+ }
111
111
  //# sourceMappingURL=UiItemsManager.d.ts.map
@@ -1,196 +1,196 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
- * See LICENSE.md in the project root for license terms and full copyright notice.
4
- *--------------------------------------------------------------------------------------------*/
5
- /* eslint-disable deprecation/deprecation */
6
- /** @packageDocumentation
7
- * @module UiItemsProvider
8
- */
9
- import { BeEvent, Logger } from "@itwin/core-bentley";
10
- import { loggerCategory } from "./utils/misc";
11
- /** Action taken by the application on item provided by a UiItemsProvider
12
- * @public @deprecated this was only used by the previously removed UiItemsArbiter.
13
- */
14
- export var UiItemsApplicationAction;
15
- (function (UiItemsApplicationAction) {
16
- /** Allow the change to the item */
17
- UiItemsApplicationAction[UiItemsApplicationAction["Allow"] = 0] = "Allow";
18
- /** Disallow the change to the item */
19
- UiItemsApplicationAction[UiItemsApplicationAction["Disallow"] = 1] = "Disallow";
20
- /** Update the item during the change */
21
- UiItemsApplicationAction[UiItemsApplicationAction["Update"] = 2] = "Update";
22
- })(UiItemsApplicationAction || (UiItemsApplicationAction = {}));
23
- /**
24
- * Controls registering of UiItemsProviders and calls the provider's methods when populating different parts of the User Interface.
25
- * @public
26
- */
27
- export class UiItemsManager {
28
- /** For use in unit testing
29
- * @internal */
30
- static clearAllProviders() {
31
- UiItemsManager._registeredUiItemsProviders.clear();
32
- }
33
- /** Return number of registered UiProvider. */
34
- static get registeredProviderIds() {
35
- const ids = [...UiItemsManager._registeredUiItemsProviders.keys()];
36
- return ids;
37
- }
38
- /** Return true if there is any registered UiProvider. */
39
- static get hasRegisteredProviders() {
40
- return this._registeredUiItemsProviders.size > 0;
41
- }
42
- /**
43
- * Retrieves a previously loaded UiItemsProvider.
44
- * @param providerId id of the UiItemsProvider to get
45
- */
46
- static getUiItemsProvider(providerId) {
47
- var _a;
48
- return (_a = UiItemsManager._registeredUiItemsProviders.get(providerId)) === null || _a === void 0 ? void 0 : _a.provider;
49
- }
50
- static sendRegisteredEvent(ev) {
51
- UiItemsManager.onUiProviderRegisteredEvent.raiseEvent(ev);
52
- }
53
- /**
54
- * Registers a UiItemsProvider with the UiItemsManager.
55
- * @param uiProvider the UI items provider to register.
56
- */
57
- static register(uiProvider, overrides) {
58
- var _a;
59
- const providerId = (_a = overrides === null || overrides === void 0 ? void 0 : overrides.providerId) !== null && _a !== void 0 ? _a : uiProvider.id;
60
- if (UiItemsManager.getUiItemsProvider(providerId)) {
61
- Logger.logInfo(loggerCategory(this), `UiItemsProvider (${providerId}) is already loaded`);
62
- }
63
- else {
64
- UiItemsManager._registeredUiItemsProviders.set(providerId, { provider: uiProvider, overrides });
65
- Logger.logInfo(loggerCategory(this), `UiItemsProvider ${uiProvider.id} registered as ${providerId} `);
66
- UiItemsManager.sendRegisteredEvent({ providerId });
67
- }
68
- }
69
- /** Remove a specific UiItemsProvider from the list of available providers. */
70
- static unregister(uiProviderId) {
71
- const provider = UiItemsManager.getUiItemsProvider(uiProviderId);
72
- if (!provider)
73
- return;
74
- provider.onUnregister && provider.onUnregister();
75
- UiItemsManager._registeredUiItemsProviders.delete(uiProviderId);
76
- Logger.logInfo(loggerCategory(this), `UiItemsProvider (${uiProviderId}) unloaded`);
77
- // trigger a refresh of the ui
78
- UiItemsManager.sendRegisteredEvent({ providerId: uiProviderId });
79
- }
80
- static allowItemsFromProvider(entry, stageId, stageUsage) {
81
- // istanbul ignore else
82
- const overrides = entry.overrides;
83
- if (undefined !== stageId && (overrides === null || overrides === void 0 ? void 0 : overrides.stageIds) && !(overrides.stageIds.some((value) => value === stageId)))
84
- return false;
85
- if (undefined !== stageUsage && (overrides === null || overrides === void 0 ? void 0 : overrides.stageUsages) && !(overrides.stageUsages.some((value) => value === stageUsage)))
86
- return false;
87
- return true;
88
- }
89
- /** Called when the application is populating a toolbar so that any registered UiItemsProvider can add tool buttons that either either execute
90
- * an action or specify a registered ToolId into toolbar.
91
- * @param stageId a string identifier the active stage.
92
- * @param stageUsage the StageUsage of the active stage.
93
- * @param toolbarUsage usage of the toolbar
94
- * @param toolbarOrientation orientation of the toolbar
95
- * @returns an array of error messages. The array will be empty if the load is successful, otherwise it is a list of one or more problems.
96
- */
97
- static getToolbarButtonItems(stageId, stageUsage, toolbarUsage, toolbarOrientation, stageAppData) {
98
- const buttonItems = [];
99
- if (0 === UiItemsManager._registeredUiItemsProviders.size)
100
- return buttonItems;
101
- UiItemsManager._registeredUiItemsProviders.forEach((entry) => {
102
- var _a, _b;
103
- const uiProvider = entry.provider;
104
- const providerId = (_b = (_a = entry.overrides) === null || _a === void 0 ? void 0 : _a.providerId) !== null && _b !== void 0 ? _b : uiProvider.id;
105
- // istanbul ignore else
106
- if (uiProvider.provideToolbarButtonItems && this.allowItemsFromProvider(entry, stageId, stageUsage)) {
107
- uiProvider.provideToolbarButtonItems(stageId, stageUsage, toolbarUsage, toolbarOrientation, stageAppData)
108
- .forEach((spec) => {
109
- // ignore duplicate ids
110
- if (-1 === buttonItems.findIndex((existingItem) => spec.id === existingItem.id))
111
- buttonItems.push({ ...spec, providerId });
112
- });
113
- }
114
- });
115
- return buttonItems;
116
- }
117
- /** Called when the application is populating the statusbar so that any registered UiItemsProvider can add status fields
118
- * @param stageId a string identifier the active stage.
119
- * @param stageUsage the StageUsage of the active stage.
120
- * @returns An array of CommonStatusBarItem that will be used to create controls for the status bar.
121
- */
122
- static getStatusBarItems(stageId, stageUsage, stageAppData) {
123
- const statusBarItems = [];
124
- if (0 === UiItemsManager._registeredUiItemsProviders.size)
125
- return statusBarItems;
126
- UiItemsManager._registeredUiItemsProviders.forEach((entry) => {
127
- var _a, _b;
128
- const uiProvider = entry.provider;
129
- const providerId = (_b = (_a = entry.overrides) === null || _a === void 0 ? void 0 : _a.providerId) !== null && _b !== void 0 ? _b : uiProvider.id;
130
- // istanbul ignore else
131
- if (uiProvider.provideStatusBarItems && this.allowItemsFromProvider(entry, stageId, stageUsage)) {
132
- uiProvider.provideStatusBarItems(stageId, stageUsage, stageAppData)
133
- .forEach((item) => {
134
- // ignore duplicate ids
135
- if (-1 === statusBarItems.findIndex((existingItem) => item.id === existingItem.id))
136
- statusBarItems.push({ ...item, providerId });
137
- });
138
- }
139
- });
140
- return statusBarItems;
141
- }
142
- /** Called when the application is populating the statusbar so that any registered UiItemsProvider can add status fields
143
- * @returns An array of BackstageItem that will be used to create controls for the backstage menu.
144
- */
145
- static getBackstageItems() {
146
- const backstageItems = [];
147
- if (0 === UiItemsManager._registeredUiItemsProviders.size)
148
- return backstageItems;
149
- UiItemsManager._registeredUiItemsProviders.forEach((entry) => {
150
- var _a, _b;
151
- const uiProvider = entry.provider;
152
- const providerId = (_b = (_a = entry.overrides) === null || _a === void 0 ? void 0 : _a.providerId) !== null && _b !== void 0 ? _b : uiProvider.id;
153
- // istanbul ignore else
154
- if (uiProvider.provideBackstageItems) { // Note: We do not call this.allowItemsFromProvider here as backstage items
155
- uiProvider.provideBackstageItems() // should not be considered stage specific. If they need to be hidden
156
- .forEach((item) => {
157
- // ignore duplicate ids
158
- if (-1 === backstageItems.findIndex((existingItem) => item.id === existingItem.id))
159
- backstageItems.push({ ...item, providerId });
160
- });
161
- }
162
- });
163
- return backstageItems;
164
- }
165
- /** Called when the application is populating the Stage Panels so that any registered UiItemsProvider can add widgets
166
- * @param stageId a string identifier the active stage.
167
- * @param stageUsage the StageUsage of the active stage.
168
- * @param location the location within the stage.
169
- * @param section the section within location.
170
- * @returns An array of AbstractWidgetProps that will be used to create widgets.
171
- */
172
- static getWidgets(stageId, stageUsage, location, section, zoneLocation, stageAppData) {
173
- const widgets = [];
174
- if (0 === UiItemsManager._registeredUiItemsProviders.size)
175
- return widgets;
176
- UiItemsManager._registeredUiItemsProviders.forEach((entry) => {
177
- var _a, _b;
178
- const uiProvider = entry.provider;
179
- const providerId = (_b = (_a = entry.overrides) === null || _a === void 0 ? void 0 : _a.providerId) !== null && _b !== void 0 ? _b : uiProvider.id;
180
- // istanbul ignore else
181
- if (uiProvider.provideWidgets && this.allowItemsFromProvider(entry, stageId, stageUsage)) {
182
- uiProvider.provideWidgets(stageId, stageUsage, location, section, zoneLocation, stageAppData)
183
- .forEach((widget) => {
184
- // ignore duplicate ids
185
- if (-1 === widgets.findIndex((existingItem) => widget.id === existingItem.id))
186
- widgets.push({ ...widget, providerId });
187
- });
188
- }
189
- });
190
- return widgets;
191
- }
192
- }
193
- UiItemsManager._registeredUiItemsProviders = new Map();
194
- /** Event raised any time a UiProvider is registered or unregistered. */
195
- UiItemsManager.onUiProviderRegisteredEvent = new BeEvent();
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /* eslint-disable deprecation/deprecation */
6
+ /** @packageDocumentation
7
+ * @module UiItemsProvider
8
+ */
9
+ import { BeEvent, Logger } from "@itwin/core-bentley";
10
+ import { loggerCategory } from "./utils/misc";
11
+ /** Action taken by the application on item provided by a UiItemsProvider
12
+ * @public @deprecated this was only used by the previously removed UiItemsArbiter.
13
+ */
14
+ export var UiItemsApplicationAction;
15
+ (function (UiItemsApplicationAction) {
16
+ /** Allow the change to the item */
17
+ UiItemsApplicationAction[UiItemsApplicationAction["Allow"] = 0] = "Allow";
18
+ /** Disallow the change to the item */
19
+ UiItemsApplicationAction[UiItemsApplicationAction["Disallow"] = 1] = "Disallow";
20
+ /** Update the item during the change */
21
+ UiItemsApplicationAction[UiItemsApplicationAction["Update"] = 2] = "Update";
22
+ })(UiItemsApplicationAction || (UiItemsApplicationAction = {}));
23
+ /**
24
+ * Controls registering of UiItemsProviders and calls the provider's methods when populating different parts of the User Interface.
25
+ * @public
26
+ */
27
+ export class UiItemsManager {
28
+ /** For use in unit testing
29
+ * @internal */
30
+ static clearAllProviders() {
31
+ UiItemsManager._registeredUiItemsProviders.clear();
32
+ }
33
+ /** Return number of registered UiProvider. */
34
+ static get registeredProviderIds() {
35
+ const ids = [...UiItemsManager._registeredUiItemsProviders.keys()];
36
+ return ids;
37
+ }
38
+ /** Return true if there is any registered UiProvider. */
39
+ static get hasRegisteredProviders() {
40
+ return this._registeredUiItemsProviders.size > 0;
41
+ }
42
+ /**
43
+ * Retrieves a previously loaded UiItemsProvider.
44
+ * @param providerId id of the UiItemsProvider to get
45
+ */
46
+ static getUiItemsProvider(providerId) {
47
+ var _a;
48
+ return (_a = UiItemsManager._registeredUiItemsProviders.get(providerId)) === null || _a === void 0 ? void 0 : _a.provider;
49
+ }
50
+ static sendRegisteredEvent(ev) {
51
+ UiItemsManager.onUiProviderRegisteredEvent.raiseEvent(ev);
52
+ }
53
+ /**
54
+ * Registers a UiItemsProvider with the UiItemsManager.
55
+ * @param uiProvider the UI items provider to register.
56
+ */
57
+ static register(uiProvider, overrides) {
58
+ var _a;
59
+ const providerId = (_a = overrides === null || overrides === void 0 ? void 0 : overrides.providerId) !== null && _a !== void 0 ? _a : uiProvider.id;
60
+ if (UiItemsManager.getUiItemsProvider(providerId)) {
61
+ Logger.logInfo(loggerCategory(this), `UiItemsProvider (${providerId}) is already loaded`);
62
+ }
63
+ else {
64
+ UiItemsManager._registeredUiItemsProviders.set(providerId, { provider: uiProvider, overrides });
65
+ Logger.logInfo(loggerCategory(this), `UiItemsProvider ${uiProvider.id} registered as ${providerId} `);
66
+ UiItemsManager.sendRegisteredEvent({ providerId });
67
+ }
68
+ }
69
+ /** Remove a specific UiItemsProvider from the list of available providers. */
70
+ static unregister(uiProviderId) {
71
+ const provider = UiItemsManager.getUiItemsProvider(uiProviderId);
72
+ if (!provider)
73
+ return;
74
+ provider.onUnregister && provider.onUnregister();
75
+ UiItemsManager._registeredUiItemsProviders.delete(uiProviderId);
76
+ Logger.logInfo(loggerCategory(this), `UiItemsProvider (${uiProviderId}) unloaded`);
77
+ // trigger a refresh of the ui
78
+ UiItemsManager.sendRegisteredEvent({ providerId: uiProviderId });
79
+ }
80
+ static allowItemsFromProvider(entry, stageId, stageUsage) {
81
+ // istanbul ignore else
82
+ const overrides = entry.overrides;
83
+ if (undefined !== stageId && (overrides === null || overrides === void 0 ? void 0 : overrides.stageIds) && !(overrides.stageIds.some((value) => value === stageId)))
84
+ return false;
85
+ if (undefined !== stageUsage && (overrides === null || overrides === void 0 ? void 0 : overrides.stageUsages) && !(overrides.stageUsages.some((value) => value === stageUsage)))
86
+ return false;
87
+ return true;
88
+ }
89
+ /** Called when the application is populating a toolbar so that any registered UiItemsProvider can add tool buttons that either either execute
90
+ * an action or specify a registered ToolId into toolbar.
91
+ * @param stageId a string identifier the active stage.
92
+ * @param stageUsage the StageUsage of the active stage.
93
+ * @param toolbarUsage usage of the toolbar
94
+ * @param toolbarOrientation orientation of the toolbar
95
+ * @returns an array of error messages. The array will be empty if the load is successful, otherwise it is a list of one or more problems.
96
+ */
97
+ static getToolbarButtonItems(stageId, stageUsage, toolbarUsage, toolbarOrientation, stageAppData) {
98
+ const buttonItems = [];
99
+ if (0 === UiItemsManager._registeredUiItemsProviders.size)
100
+ return buttonItems;
101
+ UiItemsManager._registeredUiItemsProviders.forEach((entry) => {
102
+ var _a, _b;
103
+ const uiProvider = entry.provider;
104
+ const providerId = (_b = (_a = entry.overrides) === null || _a === void 0 ? void 0 : _a.providerId) !== null && _b !== void 0 ? _b : uiProvider.id;
105
+ // istanbul ignore else
106
+ if (uiProvider.provideToolbarButtonItems && this.allowItemsFromProvider(entry, stageId, stageUsage)) {
107
+ uiProvider.provideToolbarButtonItems(stageId, stageUsage, toolbarUsage, toolbarOrientation, stageAppData)
108
+ .forEach((spec) => {
109
+ // ignore duplicate ids
110
+ if (-1 === buttonItems.findIndex((existingItem) => spec.id === existingItem.id))
111
+ buttonItems.push({ ...spec, providerId });
112
+ });
113
+ }
114
+ });
115
+ return buttonItems;
116
+ }
117
+ /** Called when the application is populating the statusbar so that any registered UiItemsProvider can add status fields
118
+ * @param stageId a string identifier the active stage.
119
+ * @param stageUsage the StageUsage of the active stage.
120
+ * @returns An array of CommonStatusBarItem that will be used to create controls for the status bar.
121
+ */
122
+ static getStatusBarItems(stageId, stageUsage, stageAppData) {
123
+ const statusBarItems = [];
124
+ if (0 === UiItemsManager._registeredUiItemsProviders.size)
125
+ return statusBarItems;
126
+ UiItemsManager._registeredUiItemsProviders.forEach((entry) => {
127
+ var _a, _b;
128
+ const uiProvider = entry.provider;
129
+ const providerId = (_b = (_a = entry.overrides) === null || _a === void 0 ? void 0 : _a.providerId) !== null && _b !== void 0 ? _b : uiProvider.id;
130
+ // istanbul ignore else
131
+ if (uiProvider.provideStatusBarItems && this.allowItemsFromProvider(entry, stageId, stageUsage)) {
132
+ uiProvider.provideStatusBarItems(stageId, stageUsage, stageAppData)
133
+ .forEach((item) => {
134
+ // ignore duplicate ids
135
+ if (-1 === statusBarItems.findIndex((existingItem) => item.id === existingItem.id))
136
+ statusBarItems.push({ ...item, providerId });
137
+ });
138
+ }
139
+ });
140
+ return statusBarItems;
141
+ }
142
+ /** Called when the application is populating the statusbar so that any registered UiItemsProvider can add status fields
143
+ * @returns An array of BackstageItem that will be used to create controls for the backstage menu.
144
+ */
145
+ static getBackstageItems() {
146
+ const backstageItems = [];
147
+ if (0 === UiItemsManager._registeredUiItemsProviders.size)
148
+ return backstageItems;
149
+ UiItemsManager._registeredUiItemsProviders.forEach((entry) => {
150
+ var _a, _b;
151
+ const uiProvider = entry.provider;
152
+ const providerId = (_b = (_a = entry.overrides) === null || _a === void 0 ? void 0 : _a.providerId) !== null && _b !== void 0 ? _b : uiProvider.id;
153
+ // istanbul ignore else
154
+ if (uiProvider.provideBackstageItems) { // Note: We do not call this.allowItemsFromProvider here as backstage items
155
+ uiProvider.provideBackstageItems() // should not be considered stage specific. If they need to be hidden
156
+ .forEach((item) => {
157
+ // ignore duplicate ids
158
+ if (-1 === backstageItems.findIndex((existingItem) => item.id === existingItem.id))
159
+ backstageItems.push({ ...item, providerId });
160
+ });
161
+ }
162
+ });
163
+ return backstageItems;
164
+ }
165
+ /** Called when the application is populating the Stage Panels so that any registered UiItemsProvider can add widgets
166
+ * @param stageId a string identifier the active stage.
167
+ * @param stageUsage the StageUsage of the active stage.
168
+ * @param location the location within the stage.
169
+ * @param section the section within location.
170
+ * @returns An array of AbstractWidgetProps that will be used to create widgets.
171
+ */
172
+ static getWidgets(stageId, stageUsage, location, section, zoneLocation, stageAppData) {
173
+ const widgets = [];
174
+ if (0 === UiItemsManager._registeredUiItemsProviders.size)
175
+ return widgets;
176
+ UiItemsManager._registeredUiItemsProviders.forEach((entry) => {
177
+ var _a, _b;
178
+ const uiProvider = entry.provider;
179
+ const providerId = (_b = (_a = entry.overrides) === null || _a === void 0 ? void 0 : _a.providerId) !== null && _b !== void 0 ? _b : uiProvider.id;
180
+ // istanbul ignore else
181
+ if (uiProvider.provideWidgets && this.allowItemsFromProvider(entry, stageId, stageUsage)) {
182
+ uiProvider.provideWidgets(stageId, stageUsage, location, section, zoneLocation, stageAppData)
183
+ .forEach((widget) => {
184
+ // ignore duplicate ids
185
+ if (-1 === widgets.findIndex((existingItem) => widget.id === existingItem.id))
186
+ widgets.push({ ...widget, providerId });
187
+ });
188
+ }
189
+ });
190
+ return widgets;
191
+ }
192
+ }
193
+ UiItemsManager._registeredUiItemsProviders = new Map();
194
+ /** Event raised any time a UiProvider is registered or unregistered. */
195
+ UiItemsManager.onUiProviderRegisteredEvent = new BeEvent();
196
196
  //# sourceMappingURL=UiItemsManager.js.map