@itwin/imodel-components-react 3.0.0-dev.77 → 3.0.0-dev.81

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 (549) hide show
  1. package/lib/{imodel-components-react → cjs/imodel-components-react}/UiIModelComponents.d.ts +0 -0
  2. package/lib/cjs/imodel-components-react/UiIModelComponents.d.ts.map +1 -0
  3. package/lib/{imodel-components-react → cjs/imodel-components-react}/UiIModelComponents.js +0 -0
  4. package/lib/cjs/imodel-components-react/UiIModelComponents.js.map +1 -0
  5. package/lib/{imodel-components-react → cjs/imodel-components-react}/color/AlphaSlider.d.ts +0 -0
  6. package/lib/cjs/imodel-components-react/color/AlphaSlider.d.ts.map +1 -0
  7. package/lib/{imodel-components-react → cjs/imodel-components-react}/color/AlphaSlider.js +0 -0
  8. package/lib/cjs/imodel-components-react/color/AlphaSlider.js.map +1 -0
  9. package/lib/{imodel-components-react → cjs/imodel-components-react}/color/AlphaSlider.scss +0 -0
  10. package/lib/{imodel-components-react → cjs/imodel-components-react}/color/ColorPickerButton.d.ts +0 -0
  11. package/lib/cjs/imodel-components-react/color/ColorPickerButton.d.ts.map +1 -0
  12. package/lib/{imodel-components-react → cjs/imodel-components-react}/color/ColorPickerButton.js +1 -1
  13. package/lib/cjs/imodel-components-react/color/ColorPickerButton.js.map +1 -0
  14. package/lib/{imodel-components-react → cjs/imodel-components-react}/color/ColorPickerButton.scss +1 -1
  15. package/lib/{imodel-components-react → cjs/imodel-components-react}/color/ColorPickerDialog.d.ts +0 -0
  16. package/lib/cjs/imodel-components-react/color/ColorPickerDialog.d.ts.map +1 -0
  17. package/lib/{imodel-components-react → cjs/imodel-components-react}/color/ColorPickerDialog.js +0 -0
  18. package/lib/cjs/imodel-components-react/color/ColorPickerDialog.js.map +1 -0
  19. package/lib/{imodel-components-react → cjs/imodel-components-react}/color/ColorPickerPanel.d.ts +0 -0
  20. package/lib/cjs/imodel-components-react/color/ColorPickerPanel.d.ts.map +1 -0
  21. package/lib/{imodel-components-react → cjs/imodel-components-react}/color/ColorPickerPanel.js +0 -0
  22. package/lib/cjs/imodel-components-react/color/ColorPickerPanel.js.map +1 -0
  23. package/lib/{imodel-components-react → cjs/imodel-components-react}/color/ColorPickerPanel.scss +1 -1
  24. package/lib/{imodel-components-react → cjs/imodel-components-react}/color/ColorPickerPopup.d.ts +0 -0
  25. package/lib/cjs/imodel-components-react/color/ColorPickerPopup.d.ts.map +1 -0
  26. package/lib/{imodel-components-react → cjs/imodel-components-react}/color/ColorPickerPopup.js +1 -1
  27. package/lib/cjs/imodel-components-react/color/ColorPickerPopup.js.map +1 -0
  28. package/lib/{imodel-components-react → cjs/imodel-components-react}/color/ColorPickerPopup.scss +1 -1
  29. package/lib/{imodel-components-react → cjs/imodel-components-react}/color/HueSlider.d.ts +0 -0
  30. package/lib/cjs/imodel-components-react/color/HueSlider.d.ts.map +1 -0
  31. package/lib/{imodel-components-react → cjs/imodel-components-react}/color/HueSlider.js +0 -0
  32. package/lib/cjs/imodel-components-react/color/HueSlider.js.map +1 -0
  33. package/lib/{imodel-components-react → cjs/imodel-components-react}/color/HueSlider.scss +0 -0
  34. package/lib/{imodel-components-react → cjs/imodel-components-react}/color/SaturationPicker.d.ts +0 -0
  35. package/lib/cjs/imodel-components-react/color/SaturationPicker.d.ts.map +1 -0
  36. package/lib/{imodel-components-react → cjs/imodel-components-react}/color/SaturationPicker.js +1 -1
  37. package/lib/cjs/imodel-components-react/color/SaturationPicker.js.map +1 -0
  38. package/lib/{imodel-components-react → cjs/imodel-components-react}/color/SaturationPicker.scss +0 -0
  39. package/lib/{imodel-components-react → cjs/imodel-components-react}/color/Swatch.d.ts +0 -0
  40. package/lib/cjs/imodel-components-react/color/Swatch.d.ts.map +1 -0
  41. package/lib/{imodel-components-react → cjs/imodel-components-react}/color/Swatch.js +8 -16
  42. package/lib/cjs/imodel-components-react/color/Swatch.js.map +1 -0
  43. package/lib/{imodel-components-react → cjs/imodel-components-react}/color/Swatch.scss +1 -1
  44. package/lib/{imodel-components-react → cjs/imodel-components-react}/color/getCSSColorFromDef.d.ts +0 -0
  45. package/lib/cjs/imodel-components-react/color/getCSSColorFromDef.d.ts.map +1 -0
  46. package/lib/{imodel-components-react → cjs/imodel-components-react}/color/getCSSColorFromDef.js +0 -0
  47. package/lib/cjs/imodel-components-react/color/getCSSColorFromDef.js.map +1 -0
  48. package/lib/{imodel-components-react → cjs/imodel-components-react}/editors/ColorEditor.d.ts +0 -0
  49. package/lib/cjs/imodel-components-react/editors/ColorEditor.d.ts.map +1 -0
  50. package/lib/{imodel-components-react → cjs/imodel-components-react}/editors/ColorEditor.js +0 -0
  51. package/lib/cjs/imodel-components-react/editors/ColorEditor.js.map +1 -0
  52. package/lib/{imodel-components-react → cjs/imodel-components-react}/editors/ColorEditor.scss +1 -1
  53. package/lib/{imodel-components-react → cjs/imodel-components-react}/editors/WeightEditor.d.ts +0 -0
  54. package/lib/cjs/imodel-components-react/editors/WeightEditor.d.ts.map +1 -0
  55. package/lib/{imodel-components-react → cjs/imodel-components-react}/editors/WeightEditor.js +0 -0
  56. package/lib/cjs/imodel-components-react/editors/WeightEditor.js.map +1 -0
  57. package/lib/{imodel-components-react → cjs/imodel-components-react}/editors/WeightEditor.scss +1 -1
  58. package/lib/{imodel-components-react → cjs/imodel-components-react}/inputs/QuantityInput.d.ts +0 -0
  59. package/lib/cjs/imodel-components-react/inputs/QuantityInput.d.ts.map +1 -0
  60. package/lib/{imodel-components-react → cjs/imodel-components-react}/inputs/QuantityInput.js +0 -0
  61. package/lib/cjs/imodel-components-react/inputs/QuantityInput.js.map +1 -0
  62. package/lib/{imodel-components-react → cjs/imodel-components-react}/inputs/QuantityNumberInput.d.ts +0 -0
  63. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.d.ts.map +1 -0
  64. package/lib/{imodel-components-react → cjs/imodel-components-react}/inputs/QuantityNumberInput.js +2 -13
  65. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.js.map +1 -0
  66. package/lib/{imodel-components-react → cjs/imodel-components-react}/inputs/QuantityNumberInput.scss +1 -1
  67. package/lib/{imodel-components-react → cjs/imodel-components-react}/lineweight/Swatch.d.ts +0 -0
  68. package/lib/cjs/imodel-components-react/lineweight/Swatch.d.ts.map +1 -0
  69. package/lib/{imodel-components-react → cjs/imodel-components-react}/lineweight/Swatch.js +12 -16
  70. package/lib/cjs/imodel-components-react/lineweight/Swatch.js.map +1 -0
  71. package/lib/{imodel-components-react → cjs/imodel-components-react}/lineweight/Swatch.scss +1 -1
  72. package/lib/{imodel-components-react → cjs/imodel-components-react}/lineweight/WeightPickerButton.d.ts +0 -0
  73. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.d.ts.map +1 -0
  74. package/lib/{imodel-components-react → cjs/imodel-components-react}/lineweight/WeightPickerButton.js +1 -1
  75. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.js.map +1 -0
  76. package/lib/{imodel-components-react → cjs/imodel-components-react}/lineweight/WeightPickerButton.scss +2 -2
  77. package/lib/{imodel-components-react → cjs/imodel-components-react}/navigationaids/Cube.d.ts +0 -0
  78. package/lib/cjs/imodel-components-react/navigationaids/Cube.d.ts.map +1 -0
  79. package/lib/{imodel-components-react → cjs/imodel-components-react}/navigationaids/Cube.js +9 -17
  80. package/lib/cjs/imodel-components-react/navigationaids/Cube.js.map +1 -0
  81. package/lib/{imodel-components-react → cjs/imodel-components-react}/navigationaids/Cube.scss +0 -0
  82. package/lib/{imodel-components-react → cjs/imodel-components-react}/navigationaids/CubeNavigationAid.d.ts +0 -0
  83. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.d.ts.map +1 -0
  84. package/lib/{imodel-components-react → cjs/imodel-components-react}/navigationaids/CubeNavigationAid.js +6 -17
  85. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.js.map +1 -0
  86. package/lib/{imodel-components-react → cjs/imodel-components-react}/navigationaids/CubeNavigationAid.scss +1 -1
  87. package/lib/{imodel-components-react → cjs/imodel-components-react}/navigationaids/DrawingNavigationAid.d.ts +0 -0
  88. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts.map +1 -0
  89. package/lib/{imodel-components-react → cjs/imodel-components-react}/navigationaids/DrawingNavigationAid.js +4 -1
  90. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.js.map +1 -0
  91. package/lib/{imodel-components-react → cjs/imodel-components-react}/navigationaids/DrawingNavigationAid.scss +2 -2
  92. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/FormatPanel.d.ts +0 -0
  93. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.d.ts.map +1 -0
  94. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/FormatPanel.js +0 -0
  95. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.js.map +1 -0
  96. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/FormatPanel.scss +2 -2
  97. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/FormatPrecision.d.ts +0 -0
  98. package/lib/cjs/imodel-components-react/quantityformat/FormatPrecision.d.ts.map +1 -0
  99. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/FormatPrecision.js +1 -1
  100. package/lib/cjs/imodel-components-react/quantityformat/FormatPrecision.js.map +1 -0
  101. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/FormatSample.d.ts +0 -0
  102. package/lib/cjs/imodel-components-react/quantityformat/FormatSample.d.ts.map +1 -0
  103. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/FormatSample.js +0 -0
  104. package/lib/cjs/imodel-components-react/quantityformat/FormatSample.js.map +1 -0
  105. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/FormatType.d.ts +0 -0
  106. package/lib/cjs/imodel-components-react/quantityformat/FormatType.d.ts.map +1 -0
  107. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/FormatType.js +3 -14
  108. package/lib/cjs/imodel-components-react/quantityformat/FormatType.js.map +1 -0
  109. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/FormatUnitLabel.d.ts +0 -0
  110. package/lib/cjs/imodel-components-react/quantityformat/FormatUnitLabel.d.ts.map +1 -0
  111. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/FormatUnitLabel.js +4 -15
  112. package/lib/cjs/imodel-components-react/quantityformat/FormatUnitLabel.js.map +1 -0
  113. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/FormatUnits.d.ts +0 -0
  114. package/lib/cjs/imodel-components-react/quantityformat/FormatUnits.d.ts.map +1 -0
  115. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/FormatUnits.js +11 -11
  116. package/lib/cjs/imodel-components-react/quantityformat/FormatUnits.js.map +1 -0
  117. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/MiscFormatOptions.d.ts +0 -0
  118. package/lib/cjs/imodel-components-react/quantityformat/MiscFormatOptions.d.ts.map +1 -0
  119. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/MiscFormatOptions.js +6 -6
  120. package/lib/cjs/imodel-components-react/quantityformat/MiscFormatOptions.js.map +1 -0
  121. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/QuantityFormatPanel.d.ts +0 -0
  122. package/lib/cjs/imodel-components-react/quantityformat/QuantityFormatPanel.d.ts.map +1 -0
  123. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/QuantityFormatPanel.js +2 -13
  124. package/lib/cjs/imodel-components-react/quantityformat/QuantityFormatPanel.js.map +1 -0
  125. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/misc/DecimalPrecision.d.ts +0 -0
  126. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalPrecision.d.ts.map +1 -0
  127. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/misc/DecimalPrecision.js +2 -13
  128. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalPrecision.js.map +1 -0
  129. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/misc/DecimalSeparator.d.ts +0 -0
  130. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalSeparator.d.ts.map +1 -0
  131. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/misc/DecimalSeparator.js +2 -13
  132. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalSeparator.js.map +1 -0
  133. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/misc/FractionPrecision.d.ts +0 -0
  134. package/lib/cjs/imodel-components-react/quantityformat/misc/FractionPrecision.d.ts.map +1 -0
  135. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/misc/FractionPrecision.js +2 -13
  136. package/lib/cjs/imodel-components-react/quantityformat/misc/FractionPrecision.js.map +1 -0
  137. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/misc/ScientificType.d.ts +0 -0
  138. package/lib/cjs/imodel-components-react/quantityformat/misc/ScientificType.d.ts.map +1 -0
  139. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/misc/ScientificType.js +2 -13
  140. package/lib/cjs/imodel-components-react/quantityformat/misc/ScientificType.js.map +1 -0
  141. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/misc/SignOption.d.ts +0 -0
  142. package/lib/cjs/imodel-components-react/quantityformat/misc/SignOption.d.ts.map +1 -0
  143. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/misc/SignOption.js +2 -13
  144. package/lib/cjs/imodel-components-react/quantityformat/misc/SignOption.js.map +1 -0
  145. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/misc/StationSeparatorSelector.d.ts +0 -0
  146. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSeparatorSelector.d.ts.map +1 -0
  147. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/misc/StationSeparatorSelector.js +2 -13
  148. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js.map +1 -0
  149. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/misc/StationSizeSelector.d.ts +0 -0
  150. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSizeSelector.d.ts.map +1 -0
  151. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/misc/StationSizeSelector.js +2 -13
  152. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSizeSelector.js.map +1 -0
  153. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/misc/ThousandsSelector.d.ts +0 -0
  154. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSelector.d.ts.map +1 -0
  155. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/misc/ThousandsSelector.js +2 -13
  156. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSelector.js.map +1 -0
  157. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/misc/ThousandsSeparator.d.ts +0 -0
  158. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSeparator.d.ts.map +1 -0
  159. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/misc/ThousandsSeparator.js +2 -2
  160. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSeparator.js.map +1 -0
  161. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/misc/UnitDescr.d.ts +0 -0
  162. package/lib/cjs/imodel-components-react/quantityformat/misc/UnitDescr.d.ts.map +1 -0
  163. package/lib/{imodel-components-react → cjs/imodel-components-react}/quantityformat/misc/UnitDescr.js +0 -0
  164. package/lib/cjs/imodel-components-react/quantityformat/misc/UnitDescr.js.map +1 -0
  165. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/BaseSolarDataProvider.d.ts +0 -0
  166. package/lib/cjs/imodel-components-react/timeline/BaseSolarDataProvider.d.ts.map +1 -0
  167. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/BaseSolarDataProvider.js +0 -0
  168. package/lib/cjs/imodel-components-react/timeline/BaseSolarDataProvider.js.map +1 -0
  169. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/BaseTimelineDataProvider.d.ts +0 -0
  170. package/lib/cjs/imodel-components-react/timeline/BaseTimelineDataProvider.d.ts.map +1 -0
  171. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/BaseTimelineDataProvider.js +1 -1
  172. package/lib/cjs/imodel-components-react/timeline/BaseTimelineDataProvider.js.map +1 -0
  173. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/ContextMenu.d.ts +0 -0
  174. package/lib/cjs/imodel-components-react/timeline/ContextMenu.d.ts.map +1 -0
  175. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/ContextMenu.js +0 -0
  176. package/lib/cjs/imodel-components-react/timeline/ContextMenu.js.map +1 -0
  177. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/ContextMenu.scss +2 -2
  178. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/InlineEdit.d.ts +0 -0
  179. package/lib/cjs/imodel-components-react/timeline/InlineEdit.d.ts.map +1 -0
  180. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/InlineEdit.js +0 -0
  181. package/lib/cjs/imodel-components-react/timeline/InlineEdit.js.map +1 -0
  182. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/InlineEdit.scss +1 -1
  183. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/PlayerButton.d.ts +0 -0
  184. package/lib/cjs/imodel-components-react/timeline/PlayerButton.d.ts.map +1 -0
  185. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/PlayerButton.js +0 -0
  186. package/lib/cjs/imodel-components-react/timeline/PlayerButton.js.map +1 -0
  187. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/PlayerButton.scss +1 -1
  188. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/Scrubber.d.ts +0 -0
  189. package/lib/cjs/imodel-components-react/timeline/Scrubber.d.ts.map +1 -0
  190. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/Scrubber.js +0 -0
  191. package/lib/cjs/imodel-components-react/timeline/Scrubber.js.map +1 -0
  192. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/Scrubber.scss +2 -2
  193. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/SolarTimeline.d.ts +0 -0
  194. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.d.ts.map +1 -0
  195. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/SolarTimeline.js +0 -0
  196. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.js.map +1 -0
  197. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/SolarTimeline.scss +1 -1
  198. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/SpeedTimeline.d.ts +0 -0
  199. package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.d.ts.map +1 -0
  200. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/SpeedTimeline.js +0 -0
  201. package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.js.map +1 -0
  202. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/SpeedTimeline.scss +1 -1
  203. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/Timeline.scss +1 -1
  204. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/TimelineComponent.d.ts +0 -0
  205. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.d.ts.map +1 -0
  206. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/TimelineComponent.js +0 -0
  207. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.js.map +1 -0
  208. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/TimelineComponent.scss +1 -1
  209. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/interfaces.d.ts +0 -0
  210. package/lib/cjs/imodel-components-react/timeline/interfaces.d.ts.map +1 -0
  211. package/lib/{imodel-components-react → cjs/imodel-components-react}/timeline/interfaces.js +0 -0
  212. package/lib/cjs/imodel-components-react/timeline/interfaces.js.map +1 -0
  213. package/lib/{imodel-components-react → cjs/imodel-components-react}/viewport/ViewportComponent.d.ts +0 -0
  214. package/lib/cjs/imodel-components-react/viewport/ViewportComponent.d.ts.map +1 -0
  215. package/lib/{imodel-components-react → cjs/imodel-components-react}/viewport/ViewportComponent.js +4 -1
  216. package/lib/cjs/imodel-components-react/viewport/ViewportComponent.js.map +1 -0
  217. package/lib/{imodel-components-react → cjs/imodel-components-react}/viewport/ViewportComponentEvents.d.ts +0 -0
  218. package/lib/cjs/imodel-components-react/viewport/ViewportComponentEvents.d.ts.map +1 -0
  219. package/lib/{imodel-components-react → cjs/imodel-components-react}/viewport/ViewportComponentEvents.js +0 -0
  220. package/lib/cjs/imodel-components-react/viewport/ViewportComponentEvents.js.map +1 -0
  221. package/lib/{imodel-components-react.d.ts → cjs/imodel-components-react.d.ts} +0 -0
  222. package/lib/cjs/imodel-components-react.d.ts.map +1 -0
  223. package/lib/{imodel-components-react.js → cjs/imodel-components-react.js} +0 -0
  224. package/lib/cjs/imodel-components-react.js.map +1 -0
  225. package/lib/esm/imodel-components-react/UiIModelComponents.d.ts +34 -0
  226. package/lib/esm/imodel-components-react/UiIModelComponents.d.ts.map +1 -0
  227. package/lib/esm/imodel-components-react/UiIModelComponents.js +75 -0
  228. package/lib/esm/imodel-components-react/UiIModelComponents.js.map +1 -0
  229. package/lib/esm/imodel-components-react/color/AlphaSlider.d.ts +37 -0
  230. package/lib/esm/imodel-components-react/color/AlphaSlider.d.ts.map +1 -0
  231. package/lib/esm/imodel-components-react/color/AlphaSlider.js +161 -0
  232. package/lib/esm/imodel-components-react/color/AlphaSlider.js.map +1 -0
  233. package/lib/esm/imodel-components-react/color/AlphaSlider.scss +63 -0
  234. package/lib/esm/imodel-components-react/color/ColorPickerButton.d.ts +38 -0
  235. package/lib/esm/imodel-components-react/color/ColorPickerButton.d.ts.map +1 -0
  236. package/lib/esm/imodel-components-react/color/ColorPickerButton.js +83 -0
  237. package/lib/esm/imodel-components-react/color/ColorPickerButton.js.map +1 -0
  238. package/lib/esm/imodel-components-react/color/ColorPickerButton.scss +92 -0
  239. package/lib/esm/imodel-components-react/color/ColorPickerDialog.d.ts +23 -0
  240. package/lib/esm/imodel-components-react/color/ColorPickerDialog.d.ts.map +1 -0
  241. package/lib/esm/imodel-components-react/color/ColorPickerDialog.js +39 -0
  242. package/lib/esm/imodel-components-react/color/ColorPickerDialog.js.map +1 -0
  243. package/lib/esm/imodel-components-react/color/ColorPickerPanel.d.ts +22 -0
  244. package/lib/esm/imodel-components-react/color/ColorPickerPanel.d.ts.map +1 -0
  245. package/lib/esm/imodel-components-react/color/ColorPickerPanel.js +123 -0
  246. package/lib/esm/imodel-components-react/color/ColorPickerPanel.js.map +1 -0
  247. package/lib/esm/imodel-components-react/color/ColorPickerPanel.scss +94 -0
  248. package/lib/esm/imodel-components-react/color/ColorPickerPopup.d.ts +44 -0
  249. package/lib/esm/imodel-components-react/color/ColorPickerPopup.d.ts.map +1 -0
  250. package/lib/esm/imodel-components-react/color/ColorPickerPopup.js +94 -0
  251. package/lib/esm/imodel-components-react/color/ColorPickerPopup.js.map +1 -0
  252. package/lib/esm/imodel-components-react/color/ColorPickerPopup.scss +53 -0
  253. package/lib/esm/imodel-components-react/color/HueSlider.d.ts +23 -0
  254. package/lib/esm/imodel-components-react/color/HueSlider.d.ts.map +1 -0
  255. package/lib/esm/imodel-components-react/color/HueSlider.js +174 -0
  256. package/lib/esm/imodel-components-react/color/HueSlider.js.map +1 -0
  257. package/lib/esm/imodel-components-react/color/HueSlider.scss +61 -0
  258. package/lib/esm/imodel-components-react/color/SaturationPicker.d.ts +21 -0
  259. package/lib/esm/imodel-components-react/color/SaturationPicker.d.ts.map +1 -0
  260. package/lib/esm/imodel-components-react/color/SaturationPicker.js +188 -0
  261. package/lib/esm/imodel-components-react/color/SaturationPicker.js.map +1 -0
  262. package/lib/esm/imodel-components-react/color/SaturationPicker.scss +35 -0
  263. package/lib/esm/imodel-components-react/color/Swatch.d.ts +23 -0
  264. package/lib/esm/imodel-components-react/color/Swatch.d.ts.map +1 -0
  265. package/lib/esm/imodel-components-react/color/Swatch.js +35 -0
  266. package/lib/esm/imodel-components-react/color/Swatch.js.map +1 -0
  267. package/lib/esm/imodel-components-react/color/Swatch.scss +24 -0
  268. package/lib/esm/imodel-components-react/color/getCSSColorFromDef.d.ts +7 -0
  269. package/lib/esm/imodel-components-react/color/getCSSColorFromDef.d.ts.map +1 -0
  270. package/lib/esm/imodel-components-react/color/getCSSColorFromDef.js +20 -0
  271. package/lib/esm/imodel-components-react/color/getCSSColorFromDef.js.map +1 -0
  272. package/lib/esm/imodel-components-react/editors/ColorEditor.d.ts +45 -0
  273. package/lib/esm/imodel-components-react/editors/ColorEditor.d.ts.map +1 -0
  274. package/lib/esm/imodel-components-react/editors/ColorEditor.js +125 -0
  275. package/lib/esm/imodel-components-react/editors/ColorEditor.js.map +1 -0
  276. package/lib/esm/imodel-components-react/editors/ColorEditor.scss +19 -0
  277. package/lib/esm/imodel-components-react/editors/WeightEditor.d.ts +48 -0
  278. package/lib/esm/imodel-components-react/editors/WeightEditor.d.ts.map +1 -0
  279. package/lib/esm/imodel-components-react/editors/WeightEditor.js +134 -0
  280. package/lib/esm/imodel-components-react/editors/WeightEditor.js.map +1 -0
  281. package/lib/esm/imodel-components-react/editors/WeightEditor.scss +17 -0
  282. package/lib/esm/imodel-components-react/inputs/QuantityInput.d.ts +26 -0
  283. package/lib/esm/imodel-components-react/inputs/QuantityInput.d.ts.map +1 -0
  284. package/lib/esm/imodel-components-react/inputs/QuantityInput.js +71 -0
  285. package/lib/esm/imodel-components-react/inputs/QuantityInput.js.map +1 -0
  286. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.d.ts +45 -0
  287. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.d.ts.map +1 -0
  288. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.js +240 -0
  289. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.js.map +1 -0
  290. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.scss +89 -0
  291. package/lib/esm/imodel-components-react/lineweight/Swatch.d.ts +34 -0
  292. package/lib/esm/imodel-components-react/lineweight/Swatch.d.ts.map +1 -0
  293. package/lib/esm/imodel-components-react/lineweight/Swatch.js +60 -0
  294. package/lib/esm/imodel-components-react/lineweight/Swatch.js.map +1 -0
  295. package/lib/esm/imodel-components-react/lineweight/Swatch.scss +49 -0
  296. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.d.ts +61 -0
  297. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.d.ts.map +1 -0
  298. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.js +134 -0
  299. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.js.map +1 -0
  300. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.scss +53 -0
  301. package/lib/esm/imodel-components-react/navigationaids/Cube.d.ts +46 -0
  302. package/lib/esm/imodel-components-react/navigationaids/Cube.d.ts.map +1 -0
  303. package/lib/esm/imodel-components-react/navigationaids/Cube.js +101 -0
  304. package/lib/esm/imodel-components-react/navigationaids/Cube.js.map +1 -0
  305. package/lib/esm/imodel-components-react/navigationaids/Cube.scss +19 -0
  306. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.d.ts +174 -0
  307. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.d.ts.map +1 -0
  308. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.js +573 -0
  309. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.js.map +1 -0
  310. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.scss +181 -0
  311. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts +146 -0
  312. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts.map +1 -0
  313. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.js +621 -0
  314. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.js.map +1 -0
  315. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.scss +134 -0
  316. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.d.ts +27 -0
  317. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.d.ts.map +1 -0
  318. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.js +77 -0
  319. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.js.map +1 -0
  320. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.scss +65 -0
  321. package/lib/esm/imodel-components-react/quantityformat/FormatPrecision.d.ts +18 -0
  322. package/lib/esm/imodel-components-react/quantityformat/FormatPrecision.d.ts.map +1 -0
  323. package/lib/esm/imodel-components-react/quantityformat/FormatPrecision.js +31 -0
  324. package/lib/esm/imodel-components-react/quantityformat/FormatPrecision.js.map +1 -0
  325. package/lib/esm/imodel-components-react/quantityformat/FormatSample.d.ts +19 -0
  326. package/lib/esm/imodel-components-react/quantityformat/FormatSample.d.ts.map +1 -0
  327. package/lib/esm/imodel-components-react/quantityformat/FormatSample.js +61 -0
  328. package/lib/esm/imodel-components-react/quantityformat/FormatSample.js.map +1 -0
  329. package/lib/esm/imodel-components-react/quantityformat/FormatType.d.ts +18 -0
  330. package/lib/esm/imodel-components-react/quantityformat/FormatType.d.ts.map +1 -0
  331. package/lib/esm/imodel-components-react/quantityformat/FormatType.js +64 -0
  332. package/lib/esm/imodel-components-react/quantityformat/FormatType.js.map +1 -0
  333. package/lib/esm/imodel-components-react/quantityformat/FormatUnitLabel.d.ts +18 -0
  334. package/lib/esm/imodel-components-react/quantityformat/FormatUnitLabel.d.ts.map +1 -0
  335. package/lib/esm/imodel-components-react/quantityformat/FormatUnitLabel.js +84 -0
  336. package/lib/esm/imodel-components-react/quantityformat/FormatUnitLabel.js.map +1 -0
  337. package/lib/esm/imodel-components-react/quantityformat/FormatUnits.d.ts +20 -0
  338. package/lib/esm/imodel-components-react/quantityformat/FormatUnits.d.ts.map +1 -0
  339. package/lib/esm/imodel-components-react/quantityformat/FormatUnits.js +111 -0
  340. package/lib/esm/imodel-components-react/quantityformat/FormatUnits.js.map +1 -0
  341. package/lib/esm/imodel-components-react/quantityformat/MiscFormatOptions.d.ts +22 -0
  342. package/lib/esm/imodel-components-react/quantityformat/MiscFormatOptions.d.ts.map +1 -0
  343. package/lib/esm/imodel-components-react/quantityformat/MiscFormatOptions.js +159 -0
  344. package/lib/esm/imodel-components-react/quantityformat/MiscFormatOptions.js.map +1 -0
  345. package/lib/esm/imodel-components-react/quantityformat/QuantityFormatPanel.d.ts +23 -0
  346. package/lib/esm/imodel-components-react/quantityformat/QuantityFormatPanel.d.ts.map +1 -0
  347. package/lib/esm/imodel-components-react/quantityformat/QuantityFormatPanel.js +132 -0
  348. package/lib/esm/imodel-components-react/quantityformat/QuantityFormatPanel.js.map +1 -0
  349. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalPrecision.d.ts +18 -0
  350. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalPrecision.d.ts.map +1 -0
  351. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalPrecision.js +37 -0
  352. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalPrecision.js.map +1 -0
  353. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalSeparator.d.ts +18 -0
  354. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalSeparator.d.ts.map +1 -0
  355. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalSeparator.js +25 -0
  356. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalSeparator.js.map +1 -0
  357. package/lib/esm/imodel-components-react/quantityformat/misc/FractionPrecision.d.ts +17 -0
  358. package/lib/esm/imodel-components-react/quantityformat/misc/FractionPrecision.d.ts.map +1 -0
  359. package/lib/esm/imodel-components-react/quantityformat/misc/FractionPrecision.js +32 -0
  360. package/lib/esm/imodel-components-react/quantityformat/misc/FractionPrecision.js.map +1 -0
  361. package/lib/esm/imodel-components-react/quantityformat/misc/ScientificType.d.ts +19 -0
  362. package/lib/esm/imodel-components-react/quantityformat/misc/ScientificType.d.ts.map +1 -0
  363. package/lib/esm/imodel-components-react/quantityformat/misc/ScientificType.js +26 -0
  364. package/lib/esm/imodel-components-react/quantityformat/misc/ScientificType.js.map +1 -0
  365. package/lib/esm/imodel-components-react/quantityformat/misc/SignOption.d.ts +18 -0
  366. package/lib/esm/imodel-components-react/quantityformat/misc/SignOption.d.ts.map +1 -0
  367. package/lib/esm/imodel-components-react/quantityformat/misc/SignOption.js +28 -0
  368. package/lib/esm/imodel-components-react/quantityformat/misc/SignOption.js.map +1 -0
  369. package/lib/esm/imodel-components-react/quantityformat/misc/StationSeparatorSelector.d.ts +18 -0
  370. package/lib/esm/imodel-components-react/quantityformat/misc/StationSeparatorSelector.d.ts.map +1 -0
  371. package/lib/esm/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js +36 -0
  372. package/lib/esm/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js.map +1 -0
  373. package/lib/esm/imodel-components-react/quantityformat/misc/StationSizeSelector.d.ts +18 -0
  374. package/lib/esm/imodel-components-react/quantityformat/misc/StationSizeSelector.d.ts.map +1 -0
  375. package/lib/esm/imodel-components-react/quantityformat/misc/StationSizeSelector.js +25 -0
  376. package/lib/esm/imodel-components-react/quantityformat/misc/StationSizeSelector.js.map +1 -0
  377. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSelector.d.ts +18 -0
  378. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSelector.d.ts.map +1 -0
  379. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSelector.js +34 -0
  380. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSelector.js.map +1 -0
  381. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSeparator.d.ts +18 -0
  382. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSeparator.d.ts.map +1 -0
  383. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSeparator.js +70 -0
  384. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSeparator.js.map +1 -0
  385. package/lib/esm/imodel-components-react/quantityformat/misc/UnitDescr.d.ts +24 -0
  386. package/lib/esm/imodel-components-react/quantityformat/misc/UnitDescr.d.ts.map +1 -0
  387. package/lib/esm/imodel-components-react/quantityformat/misc/UnitDescr.js +97 -0
  388. package/lib/esm/imodel-components-react/quantityformat/misc/UnitDescr.js.map +1 -0
  389. package/lib/esm/imodel-components-react/timeline/BaseSolarDataProvider.d.ts +53 -0
  390. package/lib/esm/imodel-components-react/timeline/BaseSolarDataProvider.d.ts.map +1 -0
  391. package/lib/esm/imodel-components-react/timeline/BaseSolarDataProvider.js +140 -0
  392. package/lib/esm/imodel-components-react/timeline/BaseSolarDataProvider.js.map +1 -0
  393. package/lib/esm/imodel-components-react/timeline/BaseTimelineDataProvider.d.ts +32 -0
  394. package/lib/esm/imodel-components-react/timeline/BaseTimelineDataProvider.d.ts.map +1 -0
  395. package/lib/esm/imodel-components-react/timeline/BaseTimelineDataProvider.js +66 -0
  396. package/lib/esm/imodel-components-react/timeline/BaseTimelineDataProvider.js.map +1 -0
  397. package/lib/esm/imodel-components-react/timeline/ContextMenu.d.ts +55 -0
  398. package/lib/esm/imodel-components-react/timeline/ContextMenu.d.ts.map +1 -0
  399. package/lib/esm/imodel-components-react/timeline/ContextMenu.js +55 -0
  400. package/lib/esm/imodel-components-react/timeline/ContextMenu.js.map +1 -0
  401. package/lib/esm/imodel-components-react/timeline/ContextMenu.scss +81 -0
  402. package/lib/esm/imodel-components-react/timeline/InlineEdit.d.ts +28 -0
  403. package/lib/esm/imodel-components-react/timeline/InlineEdit.d.ts.map +1 -0
  404. package/lib/esm/imodel-components-react/timeline/InlineEdit.js +56 -0
  405. package/lib/esm/imodel-components-react/timeline/InlineEdit.js.map +1 -0
  406. package/lib/esm/imodel-components-react/timeline/InlineEdit.scss +27 -0
  407. package/lib/esm/imodel-components-react/timeline/PlayerButton.d.ts +34 -0
  408. package/lib/esm/imodel-components-react/timeline/PlayerButton.d.ts.map +1 -0
  409. package/lib/esm/imodel-components-react/timeline/PlayerButton.js +65 -0
  410. package/lib/esm/imodel-components-react/timeline/PlayerButton.js.map +1 -0
  411. package/lib/esm/imodel-components-react/timeline/PlayerButton.scss +26 -0
  412. package/lib/esm/imodel-components-react/timeline/Scrubber.d.ts +55 -0
  413. package/lib/esm/imodel-components-react/timeline/Scrubber.d.ts.map +1 -0
  414. package/lib/esm/imodel-components-react/timeline/Scrubber.js +165 -0
  415. package/lib/esm/imodel-components-react/timeline/Scrubber.js.map +1 -0
  416. package/lib/esm/imodel-components-react/timeline/Scrubber.scss +107 -0
  417. package/lib/esm/imodel-components-react/timeline/SolarTimeline.d.ts +78 -0
  418. package/lib/esm/imodel-components-react/timeline/SolarTimeline.d.ts.map +1 -0
  419. package/lib/esm/imodel-components-react/timeline/SolarTimeline.js +399 -0
  420. package/lib/esm/imodel-components-react/timeline/SolarTimeline.js.map +1 -0
  421. package/lib/esm/imodel-components-react/timeline/SolarTimeline.scss +358 -0
  422. package/lib/esm/imodel-components-react/timeline/SpeedTimeline.d.ts +16 -0
  423. package/lib/esm/imodel-components-react/timeline/SpeedTimeline.d.ts.map +1 -0
  424. package/lib/esm/imodel-components-react/timeline/SpeedTimeline.js +29 -0
  425. package/lib/esm/imodel-components-react/timeline/SpeedTimeline.js.map +1 -0
  426. package/lib/esm/imodel-components-react/timeline/SpeedTimeline.scss +40 -0
  427. package/lib/esm/imodel-components-react/timeline/Timeline.scss +165 -0
  428. package/lib/esm/imodel-components-react/timeline/TimelineComponent.d.ts +135 -0
  429. package/lib/esm/imodel-components-react/timeline/TimelineComponent.d.ts.map +1 -0
  430. package/lib/esm/imodel-components-react/timeline/TimelineComponent.js +341 -0
  431. package/lib/esm/imodel-components-react/timeline/TimelineComponent.js.map +1 -0
  432. package/lib/esm/imodel-components-react/timeline/TimelineComponent.scss +164 -0
  433. package/lib/esm/imodel-components-react/timeline/interfaces.d.ts +175 -0
  434. package/lib/esm/imodel-components-react/timeline/interfaces.d.ts.map +1 -0
  435. package/lib/esm/imodel-components-react/timeline/interfaces.js +43 -0
  436. package/lib/esm/imodel-components-react/timeline/interfaces.js.map +1 -0
  437. package/lib/esm/imodel-components-react/viewport/ViewportComponent.d.ts +67 -0
  438. package/lib/esm/imodel-components-react/viewport/ViewportComponent.d.ts.map +1 -0
  439. package/lib/esm/imodel-components-react/viewport/ViewportComponent.js +227 -0
  440. package/lib/esm/imodel-components-react/viewport/ViewportComponent.js.map +1 -0
  441. package/lib/esm/imodel-components-react/viewport/ViewportComponentEvents.d.ts +107 -0
  442. package/lib/esm/imodel-components-react/viewport/ViewportComponentEvents.d.ts.map +1 -0
  443. package/lib/esm/imodel-components-react/viewport/ViewportComponentEvents.js +95 -0
  444. package/lib/esm/imodel-components-react/viewport/ViewportComponentEvents.js.map +1 -0
  445. package/lib/esm/imodel-components-react.d.ts +84 -0
  446. package/lib/esm/imodel-components-react.d.ts.map +1 -0
  447. package/lib/esm/imodel-components-react.js +89 -0
  448. package/lib/esm/imodel-components-react.js.map +1 -0
  449. package/package.json +32 -27
  450. package/lib/imodel-components-react/UiIModelComponents.d.ts.map +0 -1
  451. package/lib/imodel-components-react/UiIModelComponents.js.map +0 -1
  452. package/lib/imodel-components-react/color/AlphaSlider.d.ts.map +0 -1
  453. package/lib/imodel-components-react/color/AlphaSlider.js.map +0 -1
  454. package/lib/imodel-components-react/color/ColorPickerButton.d.ts.map +0 -1
  455. package/lib/imodel-components-react/color/ColorPickerButton.js.map +0 -1
  456. package/lib/imodel-components-react/color/ColorPickerDialog.d.ts.map +0 -1
  457. package/lib/imodel-components-react/color/ColorPickerDialog.js.map +0 -1
  458. package/lib/imodel-components-react/color/ColorPickerPanel.d.ts.map +0 -1
  459. package/lib/imodel-components-react/color/ColorPickerPanel.js.map +0 -1
  460. package/lib/imodel-components-react/color/ColorPickerPopup.d.ts.map +0 -1
  461. package/lib/imodel-components-react/color/ColorPickerPopup.js.map +0 -1
  462. package/lib/imodel-components-react/color/HueSlider.d.ts.map +0 -1
  463. package/lib/imodel-components-react/color/HueSlider.js.map +0 -1
  464. package/lib/imodel-components-react/color/SaturationPicker.d.ts.map +0 -1
  465. package/lib/imodel-components-react/color/SaturationPicker.js.map +0 -1
  466. package/lib/imodel-components-react/color/Swatch.d.ts.map +0 -1
  467. package/lib/imodel-components-react/color/Swatch.js.map +0 -1
  468. package/lib/imodel-components-react/color/getCSSColorFromDef.d.ts.map +0 -1
  469. package/lib/imodel-components-react/color/getCSSColorFromDef.js.map +0 -1
  470. package/lib/imodel-components-react/editors/ColorEditor.d.ts.map +0 -1
  471. package/lib/imodel-components-react/editors/ColorEditor.js.map +0 -1
  472. package/lib/imodel-components-react/editors/WeightEditor.d.ts.map +0 -1
  473. package/lib/imodel-components-react/editors/WeightEditor.js.map +0 -1
  474. package/lib/imodel-components-react/inputs/QuantityInput.d.ts.map +0 -1
  475. package/lib/imodel-components-react/inputs/QuantityInput.js.map +0 -1
  476. package/lib/imodel-components-react/inputs/QuantityNumberInput.d.ts.map +0 -1
  477. package/lib/imodel-components-react/inputs/QuantityNumberInput.js.map +0 -1
  478. package/lib/imodel-components-react/lineweight/Swatch.d.ts.map +0 -1
  479. package/lib/imodel-components-react/lineweight/Swatch.js.map +0 -1
  480. package/lib/imodel-components-react/lineweight/WeightPickerButton.d.ts.map +0 -1
  481. package/lib/imodel-components-react/lineweight/WeightPickerButton.js.map +0 -1
  482. package/lib/imodel-components-react/navigationaids/Cube.d.ts.map +0 -1
  483. package/lib/imodel-components-react/navigationaids/Cube.js.map +0 -1
  484. package/lib/imodel-components-react/navigationaids/CubeNavigationAid.d.ts.map +0 -1
  485. package/lib/imodel-components-react/navigationaids/CubeNavigationAid.js.map +0 -1
  486. package/lib/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts.map +0 -1
  487. package/lib/imodel-components-react/navigationaids/DrawingNavigationAid.js.map +0 -1
  488. package/lib/imodel-components-react/quantityformat/FormatPanel.d.ts.map +0 -1
  489. package/lib/imodel-components-react/quantityformat/FormatPanel.js.map +0 -1
  490. package/lib/imodel-components-react/quantityformat/FormatPrecision.d.ts.map +0 -1
  491. package/lib/imodel-components-react/quantityformat/FormatPrecision.js.map +0 -1
  492. package/lib/imodel-components-react/quantityformat/FormatSample.d.ts.map +0 -1
  493. package/lib/imodel-components-react/quantityformat/FormatSample.js.map +0 -1
  494. package/lib/imodel-components-react/quantityformat/FormatType.d.ts.map +0 -1
  495. package/lib/imodel-components-react/quantityformat/FormatType.js.map +0 -1
  496. package/lib/imodel-components-react/quantityformat/FormatUnitLabel.d.ts.map +0 -1
  497. package/lib/imodel-components-react/quantityformat/FormatUnitLabel.js.map +0 -1
  498. package/lib/imodel-components-react/quantityformat/FormatUnits.d.ts.map +0 -1
  499. package/lib/imodel-components-react/quantityformat/FormatUnits.js.map +0 -1
  500. package/lib/imodel-components-react/quantityformat/MiscFormatOptions.d.ts.map +0 -1
  501. package/lib/imodel-components-react/quantityformat/MiscFormatOptions.js.map +0 -1
  502. package/lib/imodel-components-react/quantityformat/QuantityFormatPanel.d.ts.map +0 -1
  503. package/lib/imodel-components-react/quantityformat/QuantityFormatPanel.js.map +0 -1
  504. package/lib/imodel-components-react/quantityformat/misc/DecimalPrecision.d.ts.map +0 -1
  505. package/lib/imodel-components-react/quantityformat/misc/DecimalPrecision.js.map +0 -1
  506. package/lib/imodel-components-react/quantityformat/misc/DecimalSeparator.d.ts.map +0 -1
  507. package/lib/imodel-components-react/quantityformat/misc/DecimalSeparator.js.map +0 -1
  508. package/lib/imodel-components-react/quantityformat/misc/FractionPrecision.d.ts.map +0 -1
  509. package/lib/imodel-components-react/quantityformat/misc/FractionPrecision.js.map +0 -1
  510. package/lib/imodel-components-react/quantityformat/misc/ScientificType.d.ts.map +0 -1
  511. package/lib/imodel-components-react/quantityformat/misc/ScientificType.js.map +0 -1
  512. package/lib/imodel-components-react/quantityformat/misc/SignOption.d.ts.map +0 -1
  513. package/lib/imodel-components-react/quantityformat/misc/SignOption.js.map +0 -1
  514. package/lib/imodel-components-react/quantityformat/misc/StationSeparatorSelector.d.ts.map +0 -1
  515. package/lib/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js.map +0 -1
  516. package/lib/imodel-components-react/quantityformat/misc/StationSizeSelector.d.ts.map +0 -1
  517. package/lib/imodel-components-react/quantityformat/misc/StationSizeSelector.js.map +0 -1
  518. package/lib/imodel-components-react/quantityformat/misc/ThousandsSelector.d.ts.map +0 -1
  519. package/lib/imodel-components-react/quantityformat/misc/ThousandsSelector.js.map +0 -1
  520. package/lib/imodel-components-react/quantityformat/misc/ThousandsSeparator.d.ts.map +0 -1
  521. package/lib/imodel-components-react/quantityformat/misc/ThousandsSeparator.js.map +0 -1
  522. package/lib/imodel-components-react/quantityformat/misc/UnitDescr.d.ts.map +0 -1
  523. package/lib/imodel-components-react/quantityformat/misc/UnitDescr.js.map +0 -1
  524. package/lib/imodel-components-react/timeline/BaseSolarDataProvider.d.ts.map +0 -1
  525. package/lib/imodel-components-react/timeline/BaseSolarDataProvider.js.map +0 -1
  526. package/lib/imodel-components-react/timeline/BaseTimelineDataProvider.d.ts.map +0 -1
  527. package/lib/imodel-components-react/timeline/BaseTimelineDataProvider.js.map +0 -1
  528. package/lib/imodel-components-react/timeline/ContextMenu.d.ts.map +0 -1
  529. package/lib/imodel-components-react/timeline/ContextMenu.js.map +0 -1
  530. package/lib/imodel-components-react/timeline/InlineEdit.d.ts.map +0 -1
  531. package/lib/imodel-components-react/timeline/InlineEdit.js.map +0 -1
  532. package/lib/imodel-components-react/timeline/PlayerButton.d.ts.map +0 -1
  533. package/lib/imodel-components-react/timeline/PlayerButton.js.map +0 -1
  534. package/lib/imodel-components-react/timeline/Scrubber.d.ts.map +0 -1
  535. package/lib/imodel-components-react/timeline/Scrubber.js.map +0 -1
  536. package/lib/imodel-components-react/timeline/SolarTimeline.d.ts.map +0 -1
  537. package/lib/imodel-components-react/timeline/SolarTimeline.js.map +0 -1
  538. package/lib/imodel-components-react/timeline/SpeedTimeline.d.ts.map +0 -1
  539. package/lib/imodel-components-react/timeline/SpeedTimeline.js.map +0 -1
  540. package/lib/imodel-components-react/timeline/TimelineComponent.d.ts.map +0 -1
  541. package/lib/imodel-components-react/timeline/TimelineComponent.js.map +0 -1
  542. package/lib/imodel-components-react/timeline/interfaces.d.ts.map +0 -1
  543. package/lib/imodel-components-react/timeline/interfaces.js.map +0 -1
  544. package/lib/imodel-components-react/viewport/ViewportComponent.d.ts.map +0 -1
  545. package/lib/imodel-components-react/viewport/ViewportComponent.js.map +0 -1
  546. package/lib/imodel-components-react/viewport/ViewportComponentEvents.d.ts.map +0 -1
  547. package/lib/imodel-components-react/viewport/ViewportComponentEvents.js.map +0 -1
  548. package/lib/imodel-components-react.d.ts.map +0 -1
  549. package/lib/imodel-components-react.js.map +0 -1
@@ -0,0 +1,227 @@
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
+ /** @packageDocumentation
6
+ * @module Viewport
7
+ */
8
+ import * as React from "react";
9
+ import { Logger } from "@itwin/core-bentley";
10
+ import { Transform } from "@itwin/core-geometry";
11
+ import { NpcCenter } from "@itwin/core-common";
12
+ import { IModelApp, ScreenViewport, ToolSettings, ViewState, } from "@itwin/core-frontend";
13
+ import { UiIModelComponents } from "../UiIModelComponents";
14
+ import { ViewportComponentEvents, } from "./ViewportComponentEvents";
15
+ /**
16
+ * A viewport React component that creates a ScreenViewport.
17
+ * @public
18
+ */
19
+ export class ViewportComponent extends React.Component {
20
+ constructor(props) {
21
+ super(props);
22
+ this._viewClassFullName = "";
23
+ this._mounted = false;
24
+ this._handleDisconnectFromViewManager = () => {
25
+ const screenViewport = this._vp;
26
+ const parentDiv = this._viewportDiv.current;
27
+ if (screenViewport) {
28
+ const viewManager = IModelApp.viewManager;
29
+ viewManager.dropViewport(screenViewport, true);
30
+ screenViewport.onViewChanged.removeListener(this._handleViewChanged);
31
+ this._vp = undefined;
32
+ }
33
+ // istanbul ignore else
34
+ if (parentDiv) {
35
+ const parentWindow = parentDiv.ownerDocument.defaultView;
36
+ parentWindow.removeEventListener("beforeunload", this._handleDisconnectFromViewManager, false);
37
+ }
38
+ };
39
+ this._handleDrawingViewportChangeEvent = (args) => {
40
+ const viewManager = this.props.viewManagerOverride ? this.props.viewManagerOverride : /* istanbul ignore next */ IModelApp.viewManager;
41
+ /* istanbul ignore else */
42
+ if (this._vp && viewManager.selectedView === this._vp) {
43
+ this._vp.view.setOrigin(args.origin);
44
+ this._vp.view.setRotation(args.rotation);
45
+ this._vp.synchWithView({ noSaveInUndo: args.complete !== true });
46
+ }
47
+ };
48
+ this._handleCubeRotationChangeEvent = (args) => {
49
+ const viewManager = this.props.viewManagerOverride ? this.props.viewManagerOverride : /* istanbul ignore next */ IModelApp.viewManager;
50
+ /* istanbul ignore else */
51
+ if (this._vp && viewManager.selectedView === this._vp) {
52
+ const rotMatrix = args.rotMatrix;
53
+ /* istanbul ignore else */
54
+ if (this._vp.rotation !== rotMatrix) {
55
+ const inverse = rotMatrix.transpose(); // rotation is from current nav cube state...
56
+ const center = this._getRotatePoint(this._vp);
57
+ const targetMatrix = inverse.multiplyMatrixMatrix(this._vp.view.getRotation());
58
+ const worldTransform = Transform.createFixedPointAndMatrix(center, targetMatrix);
59
+ const frustum = this._vp.getWorldFrustum();
60
+ frustum.multiply(worldTransform);
61
+ this._vp.view.setupFromFrustum(frustum);
62
+ this._vp.synchWithView({ noSaveInUndo: !args.complete });
63
+ }
64
+ }
65
+ };
66
+ this._handleStandardRotationChangeEvent = (args) => {
67
+ const viewManager = this.props.viewManagerOverride ? this.props.viewManagerOverride : /* istanbul ignore next */ IModelApp.viewManager;
68
+ /* istanbul ignore else */
69
+ if (this._vp && viewManager.selectedView === this._vp) {
70
+ // this._vp.view.setStandardRotation(args.standardRotation);
71
+ this._vp.view.setRotationAboutPoint(ViewState.getStandardViewMatrix(args.standardRotation));
72
+ this._vp.synchWithView();
73
+ }
74
+ };
75
+ this._handleViewChanged = (vp) => {
76
+ ViewportComponentEvents.setViewMatrix(vp);
77
+ /* istanbul ignore else */
78
+ if (this._viewClassFullName !== vp.view.classFullName) {
79
+ setTimeout(() => {
80
+ ViewportComponentEvents.onViewClassFullNameChangedEvent.emit({ viewport: vp, oldName: this._viewClassFullName, newName: vp.view.classFullName });
81
+ this._viewClassFullName = vp.view.classFullName;
82
+ });
83
+ }
84
+ /* istanbul ignore else */
85
+ if (this.state.viewId !== vp.view.id) {
86
+ setTimeout(() => {
87
+ ViewportComponentEvents.onViewIdChangedEvent.emit({ viewport: vp, oldId: this.state.viewId, newId: vp.view.id });
88
+ /* istanbul ignore next - flaky mounted condition in the setTimeout */
89
+ if (this._mounted)
90
+ this.setState({ viewId: vp.view.id });
91
+ });
92
+ }
93
+ };
94
+ this._handleContextMenu = (e) => {
95
+ e.preventDefault();
96
+ if (this.props.onContextMenu)
97
+ this.props.onContextMenu(e);
98
+ return false;
99
+ };
100
+ this._viewportDiv = React.createRef();
101
+ this.state = {
102
+ viewId: "",
103
+ };
104
+ }
105
+ async componentDidMount() {
106
+ this._mounted = true;
107
+ // istanbul ignore next
108
+ if (!this._viewportDiv.current) {
109
+ Logger.logError(UiIModelComponents.loggerCategory(this), `Parent <div> failed to load`);
110
+ return;
111
+ }
112
+ const viewState = await this.getViewState();
113
+ if (viewState === undefined) {
114
+ Logger.logError(UiIModelComponents.loggerCategory(this), `Failed to obtain ViewState`);
115
+ return;
116
+ }
117
+ /* istanbul ignore next */
118
+ if (!this._mounted)
119
+ return;
120
+ const viewManager = this.props.viewManagerOverride ? this.props.viewManagerOverride : /* istanbul ignore next */ IModelApp.viewManager;
121
+ const screenViewportFactory = this.props.screenViewportOverride ? this.props.screenViewportOverride : /* istanbul ignore next */ ScreenViewport;
122
+ const parentDiv = this._viewportDiv.current;
123
+ const screenViewport = screenViewportFactory.create(parentDiv, viewState);
124
+ this._vp = screenViewport;
125
+ viewManager.addViewport(this._vp);
126
+ const parentWindow = parentDiv.ownerDocument.defaultView;
127
+ parentWindow.addEventListener("beforeunload", this._handleDisconnectFromViewManager, false);
128
+ ViewportComponentEvents.initialize();
129
+ ViewportComponentEvents.onDrawingViewportChangeEvent.addListener(this._handleDrawingViewportChangeEvent);
130
+ ViewportComponentEvents.onCubeRotationChangeEvent.addListener(this._handleCubeRotationChangeEvent);
131
+ ViewportComponentEvents.onStandardRotationChangeEvent.addListener(this._handleStandardRotationChangeEvent);
132
+ this._vp.onViewChanged.addListener(this._handleViewChanged);
133
+ this._viewClassFullName = this._vp.view.classFullName;
134
+ this.setState({ viewId: this._vp.view.id });
135
+ /* istanbul ignore else */
136
+ if (this.props.viewportRef)
137
+ this.props.viewportRef(this._vp);
138
+ }
139
+ componentWillUnmount() {
140
+ this._mounted = false;
141
+ this._handleDisconnectFromViewManager();
142
+ ViewportComponentEvents.onDrawingViewportChangeEvent.removeListener(this._handleDrawingViewportChangeEvent);
143
+ ViewportComponentEvents.onCubeRotationChangeEvent.removeListener(this._handleCubeRotationChangeEvent);
144
+ ViewportComponentEvents.onStandardRotationChangeEvent.removeListener(this._handleStandardRotationChangeEvent);
145
+ }
146
+ async componentDidUpdate(prevProps) {
147
+ if (this.props.imodel === prevProps.imodel &&
148
+ this.props.viewState === prevProps.viewState &&
149
+ this.props.viewDefinitionId === prevProps.viewDefinitionId)
150
+ return;
151
+ /* istanbul ignore else */
152
+ if (this._vp) {
153
+ const viewState = await this.getViewState();
154
+ if (viewState === undefined) {
155
+ Logger.logError(UiIModelComponents.loggerCategory(this), `Failed to obtain ViewState`);
156
+ return;
157
+ }
158
+ this._vp.changeView(viewState);
159
+ /* istanbul ignore else */
160
+ if (this._mounted)
161
+ this.setState({ viewId: this._vp.view.id });
162
+ }
163
+ }
164
+ async getViewState() {
165
+ let viewState;
166
+ if (this.props.viewState) {
167
+ if (typeof this.props.viewState === "function")
168
+ viewState = this.props.viewState();
169
+ else
170
+ viewState = this.props.viewState;
171
+ }
172
+ else if (this.props.viewDefinitionId) {
173
+ viewState = await this.props.imodel.views.load(this.props.viewDefinitionId);
174
+ if (!viewState) {
175
+ Logger.logError(UiIModelComponents.loggerCategory(this), `View state failed to load`);
176
+ return undefined;
177
+ }
178
+ else {
179
+ return viewState;
180
+ }
181
+ }
182
+ else {
183
+ Logger.logError(UiIModelComponents.loggerCategory(this), `Either viewDefinitionId or viewState must be provided as a ViewportComponent Prop`);
184
+ return undefined;
185
+ }
186
+ return viewState.clone();
187
+ }
188
+ _getRotatePoint(vp) {
189
+ const tentativePoint = this.props.tentativePointOverride ? this.props.tentativePointOverride : /* istanbul ignore next */ IModelApp.tentativePoint;
190
+ if (tentativePoint.isActive)
191
+ return tentativePoint.getPoint();
192
+ /* istanbul ignore else */
193
+ if (undefined !== vp.viewCmdTargetCenter) {
194
+ const testPt = vp.worldToView(vp.viewCmdTargetCenter);
195
+ const viewRect = vp.viewRect;
196
+ if (viewRect.containsPoint(testPt))
197
+ return vp.viewCmdTargetCenter;
198
+ vp.viewCmdTargetCenter = undefined;
199
+ }
200
+ if (undefined !== this._lastTargetPoint) {
201
+ const testPt = vp.worldToView(this._lastTargetPoint);
202
+ const viewRect = vp.viewRect.clone();
203
+ viewRect.scaleAboutCenter(0.25, 0.25);
204
+ // istanbul ignore next hard to reach because of mocks
205
+ if (viewRect.containsPoint(testPt))
206
+ return this._lastTargetPoint;
207
+ this._lastTargetPoint = undefined;
208
+ }
209
+ const visiblePoint = vp.pickNearestVisibleGeometry(vp.npcToWorld(NpcCenter), vp.pixelsFromInches(ToolSettings.viewToolPickRadiusInches));
210
+ this._lastTargetPoint = (undefined !== visiblePoint ? visiblePoint : vp.view.getTargetPoint());
211
+ return this._lastTargetPoint;
212
+ }
213
+ render() {
214
+ const viewOverlay = this._vp && this.props.getViewOverlay ? this.props.getViewOverlay(this._vp) : null;
215
+ const parentDivStyle = {
216
+ height: "100%", width: "100%", position: "relative",
217
+ };
218
+ const viewportDivStyle = {
219
+ height: "100%", width: "100%",
220
+ ...this.props.style,
221
+ };
222
+ return (React.createElement("div", { style: parentDivStyle },
223
+ React.createElement("div", { ref: this._viewportDiv, "data-testid": "viewport-component", className: this.props.className, style: viewportDivStyle, onContextMenu: this._handleContextMenu }),
224
+ viewOverlay));
225
+ }
226
+ }
227
+ //# sourceMappingURL=ViewportComponent.js.map
@@ -0,0 +1 @@
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 { Id64String, Logger } from \"@itwin/core-bentley\";\nimport { Point3d, Transform } from \"@itwin/core-geometry\";\nimport { NpcCenter } from \"@itwin/core-common\";\nimport {\n IModelApp, IModelConnection, ScreenViewport,\n TentativePoint, ToolSettings, ViewManager,\n Viewport, ViewState,\n} from \"@itwin/core-frontend\";\n\nimport { CommonProps } from \"@itwin/core-react\";\nimport { UiIModelComponents } from \"../UiIModelComponents\";\nimport {\n CubeRotationChangeEventArgs, DrawingViewportChangeEventArgs, StandardRotationChangeEventArgs, ViewportComponentEvents,\n} 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 */\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/** @internal */\ninterface ViewportState {\n viewId: string;\n}\n\n/**\n * A viewport React component that creates a ScreenViewport.\n * @public\n */\nexport class ViewportComponent extends React.Component<ViewportProps, ViewportState> {\n\n private _viewportDiv: React.RefObject<HTMLDivElement>;\n private _vp?: ScreenViewport;\n private _viewClassFullName: string = \"\";\n private _lastTargetPoint?: Point3d;\n private _mounted: boolean = false;\n\n public constructor(props: ViewportProps) {\n super(props);\n this._viewportDiv = React.createRef<HTMLDivElement>();\n this.state = {\n viewId: \"\",\n };\n }\n\n private _handleDisconnectFromViewManager = () => {\n const screenViewport = this._vp;\n const parentDiv = this._viewportDiv.current;\n\n if (screenViewport) {\n const viewManager = IModelApp.viewManager;\n viewManager.dropViewport(screenViewport, true);\n screenViewport.onViewChanged.removeListener(this._handleViewChanged);\n this._vp = undefined;\n }\n // istanbul ignore else\n if (parentDiv) {\n const parentWindow = parentDiv.ownerDocument.defaultView as Window;\n parentWindow.removeEventListener(\"beforeunload\", this._handleDisconnectFromViewManager, false);\n }\n };\n\n public override async componentDidMount() {\n this._mounted = true;\n\n // istanbul ignore next\n if (!this._viewportDiv.current) {\n Logger.logError(UiIModelComponents.loggerCategory(this), `Parent <div> failed to load`);\n return;\n }\n\n const viewState = await this.getViewState();\n if (viewState === undefined) {\n Logger.logError(UiIModelComponents.loggerCategory(this), `Failed to obtain ViewState`);\n return;\n }\n\n /* istanbul ignore next */\n if (!this._mounted)\n return;\n\n const viewManager = this.props.viewManagerOverride ? this.props.viewManagerOverride : /* istanbul ignore next */ IModelApp.viewManager;\n const screenViewportFactory = this.props.screenViewportOverride ? this.props.screenViewportOverride : /* istanbul ignore next */ ScreenViewport;\n const parentDiv = this._viewportDiv.current;\n const screenViewport = screenViewportFactory.create(parentDiv, viewState);\n this._vp = screenViewport;\n viewManager.addViewport(this._vp);\n\n const parentWindow = parentDiv.ownerDocument.defaultView as Window;\n parentWindow.addEventListener(\"beforeunload\", this._handleDisconnectFromViewManager, false);\n\n ViewportComponentEvents.initialize();\n ViewportComponentEvents.onDrawingViewportChangeEvent.addListener(this._handleDrawingViewportChangeEvent);\n ViewportComponentEvents.onCubeRotationChangeEvent.addListener(this._handleCubeRotationChangeEvent);\n ViewportComponentEvents.onStandardRotationChangeEvent.addListener(this._handleStandardRotationChangeEvent);\n\n this._vp.onViewChanged.addListener(this._handleViewChanged);\n this._viewClassFullName = this._vp.view.classFullName;\n this.setState({ viewId: this._vp.view.id });\n\n /* istanbul ignore else */\n if (this.props.viewportRef)\n this.props.viewportRef(this._vp);\n }\n\n public override componentWillUnmount() {\n this._mounted = false;\n this._handleDisconnectFromViewManager();\n ViewportComponentEvents.onDrawingViewportChangeEvent.removeListener(this._handleDrawingViewportChangeEvent);\n ViewportComponentEvents.onCubeRotationChangeEvent.removeListener(this._handleCubeRotationChangeEvent);\n ViewportComponentEvents.onStandardRotationChangeEvent.removeListener(this._handleStandardRotationChangeEvent);\n }\n\n public override async componentDidUpdate(prevProps: ViewportProps) {\n if (this.props.imodel === prevProps.imodel &&\n this.props.viewState === prevProps.viewState &&\n this.props.viewDefinitionId === prevProps.viewDefinitionId)\n return;\n\n /* istanbul ignore else */\n if (this._vp) {\n const viewState = await this.getViewState();\n if (viewState === undefined) {\n Logger.logError(UiIModelComponents.loggerCategory(this), `Failed to obtain ViewState`);\n return;\n }\n\n this._vp.changeView(viewState);\n\n /* istanbul ignore else */\n if (this._mounted)\n this.setState({ viewId: this._vp.view.id });\n }\n }\n\n private async getViewState(): Promise<ViewState | undefined> {\n let viewState: ViewState;\n\n if (this.props.viewState) {\n if (typeof this.props.viewState === \"function\")\n viewState = this.props.viewState();\n else\n viewState = this.props.viewState;\n } else if (this.props.viewDefinitionId) {\n viewState = await this.props.imodel.views.load(this.props.viewDefinitionId);\n if (!viewState) {\n Logger.logError(UiIModelComponents.loggerCategory(this), `View state failed to load`);\n return undefined;\n } else {\n return viewState;\n }\n } else {\n Logger.logError(UiIModelComponents.loggerCategory(this), `Either viewDefinitionId or viewState must be provided as a ViewportComponent Prop`);\n return undefined;\n }\n\n return viewState.clone();\n }\n\n private _handleDrawingViewportChangeEvent = (args: DrawingViewportChangeEventArgs) => {\n const viewManager = this.props.viewManagerOverride ? this.props.viewManagerOverride : /* istanbul ignore next */ IModelApp.viewManager;\n\n /* istanbul ignore else */\n if (this._vp && viewManager.selectedView === this._vp) {\n this._vp.view.setOrigin(args.origin);\n this._vp.view.setRotation(args.rotation);\n this._vp.synchWithView({ noSaveInUndo: args.complete !== true });\n }\n };\n\n private _getRotatePoint(vp: ScreenViewport): Point3d {\n const tentativePoint = this.props.tentativePointOverride ? this.props.tentativePointOverride : /* istanbul ignore next */ IModelApp.tentativePoint;\n if (tentativePoint.isActive)\n return tentativePoint.getPoint();\n\n /* istanbul ignore else */\n if (undefined !== vp.viewCmdTargetCenter) {\n const testPt = vp.worldToView(vp.viewCmdTargetCenter);\n const viewRect = vp.viewRect;\n if (viewRect.containsPoint(testPt))\n return vp.viewCmdTargetCenter;\n vp.viewCmdTargetCenter = undefined;\n }\n\n if (undefined !== this._lastTargetPoint) {\n const testPt = vp.worldToView(this._lastTargetPoint);\n const viewRect = vp.viewRect.clone();\n viewRect.scaleAboutCenter(0.25, 0.25);\n // istanbul ignore next hard to reach because of mocks\n if (viewRect.containsPoint(testPt))\n return this._lastTargetPoint;\n this._lastTargetPoint = undefined;\n }\n\n const visiblePoint = vp.pickNearestVisibleGeometry(vp.npcToWorld(NpcCenter), vp.pixelsFromInches(ToolSettings.viewToolPickRadiusInches));\n this._lastTargetPoint = (undefined !== visiblePoint ? visiblePoint : vp.view.getTargetPoint());\n return this._lastTargetPoint;\n }\n\n private _handleCubeRotationChangeEvent = (args: CubeRotationChangeEventArgs) => {\n const viewManager = this.props.viewManagerOverride ? this.props.viewManagerOverride : /* istanbul ignore next */ IModelApp.viewManager;\n\n /* istanbul ignore else */\n if (this._vp && viewManager.selectedView === this._vp) {\n const rotMatrix = args.rotMatrix;\n\n /* istanbul ignore else */\n if (this._vp.rotation !== rotMatrix) {\n const inverse = rotMatrix.transpose(); // rotation is from current nav cube state...\n const center = this._getRotatePoint(this._vp);\n const targetMatrix = inverse.multiplyMatrixMatrix(this._vp.view.getRotation());\n const worldTransform = Transform.createFixedPointAndMatrix(center, targetMatrix);\n const frustum = this._vp.getWorldFrustum();\n frustum.multiply(worldTransform);\n this._vp.view.setupFromFrustum(frustum);\n this._vp.synchWithView({ noSaveInUndo: !args.complete });\n }\n }\n };\n\n private _handleStandardRotationChangeEvent = (args: StandardRotationChangeEventArgs) => {\n const viewManager = this.props.viewManagerOverride ? this.props.viewManagerOverride : /* istanbul ignore next */ IModelApp.viewManager;\n\n /* istanbul ignore else */\n if (this._vp && viewManager.selectedView === this._vp) {\n // this._vp.view.setStandardRotation(args.standardRotation);\n this._vp.view.setRotationAboutPoint(ViewState.getStandardViewMatrix(args.standardRotation));\n this._vp.synchWithView();\n }\n };\n\n private _handleViewChanged = (vp: Viewport) => {\n ViewportComponentEvents.setViewMatrix(vp);\n\n /* istanbul ignore else */\n if (this._viewClassFullName !== vp.view.classFullName) {\n setTimeout(() => {\n ViewportComponentEvents.onViewClassFullNameChangedEvent.emit({ viewport: vp, oldName: this._viewClassFullName, newName: vp.view.classFullName });\n this._viewClassFullName = vp.view.classFullName;\n });\n }\n\n /* istanbul ignore else */\n if (this.state.viewId !== vp.view.id) {\n setTimeout(() => {\n ViewportComponentEvents.onViewIdChangedEvent.emit({ viewport: vp, oldId: this.state.viewId, newId: vp.view.id });\n\n /* istanbul ignore next - flaky mounted condition in the setTimeout */\n if (this._mounted)\n this.setState({ viewId: vp.view.id });\n });\n }\n };\n\n private _handleContextMenu = (e: React.MouseEvent): boolean => {\n e.preventDefault();\n if (this.props.onContextMenu)\n this.props.onContextMenu(e);\n return false;\n };\n\n public override render() {\n const viewOverlay = this._vp && this.props.getViewOverlay ? this.props.getViewOverlay(this._vp) : null;\n\n const parentDivStyle: React.CSSProperties = {\n height: \"100%\", width: \"100%\", position: \"relative\",\n };\n\n const viewportDivStyle: React.CSSProperties = {\n height: \"100%\", width: \"100%\",\n ...this.props.style,\n };\n\n return (\n <div style={parentDivStyle}>\n <div\n ref={this._viewportDiv}\n data-testid=\"viewport-component\"\n className={this.props.className}\n style={viewportDivStyle}\n onContextMenu={this._handleContextMenu}\n />\n {viewOverlay}\n </div>\n );\n }\n}\n"]}
@@ -0,0 +1,107 @@
1
+ /** @packageDocumentation
2
+ * @module Viewport
3
+ */
4
+ import { Matrix3d, Point3d, Vector3d } from "@itwin/core-geometry";
5
+ import { StandardViewId, Viewport } from "@itwin/core-frontend";
6
+ import { UiEvent } from "@itwin/core-react";
7
+ import { Face } from "../navigationaids/Cube";
8
+ /** Arguments for [[DrawingViewportChangeEvent]]
9
+ * @public
10
+ */
11
+ export interface DrawingViewportChangeEventArgs {
12
+ rotation: Matrix3d;
13
+ origin: Point3d;
14
+ complete: boolean;
15
+ }
16
+ /** Drawing View Change event
17
+ * @public
18
+ */
19
+ export declare class DrawingViewportChangeEvent extends UiEvent<DrawingViewportChangeEventArgs> {
20
+ }
21
+ /** Arguments for [[CubeRotationChangeEvent]]
22
+ * @public
23
+ */
24
+ export interface CubeRotationChangeEventArgs {
25
+ rotMatrix: Matrix3d;
26
+ face: Face;
27
+ complete?: boolean;
28
+ }
29
+ /** 3d Cube Rotation Change event
30
+ * @public
31
+ */
32
+ export declare class CubeRotationChangeEvent extends UiEvent<CubeRotationChangeEventArgs> {
33
+ }
34
+ /** Arguments for [[StandardRotationChangeEvent]]
35
+ * @public
36
+ */
37
+ export interface StandardRotationChangeEventArgs {
38
+ standardRotation: StandardViewId;
39
+ }
40
+ /** Standard Rotation Change event
41
+ * @public
42
+ */
43
+ export declare class StandardRotationChangeEvent extends UiEvent<StandardRotationChangeEventArgs> {
44
+ }
45
+ /** Arguments for [[ViewRotationChangeEvent]]
46
+ * @public
47
+ */
48
+ export interface ViewRotationChangeEventArgs {
49
+ viewport: Viewport;
50
+ animationTime?: number;
51
+ }
52
+ /** View Rotation Change event
53
+ * @public
54
+ */
55
+ export declare class ViewRotationChangeEvent extends UiEvent<ViewRotationChangeEventArgs> {
56
+ }
57
+ /** Arguments for [[ViewClassFullNameChangedEvent]]
58
+ * @public
59
+ */
60
+ export interface ViewClassFullNameChangedEventArgs {
61
+ viewport: Viewport;
62
+ oldName: string;
63
+ newName: string;
64
+ }
65
+ /** View Class Full Name Change event
66
+ * @public
67
+ */
68
+ export declare class ViewClassFullNameChangedEvent extends UiEvent<ViewClassFullNameChangedEventArgs> {
69
+ }
70
+ /** Arguments for [[ViewIdChangedEvent]]
71
+ * @public
72
+ */
73
+ export interface ViewIdChangedEventArgs {
74
+ viewport: Viewport;
75
+ oldId: string;
76
+ newId: string;
77
+ }
78
+ /** View Id Change event
79
+ * @public
80
+ */
81
+ export declare class ViewIdChangedEvent extends UiEvent<ViewIdChangedEventArgs> {
82
+ }
83
+ /** Viewport Rotation events and methods
84
+ * @public
85
+ */
86
+ export declare class ViewportComponentEvents {
87
+ private static _removeListener?;
88
+ static initialize(): void;
89
+ /** @internal - for unit testing */
90
+ static terminate(): void;
91
+ static face: Face;
92
+ static readonly origin: Point3d;
93
+ static readonly extents: Vector3d;
94
+ static readonly rotationMatrix: Matrix3d;
95
+ static readonly onDrawingViewportChangeEvent: DrawingViewportChangeEvent;
96
+ static readonly onCubeRotationChangeEvent: CubeRotationChangeEvent;
97
+ static readonly onStandardRotationChangeEvent: StandardRotationChangeEvent;
98
+ static readonly onViewRotationChangeEvent: ViewRotationChangeEvent;
99
+ static readonly onViewClassFullNameChangedEvent: ViewClassFullNameChangedEvent;
100
+ static readonly onViewIdChangedEvent: ViewIdChangedEvent;
101
+ private static handleSelectedViewportChanged;
102
+ static setCubeMatrix(rotMatrix: Matrix3d, face?: Face, complete?: boolean): void;
103
+ static setDrawingViewportState(origin: Point3d, rotation: Matrix3d, complete?: boolean): void;
104
+ static setStandardRotation(standardRotation: StandardViewId): void;
105
+ static setViewMatrix(viewport: Viewport, animationTime?: number): void;
106
+ }
107
+ //# sourceMappingURL=ViewportComponentEvents.d.ts.map
@@ -0,0 +1 @@
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,EAA0C,cAAc,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACxG,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAE9C;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,qBAAa,0BAA2B,SAAQ,OAAO,CAAC,8BAA8B,CAAC;CAAI;AAE3F;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,SAAS,EAAE,QAAQ,CAAC;IACpB,IAAI,EAAE,IAAI,CAAC;IACX,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,OAAO,CAAC,2BAA2B,CAAC;CAAI;AAErF;;GAEG;AACH,MAAM,WAAW,+BAA+B;IAC9C,gBAAgB,EAAE,cAAc,CAAC;CAClC;AAED;;GAEG;AACH,qBAAa,2BAA4B,SAAQ,OAAO,CAAC,+BAA+B,CAAC;CAAI;AAE7F;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,EAAE,QAAQ,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,OAAO,CAAC,2BAA2B,CAAC;CAAI;AAErF;;GAEG;AACH,MAAM,WAAW,iCAAiC;IAChD,QAAQ,EAAE,QAAQ,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,qBAAa,6BAA8B,SAAQ,OAAO,CAAC,iCAAiC,CAAC;CAAI;AAEjG;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,OAAO,CAAC,sBAAsB,CAAC;CAAI;AAE3E;;GAEG;AACH,qBAAa,uBAAuB;IAClC,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,CAAa;WAE9B,UAAU;IAOxB,mCAAmC;WACrB,SAAS;IAOvB,OAAc,IAAI,OAAa;IAC/B,gBAAuB,MAAM,UAAwB;IACrD,gBAAuB,OAAO,WAAyB;IACvD,gBAAuB,cAAc,WAA6B;IAClE,gBAAuB,4BAA4B,6BAAoC;IACvF,gBAAuB,yBAAyB,0BAAiC;IACjF,gBAAuB,6BAA6B,8BAAqC;IACzF,gBAAuB,yBAAyB,0BAAiC;IACjF,gBAAuB,+BAA+B,gCAAuC;IAC7F,gBAAuB,oBAAoB,qBAA4B;IAEvE,OAAO,CAAC,MAAM,CAAC,6BAA6B;WAK9B,aAAa,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,OAAY,EAAE,QAAQ,GAAE,OAAe,GAAG,IAAI;WAMrF,uBAAuB,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,GAAE,OAAe,GAAG,IAAI;WAI7F,mBAAmB,CAAC,gBAAgB,EAAE,cAAc,GAAG,IAAI;WAI3D,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI;CAY9E"}
@@ -0,0 +1,95 @@
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
+ /** @packageDocumentation
6
+ * @module Viewport
7
+ */
8
+ import { Matrix3d, Point3d, Vector3d } from "@itwin/core-geometry";
9
+ import { IModelApp } from "@itwin/core-frontend";
10
+ import { UiEvent } from "@itwin/core-react";
11
+ import { Face } from "../navigationaids/Cube";
12
+ /** Drawing View Change event
13
+ * @public
14
+ */
15
+ export class DrawingViewportChangeEvent extends UiEvent {
16
+ }
17
+ /** 3d Cube Rotation Change event
18
+ * @public
19
+ */
20
+ export class CubeRotationChangeEvent extends UiEvent {
21
+ }
22
+ /** Standard Rotation Change event
23
+ * @public
24
+ */
25
+ export class StandardRotationChangeEvent extends UiEvent {
26
+ }
27
+ /** View Rotation Change event
28
+ * @public
29
+ */
30
+ export class ViewRotationChangeEvent extends UiEvent {
31
+ }
32
+ /** View Class Full Name Change event
33
+ * @public
34
+ */
35
+ export class ViewClassFullNameChangedEvent extends UiEvent {
36
+ }
37
+ /** View Id Change event
38
+ * @public
39
+ */
40
+ export class ViewIdChangedEvent extends UiEvent {
41
+ }
42
+ /** Viewport Rotation events and methods
43
+ * @public
44
+ */
45
+ export class ViewportComponentEvents {
46
+ static initialize() {
47
+ if (undefined !== this._removeListener)
48
+ return;
49
+ this._removeListener = IModelApp.viewManager.onSelectedViewportChanged.addListener(ViewportComponentEvents.handleSelectedViewportChanged);
50
+ }
51
+ /** @internal - for unit testing */
52
+ static terminate() {
53
+ if (this._removeListener) {
54
+ this._removeListener();
55
+ this._removeListener = undefined;
56
+ }
57
+ }
58
+ static handleSelectedViewportChanged(args) {
59
+ if (args.current)
60
+ ViewportComponentEvents.setViewMatrix(args.current);
61
+ }
62
+ static setCubeMatrix(rotMatrix, face = Face.None, complete = false) {
63
+ this.rotationMatrix.setFrom(rotMatrix);
64
+ this.face = face;
65
+ this.onCubeRotationChangeEvent.emit({ rotMatrix, complete, face });
66
+ }
67
+ static setDrawingViewportState(origin, rotation, complete = false) {
68
+ this.onDrawingViewportChangeEvent.emit({ origin, rotation, complete });
69
+ }
70
+ static setStandardRotation(standardRotation) {
71
+ this.onStandardRotationChangeEvent.emit({ standardRotation });
72
+ }
73
+ static setViewMatrix(viewport, animationTime) {
74
+ // When handling onViewChanged, use setTimeout
75
+ setTimeout(() => {
76
+ if (viewport.view) {
77
+ this.origin.setFrom(viewport.view.getOrigin());
78
+ this.extents.setFrom(viewport.view.getExtents());
79
+ }
80
+ this.rotationMatrix.setFrom(viewport.rotation);
81
+ this.onViewRotationChangeEvent.emit({ viewport, animationTime });
82
+ });
83
+ }
84
+ }
85
+ ViewportComponentEvents.face = Face.None;
86
+ ViewportComponentEvents.origin = Point3d.createZero();
87
+ ViewportComponentEvents.extents = Vector3d.createZero();
88
+ ViewportComponentEvents.rotationMatrix = Matrix3d.createIdentity();
89
+ ViewportComponentEvents.onDrawingViewportChangeEvent = new DrawingViewportChangeEvent();
90
+ ViewportComponentEvents.onCubeRotationChangeEvent = new CubeRotationChangeEvent();
91
+ ViewportComponentEvents.onStandardRotationChangeEvent = new StandardRotationChangeEvent();
92
+ ViewportComponentEvents.onViewRotationChangeEvent = new ViewRotationChangeEvent();
93
+ ViewportComponentEvents.onViewClassFullNameChangedEvent = new ViewClassFullNameChangedEvent();
94
+ ViewportComponentEvents.onViewIdChangedEvent = new ViewIdChangedEvent();
95
+ //# sourceMappingURL=ViewportComponentEvents.js.map
@@ -0,0 +1 @@
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 { IModelApp, SelectedViewportChangedArgs, StandardViewId, Viewport } from \"@itwin/core-frontend\";\nimport { UiEvent } from \"@itwin/core-react\";\nimport { Face } from \"../navigationaids/Cube\";\n\n/** Arguments for [[DrawingViewportChangeEvent]]\n * @public\n */\nexport interface DrawingViewportChangeEventArgs {\n rotation: Matrix3d;\n origin: Point3d;\n complete: boolean;\n}\n\n/** Drawing View Change event\n * @public\n */\nexport class DrawingViewportChangeEvent extends UiEvent<DrawingViewportChangeEventArgs> { }\n\n/** Arguments for [[CubeRotationChangeEvent]]\n * @public\n */\nexport interface CubeRotationChangeEventArgs {\n rotMatrix: Matrix3d;\n face: Face;\n complete?: boolean;\n}\n\n/** 3d Cube Rotation Change event\n * @public\n */\nexport class CubeRotationChangeEvent extends UiEvent<CubeRotationChangeEventArgs> { }\n\n/** Arguments for [[StandardRotationChangeEvent]]\n * @public\n */\nexport interface StandardRotationChangeEventArgs {\n standardRotation: StandardViewId;\n}\n\n/** Standard Rotation Change event\n * @public\n */\nexport class StandardRotationChangeEvent extends UiEvent<StandardRotationChangeEventArgs> { }\n\n/** Arguments for [[ViewRotationChangeEvent]]\n * @public\n */\nexport interface ViewRotationChangeEventArgs {\n viewport: Viewport;\n animationTime?: number;\n}\n\n/** View Rotation Change event\n * @public\n */\nexport class ViewRotationChangeEvent extends UiEvent<ViewRotationChangeEventArgs> { }\n\n/** Arguments for [[ViewClassFullNameChangedEvent]]\n * @public\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 */\nexport class ViewClassFullNameChangedEvent extends UiEvent<ViewClassFullNameChangedEventArgs> { }\n\n/** Arguments for [[ViewIdChangedEvent]]\n * @public\n */\nexport interface ViewIdChangedEventArgs {\n viewport: Viewport;\n oldId: string;\n newId: string;\n}\n\n/** View Id Change event\n * @public\n */\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)\n return;\n\n this._removeListener = IModelApp.viewManager.onSelectedViewportChanged.addListener(ViewportComponentEvents.handleSelectedViewportChanged);\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 = new DrawingViewportChangeEvent();\n public static readonly onCubeRotationChangeEvent = new CubeRotationChangeEvent();\n public static readonly onStandardRotationChangeEvent = new StandardRotationChangeEvent();\n public static readonly onViewRotationChangeEvent = new ViewRotationChangeEvent();\n public static readonly onViewClassFullNameChangedEvent = new ViewClassFullNameChangedEvent();\n public static readonly onViewIdChangedEvent = new ViewIdChangedEvent();\n\n private static handleSelectedViewportChanged(args: SelectedViewportChangedArgs): void {\n if (args.current)\n ViewportComponentEvents.setViewMatrix(args.current);\n }\n\n public static setCubeMatrix(rotMatrix: Matrix3d, face = Face.None, complete: boolean = false): void {\n this.rotationMatrix.setFrom(rotMatrix);\n this.face = face;\n this.onCubeRotationChangeEvent.emit({ rotMatrix, complete, face });\n }\n\n public static setDrawingViewportState(origin: Point3d, rotation: Matrix3d, complete: boolean = false): 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(viewport: Viewport, animationTime?: number): 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"]}
@@ -0,0 +1,84 @@
1
+ export { UiIModelComponents } from "./imodel-components-react/UiIModelComponents";
2
+ export * from "./imodel-components-react/color/AlphaSlider";
3
+ export * from "./imodel-components-react/color/ColorPickerButton";
4
+ export * from "./imodel-components-react/color/ColorPickerDialog";
5
+ export * from "./imodel-components-react/color/ColorPickerPanel";
6
+ export * from "./imodel-components-react/color/ColorPickerPopup";
7
+ export * from "./imodel-components-react/color/getCSSColorFromDef";
8
+ export * from "./imodel-components-react/color/HueSlider";
9
+ export * from "./imodel-components-react/color/SaturationPicker";
10
+ export * from "./imodel-components-react/color/Swatch";
11
+ export * from "./imodel-components-react/editors/ColorEditor";
12
+ export * from "./imodel-components-react/editors/WeightEditor";
13
+ export * from "./imodel-components-react/inputs/QuantityInput";
14
+ export * from "./imodel-components-react/inputs/QuantityNumberInput";
15
+ export * from "./imodel-components-react/lineweight/Swatch";
16
+ export * from "./imodel-components-react/lineweight/WeightPickerButton";
17
+ export * from "./imodel-components-react/navigationaids/Cube";
18
+ export * from "./imodel-components-react/navigationaids/CubeNavigationAid";
19
+ export * from "./imodel-components-react/navigationaids/DrawingNavigationAid";
20
+ export * from "./imodel-components-react/quantityformat/FormatPanel";
21
+ export * from "./imodel-components-react/quantityformat/FormatPrecision";
22
+ export * from "./imodel-components-react/quantityformat/FormatSample";
23
+ export * from "./imodel-components-react/quantityformat/FormatType";
24
+ export * from "./imodel-components-react/quantityformat/FormatUnitLabel";
25
+ export * from "./imodel-components-react/quantityformat/FormatUnits";
26
+ export * from "./imodel-components-react/quantityformat/MiscFormatOptions";
27
+ export * from "./imodel-components-react/quantityformat/QuantityFormatPanel";
28
+ export * from "./imodel-components-react/timeline/interfaces";
29
+ export * from "./imodel-components-react/timeline/BaseTimelineDataProvider";
30
+ export * from "./imodel-components-react/timeline/ContextMenu";
31
+ export * from "./imodel-components-react/timeline/InlineEdit";
32
+ export * from "./imodel-components-react/timeline/PlayerButton";
33
+ export * from "./imodel-components-react/timeline/Scrubber";
34
+ export * from "./imodel-components-react/timeline/TimelineComponent";
35
+ export * from "./imodel-components-react/timeline/SolarTimeline";
36
+ export * from "./imodel-components-react/timeline/BaseSolarDataProvider";
37
+ export * from "./imodel-components-react/viewport/ViewportComponent";
38
+ export * from "./imodel-components-react/viewport/ViewportComponentEvents";
39
+ /** @docs-package-description
40
+ * The imodel-components-react package contains React components that depend on the core-frontend, core-common or core-quantity packages.
41
+ * The components pertain to Color, Cube, LineWeight, Navigation Aids, Quantity Inputs, Timeline and Viewport.
42
+ * For more information, see [learning about imodel-components-react]($docs/learning/ui/imodel-components/index.md).
43
+ */
44
+ /**
45
+ * @docs-group-description Color
46
+ * Classes and components for working with and picking a Color.
47
+ */
48
+ /**
49
+ * @docs-group-description Common
50
+ * Common classes used across various UI components.
51
+ */
52
+ /**
53
+ * @docs-group-description Cube
54
+ * Component for 3D Cube.
55
+ */
56
+ /**
57
+ * @docs-group-description Inputs
58
+ * Input Components that format and parse input for IModelApps.
59
+ */
60
+ /**
61
+ * @docs-group-description LineWeight
62
+ * Classes and components for working with and picking a Line Weight.
63
+ */
64
+ /**
65
+ * @docs-group-description NavigationAids
66
+ * Classes and components for working with Navigation Aids.
67
+ */
68
+ /**
69
+ * @docs-group-description PropertyEditors
70
+ * Classes and components for working with Property Editors.
71
+ */
72
+ /**
73
+ * @docs-group-description QuantityFormat
74
+ * Classes and components for working with a Quantity Formats.
75
+ */
76
+ /**
77
+ * @docs-group-description Timeline
78
+ * Classes and components that provide a timeline
79
+ */
80
+ /**
81
+ * @docs-group-description Viewport
82
+ * Classes and components for working with a Viewport.
83
+ */
84
+ //# sourceMappingURL=imodel-components-react.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"imodel-components-react.d.ts","sourceRoot":"","sources":["../../src/imodel-components-react.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAElF,cAAc,6CAA6C,CAAC;AAC5D,cAAc,mDAAmD,CAAC;AAClE,cAAc,mDAAmD,CAAC;AAClE,cAAc,kDAAkD,CAAC;AACjE,cAAc,kDAAkD,CAAC;AACjE,cAAc,oDAAoD,CAAC;AACnE,cAAc,2CAA2C,CAAC;AAC1D,cAAc,kDAAkD,CAAC;AACjE,cAAc,wCAAwC,CAAC;AAEvD,cAAc,+CAA+C,CAAC;AAC9D,cAAc,gDAAgD,CAAC;AAE/D,cAAc,gDAAgD,CAAC;AAC/D,cAAc,sDAAsD,CAAC;AAErE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,yDAAyD,CAAC;AAExE,cAAc,+CAA+C,CAAC;AAC9D,cAAc,4DAA4D,CAAC;AAC3E,cAAc,+DAA+D,CAAC;AAE9E,cAAc,sDAAsD,CAAC;AACrE,cAAc,0DAA0D,CAAC;AACzE,cAAc,uDAAuD,CAAC;AACtE,cAAc,qDAAqD,CAAC;AACpE,cAAc,0DAA0D,CAAC;AACzE,cAAc,sDAAsD,CAAC;AACrE,cAAc,4DAA4D,CAAC;AAC3E,cAAc,8DAA8D,CAAC;AAE7E,cAAc,+CAA+C,CAAC;AAC9D,cAAc,6DAA6D,CAAC;AAC5E,cAAc,gDAAgD,CAAC;AAC/D,cAAc,+CAA+C,CAAC;AAC9D,cAAc,iDAAiD,CAAC;AAChE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,sDAAsD,CAAC;AACrE,cAAc,kDAAkD,CAAC;AACjE,cAAc,0DAA0D,CAAC;AAEzE,cAAc,sDAAsD,CAAC;AACrE,cAAc,4DAA4D,CAAC;AAE3E;;;;GAIG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG;AACH;;;GAGG"}