@itwin/imodel-components-react 4.17.0 → 5.0.0-dev.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (532) hide show
  1. package/README.md +15 -2
  2. package/lib/{cjs/imodel-components-react → imodel-components-react}/UiIModelComponents.d.ts +1 -1
  3. package/lib/imodel-components-react/UiIModelComponents.d.ts.map +1 -0
  4. package/lib/{esm/imodel-components-react → imodel-components-react}/UiIModelComponents.js +4 -7
  5. package/lib/imodel-components-react/UiIModelComponents.js.map +1 -0
  6. package/lib/imodel-components-react/color/AlphaSlider.d.ts.map +1 -0
  7. package/lib/{esm/imodel-components-react → imodel-components-react}/color/AlphaSlider.js +1 -1
  8. package/lib/imodel-components-react/color/AlphaSlider.js.map +1 -0
  9. package/lib/imodel-components-react/color/ColorPickerButton.d.ts.map +1 -0
  10. package/lib/{esm/imodel-components-react → imodel-components-react}/color/ColorPickerButton.js +4 -3
  11. package/lib/imodel-components-react/color/ColorPickerButton.js.map +1 -0
  12. package/lib/{esm/imodel-components-react → imodel-components-react}/color/ColorPickerButton.scss +2 -4
  13. package/lib/imodel-components-react/color/ColorPickerDialog.d.ts.map +1 -0
  14. package/lib/imodel-components-react/color/ColorPickerDialog.js.map +1 -0
  15. package/lib/imodel-components-react/color/ColorPickerPopup.d.ts.map +1 -0
  16. package/lib/{esm/imodel-components-react → imodel-components-react}/color/ColorPickerPopup.js +4 -3
  17. package/lib/imodel-components-react/color/ColorPickerPopup.js.map +1 -0
  18. package/lib/imodel-components-react/color/HueSlider.d.ts.map +1 -0
  19. package/lib/{esm/imodel-components-react → imodel-components-react}/color/HueSlider.js +1 -1
  20. package/lib/{esm/imodel-components-react → imodel-components-react}/color/HueSlider.js.map +1 -1
  21. package/lib/imodel-components-react/color/SaturationPicker.d.ts.map +1 -0
  22. package/lib/{esm/imodel-components-react → imodel-components-react}/color/SaturationPicker.js +1 -1
  23. package/lib/imodel-components-react/color/SaturationPicker.js.map +1 -0
  24. package/lib/imodel-components-react/color/Swatch.d.ts.map +1 -0
  25. package/lib/{esm/imodel-components-react → imodel-components-react}/color/Swatch.js +1 -1
  26. package/lib/{esm/imodel-components-react → imodel-components-react}/color/Swatch.js.map +1 -1
  27. package/lib/imodel-components-react/color/getCSSColorFromDef.d.ts.map +1 -0
  28. package/lib/imodel-components-react/color/getCSSColorFromDef.js.map +1 -0
  29. package/lib/imodel-components-react/editors/ColorEditor.d.ts.map +1 -0
  30. package/lib/{esm/imodel-components-react → imodel-components-react}/editors/ColorEditor.js +3 -4
  31. package/lib/imodel-components-react/editors/ColorEditor.js.map +1 -0
  32. package/lib/{cjs/imodel-components-react → imodel-components-react}/editors/ColorEditor.scss +0 -2
  33. package/lib/imodel-components-react/editors/WeightEditor.d.ts.map +1 -0
  34. package/lib/{esm/imodel-components-react → imodel-components-react}/editors/WeightEditor.js +3 -4
  35. package/lib/imodel-components-react/editors/WeightEditor.js.map +1 -0
  36. package/lib/{cjs/imodel-components-react → imodel-components-react}/editors/WeightEditor.scss +0 -2
  37. package/lib/imodel-components-react/inputs/QuantityInput.d.ts.map +1 -0
  38. package/lib/{esm/imodel-components-react → imodel-components-react}/inputs/QuantityInput.js +1 -1
  39. package/lib/{esm/imodel-components-react → imodel-components-react}/inputs/QuantityInput.js.map +1 -1
  40. package/lib/imodel-components-react/inputs/QuantityNumberInput.d.ts.map +1 -0
  41. package/lib/imodel-components-react/inputs/QuantityNumberInput.js.map +1 -0
  42. package/lib/{cjs/imodel-components-react → imodel-components-react}/inputs/QuantityNumberInput.scss +1 -1
  43. package/lib/imodel-components-react/lineweight/Swatch.d.ts.map +1 -0
  44. package/lib/{esm/imodel-components-react → imodel-components-react}/lineweight/Swatch.js +1 -1
  45. package/lib/{esm/imodel-components-react → imodel-components-react}/lineweight/Swatch.js.map +1 -1
  46. package/lib/{cjs/imodel-components-react → imodel-components-react}/lineweight/Swatch.scss +2 -4
  47. package/lib/imodel-components-react/lineweight/WeightPickerButton.d.ts.map +1 -0
  48. package/lib/{esm/imodel-components-react → imodel-components-react}/lineweight/WeightPickerButton.js +1 -1
  49. package/lib/{esm/imodel-components-react → imodel-components-react}/lineweight/WeightPickerButton.js.map +1 -1
  50. package/lib/{esm/imodel-components-react → imodel-components-react}/lineweight/WeightPickerButton.scss +5 -6
  51. package/lib/imodel-components-react/navigationaids/Cube.d.ts.map +1 -0
  52. package/lib/imodel-components-react/navigationaids/Cube.js.map +1 -0
  53. package/lib/{esm/imodel-components-react → imodel-components-react}/navigationaids/CubeNavigationAid.d.ts +1 -1
  54. package/lib/imodel-components-react/navigationaids/CubeNavigationAid.d.ts.map +1 -0
  55. package/lib/{esm/imodel-components-react → imodel-components-react}/navigationaids/CubeNavigationAid.js +3 -3
  56. package/lib/imodel-components-react/navigationaids/CubeNavigationAid.js.map +1 -0
  57. package/lib/{esm/imodel-components-react → imodel-components-react}/navigationaids/CubeNavigationAid.scss +1 -2
  58. package/lib/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts.map +1 -0
  59. package/lib/{esm/imodel-components-react → imodel-components-react}/navigationaids/DrawingNavigationAid.js +2 -2
  60. package/lib/imodel-components-react/navigationaids/DrawingNavigationAid.js.map +1 -0
  61. package/lib/{cjs/imodel-components-react → imodel-components-react}/navigationaids/DrawingNavigationAid.scss +9 -10
  62. package/lib/imodel-components-react/quantityformat/FormatPanel.d.ts.map +1 -0
  63. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/FormatPanel.js +6 -6
  64. package/lib/imodel-components-react/quantityformat/FormatPanel.js.map +1 -0
  65. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/FormatPanel.scss +0 -2
  66. package/lib/imodel-components-react/quantityformat/FormatPrecision.d.ts.map +1 -0
  67. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/FormatPrecision.js +3 -3
  68. package/lib/imodel-components-react/quantityformat/FormatPrecision.js.map +1 -0
  69. package/lib/imodel-components-react/quantityformat/FormatSample.d.ts.map +1 -0
  70. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/FormatSample.js +1 -1
  71. package/lib/imodel-components-react/quantityformat/FormatSample.js.map +1 -0
  72. package/lib/imodel-components-react/quantityformat/FormatType.d.ts.map +1 -0
  73. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/FormatType.js +1 -1
  74. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/FormatType.js.map +1 -1
  75. package/lib/imodel-components-react/quantityformat/FormatUnitLabel.d.ts.map +1 -0
  76. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/FormatUnitLabel.js +1 -1
  77. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/FormatUnitLabel.js.map +1 -1
  78. package/lib/imodel-components-react/quantityformat/FormatUnits.d.ts.map +1 -0
  79. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/FormatUnits.js +2 -2
  80. package/lib/imodel-components-react/quantityformat/FormatUnits.js.map +1 -0
  81. package/lib/imodel-components-react/quantityformat/MiscFormatOptions.d.ts.map +1 -0
  82. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/MiscFormatOptions.js +7 -7
  83. package/lib/imodel-components-react/quantityformat/MiscFormatOptions.js.map +1 -0
  84. package/lib/imodel-components-react/quantityformat/QuantityFormatPanel.d.ts.map +1 -0
  85. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/QuantityFormatPanel.js +1 -1
  86. package/lib/imodel-components-react/quantityformat/QuantityFormatPanel.js.map +1 -0
  87. package/lib/imodel-components-react/quantityformat/misc/DecimalPrecision.d.ts.map +1 -0
  88. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/misc/DecimalPrecision.js +1 -1
  89. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/misc/DecimalPrecision.js.map +1 -1
  90. package/lib/imodel-components-react/quantityformat/misc/DecimalSeparator.d.ts.map +1 -0
  91. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/misc/DecimalSeparator.js +1 -1
  92. package/lib/imodel-components-react/quantityformat/misc/DecimalSeparator.js.map +1 -0
  93. package/lib/imodel-components-react/quantityformat/misc/FractionPrecision.d.ts.map +1 -0
  94. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/misc/FractionPrecision.js +1 -1
  95. package/lib/imodel-components-react/quantityformat/misc/FractionPrecision.js.map +1 -0
  96. package/lib/imodel-components-react/quantityformat/misc/ScientificType.d.ts.map +1 -0
  97. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/misc/ScientificType.js +1 -1
  98. package/lib/imodel-components-react/quantityformat/misc/ScientificType.js.map +1 -0
  99. package/lib/imodel-components-react/quantityformat/misc/SignOption.d.ts.map +1 -0
  100. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/misc/SignOption.js +1 -1
  101. package/lib/imodel-components-react/quantityformat/misc/SignOption.js.map +1 -0
  102. package/lib/imodel-components-react/quantityformat/misc/StationSeparatorSelector.d.ts.map +1 -0
  103. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/misc/StationSeparatorSelector.js +1 -1
  104. package/lib/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js.map +1 -0
  105. package/lib/imodel-components-react/quantityformat/misc/StationSizeSelector.d.ts.map +1 -0
  106. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/misc/StationSizeSelector.js +1 -1
  107. package/lib/imodel-components-react/quantityformat/misc/StationSizeSelector.js.map +1 -0
  108. package/lib/imodel-components-react/quantityformat/misc/ThousandsSelector.d.ts.map +1 -0
  109. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/misc/ThousandsSelector.js +1 -1
  110. package/lib/imodel-components-react/quantityformat/misc/ThousandsSelector.js.map +1 -0
  111. package/lib/imodel-components-react/quantityformat/misc/ThousandsSeparator.d.ts.map +1 -0
  112. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/misc/ThousandsSeparator.js +2 -2
  113. package/lib/imodel-components-react/quantityformat/misc/ThousandsSeparator.js.map +1 -0
  114. package/lib/imodel-components-react/quantityformat/misc/UnitDescr.d.ts.map +1 -0
  115. package/lib/imodel-components-react/quantityformat/misc/UnitDescr.js.map +1 -0
  116. package/lib/{cjs/imodel-components-react → imodel-components-react}/timeline/BaseSolarDataProvider.d.ts +1 -1
  117. package/lib/imodel-components-react/timeline/BaseSolarDataProvider.d.ts.map +1 -0
  118. package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/BaseSolarDataProvider.js.map +1 -1
  119. package/lib/{cjs/imodel-components-react → imodel-components-react}/timeline/BaseTimelineDataProvider.d.ts +1 -1
  120. package/lib/imodel-components-react/timeline/BaseTimelineDataProvider.d.ts.map +1 -0
  121. package/lib/imodel-components-react/timeline/BaseTimelineDataProvider.js.map +1 -0
  122. package/lib/imodel-components-react/timeline/InlineEdit.d.ts.map +1 -0
  123. package/lib/imodel-components-react/timeline/InlineEdit.js.map +1 -0
  124. package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/InlineEdit.scss +3 -5
  125. package/lib/imodel-components-react/timeline/PlayButton.d.ts.map +1 -0
  126. package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/PlayButton.js +1 -1
  127. package/lib/imodel-components-react/timeline/PlayButton.js.map +1 -0
  128. package/lib/{cjs/imodel-components-react → imodel-components-react}/timeline/Scrubber.d.ts +2 -4
  129. package/lib/imodel-components-react/timeline/Scrubber.d.ts.map +1 -0
  130. package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/Scrubber.js +19 -12
  131. package/lib/imodel-components-react/timeline/Scrubber.js.map +1 -0
  132. package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/Scrubber.scss +1 -1
  133. package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/SolarTimeline.d.ts +1 -1
  134. package/lib/imodel-components-react/timeline/SolarTimeline.d.ts.map +1 -0
  135. package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/SolarTimeline.js +3 -3
  136. package/lib/imodel-components-react/timeline/SolarTimeline.js.map +1 -0
  137. package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/SolarTimeline.scss +0 -2
  138. package/lib/imodel-components-react/timeline/SpeedTimeline.d.ts.map +1 -0
  139. package/lib/imodel-components-react/timeline/SpeedTimeline.js.map +1 -0
  140. package/lib/{cjs/imodel-components-react → imodel-components-react}/timeline/SpeedTimeline.scss +2 -4
  141. package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/Timeline.scss +7 -9
  142. package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/TimelineComponent.d.ts +1 -1
  143. package/lib/imodel-components-react/timeline/TimelineComponent.d.ts.map +1 -0
  144. package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/TimelineComponent.js +5 -5
  145. package/lib/imodel-components-react/timeline/TimelineComponent.js.map +1 -0
  146. package/lib/imodel-components-react/timeline/interfaces.d.ts.map +1 -0
  147. package/lib/imodel-components-react/timeline/interfaces.js.map +1 -0
  148. package/lib/imodel-components-react/useTranslation.d.ts.map +1 -0
  149. package/lib/{esm/imodel-components-react → imodel-components-react}/useTranslation.js +2 -2
  150. package/lib/imodel-components-react/useTranslation.js.map +1 -0
  151. package/lib/imodel-components-react/viewport/ViewportComponent.d.ts.map +1 -0
  152. package/lib/{esm/imodel-components-react → imodel-components-react}/viewport/ViewportComponent.js +1 -1
  153. package/lib/imodel-components-react/viewport/ViewportComponent.js.map +1 -0
  154. package/lib/{cjs/imodel-components-react → imodel-components-react}/viewport/ViewportComponentEvents.d.ts +1 -1
  155. package/lib/imodel-components-react/viewport/ViewportComponentEvents.d.ts.map +1 -0
  156. package/lib/{esm/imodel-components-react → imodel-components-react}/viewport/ViewportComponentEvents.js +1 -1
  157. package/lib/imodel-components-react/viewport/ViewportComponentEvents.js.map +1 -0
  158. package/lib/imodel-components-react.d.ts +77 -0
  159. package/lib/imodel-components-react.d.ts.map +1 -0
  160. package/lib/imodel-components-react.js +90 -0
  161. package/lib/imodel-components-react.js.map +1 -0
  162. package/lib/internal.d.ts +2 -0
  163. package/lib/internal.d.ts.map +1 -0
  164. package/lib/{esm/imodel-components-react/navigationaids/Cube.scss → internal.js} +2 -15
  165. package/lib/internal.js.map +1 -0
  166. package/package.json +46 -36
  167. package/lib/cjs/imodel-components-react/UiIModelComponents.d.ts.map +0 -1
  168. package/lib/cjs/imodel-components-react/UiIModelComponents.js +0 -78
  169. package/lib/cjs/imodel-components-react/UiIModelComponents.js.map +0 -1
  170. package/lib/cjs/imodel-components-react/color/AlphaSlider.d.ts.map +0 -1
  171. package/lib/cjs/imodel-components-react/color/AlphaSlider.js +0 -182
  172. package/lib/cjs/imodel-components-react/color/AlphaSlider.js.map +0 -1
  173. package/lib/cjs/imodel-components-react/color/ColorPickerButton.d.ts.map +0 -1
  174. package/lib/cjs/imodel-components-react/color/ColorPickerButton.js +0 -119
  175. package/lib/cjs/imodel-components-react/color/ColorPickerButton.js.map +0 -1
  176. package/lib/cjs/imodel-components-react/color/ColorPickerButton.scss +0 -90
  177. package/lib/cjs/imodel-components-react/color/ColorPickerDialog.d.ts.map +0 -1
  178. package/lib/cjs/imodel-components-react/color/ColorPickerDialog.js +0 -76
  179. package/lib/cjs/imodel-components-react/color/ColorPickerDialog.js.map +0 -1
  180. package/lib/cjs/imodel-components-react/color/ColorPickerPopup.d.ts.map +0 -1
  181. package/lib/cjs/imodel-components-react/color/ColorPickerPopup.js +0 -141
  182. package/lib/cjs/imodel-components-react/color/ColorPickerPopup.js.map +0 -1
  183. package/lib/cjs/imodel-components-react/color/HueSlider.d.ts.map +0 -1
  184. package/lib/cjs/imodel-components-react/color/HueSlider.js +0 -201
  185. package/lib/cjs/imodel-components-react/color/HueSlider.js.map +0 -1
  186. package/lib/cjs/imodel-components-react/color/SaturationPicker.d.ts.map +0 -1
  187. package/lib/cjs/imodel-components-react/color/SaturationPicker.js +0 -197
  188. package/lib/cjs/imodel-components-react/color/SaturationPicker.js.map +0 -1
  189. package/lib/cjs/imodel-components-react/color/Swatch.d.ts.map +0 -1
  190. package/lib/cjs/imodel-components-react/color/Swatch.js +0 -63
  191. package/lib/cjs/imodel-components-react/color/Swatch.js.map +0 -1
  192. package/lib/cjs/imodel-components-react/color/getCSSColorFromDef.d.ts.map +0 -1
  193. package/lib/cjs/imodel-components-react/color/getCSSColorFromDef.js +0 -24
  194. package/lib/cjs/imodel-components-react/color/getCSSColorFromDef.js.map +0 -1
  195. package/lib/cjs/imodel-components-react/editors/ColorEditor.d.ts.map +0 -1
  196. package/lib/cjs/imodel-components-react/editors/ColorEditor.js +0 -150
  197. package/lib/cjs/imodel-components-react/editors/ColorEditor.js.map +0 -1
  198. package/lib/cjs/imodel-components-react/editors/WeightEditor.d.ts.map +0 -1
  199. package/lib/cjs/imodel-components-react/editors/WeightEditor.js +0 -153
  200. package/lib/cjs/imodel-components-react/editors/WeightEditor.js.map +0 -1
  201. package/lib/cjs/imodel-components-react/inputs/QuantityInput.d.ts.map +0 -1
  202. package/lib/cjs/imodel-components-react/inputs/QuantityInput.js +0 -94
  203. package/lib/cjs/imodel-components-react/inputs/QuantityInput.js.map +0 -1
  204. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.d.ts.map +0 -1
  205. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.js +0 -265
  206. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.js.map +0 -1
  207. package/lib/cjs/imodel-components-react/lineweight/Swatch.d.ts.map +0 -1
  208. package/lib/cjs/imodel-components-react/lineweight/Swatch.js +0 -84
  209. package/lib/cjs/imodel-components-react/lineweight/Swatch.js.map +0 -1
  210. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.d.ts.map +0 -1
  211. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.js +0 -160
  212. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.js.map +0 -1
  213. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.scss +0 -51
  214. package/lib/cjs/imodel-components-react/navigationaids/Cube.d.ts.map +0 -1
  215. package/lib/cjs/imodel-components-react/navigationaids/Cube.js +0 -151
  216. package/lib/cjs/imodel-components-react/navigationaids/Cube.js.map +0 -1
  217. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.d.ts +0 -153
  218. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.d.ts.map +0 -1
  219. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.js +0 -683
  220. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.js.map +0 -1
  221. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.scss +0 -178
  222. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts.map +0 -1
  223. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.js +0 -736
  224. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.js.map +0 -1
  225. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.d.ts.map +0 -1
  226. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.js +0 -112
  227. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.js.map +0 -1
  228. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.scss +0 -55
  229. package/lib/cjs/imodel-components-react/quantityformat/FormatPrecision.d.ts.map +0 -1
  230. package/lib/cjs/imodel-components-react/quantityformat/FormatPrecision.js +0 -56
  231. package/lib/cjs/imodel-components-react/quantityformat/FormatPrecision.js.map +0 -1
  232. package/lib/cjs/imodel-components-react/quantityformat/FormatSample.d.ts.map +0 -1
  233. package/lib/cjs/imodel-components-react/quantityformat/FormatSample.js +0 -94
  234. package/lib/cjs/imodel-components-react/quantityformat/FormatSample.js.map +0 -1
  235. package/lib/cjs/imodel-components-react/quantityformat/FormatType.d.ts.map +0 -1
  236. package/lib/cjs/imodel-components-react/quantityformat/FormatType.js +0 -115
  237. package/lib/cjs/imodel-components-react/quantityformat/FormatType.js.map +0 -1
  238. package/lib/cjs/imodel-components-react/quantityformat/FormatUnitLabel.d.ts.map +0 -1
  239. package/lib/cjs/imodel-components-react/quantityformat/FormatUnitLabel.js +0 -117
  240. package/lib/cjs/imodel-components-react/quantityformat/FormatUnitLabel.js.map +0 -1
  241. package/lib/cjs/imodel-components-react/quantityformat/FormatUnits.d.ts.map +0 -1
  242. package/lib/cjs/imodel-components-react/quantityformat/FormatUnits.js +0 -137
  243. package/lib/cjs/imodel-components-react/quantityformat/FormatUnits.js.map +0 -1
  244. package/lib/cjs/imodel-components-react/quantityformat/MiscFormatOptions.d.ts.map +0 -1
  245. package/lib/cjs/imodel-components-react/quantityformat/MiscFormatOptions.js +0 -193
  246. package/lib/cjs/imodel-components-react/quantityformat/MiscFormatOptions.js.map +0 -1
  247. package/lib/cjs/imodel-components-react/quantityformat/QuantityFormatPanel.d.ts.map +0 -1
  248. package/lib/cjs/imodel-components-react/quantityformat/QuantityFormatPanel.js +0 -145
  249. package/lib/cjs/imodel-components-react/quantityformat/QuantityFormatPanel.js.map +0 -1
  250. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalPrecision.d.ts.map +0 -1
  251. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalPrecision.js +0 -104
  252. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalPrecision.js.map +0 -1
  253. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalSeparator.d.ts.map +0 -1
  254. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalSeparator.js +0 -59
  255. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalSeparator.js.map +0 -1
  256. package/lib/cjs/imodel-components-react/quantityformat/misc/FractionPrecision.d.ts.map +0 -1
  257. package/lib/cjs/imodel-components-react/quantityformat/misc/FractionPrecision.js +0 -87
  258. package/lib/cjs/imodel-components-react/quantityformat/misc/FractionPrecision.js.map +0 -1
  259. package/lib/cjs/imodel-components-react/quantityformat/misc/ScientificType.d.ts.map +0 -1
  260. package/lib/cjs/imodel-components-react/quantityformat/misc/ScientificType.js +0 -60
  261. package/lib/cjs/imodel-components-react/quantityformat/misc/ScientificType.js.map +0 -1
  262. package/lib/cjs/imodel-components-react/quantityformat/misc/SignOption.d.ts.map +0 -1
  263. package/lib/cjs/imodel-components-react/quantityformat/misc/SignOption.js +0 -68
  264. package/lib/cjs/imodel-components-react/quantityformat/misc/SignOption.js.map +0 -1
  265. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSeparatorSelector.d.ts.map +0 -1
  266. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js +0 -76
  267. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js.map +0 -1
  268. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSizeSelector.d.ts.map +0 -1
  269. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSizeSelector.js +0 -59
  270. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSizeSelector.js.map +0 -1
  271. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSelector.d.ts.map +0 -1
  272. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSelector.js +0 -65
  273. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSelector.js.map +0 -1
  274. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSeparator.d.ts.map +0 -1
  275. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSeparator.js +0 -106
  276. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSeparator.js.map +0 -1
  277. package/lib/cjs/imodel-components-react/quantityformat/misc/UnitDescr.d.ts.map +0 -1
  278. package/lib/cjs/imodel-components-react/quantityformat/misc/UnitDescr.js +0 -135
  279. package/lib/cjs/imodel-components-react/quantityformat/misc/UnitDescr.js.map +0 -1
  280. package/lib/cjs/imodel-components-react/timeline/BaseSolarDataProvider.d.ts.map +0 -1
  281. package/lib/cjs/imodel-components-react/timeline/BaseSolarDataProvider.js +0 -150
  282. package/lib/cjs/imodel-components-react/timeline/BaseSolarDataProvider.js.map +0 -1
  283. package/lib/cjs/imodel-components-react/timeline/BaseTimelineDataProvider.d.ts.map +0 -1
  284. package/lib/cjs/imodel-components-react/timeline/BaseTimelineDataProvider.js +0 -64
  285. package/lib/cjs/imodel-components-react/timeline/BaseTimelineDataProvider.js.map +0 -1
  286. package/lib/cjs/imodel-components-react/timeline/InlineEdit.d.ts.map +0 -1
  287. package/lib/cjs/imodel-components-react/timeline/InlineEdit.js +0 -86
  288. package/lib/cjs/imodel-components-react/timeline/InlineEdit.js.map +0 -1
  289. package/lib/cjs/imodel-components-react/timeline/InlineEdit.scss +0 -24
  290. package/lib/cjs/imodel-components-react/timeline/PlayButton.d.ts.map +0 -1
  291. package/lib/cjs/imodel-components-react/timeline/PlayButton.js +0 -50
  292. package/lib/cjs/imodel-components-react/timeline/PlayButton.js.map +0 -1
  293. package/lib/cjs/imodel-components-react/timeline/Scrubber.d.ts.map +0 -1
  294. package/lib/cjs/imodel-components-react/timeline/Scrubber.js +0 -185
  295. package/lib/cjs/imodel-components-react/timeline/Scrubber.js.map +0 -1
  296. package/lib/cjs/imodel-components-react/timeline/Scrubber.scss +0 -105
  297. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.d.ts +0 -60
  298. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.d.ts.map +0 -1
  299. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.js +0 -358
  300. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.js.map +0 -1
  301. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.scss +0 -45
  302. package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.d.ts.map +0 -1
  303. package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.js +0 -57
  304. package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.js.map +0 -1
  305. package/lib/cjs/imodel-components-react/timeline/Timeline.scss +0 -165
  306. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.d.ts +0 -100
  307. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.d.ts.map +0 -1
  308. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.js +0 -286
  309. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.js.map +0 -1
  310. package/lib/cjs/imodel-components-react/timeline/interfaces.d.ts.map +0 -1
  311. package/lib/cjs/imodel-components-react/timeline/interfaces.js +0 -46
  312. package/lib/cjs/imodel-components-react/timeline/interfaces.js.map +0 -1
  313. package/lib/cjs/imodel-components-react/useTranslation.d.ts.map +0 -1
  314. package/lib/cjs/imodel-components-react/useTranslation.js +0 -52
  315. package/lib/cjs/imodel-components-react/useTranslation.js.map +0 -1
  316. package/lib/cjs/imodel-components-react/viewport/ViewportComponent.d.ts.map +0 -1
  317. package/lib/cjs/imodel-components-react/viewport/ViewportComponent.js +0 -267
  318. package/lib/cjs/imodel-components-react/viewport/ViewportComponent.js.map +0 -1
  319. package/lib/cjs/imodel-components-react/viewport/ViewportComponentEvents.d.ts.map +0 -1
  320. package/lib/cjs/imodel-components-react/viewport/ViewportComponentEvents.js +0 -119
  321. package/lib/cjs/imodel-components-react/viewport/ViewportComponentEvents.js.map +0 -1
  322. package/lib/cjs/imodel-components-react.d.ts +0 -80
  323. package/lib/cjs/imodel-components-react.d.ts.map +0 -1
  324. package/lib/cjs/imodel-components-react.js +0 -103
  325. package/lib/cjs/imodel-components-react.js.map +0 -1
  326. package/lib/esm/imodel-components-react/UiIModelComponents.d.ts +0 -29
  327. package/lib/esm/imodel-components-react/UiIModelComponents.d.ts.map +0 -1
  328. package/lib/esm/imodel-components-react/UiIModelComponents.js.map +0 -1
  329. package/lib/esm/imodel-components-react/UiIModelComponents.json +0 -150
  330. package/lib/esm/imodel-components-react/color/AlphaSlider.d.ts +0 -36
  331. package/lib/esm/imodel-components-react/color/AlphaSlider.d.ts.map +0 -1
  332. package/lib/esm/imodel-components-react/color/AlphaSlider.js.map +0 -1
  333. package/lib/esm/imodel-components-react/color/AlphaSlider.scss +0 -71
  334. package/lib/esm/imodel-components-react/color/ColorPickerButton.d.ts +0 -40
  335. package/lib/esm/imodel-components-react/color/ColorPickerButton.d.ts.map +0 -1
  336. package/lib/esm/imodel-components-react/color/ColorPickerButton.js.map +0 -1
  337. package/lib/esm/imodel-components-react/color/ColorPickerDialog.d.ts +0 -26
  338. package/lib/esm/imodel-components-react/color/ColorPickerDialog.d.ts.map +0 -1
  339. package/lib/esm/imodel-components-react/color/ColorPickerDialog.js.map +0 -1
  340. package/lib/esm/imodel-components-react/color/ColorPickerPopup.d.ts +0 -47
  341. package/lib/esm/imodel-components-react/color/ColorPickerPopup.d.ts.map +0 -1
  342. package/lib/esm/imodel-components-react/color/ColorPickerPopup.js.map +0 -1
  343. package/lib/esm/imodel-components-react/color/ColorPickerPopup.scss +0 -62
  344. package/lib/esm/imodel-components-react/color/HueSlider.d.ts +0 -25
  345. package/lib/esm/imodel-components-react/color/HueSlider.d.ts.map +0 -1
  346. package/lib/esm/imodel-components-react/color/HueSlider.scss +0 -78
  347. package/lib/esm/imodel-components-react/color/SaturationPicker.d.ts +0 -23
  348. package/lib/esm/imodel-components-react/color/SaturationPicker.d.ts.map +0 -1
  349. package/lib/esm/imodel-components-react/color/SaturationPicker.js.map +0 -1
  350. package/lib/esm/imodel-components-react/color/SaturationPicker.scss +0 -36
  351. package/lib/esm/imodel-components-react/color/Swatch.d.ts +0 -25
  352. package/lib/esm/imodel-components-react/color/Swatch.d.ts.map +0 -1
  353. package/lib/esm/imodel-components-react/color/Swatch.scss +0 -22
  354. package/lib/esm/imodel-components-react/color/getCSSColorFromDef.d.ts +0 -7
  355. package/lib/esm/imodel-components-react/color/getCSSColorFromDef.d.ts.map +0 -1
  356. package/lib/esm/imodel-components-react/color/getCSSColorFromDef.js.map +0 -1
  357. package/lib/esm/imodel-components-react/editors/ColorEditor.d.ts +0 -42
  358. package/lib/esm/imodel-components-react/editors/ColorEditor.d.ts.map +0 -1
  359. package/lib/esm/imodel-components-react/editors/ColorEditor.js.map +0 -1
  360. package/lib/esm/imodel-components-react/editors/ColorEditor.scss +0 -18
  361. package/lib/esm/imodel-components-react/editors/WeightEditor.d.ts +0 -44
  362. package/lib/esm/imodel-components-react/editors/WeightEditor.d.ts.map +0 -1
  363. package/lib/esm/imodel-components-react/editors/WeightEditor.js.map +0 -1
  364. package/lib/esm/imodel-components-react/editors/WeightEditor.scss +0 -16
  365. package/lib/esm/imodel-components-react/inputs/QuantityInput.d.ts +0 -26
  366. package/lib/esm/imodel-components-react/inputs/QuantityInput.d.ts.map +0 -1
  367. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.d.ts +0 -47
  368. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.d.ts.map +0 -1
  369. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.js.map +0 -1
  370. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.scss +0 -106
  371. package/lib/esm/imodel-components-react/lineweight/Swatch.d.ts +0 -33
  372. package/lib/esm/imodel-components-react/lineweight/Swatch.d.ts.map +0 -1
  373. package/lib/esm/imodel-components-react/lineweight/Swatch.scss +0 -48
  374. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.d.ts +0 -59
  375. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.d.ts.map +0 -1
  376. package/lib/esm/imodel-components-react/navigationaids/Cube.d.ts +0 -46
  377. package/lib/esm/imodel-components-react/navigationaids/Cube.d.ts.map +0 -1
  378. package/lib/esm/imodel-components-react/navigationaids/Cube.js.map +0 -1
  379. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.d.ts.map +0 -1
  380. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.js.map +0 -1
  381. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts +0 -144
  382. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts.map +0 -1
  383. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.js.map +0 -1
  384. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.scss +0 -134
  385. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.d.ts +0 -29
  386. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.d.ts.map +0 -1
  387. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.js.map +0 -1
  388. package/lib/esm/imodel-components-react/quantityformat/FormatPrecision.d.ts +0 -19
  389. package/lib/esm/imodel-components-react/quantityformat/FormatPrecision.d.ts.map +0 -1
  390. package/lib/esm/imodel-components-react/quantityformat/FormatPrecision.js.map +0 -1
  391. package/lib/esm/imodel-components-react/quantityformat/FormatSample.d.ts +0 -20
  392. package/lib/esm/imodel-components-react/quantityformat/FormatSample.d.ts.map +0 -1
  393. package/lib/esm/imodel-components-react/quantityformat/FormatSample.js.map +0 -1
  394. package/lib/esm/imodel-components-react/quantityformat/FormatType.d.ts +0 -19
  395. package/lib/esm/imodel-components-react/quantityformat/FormatType.d.ts.map +0 -1
  396. package/lib/esm/imodel-components-react/quantityformat/FormatUnitLabel.d.ts +0 -19
  397. package/lib/esm/imodel-components-react/quantityformat/FormatUnitLabel.d.ts.map +0 -1
  398. package/lib/esm/imodel-components-react/quantityformat/FormatUnits.d.ts +0 -21
  399. package/lib/esm/imodel-components-react/quantityformat/FormatUnits.d.ts.map +0 -1
  400. package/lib/esm/imodel-components-react/quantityformat/FormatUnits.js.map +0 -1
  401. package/lib/esm/imodel-components-react/quantityformat/MiscFormatOptions.d.ts +0 -23
  402. package/lib/esm/imodel-components-react/quantityformat/MiscFormatOptions.d.ts.map +0 -1
  403. package/lib/esm/imodel-components-react/quantityformat/MiscFormatOptions.js.map +0 -1
  404. package/lib/esm/imodel-components-react/quantityformat/QuantityFormatPanel.d.ts +0 -24
  405. package/lib/esm/imodel-components-react/quantityformat/QuantityFormatPanel.d.ts.map +0 -1
  406. package/lib/esm/imodel-components-react/quantityformat/QuantityFormatPanel.js.map +0 -1
  407. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalPrecision.d.ts +0 -18
  408. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalPrecision.d.ts.map +0 -1
  409. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalSeparator.d.ts +0 -18
  410. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalSeparator.d.ts.map +0 -1
  411. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalSeparator.js.map +0 -1
  412. package/lib/esm/imodel-components-react/quantityformat/misc/FractionPrecision.d.ts +0 -17
  413. package/lib/esm/imodel-components-react/quantityformat/misc/FractionPrecision.d.ts.map +0 -1
  414. package/lib/esm/imodel-components-react/quantityformat/misc/FractionPrecision.js.map +0 -1
  415. package/lib/esm/imodel-components-react/quantityformat/misc/ScientificType.d.ts +0 -19
  416. package/lib/esm/imodel-components-react/quantityformat/misc/ScientificType.d.ts.map +0 -1
  417. package/lib/esm/imodel-components-react/quantityformat/misc/ScientificType.js.map +0 -1
  418. package/lib/esm/imodel-components-react/quantityformat/misc/SignOption.d.ts +0 -18
  419. package/lib/esm/imodel-components-react/quantityformat/misc/SignOption.d.ts.map +0 -1
  420. package/lib/esm/imodel-components-react/quantityformat/misc/SignOption.js.map +0 -1
  421. package/lib/esm/imodel-components-react/quantityformat/misc/StationSeparatorSelector.d.ts +0 -18
  422. package/lib/esm/imodel-components-react/quantityformat/misc/StationSeparatorSelector.d.ts.map +0 -1
  423. package/lib/esm/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js.map +0 -1
  424. package/lib/esm/imodel-components-react/quantityformat/misc/StationSizeSelector.d.ts +0 -18
  425. package/lib/esm/imodel-components-react/quantityformat/misc/StationSizeSelector.d.ts.map +0 -1
  426. package/lib/esm/imodel-components-react/quantityformat/misc/StationSizeSelector.js.map +0 -1
  427. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSelector.d.ts +0 -18
  428. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSelector.d.ts.map +0 -1
  429. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSelector.js.map +0 -1
  430. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSeparator.d.ts +0 -18
  431. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSeparator.d.ts.map +0 -1
  432. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSeparator.js.map +0 -1
  433. package/lib/esm/imodel-components-react/quantityformat/misc/UnitDescr.d.ts +0 -24
  434. package/lib/esm/imodel-components-react/quantityformat/misc/UnitDescr.d.ts.map +0 -1
  435. package/lib/esm/imodel-components-react/quantityformat/misc/UnitDescr.js.map +0 -1
  436. package/lib/esm/imodel-components-react/timeline/BaseSolarDataProvider.d.ts +0 -53
  437. package/lib/esm/imodel-components-react/timeline/BaseSolarDataProvider.d.ts.map +0 -1
  438. package/lib/esm/imodel-components-react/timeline/BaseTimelineDataProvider.d.ts +0 -32
  439. package/lib/esm/imodel-components-react/timeline/BaseTimelineDataProvider.d.ts.map +0 -1
  440. package/lib/esm/imodel-components-react/timeline/BaseTimelineDataProvider.js.map +0 -1
  441. package/lib/esm/imodel-components-react/timeline/InlineEdit.d.ts +0 -27
  442. package/lib/esm/imodel-components-react/timeline/InlineEdit.d.ts.map +0 -1
  443. package/lib/esm/imodel-components-react/timeline/InlineEdit.js.map +0 -1
  444. package/lib/esm/imodel-components-react/timeline/PlayButton.d.ts +0 -12
  445. package/lib/esm/imodel-components-react/timeline/PlayButton.d.ts.map +0 -1
  446. package/lib/esm/imodel-components-react/timeline/PlayButton.js.map +0 -1
  447. package/lib/esm/imodel-components-react/timeline/Scrubber.d.ts +0 -54
  448. package/lib/esm/imodel-components-react/timeline/Scrubber.d.ts.map +0 -1
  449. package/lib/esm/imodel-components-react/timeline/Scrubber.js.map +0 -1
  450. package/lib/esm/imodel-components-react/timeline/SolarTimeline.d.ts.map +0 -1
  451. package/lib/esm/imodel-components-react/timeline/SolarTimeline.js.map +0 -1
  452. package/lib/esm/imodel-components-react/timeline/SpeedTimeline.d.ts +0 -16
  453. package/lib/esm/imodel-components-react/timeline/SpeedTimeline.d.ts.map +0 -1
  454. package/lib/esm/imodel-components-react/timeline/SpeedTimeline.js.map +0 -1
  455. package/lib/esm/imodel-components-react/timeline/SpeedTimeline.scss +0 -40
  456. package/lib/esm/imodel-components-react/timeline/TimelineComponent.d.ts.map +0 -1
  457. package/lib/esm/imodel-components-react/timeline/TimelineComponent.js.map +0 -1
  458. package/lib/esm/imodel-components-react/timeline/TimelineComponent.scss +0 -48
  459. package/lib/esm/imodel-components-react/timeline/interfaces.d.ts +0 -146
  460. package/lib/esm/imodel-components-react/timeline/interfaces.d.ts.map +0 -1
  461. package/lib/esm/imodel-components-react/timeline/interfaces.js.map +0 -1
  462. package/lib/esm/imodel-components-react/useTranslation.d.ts +0 -7
  463. package/lib/esm/imodel-components-react/useTranslation.d.ts.map +0 -1
  464. package/lib/esm/imodel-components-react/useTranslation.js.map +0 -1
  465. package/lib/esm/imodel-components-react/viewport/ViewportComponent.d.ts +0 -43
  466. package/lib/esm/imodel-components-react/viewport/ViewportComponent.d.ts.map +0 -1
  467. package/lib/esm/imodel-components-react/viewport/ViewportComponent.js.map +0 -1
  468. package/lib/esm/imodel-components-react/viewport/ViewportComponentEvents.d.ts +0 -119
  469. package/lib/esm/imodel-components-react/viewport/ViewportComponentEvents.d.ts.map +0 -1
  470. package/lib/esm/imodel-components-react/viewport/ViewportComponentEvents.js.map +0 -1
  471. package/lib/esm/imodel-components-react.d.ts +0 -80
  472. package/lib/esm/imodel-components-react.d.ts.map +0 -1
  473. package/lib/esm/imodel-components-react.js +0 -85
  474. package/lib/esm/imodel-components-react.js.map +0 -1
  475. /package/lib/{cjs/imodel-components-react → imodel-components-react}/UiIModelComponents.json +0 -0
  476. /package/lib/{cjs/imodel-components-react → imodel-components-react}/color/AlphaSlider.d.ts +0 -0
  477. /package/lib/{cjs/imodel-components-react → imodel-components-react}/color/AlphaSlider.scss +0 -0
  478. /package/lib/{cjs/imodel-components-react → imodel-components-react}/color/ColorPickerButton.d.ts +0 -0
  479. /package/lib/{cjs/imodel-components-react → imodel-components-react}/color/ColorPickerDialog.d.ts +0 -0
  480. /package/lib/{esm/imodel-components-react → imodel-components-react}/color/ColorPickerDialog.js +0 -0
  481. /package/lib/{cjs/imodel-components-react → imodel-components-react}/color/ColorPickerPopup.d.ts +0 -0
  482. /package/lib/{cjs/imodel-components-react → imodel-components-react}/color/ColorPickerPopup.scss +0 -0
  483. /package/lib/{cjs/imodel-components-react → imodel-components-react}/color/HueSlider.d.ts +0 -0
  484. /package/lib/{cjs/imodel-components-react → imodel-components-react}/color/HueSlider.scss +0 -0
  485. /package/lib/{cjs/imodel-components-react → imodel-components-react}/color/SaturationPicker.d.ts +0 -0
  486. /package/lib/{cjs/imodel-components-react → imodel-components-react}/color/SaturationPicker.scss +0 -0
  487. /package/lib/{cjs/imodel-components-react → imodel-components-react}/color/Swatch.d.ts +0 -0
  488. /package/lib/{cjs/imodel-components-react → imodel-components-react}/color/Swatch.scss +0 -0
  489. /package/lib/{cjs/imodel-components-react → imodel-components-react}/color/getCSSColorFromDef.d.ts +0 -0
  490. /package/lib/{esm/imodel-components-react → imodel-components-react}/color/getCSSColorFromDef.js +0 -0
  491. /package/lib/{cjs/imodel-components-react → imodel-components-react}/editors/ColorEditor.d.ts +0 -0
  492. /package/lib/{cjs/imodel-components-react → imodel-components-react}/editors/WeightEditor.d.ts +0 -0
  493. /package/lib/{cjs/imodel-components-react → imodel-components-react}/inputs/QuantityInput.d.ts +0 -0
  494. /package/lib/{cjs/imodel-components-react → imodel-components-react}/inputs/QuantityNumberInput.d.ts +0 -0
  495. /package/lib/{esm/imodel-components-react → imodel-components-react}/inputs/QuantityNumberInput.js +0 -0
  496. /package/lib/{cjs/imodel-components-react → imodel-components-react}/lineweight/Swatch.d.ts +0 -0
  497. /package/lib/{cjs/imodel-components-react → imodel-components-react}/lineweight/WeightPickerButton.d.ts +0 -0
  498. /package/lib/{cjs/imodel-components-react → imodel-components-react}/navigationaids/Cube.d.ts +0 -0
  499. /package/lib/{esm/imodel-components-react → imodel-components-react}/navigationaids/Cube.js +0 -0
  500. /package/lib/{cjs/imodel-components-react → imodel-components-react}/navigationaids/Cube.scss +0 -0
  501. /package/lib/{cjs/imodel-components-react → imodel-components-react}/navigationaids/DrawingNavigationAid.d.ts +0 -0
  502. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/FormatPanel.d.ts +0 -0
  503. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/FormatPrecision.d.ts +0 -0
  504. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/FormatSample.d.ts +0 -0
  505. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/FormatType.d.ts +0 -0
  506. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/FormatUnitLabel.d.ts +0 -0
  507. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/FormatUnits.d.ts +0 -0
  508. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/MiscFormatOptions.d.ts +0 -0
  509. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/QuantityFormatPanel.d.ts +0 -0
  510. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/misc/DecimalPrecision.d.ts +0 -0
  511. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/misc/DecimalSeparator.d.ts +0 -0
  512. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/misc/FractionPrecision.d.ts +0 -0
  513. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/misc/ScientificType.d.ts +0 -0
  514. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/misc/SignOption.d.ts +0 -0
  515. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/misc/StationSeparatorSelector.d.ts +0 -0
  516. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/misc/StationSizeSelector.d.ts +0 -0
  517. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/misc/ThousandsSelector.d.ts +0 -0
  518. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/misc/ThousandsSeparator.d.ts +0 -0
  519. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/misc/UnitDescr.d.ts +0 -0
  520. /package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/misc/UnitDescr.js +0 -0
  521. /package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/BaseSolarDataProvider.js +0 -0
  522. /package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/BaseTimelineDataProvider.js +0 -0
  523. /package/lib/{cjs/imodel-components-react → imodel-components-react}/timeline/InlineEdit.d.ts +0 -0
  524. /package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/InlineEdit.js +0 -0
  525. /package/lib/{cjs/imodel-components-react → imodel-components-react}/timeline/PlayButton.d.ts +0 -0
  526. /package/lib/{cjs/imodel-components-react → imodel-components-react}/timeline/SpeedTimeline.d.ts +0 -0
  527. /package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/SpeedTimeline.js +0 -0
  528. /package/lib/{cjs/imodel-components-react → imodel-components-react}/timeline/TimelineComponent.scss +0 -0
  529. /package/lib/{cjs/imodel-components-react → imodel-components-react}/timeline/interfaces.d.ts +0 -0
  530. /package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/interfaces.js +0 -0
  531. /package/lib/{cjs/imodel-components-react → imodel-components-react}/useTranslation.d.ts +0 -0
  532. /package/lib/{cjs/imodel-components-react → imodel-components-react}/viewport/ViewportComponent.d.ts +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"TimelineComponent.js","sourceRoot":"","sources":["../../../../src/imodel-components-react/timeline/TimelineComponent.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Timeline\n */\nimport \"./TimelineComponent.scss\";\nimport * as React from \"react\";\nimport { UiAdmin } from \"@itwin/appui-abstract\";\nimport type { DateFormatOptions } from \"@itwin/components-react\";\nimport { toDateString, toTimeString } from \"@itwin/components-react\";\nimport { SvgCheckmark, SvgMoreVertical } from \"@itwin/itwinui-icons-react\";\nimport type { Slider } from \"@itwin/itwinui-react\";\nimport {\n DropdownMenu,\n IconButton,\n MenuDivider,\n MenuItem,\n} from \"@itwin/itwinui-react\";\nimport { InlineEdit } from \"./InlineEdit\";\nimport type { PlaybackSettings, TimelinePausePlayArgs } from \"./interfaces\";\nimport { TimelinePausePlayAction } from \"./interfaces\";\nimport { PlayButton } from \"./PlayButton\";\nimport { Scrubber } from \"./Scrubber\";\nimport { useTranslation } from \"../useTranslation\";\n\nconst slowSpeed = 60 * 1000;\nconst mediumSpeed = 20 * 1000;\nconst fastSpeed = 10 * 1000;\n\n/** [[TimelineMenuItemOption]]: specifies how the app wants the timeline speeds to be installed on the TimelineComponent's ContextMenu\n * \"replace\" : use the app-supplied items in place of the standard items\n * \"append\" : add the app-supplied items following the standard items\n * \"prefix\" : add the app-supplied items before the standard items\n *\n * @public\n */\nexport type TimelineMenuItemOption = \"replace\" | \"append\" | \"prefix\";\n\n/** [[TimelineMenuItemProps]] specifies playback speed entries in the Timeline's ContextMenu\n * @public\n */\nexport interface TimelineMenuItemProps {\n /** localized label for menu item */\n label: string;\n\n /** duration for the entire timeline to play */\n timelineDuration: number;\n}\n\n/** TimelineDateMarkerProps: Mark a date on the timeline with an indicator\n * @public\n */\nexport interface TimelineDateMarkerProps {\n /** Date to mark. If undefined, today's date will be used. */\n date?: Date;\n /** ReactNode to use as the marker on the timeline. If undefined, a short vertical bar will mark the date. */\n dateMarker?: React.ReactNode;\n}\n\n/** [[TimelineComponentProps]] configure the timeline\n * @public\n */\nexport interface TimelineComponentProps {\n /** Start date: beginning of the date range of a date-based timeline. */\n startDate?: Date;\n /** End date: end of the date range of a date-based timeline. */\n endDate?: Date;\n /** Total duration: range of the timeline in milliseconds.\n * @note This can be changed by user interaction. See {@link TimelineComponentProps.appMenuItems}.\n */\n totalDuration: number;\n /** Initial value for the current duration (the location of the thumb) in milliseconds */\n initialDuration?: number;\n /** Show in minimized mode (For future use. This prop will always be treated as true.)\n * @deprecated in 4.10.0. Has no effect.\n */\n minimized?: boolean;\n /** When playing, repeat indefinitely. Defaults to `false`.\n * @note This can be changed by user interaction. See {@link TimelineComponentProps.includeRepeat}.\n */\n repeat?: boolean;\n /** Show duration instead of time */\n showDuration?: boolean;\n /** Callback with current duration value (as a fraction) */\n onChange?: (duration: number) => void;\n /** Callback triggered when play/pause button is pressed */\n onPlayPause?: (playing: boolean) => void;\n /** Callback triggered when backward/forward buttons are pressed.\n * @deprecated in 4.10.0. Has no effect.\n */\n onJump?: (forward: boolean) => void;\n /** Callback triggered when a setting is changed */\n onSettingsChange?: (arg: PlaybackSettings) => void;\n /** Always display in miniMode with no expand menu (For future use. This prop will always be treated as true)\n * @deprecated in 4.10.0. Has no effect.\n */\n alwaysMinimized?: boolean;\n /** ComponentId -- must be set to use TimelineComponentEvents\n * @deprecated in 4.11.0. Use the isPlaying prop instead.\n */\n componentId?: string;\n /** Include the repeat option on the Timeline Context Menu. Defaults to `true`. */\n includeRepeat?: boolean;\n /** App-supplied speed entries in the Timeline Context Menu. Defaults to `[Slow, Medium, Fast]` items. */\n appMenuItems?: TimelineMenuItemProps[];\n /** How to include the supplied app menu items in the Timeline Context Menu (prefix, append or replace). Defaults to `replace`. */\n appMenuItemOption?: TimelineMenuItemOption;\n /** Display date and time offset by the number of minutes specified. When undefined - local timezone will be used */\n timeZoneOffset?: number;\n /** Display a marker on the timeline rail to indicate current date - will only work if starDate and endDate are defined */\n markDate?: TimelineDateMarkerProps;\n /** Options used to format date string. If not defined it will user browser default locale settings. */\n dateFormatOptions?: DateFormatOptions;\n /** Options used to format time string. If not defined it will user browser default locale settings. */\n timeFormatOptions?: DateFormatOptions;\n /** Used to control the play/pause state of the Timeline.*/\n isPlaying?: boolean;\n /** Props for a container that holds the slider thumbs and tracks. */\n trackContainerProps?: React.ComponentProps<\n typeof Slider\n >[\"trackContainerProps\"];\n}\n\n/** [[TimelineComponent]] is used to playback timeline data\n * @public\n */\nexport function TimelineComponent(props: TimelineComponentProps) {\n const {\n appMenuItemOption = \"replace\",\n startDate,\n endDate,\n showDuration,\n timeZoneOffset,\n dateFormatOptions,\n timeFormatOptions,\n includeRepeat = true,\n onSettingsChange,\n onChange,\n onPlayPause,\n } = props;\n const [isPlaying, setIsPlaying] = React.useState(!!props.isPlaying);\n const [currentDuration, setCurrentDuration] = React.useState(\n props.initialDuration ?? 0\n );\n const [totalDuration, setTotalDuration] = React.useState(props.totalDuration);\n const [repeat, setRepeat] = React.useState(props.repeat ?? false);\n\n const playOrReplay = React.useCallback(() => {\n if (isPlaying) return;\n\n if (currentDuration >= totalDuration) {\n setCurrentDuration(0);\n }\n\n setIsPlaying(true);\n onPlayPause?.(true);\n }, [isPlaying, onPlayPause, currentDuration, totalDuration]);\n const pause = React.useCallback(() => {\n if (!isPlaying) return;\n setIsPlaying(false);\n onPlayPause?.(false);\n }, [isPlaying, onPlayPause]);\n const updateTotalDuration = (newTotalDuration: number) => {\n if (newTotalDuration === totalDuration) return;\n\n const fraction = currentDuration / totalDuration;\n const newCurrentDuration = fraction * newTotalDuration;\n\n setTotalDuration(newTotalDuration);\n setCurrentDuration(newCurrentDuration);\n onSettingsChange?.({ duration: newTotalDuration });\n };\n const updateDuration = (\n newDuration: number,\n currentTotalDuration = totalDuration\n ) => {\n newDuration = Math.max(newDuration, 0);\n newDuration = Math.min(newDuration, currentTotalDuration);\n\n if (newDuration === currentDuration) return;\n setCurrentDuration(newDuration);\n\n const fraction = newDuration / currentTotalDuration;\n onChange?.(fraction);\n };\n const updateRepeat = (newRepeat: boolean) => {\n if (newRepeat === repeat) return;\n\n setRepeat(newRepeat);\n onSettingsChange?.({ loop: newRepeat });\n };\n\n const [prevTotalDuration, setPrevTotalDuration] = React.useState(\n props.totalDuration\n );\n if (prevTotalDuration !== props.totalDuration) {\n setPrevTotalDuration(props.totalDuration);\n updateTotalDuration(props.totalDuration);\n }\n\n const [prevInitialDuration, setPrevInitialDuration] = React.useState(\n props.initialDuration\n );\n if (prevInitialDuration !== props.initialDuration) {\n setPrevInitialDuration(props.initialDuration);\n updateDuration(props.initialDuration ?? 0, props.totalDuration);\n }\n\n const [prevRepeat, setPrevRepeat] = React.useState(props.repeat);\n if (prevRepeat !== props.repeat) {\n setPrevRepeat(props.repeat);\n updateRepeat(props.repeat ?? repeat);\n }\n\n React.useEffect(() => {\n // eslint-disable-next-line deprecation/deprecation\n if (!props.componentId) return;\n return UiAdmin.onGenericUiEvent.addListener((args) => {\n const timelineArgs = args as TimelinePausePlayArgs;\n if (\n !timelineArgs ||\n // eslint-disable-next-line deprecation/deprecation\n props.componentId !== timelineArgs.uiComponentId ||\n timelineArgs.timelineAction === undefined\n )\n return;\n\n switch (timelineArgs.timelineAction) {\n case TimelinePausePlayAction.Play:\n playOrReplay();\n break;\n case TimelinePausePlayAction.Pause:\n pause();\n break;\n case TimelinePausePlayAction.Toggle:\n if (isPlaying) {\n pause();\n } else {\n playOrReplay();\n }\n break;\n }\n });\n // eslint-disable-next-line deprecation/deprecation\n }, [isPlaying, pause, playOrReplay, props.componentId]);\n useAnimation(({ delta }) => {\n const duration = currentDuration + delta;\n updateDuration(duration);\n\n if (duration >= totalDuration) {\n if (repeat) {\n setCurrentDuration(0);\n return;\n }\n\n pause();\n }\n }, isPlaying);\n\n React.useEffect(() => {\n if (props.isPlaying) playOrReplay();\n\n if (props.isPlaying === false) pause();\n }, [props.isPlaying, playOrReplay, pause]);\n\n const onTimelineChange = (values: ReadonlyArray<number>) => {\n const newDuration = values[0];\n updateDuration(newDuration);\n };\n\n const currentDurationStr = toDisplayTime(currentDuration);\n const totalDurationStr = toDisplayTime(totalDuration);\n const hasDates = !!startDate && !!endDate;\n return (\n <div data-testid=\"timeline-component\" className=\"timeline-component\">\n <PlayButton isPlaying={isPlaying} onPlay={playOrReplay} onPause={pause} />\n <div className=\"time-container\">\n {hasDates && (\n <span data-testid=\"test-start-date\" className=\"timeline-date\">\n {toDateString(startDate, timeZoneOffset, dateFormatOptions)}\n </span>\n )}\n {hasDates && !showDuration && (\n <span data-testid=\"test-start-time\" className=\"timeline-time\">\n {toTimeString(startDate, timeZoneOffset, timeFormatOptions)}\n </span>\n )}\n {showDuration && (\n <span className=\"timeline-duration-time\">{currentDurationStr}</span>\n )}\n </div>\n <Scrubber\n className=\"slider\"\n currentDuration={currentDuration}\n totalDuration={totalDuration}\n startDate={startDate}\n endDate={endDate}\n isPlaying={isPlaying}\n showTime={!showDuration}\n onChange={onTimelineChange}\n onUpdate={onTimelineChange}\n timeZoneOffset={props.timeZoneOffset}\n markDate={props.markDate}\n trackContainerProps={props.trackContainerProps}\n />\n <div className=\"time-container\">\n {hasDates && (\n <span data-testid=\"test-end-date\" className=\"timeline-date\">\n {toDateString(endDate, timeZoneOffset)}\n </span>\n )}\n {hasDates && !showDuration && (\n <span className=\"timeline-time\">\n {toTimeString(endDate, timeZoneOffset, timeFormatOptions)}\n </span>\n )}\n {showDuration && (\n <InlineEdit\n className=\"timeline-duration-time\"\n defaultValue={totalDurationStr}\n onChange={(value) => {\n const newTotalDuration = timeToMs(value);\n updateTotalDuration(newTotalDuration);\n }}\n />\n )}\n </div>\n <SettingsMenu\n appMenuItems={props.appMenuItems}\n appMenuItemOption={appMenuItemOption}\n includeRepeat={includeRepeat}\n repeat={repeat}\n totalDuration={totalDuration}\n onRepeatClick={() => {\n updateRepeat(!repeat);\n }}\n onTotalDurationChange={(newTotalDuration) => {\n updateTotalDuration(newTotalDuration);\n }}\n />\n </div>\n );\n}\n\ntype SettingsMenuProps = Pick<\n TimelineComponentProps,\n \"appMenuItems\" | \"totalDuration\"\n> &\n Pick<\n Required<TimelineComponentProps>,\n \"appMenuItemOption\" | \"includeRepeat\" | \"repeat\"\n > & {\n onRepeatClick: () => void;\n onTotalDurationChange: (totalDuration: number) => void;\n };\n\nfunction SettingsMenu({\n appMenuItems,\n appMenuItemOption,\n includeRepeat,\n repeat,\n totalDuration,\n onRepeatClick,\n onTotalDurationChange,\n}: SettingsMenuProps) {\n const { translate } = useTranslation();\n\n const menuItems = React.useMemo(() => {\n const standardItems: TimelineMenuItemProps[] = [\n {\n label: translate(\"timeline.slow\"),\n timelineDuration: slowSpeed,\n },\n {\n label: translate(\"timeline.medium\"),\n timelineDuration: mediumSpeed,\n },\n {\n label: translate(\"timeline.fast\"),\n timelineDuration: fastSpeed,\n },\n ];\n\n if (!appMenuItems) {\n return standardItems;\n }\n\n if (appMenuItemOption === \"append\") {\n return [...standardItems, ...appMenuItems];\n }\n if (appMenuItemOption === \"prefix\") {\n return [...appMenuItems, ...standardItems];\n }\n // Replace\n return appMenuItems;\n }, [appMenuItemOption, appMenuItems, translate]);\n\n return (\n <DropdownMenu\n menuItems={(close) => {\n return [\n ...(includeRepeat\n ? [\n <MenuItem\n key=\"repeat\"\n onClick={() => {\n onRepeatClick();\n close();\n }}\n startIcon={repeat ? <SvgCheckmark /> : <></>}\n >\n {translate(\"timeline.repeat\")}\n </MenuItem>,\n <MenuDivider key=\"divider\" />,\n ]\n : []),\n ...menuItems.map((item, index) => {\n const checked = totalDuration === item.timelineDuration;\n return (\n <MenuItem\n key={index}\n startIcon={checked ? <SvgCheckmark /> : <></>}\n onClick={() => {\n onTotalDurationChange(item.timelineDuration);\n close();\n }}\n >\n {item.label}\n </MenuItem>\n );\n }),\n ];\n }}\n placement=\"top-start\"\n >\n <IconButton\n data-testid=\"timeline-settings\"\n label={translate(\"timeline.settings\")}\n styleType=\"borderless\"\n >\n <SvgMoreVertical />\n </IconButton>\n </DropdownMenu>\n );\n}\n\nfunction useAnimation(\n onAnimate: (args: { delta: number }) => void,\n playing = true\n) {\n const onAnimateRef = React.useRef(onAnimate);\n onAnimateRef.current = onAnimate;\n\n const lastTimeRef = React.useRef<number | undefined>();\n\n React.useEffect(() => {\n if (!playing) return;\n\n let handle = 0;\n let didCancel = false;\n\n const animate = (time: number) => {\n if (lastTimeRef.current === undefined) {\n lastTimeRef.current = time;\n }\n\n const delta = time - lastTimeRef.current;\n lastTimeRef.current = time;\n\n onAnimateRef.current({\n delta,\n });\n\n if (didCancel) return;\n\n handle = window.requestAnimationFrame(animate);\n };\n\n handle = window.requestAnimationFrame(animate);\n return () => {\n didCancel = true;\n lastTimeRef.current = undefined;\n window.cancelAnimationFrame(handle);\n };\n }, [playing]);\n}\n\nfunction timeToMs(time: string) {\n if (time.indexOf(\":\") !== -1) {\n return (\n (Number(time.split(\":\")[0]) * 60 + Number(time.split(\":\")[1])) * 1000\n );\n } else {\n return Number(time) * 1000;\n }\n}\n\nfunction toDisplayTime(ms: number) {\n const addZero = (i: number) => {\n return i < 10 ? `0${i}` : i;\n };\n\n const date = new Date(ms);\n // const hours = date.getUTCHours();\n const minutes = date.getUTCMinutes();\n const seconds = date.getUTCSeconds();\n return `${addZero(minutes)}:${addZero(seconds)}`;\n}\n"]}
@@ -1,48 +0,0 @@
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
- .timeline-component {
6
- width: 100%;
7
- min-width: 275px;
8
-
9
- display: flex;
10
- flex-direction: row;
11
- align-items: center;
12
- padding: 8px 16px;
13
- box-sizing: border-box;
14
- gap: 8px;
15
-
16
- .time-container {
17
- display: flex;
18
- flex-direction: column;
19
- align-items: center;
20
- }
21
-
22
- .timeline-time {
23
- font-size: 12px;
24
- color: var(--iui-color-text-muted);
25
- text-align: center;
26
- min-height: inherit;
27
- }
28
-
29
- .timeline-duration-time {
30
- font-size: 14px;
31
- width: 40px;
32
- color: var(--iui-color-text);
33
- text-align: center;
34
- min-height: inherit;
35
- }
36
-
37
- .timeline-date {
38
- font-size: 12px;
39
- color: var(--iui-color-text-muted);
40
- padding-bottom: 4px;
41
- }
42
-
43
- .slider {
44
- position: relative;
45
- flex: 1;
46
- margin: 0 20px;
47
- }
48
- }
@@ -1,146 +0,0 @@
1
- /** @packageDocumentation
2
- * @module Timeline
3
- */
4
- import type { ColorDef } from "@itwin/core-common";
5
- import type { ScreenViewport } from "@itwin/core-frontend";
6
- /** The timeline scale.
7
- * @public
8
- */
9
- export declare enum TimelineScale {
10
- /** Show years */
11
- Years = 0,
12
- /** Show quarters */
13
- Quarters = 1,
14
- /** Show months */
15
- Months = 2,
16
- /** Show days */
17
- Days = 3,
18
- /** Show hours */
19
- Hours = 4
20
- }
21
- /** Determines if data displayed to use is the actual date or the amount of time elapsed since project start.
22
- * @public
23
- */
24
- export declare enum TimelineDateDisplay {
25
- /** Display time axis using actual start/end dates */
26
- ActualTime = 0,
27
- /** Display time axis using time relative to actual start/end dates */
28
- ProjectTime = 1
29
- }
30
- /**
31
- * Playback Settings.
32
- * @public
33
- */
34
- export interface PlaybackSettings {
35
- /** time in milliseconds to play animation from start date to end date */
36
- duration?: number;
37
- /** Set to True if animation to restart each time playbackEnd is reached. Defaults to false. */
38
- loop?: boolean;
39
- /** If true a minimal set of data is displayed. */
40
- minimized?: boolean;
41
- /** Playback start. If defined must be within start-end range. If not define 'start' is used. */
42
- playbackStart?: Date;
43
- /** Playback end. If defined must be within start-end range and later than playbackStart. If not define 'end' is used. */
44
- playbackEnd?: Date;
45
- /** Set to True if user should be allowed to insert milestone dates. Defaults to false */
46
- allowMilestoneEdits?: boolean;
47
- /** Define if actual date/times are used or date/times relative to project are used to draw timeline axis. */
48
- dateDisplay?: TimelineDateDisplay;
49
- }
50
- /**
51
- * An interface used to notify Handlers of the current pointer position in the timeline playback. Valid range is 0 to 1 and it determines percentage complete.
52
- * @public
53
- */
54
- export type AnimationFractionChangeHandler = (animationFraction: number) => void;
55
- /**
56
- * An interface used to notify Handlers of Playback Settings changes.
57
- * Contains the settings to be used.
58
- * @public
59
- */
60
- export type PlaybackSettingsChangeHandler = (settingsChange: PlaybackSettings) => void;
61
- /** Actions for Pause/Play event
62
- * @public
63
- */
64
- export declare enum TimelinePausePlayAction {
65
- Toggle = 0,
66
- Pause = 1,
67
- Play = 2
68
- }
69
- /** Args for event to pause or play the timeline component
70
- * @public
71
- */
72
- export interface TimelinePausePlayArgs {
73
- uiComponentId: string;
74
- timelineAction: TimelinePausePlayAction;
75
- }
76
- /** Interface for a timeline data provider class
77
- * @public
78
- */
79
- export interface TimelineDataProvider {
80
- /** uniqueId of provider */
81
- id: string;
82
- /** view id when viewport is initially assigned */
83
- viewId: string;
84
- /** returns true if the provider has timeline animation data available */
85
- supportsTimelineAnimation: boolean;
86
- /** Starting date for entire timeline */
87
- start?: Date;
88
- /** End date for entire timeline */
89
- end?: Date;
90
- /** Current animation fraction from 0.0 to 1.0 */
91
- animationFraction?: number;
92
- getSettings(): PlaybackSettings;
93
- /** Called to get the initial scrubber location. This must be a value between 0 and the duration in PlaybackSettings. */
94
- initialDuration: number;
95
- /** Called to get the duration of the Playback. */
96
- duration: number;
97
- /** If true the playback will continuously loop. */
98
- loop: boolean;
99
- /** Called to save the playback settings */
100
- updateSettings(settings: PlaybackSettings): void;
101
- /** Async call to load milestone and settings data */
102
- loadTimelineData(): Promise<boolean>;
103
- /** Called when an internal process has defined the playback settings and the UI needs to be updated */
104
- onPlaybackSettingChanged?: PlaybackSettingsChangeHandler;
105
- /** Called when the an internal process has defined the playback settings and the UI needs to be updated */
106
- onAnimationFractionChanged?: AnimationFractionChangeHandler;
107
- /** viewport to show animation */
108
- viewport?: ScreenViewport;
109
- }
110
- /**
111
- * An interface used to notify Handlers of Playback progress.
112
- * Contains the settings to be used.
113
- * @alpha
114
- */
115
- export type SolarPlaybackProgressHandler = (time: Date) => void;
116
- /** Data Provider interface for getting and setting solar position
117
- * @alpha
118
- */
119
- export interface SolarDataProvider {
120
- viewId: string;
121
- /** returns true if the provider has timeline animation data available */
122
- supportsTimelineAnimation: boolean;
123
- readonly shouldShowTimeline: boolean;
124
- /** Starting date for entire timeline */
125
- day: Date;
126
- /** Starting time for day in milliseconds */
127
- readonly dayStartMs: number;
128
- /** Time of day for sun */
129
- readonly timeOfDay: Date;
130
- /** Called during playback to update animation */
131
- onTimeChanged?: SolarPlaybackProgressHandler;
132
- /** viewport to show animation */
133
- viewport?: ScreenViewport;
134
- /** Time of Sunrise to nearest minute */
135
- readonly sunrise: Date;
136
- /** time of Sunrise to nearest minute */
137
- readonly sunset: Date;
138
- /** shadow color */
139
- shadowColor: ColorDef;
140
- /** timezone offset for local project time */
141
- readonly timeZoneOffset: number;
142
- /** set date for shadow study. If isProjectDate is false the is assume to be in users
143
- * current time and the value is adjusted to be the same date and time at the project location. */
144
- setDateAndTime: (day: Date, isProjectDate?: boolean) => void;
145
- }
146
- //# sourceMappingURL=interfaces.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../../src/imodel-components-react/timeline/interfaces.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../../src/imodel-components-react/timeline/interfaces.ts"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG;;GAEG;AAKH;;GAEG;AACH,MAAM,CAAN,IAAY,aAWX;AAXD,WAAY,aAAa;IACvB,iBAAiB;IACjB,mDAAK,CAAA;IACL,oBAAoB;IACpB,yDAAQ,CAAA;IACR,kBAAkB;IAClB,qDAAM,CAAA;IACN,gBAAgB;IAChB,iDAAI,CAAA;IACJ,iBAAiB;IACjB,mDAAK,CAAA;AACP,CAAC,EAXW,aAAa,KAAb,aAAa,QAWxB;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,mBAKX;AALD,WAAY,mBAAmB;IAC7B,qDAAqD;IACrD,yEAAU,CAAA;IACV,sEAAsE;IACtE,2EAAW,CAAA;AACb,CAAC,EALW,mBAAmB,KAAnB,mBAAmB,QAK9B;AAwCD;;GAEG;AACH,MAAM,CAAN,IAAY,uBAIX;AAJD,WAAY,uBAAuB;IACjC,yEAAM,CAAA;IACN,uEAAK,CAAA;IACL,qEAAI,CAAA;AACN,CAAC,EAJW,uBAAuB,KAAvB,uBAAuB,QAIlC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Timeline\n */\n\nimport type { ColorDef } from \"@itwin/core-common\";\nimport type { ScreenViewport } from \"@itwin/core-frontend\";\n\n/** The timeline scale.\n * @public\n */\nexport enum TimelineScale {\n /** Show years */\n Years,\n /** Show quarters */\n Quarters,\n /** Show months */\n Months,\n /** Show days */\n Days,\n /** Show hours */\n Hours,\n}\n\n/** Determines if data displayed to use is the actual date or the amount of time elapsed since project start.\n * @public\n */\nexport enum TimelineDateDisplay {\n /** Display time axis using actual start/end dates */\n ActualTime,\n /** Display time axis using time relative to actual start/end dates */\n ProjectTime,\n}\n\n/**\n * Playback Settings.\n * @public\n */\nexport interface PlaybackSettings {\n /** time in milliseconds to play animation from start date to end date */\n duration?: number;\n /** Set to True if animation to restart each time playbackEnd is reached. Defaults to false. */\n loop?: boolean;\n /** If true a minimal set of data is displayed. */\n minimized?: boolean;\n /** Playback start. If defined must be within start-end range. If not define 'start' is used. */\n playbackStart?: Date;\n /** Playback end. If defined must be within start-end range and later than playbackStart. If not define 'end' is used. */\n playbackEnd?: Date;\n /** Set to True if user should be allowed to insert milestone dates. Defaults to false */\n allowMilestoneEdits?: boolean;\n /** Define if actual date/times are used or date/times relative to project are used to draw timeline axis. */\n dateDisplay?: TimelineDateDisplay;\n}\n\n/**\n * An interface used to notify Handlers of the current pointer position in the timeline playback. Valid range is 0 to 1 and it determines percentage complete.\n * @public\n */\nexport type AnimationFractionChangeHandler = (\n animationFraction: number\n) => void;\n\n/**\n * An interface used to notify Handlers of Playback Settings changes.\n * Contains the settings to be used.\n * @public\n */\nexport type PlaybackSettingsChangeHandler = (\n settingsChange: PlaybackSettings\n) => void;\n\n/** Actions for Pause/Play event\n * @public\n */\nexport enum TimelinePausePlayAction {\n Toggle,\n Pause,\n Play,\n}\n/** Args for event to pause or play the timeline component\n * @public\n */\nexport interface TimelinePausePlayArgs {\n uiComponentId: string;\n timelineAction: TimelinePausePlayAction;\n}\n/** Interface for a timeline data provider class\n * @public\n */\nexport interface TimelineDataProvider {\n /** uniqueId of provider */\n id: string;\n /** view id when viewport is initially assigned */\n viewId: string;\n /** returns true if the provider has timeline animation data available */\n supportsTimelineAnimation: boolean;\n /** Starting date for entire timeline */\n start?: Date;\n /** End date for entire timeline */\n end?: Date;\n /** Current animation fraction from 0.0 to 1.0 */\n animationFraction?: number;\n getSettings(): PlaybackSettings;\n /** Called to get the initial scrubber location. This must be a value between 0 and the duration in PlaybackSettings. */\n initialDuration: number;\n /** Called to get the duration of the Playback. */\n duration: number;\n /** If true the playback will continuously loop. */\n loop: boolean;\n /** Called to save the playback settings */\n updateSettings(settings: PlaybackSettings): void;\n /** Async call to load milestone and settings data */\n loadTimelineData(): Promise<boolean>;\n /** Called when an internal process has defined the playback settings and the UI needs to be updated */\n onPlaybackSettingChanged?: PlaybackSettingsChangeHandler;\n /** Called when the an internal process has defined the playback settings and the UI needs to be updated */\n onAnimationFractionChanged?: AnimationFractionChangeHandler;\n /** viewport to show animation */\n viewport?: ScreenViewport;\n}\n\n/**\n * An interface used to notify Handlers of Playback progress.\n * Contains the settings to be used.\n * @alpha\n */\nexport type SolarPlaybackProgressHandler = (time: Date) => void;\n\n/** Data Provider interface for getting and setting solar position\n * @alpha\n */\nexport interface SolarDataProvider {\n // View Id used to determine sunrise and sunset\n viewId: string;\n /** returns true if the provider has timeline animation data available */\n supportsTimelineAnimation: boolean;\n // set to true is timeline should be shown - return false if view is not set to display shadow.\n readonly shouldShowTimeline: boolean;\n /** Starting date for entire timeline */\n day: Date;\n /** Starting time for day in milliseconds */\n readonly dayStartMs: number;\n /** Time of day for sun */\n readonly timeOfDay: Date;\n /** Called during playback to update animation */\n onTimeChanged?: SolarPlaybackProgressHandler;\n /** viewport to show animation */\n viewport?: ScreenViewport;\n /** Time of Sunrise to nearest minute */\n readonly sunrise: Date;\n /** time of Sunrise to nearest minute */\n readonly sunset: Date;\n /** shadow color */\n shadowColor: ColorDef;\n /** timezone offset for local project time */\n readonly timeZoneOffset: number;\n /** set date for shadow study. If isProjectDate is false the is assume to be in users\n * current time and the value is adjusted to be the same date and time at the project location. */\n setDateAndTime: (day: Date, isProjectDate?: boolean) => void;\n}\n"]}
@@ -1,7 +0,0 @@
1
- /** Returns a translation function.
2
- * @internal
3
- */
4
- export declare function useTranslation(): {
5
- translate: (key: string) => string;
6
- };
7
- //# sourceMappingURL=useTranslation.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useTranslation.d.ts","sourceRoot":"","sources":["../../../src/imodel-components-react/useTranslation.tsx"],"names":[],"mappings":"AASA;;GAEG;AACH,wBAAgB,cAAc;;EAY7B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useTranslation.js","sourceRoot":"","sources":["../../../src/imodel-components-react/useTranslation.tsx"],"names":[],"mappings":"AAAA;;;gGAGgG;AAChG,OAAO,KAAK,QAAQ,MAAM,2BAA2B,CAAC;AACtD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D;;GAEG;AACH,MAAM,UAAU,cAAc;IAC5B,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,GAAW,EAAE,EAAE;QACjD,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC;YACpC,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,kBAAkB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC3C,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,OAAO,qBAAqB,CAAC;QAC3B,SAAS,EAAE,kBAAkB,CAAC,qBAAqB;QACnD,QAAQ;QACR,QAAQ;KACT,CAAC,CAAC;AACL,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\nimport * as defaults from \"./UiIModelComponents.json\";\nimport * as React from \"react\";\nimport { usePackageTranslation } from \"@itwin/core-react\";\nimport { UiIModelComponents } from \"./UiIModelComponents\";\n\n/** Returns a translation function.\n * @internal\n */\nexport function useTranslation() {\n const fallback = React.useCallback((key: string) => {\n if (!UiIModelComponents.initialized) {\n return undefined;\n }\n return UiIModelComponents.translate(key);\n }, []);\n return usePackageTranslation({\n namespace: UiIModelComponents.localizationNamespace,\n fallback,\n defaults,\n });\n}\n"]}
@@ -1,43 +0,0 @@
1
- /** @packageDocumentation
2
- * @module Viewport
3
- */
4
- import * as React from "react";
5
- import type { Id64String } from "@itwin/core-bentley";
6
- import type { IModelConnection, TentativePoint, ViewManager, ViewState } from "@itwin/core-frontend";
7
- import { ScreenViewport } from "@itwin/core-frontend";
8
- import type { CommonProps } from "@itwin/core-react";
9
- /** Type for a ViewState prop
10
- * @public
11
- */
12
- export type ViewStateProp = ViewState | (() => ViewState);
13
- /**
14
- * Properties for [[ViewportComponent]] component.
15
- * @public
16
- */
17
- export interface ViewportProps extends CommonProps {
18
- /** IModel to display */
19
- imodel: IModelConnection;
20
- /** Id of a default view definition to load as a starting point */
21
- viewDefinitionId?: Id64String;
22
- /** ViewState to use as a starting point */
23
- viewState?: ViewStateProp;
24
- /** Function to get a reference to the ScreenViewport */
25
- viewportRef?: (v: ScreenViewport) => void;
26
- /** controlId for this content component @internal */
27
- controlId?: string;
28
- /** @internal */
29
- onContextMenu?: (e: React.MouseEvent) => boolean;
30
- /** @internal */
31
- getViewOverlay?: (viewport: ScreenViewport) => React.ReactNode;
32
- /** @internal used only for testing */
33
- viewManagerOverride?: ViewManager;
34
- /** @internal used only for testing */
35
- screenViewportOverride?: typeof ScreenViewport;
36
- /** @internal used only for testing */
37
- tentativePointOverride?: TentativePoint;
38
- }
39
- /** A viewport React component that creates a ScreenViewport.
40
- * @public
41
- */
42
- export declare function ViewportComponent(props: ViewportProps): React.JSX.Element;
43
- //# sourceMappingURL=ViewportComponent.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ViewportComponent.d.ts","sourceRoot":"","sources":["../../../../src/imodel-components-react/viewport/ViewportComponent.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAKtD,OAAO,KAAK,EACV,gBAAgB,EAChB,cAAc,EACd,WAAW,EACX,SAAS,EACV,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAEL,cAAc,EAGf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,WAAW,EAAgB,MAAM,mBAAmB,CAAC;AAGnE;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,CAAC,MAAM,SAAS,CAAC,CAAC;AAE1D;;;GAGG;AAEH,MAAM,WAAW,aAAc,SAAQ,WAAW;IAChD,wBAAwB;IACxB,MAAM,EAAE,gBAAgB,CAAC;IACzB,kEAAkE;IAClE,gBAAgB,CAAC,EAAE,UAAU,CAAC;IAC9B,2CAA2C;IAC3C,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,wDAAwD;IACxD,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,cAAc,KAAK,IAAI,CAAC;IAC1C,qDAAqD;IACrD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB;IAChB,aAAa,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,KAAK,OAAO,CAAC;IACjD,gBAAgB;IAChB,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,cAAc,KAAK,KAAK,CAAC,SAAS,CAAC;IAC/D,sCAAsC;IACtC,mBAAmB,CAAC,EAAE,WAAW,CAAC;IAClC,sCAAsC;IACtC,sBAAsB,CAAC,EAAE,OAAO,cAAc,CAAC;IAC/C,sCAAsC;IACtC,sBAAsB,CAAC,EAAE,cAAc,CAAC;CACzC;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,aAAa,qBA8TrD"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ViewportComponent.js","sourceRoot":"","sources":["../../../../src/imodel-components-react/viewport/ViewportComponent.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Viewport\n */\n\nimport * as React from \"react\";\nimport type { Id64String } from \"@itwin/core-bentley\";\nimport { Logger } from \"@itwin/core-bentley\";\nimport type { Point3d } from \"@itwin/core-geometry\";\nimport { Transform } from \"@itwin/core-geometry\";\nimport { NpcCenter } from \"@itwin/core-common\";\nimport type {\n IModelConnection,\n TentativePoint,\n ViewManager,\n ViewState,\n} from \"@itwin/core-frontend\";\nimport {\n IModelApp,\n ScreenViewport,\n StandardView,\n ToolSettings,\n} from \"@itwin/core-frontend\";\nimport type { CommonProps, ListenerType } from \"@itwin/core-react\";\nimport { ViewportComponentEvents } from \"./ViewportComponentEvents\";\n\n/** Type for a ViewState prop\n * @public\n */\nexport type ViewStateProp = ViewState | (() => ViewState);\n\n/**\n * Properties for [[ViewportComponent]] component.\n * @public\n */\n// eslint-disable-next-line deprecation/deprecation\nexport interface ViewportProps extends CommonProps {\n /** IModel to display */\n imodel: IModelConnection;\n /** Id of a default view definition to load as a starting point */\n viewDefinitionId?: Id64String;\n /** ViewState to use as a starting point */\n viewState?: ViewStateProp;\n /** Function to get a reference to the ScreenViewport */\n viewportRef?: (v: ScreenViewport) => void;\n /** controlId for this content component @internal */\n controlId?: string;\n /** @internal */\n onContextMenu?: (e: React.MouseEvent) => boolean;\n /** @internal */\n getViewOverlay?: (viewport: ScreenViewport) => React.ReactNode;\n /** @internal used only for testing */\n viewManagerOverride?: ViewManager;\n /** @internal used only for testing */\n screenViewportOverride?: typeof ScreenViewport;\n /** @internal used only for testing */\n tentativePointOverride?: TentativePoint;\n}\n\n/** A viewport React component that creates a ScreenViewport.\n * @public\n */\nexport function ViewportComponent(props: ViewportProps) {\n const {\n viewState,\n imodel,\n viewDefinitionId,\n getViewOverlay,\n viewManagerOverride,\n tentativePointOverride,\n onContextMenu,\n style,\n className,\n screenViewportOverride,\n controlId,\n viewportRef,\n } = props;\n const viewManagerRef = React.useRef(\n viewManagerOverride ?? IModelApp.viewManager\n );\n const tentativePointOverrideRef = React.useRef(tentativePointOverride);\n const screenViewportCreated = React.useRef(false);\n const viewportDiv = React.useRef<HTMLDivElement>(null);\n const screenViewportRef = React.useRef<ScreenViewport | null>(null);\n const isMounted = React.useRef(false);\n const viewClassFullName = React.useRef(\"\");\n const viewId = React.useRef(\"0\");\n\n const handleViewChanged: ListenerType<ScreenViewport[\"onViewChanged\"]> = (\n vp\n ) => {\n if (!(vp.iModel.isOpen || vp.iModel.isBlank)) return;\n ViewportComponentEvents.setViewMatrix(vp);\n if (viewClassFullName.current !== vp.view.classFullName) {\n setTimeout(() => {\n ViewportComponentEvents.onViewClassFullNameChangedEvent.emit({\n viewport: vp,\n oldName: viewClassFullName.current,\n newName: vp.view.classFullName,\n });\n viewClassFullName.current = vp.view.classFullName;\n });\n }\n if (viewId.current !== vp.view.id) {\n setTimeout(() => {\n ViewportComponentEvents.onViewIdChangedEvent.emit({\n viewport: vp,\n oldId: viewId.current,\n newId: vp.view.id,\n });\n viewId.current = vp.view.id;\n });\n }\n };\n\n const handleStandardRotationChangeEvent: ListenerType<\n typeof ViewportComponentEvents.onStandardRotationChangeEvent\n > = (args) => {\n const viewManager = viewManagerRef.current;\n const currentScreenViewport = screenViewportRef.current;\n if (\n currentScreenViewport &&\n viewManager.selectedView === currentScreenViewport\n ) {\n currentScreenViewport.view.setRotationAboutPoint(\n StandardView.getStandardRotation(args.standardRotation)\n );\n currentScreenViewport.synchWithView();\n }\n };\n\n const handleDrawingViewportChangeEvent: ListenerType<\n typeof ViewportComponentEvents.onDrawingViewportChangeEvent\n > = (args) => {\n const viewManager = viewManagerRef.current;\n const currentScreenViewport = screenViewportRef.current;\n if (\n currentScreenViewport &&\n viewManager.selectedView === currentScreenViewport\n ) {\n currentScreenViewport.view.setOrigin(args.origin);\n currentScreenViewport.view.setRotation(args.rotation);\n currentScreenViewport.synchWithView({\n noSaveInUndo: args.complete !== true,\n });\n }\n };\n\n const targetPoint = React.useRef<Point3d | null>(null);\n\n const getRotatePoint = (vp: ScreenViewport): Point3d => {\n const lastTargetPoint = targetPoint.current;\n const tentativePoint =\n tentativePointOverrideRef.current ?? IModelApp.tentativePoint;\n if (tentativePoint.isActive) return tentativePoint.getPoint();\n\n if (null !== lastTargetPoint) {\n const testPt = vp.worldToView(lastTargetPoint);\n const viewRect = vp.viewRect.clone();\n viewRect.scaleAboutCenter(0.25, 0.25);\n if (viewRect.containsPoint(testPt)) return lastTargetPoint;\n targetPoint.current = null;\n }\n\n const visiblePoint = vp.pickNearestVisibleGeometry(\n vp.npcToWorld(NpcCenter),\n vp.pixelsFromInches(ToolSettings.viewToolPickRadiusInches)\n );\n targetPoint.current =\n undefined !== visiblePoint ? visiblePoint : vp.view.getTargetPoint();\n return targetPoint.current ?? vp.view.getCenter();\n };\n\n const handleCubeRotationChangeEvent: ListenerType<\n typeof ViewportComponentEvents.onCubeRotationChangeEvent\n > = (args) => {\n const viewManager = viewManagerRef.current;\n const currentScreenViewport = screenViewportRef.current;\n if (\n currentScreenViewport &&\n viewManager.selectedView === currentScreenViewport\n ) {\n const rotMatrix = args.rotMatrix;\n if (currentScreenViewport.rotation !== rotMatrix) {\n const inverse = rotMatrix.transpose(); // rotation is from current nav cube state...\n const center = getRotatePoint(currentScreenViewport);\n const targetMatrix = inverse.multiplyMatrixMatrix(\n currentScreenViewport.view.getRotation()\n );\n const worldTransform = Transform.createFixedPointAndMatrix(\n center,\n targetMatrix\n );\n const frustum = currentScreenViewport.getWorldFrustum();\n frustum.multiply(worldTransform);\n currentScreenViewport.view.setupFromFrustum(frustum);\n currentScreenViewport.synchWithView({ noSaveInUndo: !args.complete });\n }\n }\n };\n\n const handleDisconnectFromViewManager = () => {\n const screenViewport = screenViewportRef.current;\n if (screenViewport) {\n const viewManager = IModelApp.viewManager;\n screenViewport.onViewChanged.removeListener(handleViewChanged);\n screenViewportRef.current = null;\n screenViewportCreated.current = false;\n ViewportComponentEvents.onDrawingViewportChangeEvent.removeListener(\n handleDrawingViewportChangeEvent\n );\n ViewportComponentEvents.onCubeRotationChangeEvent.removeListener(\n handleCubeRotationChangeEvent\n );\n ViewportComponentEvents.onStandardRotationChangeEvent.removeListener(\n handleStandardRotationChangeEvent\n );\n viewManager.dropViewport(screenViewport, true);\n }\n };\n\n const handleWindowUnload = () => {\n const parentDiv = viewportDiv.current;\n if (parentDiv) {\n const parentWindow = parentDiv.ownerDocument.defaultView as Window;\n if (parentWindow !== window) {\n handleDisconnectFromViewManager();\n }\n }\n };\n\n const getScreenViewport = (\n parentDiv: HTMLDivElement,\n inViewState: ViewState\n ) => {\n const screenViewportFactory = screenViewportOverride\n ? screenViewportOverride\n : ScreenViewport;\n const parentWindow = parentDiv.ownerDocument.defaultView as Window;\n parentWindow.addEventListener(\"unload\", handleWindowUnload, {\n once: true,\n capture: true,\n }); // by specifying 'once', listener clears after being called\n ViewportComponentEvents.initialize();\n ViewportComponentEvents.onDrawingViewportChangeEvent.addListener(\n handleDrawingViewportChangeEvent\n );\n ViewportComponentEvents.onCubeRotationChangeEvent.addListener(\n handleCubeRotationChangeEvent\n );\n ViewportComponentEvents.onStandardRotationChangeEvent.addListener(\n handleStandardRotationChangeEvent\n );\n const screenViewport = screenViewportFactory.create(parentDiv, inViewState);\n screenViewportCreated.current = true;\n viewClassFullName.current = screenViewport.view.classFullName;\n viewId.current = screenViewport.view.id;\n screenViewport.onViewChanged.addListener(handleViewChanged);\n return screenViewport;\n };\n\n React.useEffect(() => {\n isMounted.current = true;\n Logger.logInfo(\n \"ViewportComponent\",\n `mounting ViewportComponent for controlId=${controlId}`\n );\n\n return () => {\n isMounted.current = false;\n Logger.logInfo(\n \"ViewportComponent\",\n `un-mounting ViewportComponent for controlId=${controlId}`\n );\n handleDisconnectFromViewManager();\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const [initialViewState, setInitialViewState] = React.useState<\n ViewState | undefined\n >(undefined);\n React.useEffect(() => {\n setInitialViewState(undefined);\n }, [viewDefinitionId, viewState]);\n React.useEffect(() => {\n async function fetchInitialViewstate() {\n let currentViewState: ViewState | undefined;\n if (viewState) {\n if (typeof viewState === \"function\") currentViewState = viewState();\n else currentViewState = viewState;\n } else if (viewDefinitionId && imodel) {\n try {\n currentViewState = await imodel.views.load(viewDefinitionId);\n if (!currentViewState) {\n Logger.logError(\"ViewportComponent\", `Viewstate failed to load`);\n }\n } catch (_e) {\n Logger.logError(\"ViewportComponent\", `Viewstate failed to load`);\n }\n } else {\n Logger.logError(\n \"ViewportComponent\",\n `A Viewstate or a viewId and imodel must be provided`\n );\n }\n if (\n isMounted.current &&\n (currentViewState?.iModel.isOpen || currentViewState?.iModel.isBlank)\n ) {\n setInitialViewState(currentViewState?.clone());\n }\n }\n if (undefined === initialViewState) void fetchInitialViewstate();\n }, [imodel, initialViewState, viewDefinitionId, viewState]);\n\n const [viewOverlay, setViewOverlay] = React.useState<React.ReactNode>(null);\n\n // This useEffect connects to ViewManger as soon as initialViewState is available once component is mounted.\n React.useEffect(() => {\n const parentDiv = viewportDiv.current;\n const viewManager = viewManagerRef.current;\n if (\n parentDiv &&\n initialViewState &&\n (initialViewState?.iModel.isOpen || initialViewState?.iModel.isBlank)\n ) {\n if (!screenViewportCreated.current) {\n const screenViewport = getScreenViewport(parentDiv, initialViewState);\n screenViewportRef.current = screenViewport;\n\n if (viewportRef) viewportRef(screenViewport);\n\n Logger.logInfo(\n \"ViewportComponent\",\n `processing viewManager.addViewport for controlId=${controlId}`\n );\n viewManager.addViewport(screenViewport);\n\n // overlay component is set up once a ScreenViewport is available. The overlay component must handle any view changes itself.\n setViewOverlay(getViewOverlay ? getViewOverlay(screenViewport) : null);\n } else {\n screenViewportRef.current?.changeView(initialViewState);\n }\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [controlId, initialViewState, viewportRef]);\n\n const handleContextMenu = React.useCallback(\n (e: React.MouseEvent) => {\n e.preventDefault();\n if (onContextMenu) onContextMenu(e);\n },\n [onContextMenu]\n );\n\n const parentDivStyle: React.CSSProperties = {\n height: \"100%\",\n width: \"100%\",\n position: \"relative\",\n };\n\n const viewportDivStyle: React.CSSProperties = {\n ...style,\n height: \"100%\",\n width: \"100%\",\n };\n\n return (\n <div style={parentDivStyle} data-item-id={controlId}>\n <div\n ref={viewportDiv}\n data-testid=\"viewport-component\"\n className={className}\n style={viewportDivStyle}\n onContextMenu={handleContextMenu}\n />\n {viewOverlay}\n </div>\n );\n}\n"]}
@@ -1,119 +0,0 @@
1
- /** @packageDocumentation
2
- * @module Viewport
3
- */
4
- import { Matrix3d, Point3d, Vector3d } from "@itwin/core-geometry";
5
- import type { StandardViewId, Viewport } from "@itwin/core-frontend";
6
- import { UiEvent } from "@itwin/appui-abstract";
7
- import { Face } from "../navigationaids/Cube";
8
- /** Arguments for [[DrawingViewportChangeEvent]]
9
- * @public
10
- * @deprecated in 4.13.0. Event args are inferred from a listener. If explicit type is needed use a type helper.
11
- */
12
- export interface DrawingViewportChangeEventArgs {
13
- rotation: Matrix3d;
14
- origin: Point3d;
15
- complete: boolean;
16
- }
17
- /** Drawing View Change event
18
- * @public
19
- * @deprecated in 4.13.0. This class should not be used by applications to instantiate objects.
20
- */
21
- export declare class DrawingViewportChangeEvent extends UiEvent<DrawingViewportChangeEventArgs> {
22
- }
23
- /** Arguments for [[CubeRotationChangeEvent]]
24
- * @public
25
- * @deprecated in 4.13.0. Event args are inferred from a listener. If explicit type is needed use a type helper.
26
- */
27
- export interface CubeRotationChangeEventArgs {
28
- rotMatrix: Matrix3d;
29
- face: Face;
30
- complete?: boolean;
31
- }
32
- /** 3d Cube Rotation Change event
33
- * @public
34
- * @deprecated in 4.13.0. This class should not be used by applications to instantiate objects.
35
- */
36
- export declare class CubeRotationChangeEvent extends UiEvent<CubeRotationChangeEventArgs> {
37
- }
38
- /** Arguments for [[StandardRotationChangeEvent]]
39
- * @public
40
- * @deprecated in 4.13.0. Event args are inferred from a listener. If explicit type is needed use a type helper.
41
- */
42
- export interface StandardRotationChangeEventArgs {
43
- standardRotation: StandardViewId;
44
- }
45
- /** Standard Rotation Change event
46
- * @public
47
- * @deprecated in 4.13.0. This class should not be used by applications to instantiate objects.
48
- */
49
- export declare class StandardRotationChangeEvent extends UiEvent<StandardRotationChangeEventArgs> {
50
- }
51
- /** Arguments for [[ViewRotationChangeEvent]]
52
- * @public
53
- * @deprecated in 4.13.0. Event args are inferred from a listener. If explicit type is needed use a type helper.
54
- */
55
- export interface ViewRotationChangeEventArgs {
56
- viewport: Viewport;
57
- animationTime?: number;
58
- }
59
- /** View Rotation Change event
60
- * @public
61
- * @deprecated in 4.13.0. This class should not be used by applications to instantiate objects.
62
- */
63
- export declare class ViewRotationChangeEvent extends UiEvent<ViewRotationChangeEventArgs> {
64
- }
65
- /** Arguments for [[ViewClassFullNameChangedEvent]]
66
- * @public
67
- * @deprecated in 4.13.0. Event args are inferred from a listener. If explicit type is needed use a type helper.
68
- */
69
- export interface ViewClassFullNameChangedEventArgs {
70
- viewport: Viewport;
71
- oldName: string;
72
- newName: string;
73
- }
74
- /** View Class Full Name Change event
75
- * @public
76
- * @deprecated in 4.13.0. This class should not be used by applications to instantiate objects.
77
- */
78
- export declare class ViewClassFullNameChangedEvent extends UiEvent<ViewClassFullNameChangedEventArgs> {
79
- }
80
- /** Arguments for [[ViewIdChangedEvent]]
81
- * @public
82
- * @deprecated in 4.13.0. Event args are inferred from a listener. If explicit type is needed use a type helper.
83
- */
84
- export interface ViewIdChangedEventArgs {
85
- viewport: Viewport;
86
- oldId: string;
87
- newId: string;
88
- }
89
- /** View Id Change event
90
- * @public
91
- * @deprecated in 4.13.0. This class should not be used by applications to instantiate objects.
92
- */
93
- export declare class ViewIdChangedEvent extends UiEvent<ViewIdChangedEventArgs> {
94
- }
95
- /** Viewport Rotation events and methods
96
- * @public
97
- */
98
- export declare class ViewportComponentEvents {
99
- private static _removeListener?;
100
- static initialize(): void;
101
- /** @internal - for unit testing */
102
- static terminate(): void;
103
- static face: Face;
104
- static readonly origin: Point3d;
105
- static readonly extents: Vector3d;
106
- static readonly rotationMatrix: Matrix3d;
107
- static readonly onDrawingViewportChangeEvent: DrawingViewportChangeEvent;
108
- static readonly onCubeRotationChangeEvent: CubeRotationChangeEvent;
109
- static readonly onStandardRotationChangeEvent: StandardRotationChangeEvent;
110
- static readonly onViewRotationChangeEvent: ViewRotationChangeEvent;
111
- static readonly onViewClassFullNameChangedEvent: ViewClassFullNameChangedEvent;
112
- static readonly onViewIdChangedEvent: ViewIdChangedEvent;
113
- private static _handleSelectedViewportChanged;
114
- static setCubeMatrix(rotMatrix: Matrix3d, face?: Face, complete?: boolean): void;
115
- static setDrawingViewportState(origin: Point3d, rotation: Matrix3d, complete?: boolean): void;
116
- static setStandardRotation(standardRotation: StandardViewId): void;
117
- static setViewMatrix(viewport: Viewport, animationTime?: number): void;
118
- }
119
- //# sourceMappingURL=ViewportComponentEvents.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ViewportComponentEvents.d.ts","sourceRoot":"","sources":["../../../../src/imodel-components-react/viewport/ViewportComponentEvents.ts"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErE,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAG9C;;;GAGG;AACH,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AAEH,qBAAa,0BAA2B,SAAQ,OAAO,CAAC,8BAA8B,CAAC;CAAG;AAE1F;;;GAGG;AACH,MAAM,WAAW,2BAA2B;IAC1C,SAAS,EAAE,QAAQ,CAAC;IACpB,IAAI,EAAE,IAAI,CAAC;IACX,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;;GAGG;AAEH,qBAAa,uBAAwB,SAAQ,OAAO,CAAC,2BAA2B,CAAC;CAAG;AAEpF;;;GAGG;AACH,MAAM,WAAW,+BAA+B;IAC9C,gBAAgB,EAAE,cAAc,CAAC;CAClC;AAED;;;GAGG;AAEH,qBAAa,2BAA4B,SAAQ,OAAO,CAAC,+BAA+B,CAAC;CAAG;AAE5F;;;GAGG;AACH,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,EAAE,QAAQ,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;GAGG;AAEH,qBAAa,uBAAwB,SAAQ,OAAO,CAAC,2BAA2B,CAAC;CAAG;AAEpF;;;GAGG;AACH,MAAM,WAAW,iCAAiC;IAChD,QAAQ,EAAE,QAAQ,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;GAGG;AAEH,qBAAa,6BAA8B,SAAQ,OAAO,CAAC,iCAAiC,CAAC;CAAG;AAEhG;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;GAGG;AAEH,qBAAa,kBAAmB,SAAQ,OAAO,CAAC,sBAAsB,CAAC;CAAG;AAE1E;;GAEG;AACH,qBAAa,uBAAuB;IAClC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,CAAa;WAE9B,UAAU;IASxB,mCAAmC;WACrB,SAAS;IAOvB,OAAc,IAAI,OAAa;IAC/B,gBAAuB,MAAM,UAAwB;IACrD,gBAAuB,OAAO,WAAyB;IACvD,gBAAuB,cAAc,WAA6B;IAClE,gBAAuB,4BAA4B,6BAChB;IACnC,gBAAuB,yBAAyB,0BAChB;IAChC,gBAAuB,6BAA6B,8BAChB;IACpC,gBAAuB,yBAAyB,0BAChB;IAChC,gBAAuB,+BAA+B,gCAChB;IAEtC,gBAAuB,oBAAoB,qBAA4B;IAEvE,OAAO,CAAC,MAAM,CAAC,8BAA8B,CAI3C;WAEY,aAAa,CACzB,SAAS,EAAE,QAAQ,EACnB,IAAI,OAAY,EAChB,QAAQ,GAAE,OAAe,GACxB,IAAI;WAMO,uBAAuB,CACnC,MAAM,EAAE,OAAO,EACf,QAAQ,EAAE,QAAQ,EAClB,QAAQ,GAAE,OAAe,GACxB,IAAI;WAIO,mBAAmB,CAAC,gBAAgB,EAAE,cAAc,GAAG,IAAI;WAI3D,aAAa,CACzB,QAAQ,EAAE,QAAQ,EAClB,aAAa,CAAC,EAAE,MAAM,GACrB,IAAI;CAYR"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"ViewportComponentEvents.js","sourceRoot":"","sources":["../../../../src/imodel-components-react/viewport/ViewportComponentEvents.ts"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\n * Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n * See LICENSE.md in the project root for license terms and full copyright notice.\n *--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module Viewport\n */\n\nimport { Matrix3d, Point3d, Vector3d } from \"@itwin/core-geometry\";\nimport type { StandardViewId, Viewport } from \"@itwin/core-frontend\";\nimport { IModelApp } from \"@itwin/core-frontend\";\nimport { UiEvent } from \"@itwin/appui-abstract\";\nimport { Face } from \"../navigationaids/Cube\";\nimport type { ListenerType } from \"@itwin/core-react\";\n\n/** Arguments for [[DrawingViewportChangeEvent]]\n * @public\n * @deprecated in 4.13.0. Event args are inferred from a listener. If explicit type is needed use a type helper.\n */\nexport interface DrawingViewportChangeEventArgs {\n rotation: Matrix3d;\n origin: Point3d;\n complete: boolean;\n}\n\n/** Drawing View Change event\n * @public\n * @deprecated in 4.13.0. This class should not be used by applications to instantiate objects.\n */\n// eslint-disable-next-line deprecation/deprecation\nexport class DrawingViewportChangeEvent extends UiEvent<DrawingViewportChangeEventArgs> {}\n\n/** Arguments for [[CubeRotationChangeEvent]]\n * @public\n * @deprecated in 4.13.0. Event args are inferred from a listener. If explicit type is needed use a type helper.\n */\nexport interface CubeRotationChangeEventArgs {\n rotMatrix: Matrix3d;\n face: Face;\n complete?: boolean;\n}\n\n/** 3d Cube Rotation Change event\n * @public\n * @deprecated in 4.13.0. This class should not be used by applications to instantiate objects.\n */\n// eslint-disable-next-line deprecation/deprecation\nexport class CubeRotationChangeEvent extends UiEvent<CubeRotationChangeEventArgs> {}\n\n/** Arguments for [[StandardRotationChangeEvent]]\n * @public\n * @deprecated in 4.13.0. Event args are inferred from a listener. If explicit type is needed use a type helper.\n */\nexport interface StandardRotationChangeEventArgs {\n standardRotation: StandardViewId;\n}\n\n/** Standard Rotation Change event\n * @public\n * @deprecated in 4.13.0. This class should not be used by applications to instantiate objects.\n */\n// eslint-disable-next-line deprecation/deprecation\nexport class StandardRotationChangeEvent extends UiEvent<StandardRotationChangeEventArgs> {}\n\n/** Arguments for [[ViewRotationChangeEvent]]\n * @public\n * @deprecated in 4.13.0. Event args are inferred from a listener. If explicit type is needed use a type helper.\n */\nexport interface ViewRotationChangeEventArgs {\n viewport: Viewport;\n animationTime?: number;\n}\n\n/** View Rotation Change event\n * @public\n * @deprecated in 4.13.0. This class should not be used by applications to instantiate objects.\n */\n// eslint-disable-next-line deprecation/deprecation\nexport class ViewRotationChangeEvent extends UiEvent<ViewRotationChangeEventArgs> {}\n\n/** Arguments for [[ViewClassFullNameChangedEvent]]\n * @public\n * @deprecated in 4.13.0. Event args are inferred from a listener. If explicit type is needed use a type helper.\n */\nexport interface ViewClassFullNameChangedEventArgs {\n viewport: Viewport;\n oldName: string;\n newName: string;\n}\n\n/** View Class Full Name Change event\n * @public\n * @deprecated in 4.13.0. This class should not be used by applications to instantiate objects.\n */\n// eslint-disable-next-line deprecation/deprecation\nexport class ViewClassFullNameChangedEvent extends UiEvent<ViewClassFullNameChangedEventArgs> {}\n\n/** Arguments for [[ViewIdChangedEvent]]\n * @public\n * @deprecated in 4.13.0. Event args are inferred from a listener. If explicit type is needed use a type helper.\n */\nexport interface ViewIdChangedEventArgs {\n viewport: Viewport;\n oldId: string;\n newId: string;\n}\n\n/** View Id Change event\n * @public\n * @deprecated in 4.13.0. This class should not be used by applications to instantiate objects.\n */\n// eslint-disable-next-line deprecation/deprecation\nexport class ViewIdChangedEvent extends UiEvent<ViewIdChangedEventArgs> {}\n\n/** Viewport Rotation events and methods\n * @public\n */\nexport class ViewportComponentEvents {\n private static _removeListener?: () => void;\n\n public static initialize() {\n if (undefined !== this._removeListener) return;\n\n this._removeListener =\n IModelApp.viewManager.onSelectedViewportChanged.addListener(\n ViewportComponentEvents._handleSelectedViewportChanged\n );\n }\n\n /** @internal - for unit testing */\n public static terminate() {\n if (this._removeListener) {\n this._removeListener();\n this._removeListener = undefined;\n }\n }\n\n public static face = Face.None;\n public static readonly origin = Point3d.createZero();\n public static readonly extents = Vector3d.createZero();\n public static readonly rotationMatrix = Matrix3d.createIdentity();\n public static readonly onDrawingViewportChangeEvent =\n new DrawingViewportChangeEvent(); // eslint-disable-line deprecation/deprecation\n public static readonly onCubeRotationChangeEvent =\n new CubeRotationChangeEvent(); // eslint-disable-line deprecation/deprecation\n public static readonly onStandardRotationChangeEvent =\n new StandardRotationChangeEvent(); // eslint-disable-line deprecation/deprecation\n public static readonly onViewRotationChangeEvent =\n new ViewRotationChangeEvent(); // eslint-disable-line deprecation/deprecation\n public static readonly onViewClassFullNameChangedEvent =\n new ViewClassFullNameChangedEvent(); // eslint-disable-line deprecation/deprecation\n // eslint-disable-next-line deprecation/deprecation\n public static readonly onViewIdChangedEvent = new ViewIdChangedEvent();\n\n private static _handleSelectedViewportChanged: ListenerType<\n typeof IModelApp.viewManager.onSelectedViewportChanged\n > = (args) => {\n if (args.current) ViewportComponentEvents.setViewMatrix(args.current);\n };\n\n public static setCubeMatrix(\n rotMatrix: Matrix3d,\n face = Face.None,\n complete: boolean = false\n ): void {\n this.rotationMatrix.setFrom(rotMatrix);\n this.face = face;\n this.onCubeRotationChangeEvent.emit({ rotMatrix, complete, face });\n }\n\n public static setDrawingViewportState(\n origin: Point3d,\n rotation: Matrix3d,\n complete: boolean = false\n ): void {\n this.onDrawingViewportChangeEvent.emit({ origin, rotation, complete });\n }\n\n public static setStandardRotation(standardRotation: StandardViewId): void {\n this.onStandardRotationChangeEvent.emit({ standardRotation });\n }\n\n public static setViewMatrix(\n viewport: Viewport,\n animationTime?: number\n ): void {\n // When handling onViewChanged, use setTimeout\n setTimeout(() => {\n if (viewport.view) {\n this.origin.setFrom(viewport.view.getOrigin());\n this.extents.setFrom(viewport.view.getExtents());\n }\n this.rotationMatrix.setFrom(viewport.rotation);\n\n this.onViewRotationChangeEvent.emit({ viewport, animationTime });\n });\n }\n}\n"]}