@itwin/imodel-components-react 4.17.6 → 5.0.0-dev.3

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 (541) hide show
  1. package/CHANGELOG.md +1 -31
  2. package/README.md +15 -2
  3. package/lib/cjs/imodel-components-react/color/ColorPickerButton.scss +2 -4
  4. package/lib/cjs/imodel-components-react/editors/ColorEditor.scss +0 -2
  5. package/lib/cjs/imodel-components-react/editors/WeightEditor.scss +0 -2
  6. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.scss +1 -1
  7. package/lib/cjs/imodel-components-react/lineweight/Swatch.scss +2 -4
  8. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.scss +5 -6
  9. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.scss +0 -2
  10. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.scss +9 -10
  11. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.scss +0 -2
  12. package/lib/cjs/imodel-components-react/timeline/InlineEdit.scss +3 -5
  13. package/lib/cjs/imodel-components-react/timeline/Scrubber.scss +1 -1
  14. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.scss +0 -2
  15. package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.scss +2 -4
  16. package/lib/cjs/imodel-components-react/timeline/Timeline.scss +7 -9
  17. package/lib/esm/imodel-components-react/color/ColorPickerButton.scss +2 -4
  18. package/lib/esm/imodel-components-react/editors/ColorEditor.scss +0 -2
  19. package/lib/esm/imodel-components-react/editors/WeightEditor.scss +0 -2
  20. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.scss +1 -1
  21. package/lib/esm/imodel-components-react/lineweight/Swatch.scss +2 -4
  22. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.scss +5 -6
  23. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.scss +0 -2
  24. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.scss +9 -10
  25. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.scss +0 -2
  26. package/lib/esm/imodel-components-react/timeline/InlineEdit.scss +3 -5
  27. package/lib/esm/imodel-components-react/timeline/Scrubber.scss +1 -1
  28. package/lib/esm/imodel-components-react/timeline/SolarTimeline.scss +0 -2
  29. package/lib/esm/imodel-components-react/timeline/SpeedTimeline.scss +2 -4
  30. package/lib/esm/imodel-components-react/timeline/Timeline.scss +7 -9
  31. package/lib/{cjs/imodel-components-react → imodel-components-react}/UiIModelComponents.d.ts +1 -1
  32. package/lib/imodel-components-react/UiIModelComponents.d.ts.map +1 -0
  33. package/lib/{esm/imodel-components-react → imodel-components-react}/UiIModelComponents.js +4 -7
  34. package/lib/imodel-components-react/UiIModelComponents.js.map +1 -0
  35. package/lib/imodel-components-react/color/AlphaSlider.d.ts.map +1 -0
  36. package/lib/{esm/imodel-components-react → imodel-components-react}/color/AlphaSlider.js +1 -1
  37. package/lib/imodel-components-react/color/AlphaSlider.js.map +1 -0
  38. package/lib/imodel-components-react/color/AlphaSlider.scss +71 -0
  39. package/lib/imodel-components-react/color/ColorPickerButton.d.ts.map +1 -0
  40. package/lib/{esm/imodel-components-react → imodel-components-react}/color/ColorPickerButton.js +4 -3
  41. package/lib/imodel-components-react/color/ColorPickerButton.js.map +1 -0
  42. package/lib/imodel-components-react/color/ColorPickerButton.scss +88 -0
  43. package/lib/imodel-components-react/color/ColorPickerDialog.d.ts.map +1 -0
  44. package/lib/imodel-components-react/color/ColorPickerDialog.js.map +1 -0
  45. package/lib/imodel-components-react/color/ColorPickerPopup.d.ts.map +1 -0
  46. package/lib/{esm/imodel-components-react → imodel-components-react}/color/ColorPickerPopup.js +4 -3
  47. package/lib/imodel-components-react/color/ColorPickerPopup.js.map +1 -0
  48. package/lib/imodel-components-react/color/ColorPickerPopup.scss +62 -0
  49. package/lib/imodel-components-react/color/HueSlider.d.ts.map +1 -0
  50. package/lib/{esm/imodel-components-react → imodel-components-react}/color/HueSlider.js +1 -1
  51. package/lib/{esm/imodel-components-react → imodel-components-react}/color/HueSlider.js.map +1 -1
  52. package/lib/imodel-components-react/color/HueSlider.scss +78 -0
  53. package/lib/imodel-components-react/color/SaturationPicker.d.ts.map +1 -0
  54. package/lib/{esm/imodel-components-react → imodel-components-react}/color/SaturationPicker.js +1 -1
  55. package/lib/imodel-components-react/color/SaturationPicker.js.map +1 -0
  56. package/lib/imodel-components-react/color/SaturationPicker.scss +36 -0
  57. package/lib/imodel-components-react/color/Swatch.d.ts.map +1 -0
  58. package/lib/{esm/imodel-components-react → imodel-components-react}/color/Swatch.js +1 -1
  59. package/lib/{esm/imodel-components-react → imodel-components-react}/color/Swatch.js.map +1 -1
  60. package/lib/imodel-components-react/color/Swatch.scss +22 -0
  61. package/lib/imodel-components-react/color/getCSSColorFromDef.d.ts.map +1 -0
  62. package/lib/imodel-components-react/color/getCSSColorFromDef.js.map +1 -0
  63. package/lib/imodel-components-react/editors/ColorEditor.d.ts.map +1 -0
  64. package/lib/{esm/imodel-components-react → imodel-components-react}/editors/ColorEditor.js +3 -4
  65. package/lib/imodel-components-react/editors/ColorEditor.js.map +1 -0
  66. package/lib/imodel-components-react/editors/ColorEditor.scss +16 -0
  67. package/lib/imodel-components-react/editors/WeightEditor.d.ts.map +1 -0
  68. package/lib/{esm/imodel-components-react → imodel-components-react}/editors/WeightEditor.js +3 -4
  69. package/lib/imodel-components-react/editors/WeightEditor.js.map +1 -0
  70. package/lib/imodel-components-react/editors/WeightEditor.scss +14 -0
  71. package/lib/imodel-components-react/inputs/QuantityInput.d.ts.map +1 -0
  72. package/lib/{esm/imodel-components-react → imodel-components-react}/inputs/QuantityInput.js +1 -1
  73. package/lib/{esm/imodel-components-react → imodel-components-react}/inputs/QuantityInput.js.map +1 -1
  74. package/lib/imodel-components-react/inputs/QuantityNumberInput.d.ts.map +1 -0
  75. package/lib/imodel-components-react/inputs/QuantityNumberInput.js.map +1 -0
  76. package/lib/imodel-components-react/inputs/QuantityNumberInput.scss +106 -0
  77. package/lib/imodel-components-react/lineweight/Swatch.d.ts.map +1 -0
  78. package/lib/{esm/imodel-components-react → imodel-components-react}/lineweight/Swatch.js +1 -1
  79. package/lib/{esm/imodel-components-react → imodel-components-react}/lineweight/Swatch.js.map +1 -1
  80. package/lib/imodel-components-react/lineweight/Swatch.scss +46 -0
  81. package/lib/imodel-components-react/lineweight/WeightPickerButton.d.ts.map +1 -0
  82. package/lib/{esm/imodel-components-react → imodel-components-react}/lineweight/WeightPickerButton.js +1 -1
  83. package/lib/{esm/imodel-components-react → imodel-components-react}/lineweight/WeightPickerButton.js.map +1 -1
  84. package/lib/imodel-components-react/lineweight/WeightPickerButton.scss +50 -0
  85. package/lib/imodel-components-react/navigationaids/Cube.d.ts.map +1 -0
  86. package/lib/imodel-components-react/navigationaids/Cube.js.map +1 -0
  87. package/lib/imodel-components-react/navigationaids/Cube.scss +19 -0
  88. package/lib/{esm/imodel-components-react → imodel-components-react}/navigationaids/CubeNavigationAid.d.ts +1 -1
  89. package/lib/imodel-components-react/navigationaids/CubeNavigationAid.d.ts.map +1 -0
  90. package/lib/{esm/imodel-components-react → imodel-components-react}/navigationaids/CubeNavigationAid.js +3 -3
  91. package/lib/imodel-components-react/navigationaids/CubeNavigationAid.js.map +1 -0
  92. package/lib/imodel-components-react/navigationaids/CubeNavigationAid.scss +177 -0
  93. package/lib/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts.map +1 -0
  94. package/lib/{esm/imodel-components-react → imodel-components-react}/navigationaids/DrawingNavigationAid.js +2 -2
  95. package/lib/imodel-components-react/navigationaids/DrawingNavigationAid.js.map +1 -0
  96. package/lib/imodel-components-react/navigationaids/DrawingNavigationAid.scss +133 -0
  97. package/lib/imodel-components-react/quantityformat/FormatPanel.d.ts.map +1 -0
  98. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/FormatPanel.js +6 -6
  99. package/lib/imodel-components-react/quantityformat/FormatPanel.js.map +1 -0
  100. package/lib/imodel-components-react/quantityformat/FormatPanel.scss +53 -0
  101. package/lib/imodel-components-react/quantityformat/FormatPrecision.d.ts.map +1 -0
  102. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/FormatPrecision.js +3 -3
  103. package/lib/imodel-components-react/quantityformat/FormatPrecision.js.map +1 -0
  104. package/lib/imodel-components-react/quantityformat/FormatSample.d.ts.map +1 -0
  105. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/FormatSample.js +1 -1
  106. package/lib/imodel-components-react/quantityformat/FormatSample.js.map +1 -0
  107. package/lib/imodel-components-react/quantityformat/FormatType.d.ts.map +1 -0
  108. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/FormatType.js +1 -1
  109. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/FormatType.js.map +1 -1
  110. package/lib/imodel-components-react/quantityformat/FormatUnitLabel.d.ts.map +1 -0
  111. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/FormatUnitLabel.js +1 -1
  112. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/FormatUnitLabel.js.map +1 -1
  113. package/lib/imodel-components-react/quantityformat/FormatUnits.d.ts.map +1 -0
  114. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/FormatUnits.js +2 -2
  115. package/lib/imodel-components-react/quantityformat/FormatUnits.js.map +1 -0
  116. package/lib/imodel-components-react/quantityformat/MiscFormatOptions.d.ts.map +1 -0
  117. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/MiscFormatOptions.js +7 -7
  118. package/lib/imodel-components-react/quantityformat/MiscFormatOptions.js.map +1 -0
  119. package/lib/imodel-components-react/quantityformat/QuantityFormatPanel.d.ts.map +1 -0
  120. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/QuantityFormatPanel.js +1 -1
  121. package/lib/imodel-components-react/quantityformat/QuantityFormatPanel.js.map +1 -0
  122. package/lib/imodel-components-react/quantityformat/misc/DecimalPrecision.d.ts.map +1 -0
  123. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/misc/DecimalPrecision.js +1 -1
  124. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/misc/DecimalPrecision.js.map +1 -1
  125. package/lib/imodel-components-react/quantityformat/misc/DecimalSeparator.d.ts.map +1 -0
  126. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/misc/DecimalSeparator.js +1 -1
  127. package/lib/imodel-components-react/quantityformat/misc/DecimalSeparator.js.map +1 -0
  128. package/lib/imodel-components-react/quantityformat/misc/FractionPrecision.d.ts.map +1 -0
  129. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/misc/FractionPrecision.js +1 -1
  130. package/lib/imodel-components-react/quantityformat/misc/FractionPrecision.js.map +1 -0
  131. package/lib/imodel-components-react/quantityformat/misc/ScientificType.d.ts.map +1 -0
  132. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/misc/ScientificType.js +1 -1
  133. package/lib/imodel-components-react/quantityformat/misc/ScientificType.js.map +1 -0
  134. package/lib/imodel-components-react/quantityformat/misc/SignOption.d.ts.map +1 -0
  135. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/misc/SignOption.js +1 -1
  136. package/lib/imodel-components-react/quantityformat/misc/SignOption.js.map +1 -0
  137. package/lib/imodel-components-react/quantityformat/misc/StationSeparatorSelector.d.ts.map +1 -0
  138. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/misc/StationSeparatorSelector.js +1 -1
  139. package/lib/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js.map +1 -0
  140. package/lib/imodel-components-react/quantityformat/misc/StationSizeSelector.d.ts.map +1 -0
  141. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/misc/StationSizeSelector.js +1 -1
  142. package/lib/imodel-components-react/quantityformat/misc/StationSizeSelector.js.map +1 -0
  143. package/lib/imodel-components-react/quantityformat/misc/ThousandsSelector.d.ts.map +1 -0
  144. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/misc/ThousandsSelector.js +1 -1
  145. package/lib/imodel-components-react/quantityformat/misc/ThousandsSelector.js.map +1 -0
  146. package/lib/imodel-components-react/quantityformat/misc/ThousandsSeparator.d.ts.map +1 -0
  147. package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/misc/ThousandsSeparator.js +2 -2
  148. package/lib/imodel-components-react/quantityformat/misc/ThousandsSeparator.js.map +1 -0
  149. package/lib/imodel-components-react/quantityformat/misc/UnitDescr.d.ts.map +1 -0
  150. package/lib/imodel-components-react/quantityformat/misc/UnitDescr.js.map +1 -0
  151. package/lib/{cjs/imodel-components-react → imodel-components-react}/timeline/BaseSolarDataProvider.d.ts +1 -1
  152. package/lib/imodel-components-react/timeline/BaseSolarDataProvider.d.ts.map +1 -0
  153. package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/BaseSolarDataProvider.js.map +1 -1
  154. package/lib/{cjs/imodel-components-react → imodel-components-react}/timeline/BaseTimelineDataProvider.d.ts +1 -1
  155. package/lib/imodel-components-react/timeline/BaseTimelineDataProvider.d.ts.map +1 -0
  156. package/lib/imodel-components-react/timeline/BaseTimelineDataProvider.js.map +1 -0
  157. package/lib/imodel-components-react/timeline/InlineEdit.d.ts.map +1 -0
  158. package/lib/imodel-components-react/timeline/InlineEdit.js.map +1 -0
  159. package/lib/imodel-components-react/timeline/InlineEdit.scss +22 -0
  160. package/lib/imodel-components-react/timeline/PlayButton.d.ts.map +1 -0
  161. package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/PlayButton.js +1 -1
  162. package/lib/imodel-components-react/timeline/PlayButton.js.map +1 -0
  163. package/lib/{cjs/imodel-components-react → imodel-components-react}/timeline/Scrubber.d.ts +2 -4
  164. package/lib/imodel-components-react/timeline/Scrubber.d.ts.map +1 -0
  165. package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/Scrubber.js +19 -12
  166. package/lib/imodel-components-react/timeline/Scrubber.js.map +1 -0
  167. package/lib/imodel-components-react/timeline/Scrubber.scss +105 -0
  168. package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/SolarTimeline.d.ts +1 -1
  169. package/lib/imodel-components-react/timeline/SolarTimeline.d.ts.map +1 -0
  170. package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/SolarTimeline.js +3 -3
  171. package/lib/imodel-components-react/timeline/SolarTimeline.js.map +1 -0
  172. package/lib/imodel-components-react/timeline/SolarTimeline.scss +43 -0
  173. package/lib/imodel-components-react/timeline/SpeedTimeline.d.ts.map +1 -0
  174. package/lib/imodel-components-react/timeline/SpeedTimeline.js.map +1 -0
  175. package/lib/imodel-components-react/timeline/SpeedTimeline.scss +38 -0
  176. package/lib/imodel-components-react/timeline/Timeline.scss +163 -0
  177. package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/TimelineComponent.d.ts +1 -1
  178. package/lib/imodel-components-react/timeline/TimelineComponent.d.ts.map +1 -0
  179. package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/TimelineComponent.js +5 -5
  180. package/lib/imodel-components-react/timeline/TimelineComponent.js.map +1 -0
  181. package/lib/imodel-components-react/timeline/TimelineComponent.scss +48 -0
  182. package/lib/imodel-components-react/timeline/interfaces.d.ts.map +1 -0
  183. package/lib/imodel-components-react/timeline/interfaces.js.map +1 -0
  184. package/lib/imodel-components-react/useTranslation.d.ts.map +1 -0
  185. package/lib/{esm/imodel-components-react → imodel-components-react}/useTranslation.js +2 -2
  186. package/lib/imodel-components-react/useTranslation.js.map +1 -0
  187. package/lib/imodel-components-react/viewport/ViewportComponent.d.ts.map +1 -0
  188. package/lib/{esm/imodel-components-react → imodel-components-react}/viewport/ViewportComponent.js +1 -1
  189. package/lib/imodel-components-react/viewport/ViewportComponent.js.map +1 -0
  190. package/lib/{cjs/imodel-components-react → imodel-components-react}/viewport/ViewportComponentEvents.d.ts +1 -1
  191. package/lib/imodel-components-react/viewport/ViewportComponentEvents.d.ts.map +1 -0
  192. package/lib/{esm/imodel-components-react → imodel-components-react}/viewport/ViewportComponentEvents.js +1 -1
  193. package/lib/imodel-components-react/viewport/ViewportComponentEvents.js.map +1 -0
  194. package/lib/imodel-components-react.d.ts +77 -0
  195. package/lib/imodel-components-react.d.ts.map +1 -0
  196. package/lib/imodel-components-react.js +90 -0
  197. package/lib/imodel-components-react.js.map +1 -0
  198. package/lib/internal.d.ts +2 -0
  199. package/lib/internal.d.ts.map +1 -0
  200. package/lib/internal.js +6 -0
  201. package/lib/internal.js.map +1 -0
  202. package/package.json +51 -46
  203. package/lib/cjs/imodel-components-react/UiIModelComponents.d.ts.map +0 -1
  204. package/lib/cjs/imodel-components-react/UiIModelComponents.js +0 -78
  205. package/lib/cjs/imodel-components-react/UiIModelComponents.js.map +0 -1
  206. package/lib/cjs/imodel-components-react/color/AlphaSlider.d.ts.map +0 -1
  207. package/lib/cjs/imodel-components-react/color/AlphaSlider.js +0 -182
  208. package/lib/cjs/imodel-components-react/color/AlphaSlider.js.map +0 -1
  209. package/lib/cjs/imodel-components-react/color/ColorPickerButton.d.ts.map +0 -1
  210. package/lib/cjs/imodel-components-react/color/ColorPickerButton.js +0 -119
  211. package/lib/cjs/imodel-components-react/color/ColorPickerButton.js.map +0 -1
  212. package/lib/cjs/imodel-components-react/color/ColorPickerDialog.d.ts.map +0 -1
  213. package/lib/cjs/imodel-components-react/color/ColorPickerDialog.js +0 -76
  214. package/lib/cjs/imodel-components-react/color/ColorPickerDialog.js.map +0 -1
  215. package/lib/cjs/imodel-components-react/color/ColorPickerPopup.d.ts.map +0 -1
  216. package/lib/cjs/imodel-components-react/color/ColorPickerPopup.js +0 -141
  217. package/lib/cjs/imodel-components-react/color/ColorPickerPopup.js.map +0 -1
  218. package/lib/cjs/imodel-components-react/color/HueSlider.d.ts.map +0 -1
  219. package/lib/cjs/imodel-components-react/color/HueSlider.js +0 -201
  220. package/lib/cjs/imodel-components-react/color/HueSlider.js.map +0 -1
  221. package/lib/cjs/imodel-components-react/color/SaturationPicker.d.ts.map +0 -1
  222. package/lib/cjs/imodel-components-react/color/SaturationPicker.js +0 -197
  223. package/lib/cjs/imodel-components-react/color/SaturationPicker.js.map +0 -1
  224. package/lib/cjs/imodel-components-react/color/Swatch.d.ts.map +0 -1
  225. package/lib/cjs/imodel-components-react/color/Swatch.js +0 -63
  226. package/lib/cjs/imodel-components-react/color/Swatch.js.map +0 -1
  227. package/lib/cjs/imodel-components-react/color/getCSSColorFromDef.d.ts.map +0 -1
  228. package/lib/cjs/imodel-components-react/color/getCSSColorFromDef.js +0 -24
  229. package/lib/cjs/imodel-components-react/color/getCSSColorFromDef.js.map +0 -1
  230. package/lib/cjs/imodel-components-react/editors/ColorEditor.d.ts.map +0 -1
  231. package/lib/cjs/imodel-components-react/editors/ColorEditor.js +0 -150
  232. package/lib/cjs/imodel-components-react/editors/ColorEditor.js.map +0 -1
  233. package/lib/cjs/imodel-components-react/editors/WeightEditor.d.ts.map +0 -1
  234. package/lib/cjs/imodel-components-react/editors/WeightEditor.js +0 -153
  235. package/lib/cjs/imodel-components-react/editors/WeightEditor.js.map +0 -1
  236. package/lib/cjs/imodel-components-react/inputs/QuantityInput.d.ts.map +0 -1
  237. package/lib/cjs/imodel-components-react/inputs/QuantityInput.js +0 -94
  238. package/lib/cjs/imodel-components-react/inputs/QuantityInput.js.map +0 -1
  239. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.d.ts.map +0 -1
  240. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.js +0 -265
  241. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.js.map +0 -1
  242. package/lib/cjs/imodel-components-react/lineweight/Swatch.d.ts.map +0 -1
  243. package/lib/cjs/imodel-components-react/lineweight/Swatch.js +0 -84
  244. package/lib/cjs/imodel-components-react/lineweight/Swatch.js.map +0 -1
  245. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.d.ts.map +0 -1
  246. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.js +0 -160
  247. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.js.map +0 -1
  248. package/lib/cjs/imodel-components-react/navigationaids/Cube.d.ts.map +0 -1
  249. package/lib/cjs/imodel-components-react/navigationaids/Cube.js +0 -151
  250. package/lib/cjs/imodel-components-react/navigationaids/Cube.js.map +0 -1
  251. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.d.ts +0 -153
  252. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.d.ts.map +0 -1
  253. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.js +0 -683
  254. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.js.map +0 -1
  255. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts.map +0 -1
  256. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.js +0 -736
  257. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.js.map +0 -1
  258. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.d.ts.map +0 -1
  259. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.js +0 -112
  260. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.js.map +0 -1
  261. package/lib/cjs/imodel-components-react/quantityformat/FormatPrecision.d.ts.map +0 -1
  262. package/lib/cjs/imodel-components-react/quantityformat/FormatPrecision.js +0 -56
  263. package/lib/cjs/imodel-components-react/quantityformat/FormatPrecision.js.map +0 -1
  264. package/lib/cjs/imodel-components-react/quantityformat/FormatSample.d.ts.map +0 -1
  265. package/lib/cjs/imodel-components-react/quantityformat/FormatSample.js +0 -94
  266. package/lib/cjs/imodel-components-react/quantityformat/FormatSample.js.map +0 -1
  267. package/lib/cjs/imodel-components-react/quantityformat/FormatType.d.ts.map +0 -1
  268. package/lib/cjs/imodel-components-react/quantityformat/FormatType.js +0 -115
  269. package/lib/cjs/imodel-components-react/quantityformat/FormatType.js.map +0 -1
  270. package/lib/cjs/imodel-components-react/quantityformat/FormatUnitLabel.d.ts.map +0 -1
  271. package/lib/cjs/imodel-components-react/quantityformat/FormatUnitLabel.js +0 -117
  272. package/lib/cjs/imodel-components-react/quantityformat/FormatUnitLabel.js.map +0 -1
  273. package/lib/cjs/imodel-components-react/quantityformat/FormatUnits.d.ts.map +0 -1
  274. package/lib/cjs/imodel-components-react/quantityformat/FormatUnits.js +0 -137
  275. package/lib/cjs/imodel-components-react/quantityformat/FormatUnits.js.map +0 -1
  276. package/lib/cjs/imodel-components-react/quantityformat/MiscFormatOptions.d.ts.map +0 -1
  277. package/lib/cjs/imodel-components-react/quantityformat/MiscFormatOptions.js +0 -193
  278. package/lib/cjs/imodel-components-react/quantityformat/MiscFormatOptions.js.map +0 -1
  279. package/lib/cjs/imodel-components-react/quantityformat/QuantityFormatPanel.d.ts.map +0 -1
  280. package/lib/cjs/imodel-components-react/quantityformat/QuantityFormatPanel.js +0 -145
  281. package/lib/cjs/imodel-components-react/quantityformat/QuantityFormatPanel.js.map +0 -1
  282. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalPrecision.d.ts.map +0 -1
  283. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalPrecision.js +0 -104
  284. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalPrecision.js.map +0 -1
  285. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalSeparator.d.ts.map +0 -1
  286. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalSeparator.js +0 -59
  287. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalSeparator.js.map +0 -1
  288. package/lib/cjs/imodel-components-react/quantityformat/misc/FractionPrecision.d.ts.map +0 -1
  289. package/lib/cjs/imodel-components-react/quantityformat/misc/FractionPrecision.js +0 -87
  290. package/lib/cjs/imodel-components-react/quantityformat/misc/FractionPrecision.js.map +0 -1
  291. package/lib/cjs/imodel-components-react/quantityformat/misc/ScientificType.d.ts.map +0 -1
  292. package/lib/cjs/imodel-components-react/quantityformat/misc/ScientificType.js +0 -60
  293. package/lib/cjs/imodel-components-react/quantityformat/misc/ScientificType.js.map +0 -1
  294. package/lib/cjs/imodel-components-react/quantityformat/misc/SignOption.d.ts.map +0 -1
  295. package/lib/cjs/imodel-components-react/quantityformat/misc/SignOption.js +0 -68
  296. package/lib/cjs/imodel-components-react/quantityformat/misc/SignOption.js.map +0 -1
  297. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSeparatorSelector.d.ts.map +0 -1
  298. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js +0 -76
  299. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js.map +0 -1
  300. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSizeSelector.d.ts.map +0 -1
  301. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSizeSelector.js +0 -59
  302. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSizeSelector.js.map +0 -1
  303. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSelector.d.ts.map +0 -1
  304. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSelector.js +0 -65
  305. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSelector.js.map +0 -1
  306. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSeparator.d.ts.map +0 -1
  307. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSeparator.js +0 -106
  308. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSeparator.js.map +0 -1
  309. package/lib/cjs/imodel-components-react/quantityformat/misc/UnitDescr.d.ts.map +0 -1
  310. package/lib/cjs/imodel-components-react/quantityformat/misc/UnitDescr.js +0 -135
  311. package/lib/cjs/imodel-components-react/quantityformat/misc/UnitDescr.js.map +0 -1
  312. package/lib/cjs/imodel-components-react/timeline/BaseSolarDataProvider.d.ts.map +0 -1
  313. package/lib/cjs/imodel-components-react/timeline/BaseSolarDataProvider.js +0 -150
  314. package/lib/cjs/imodel-components-react/timeline/BaseSolarDataProvider.js.map +0 -1
  315. package/lib/cjs/imodel-components-react/timeline/BaseTimelineDataProvider.d.ts.map +0 -1
  316. package/lib/cjs/imodel-components-react/timeline/BaseTimelineDataProvider.js +0 -64
  317. package/lib/cjs/imodel-components-react/timeline/BaseTimelineDataProvider.js.map +0 -1
  318. package/lib/cjs/imodel-components-react/timeline/InlineEdit.d.ts.map +0 -1
  319. package/lib/cjs/imodel-components-react/timeline/InlineEdit.js +0 -86
  320. package/lib/cjs/imodel-components-react/timeline/InlineEdit.js.map +0 -1
  321. package/lib/cjs/imodel-components-react/timeline/PlayButton.d.ts.map +0 -1
  322. package/lib/cjs/imodel-components-react/timeline/PlayButton.js +0 -50
  323. package/lib/cjs/imodel-components-react/timeline/PlayButton.js.map +0 -1
  324. package/lib/cjs/imodel-components-react/timeline/Scrubber.d.ts.map +0 -1
  325. package/lib/cjs/imodel-components-react/timeline/Scrubber.js +0 -185
  326. package/lib/cjs/imodel-components-react/timeline/Scrubber.js.map +0 -1
  327. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.d.ts +0 -60
  328. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.d.ts.map +0 -1
  329. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.js +0 -358
  330. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.js.map +0 -1
  331. package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.d.ts.map +0 -1
  332. package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.js +0 -57
  333. package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.js.map +0 -1
  334. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.d.ts +0 -100
  335. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.d.ts.map +0 -1
  336. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.js +0 -286
  337. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.js.map +0 -1
  338. package/lib/cjs/imodel-components-react/timeline/interfaces.d.ts.map +0 -1
  339. package/lib/cjs/imodel-components-react/timeline/interfaces.js +0 -46
  340. package/lib/cjs/imodel-components-react/timeline/interfaces.js.map +0 -1
  341. package/lib/cjs/imodel-components-react/useTranslation.d.ts.map +0 -1
  342. package/lib/cjs/imodel-components-react/useTranslation.js +0 -52
  343. package/lib/cjs/imodel-components-react/useTranslation.js.map +0 -1
  344. package/lib/cjs/imodel-components-react/viewport/ViewportComponent.d.ts.map +0 -1
  345. package/lib/cjs/imodel-components-react/viewport/ViewportComponent.js +0 -267
  346. package/lib/cjs/imodel-components-react/viewport/ViewportComponent.js.map +0 -1
  347. package/lib/cjs/imodel-components-react/viewport/ViewportComponentEvents.d.ts.map +0 -1
  348. package/lib/cjs/imodel-components-react/viewport/ViewportComponentEvents.js +0 -119
  349. package/lib/cjs/imodel-components-react/viewport/ViewportComponentEvents.js.map +0 -1
  350. package/lib/cjs/imodel-components-react.d.ts +0 -80
  351. package/lib/cjs/imodel-components-react.d.ts.map +0 -1
  352. package/lib/cjs/imodel-components-react.js +0 -103
  353. package/lib/cjs/imodel-components-react.js.map +0 -1
  354. package/lib/esm/imodel-components-react/UiIModelComponents.d.ts +0 -29
  355. package/lib/esm/imodel-components-react/UiIModelComponents.d.ts.map +0 -1
  356. package/lib/esm/imodel-components-react/UiIModelComponents.js.map +0 -1
  357. package/lib/esm/imodel-components-react/UiIModelComponents.json +0 -150
  358. package/lib/esm/imodel-components-react/color/AlphaSlider.d.ts +0 -36
  359. package/lib/esm/imodel-components-react/color/AlphaSlider.d.ts.map +0 -1
  360. package/lib/esm/imodel-components-react/color/AlphaSlider.js.map +0 -1
  361. package/lib/esm/imodel-components-react/color/ColorPickerButton.d.ts +0 -40
  362. package/lib/esm/imodel-components-react/color/ColorPickerButton.d.ts.map +0 -1
  363. package/lib/esm/imodel-components-react/color/ColorPickerButton.js.map +0 -1
  364. package/lib/esm/imodel-components-react/color/ColorPickerDialog.d.ts +0 -26
  365. package/lib/esm/imodel-components-react/color/ColorPickerDialog.d.ts.map +0 -1
  366. package/lib/esm/imodel-components-react/color/ColorPickerDialog.js.map +0 -1
  367. package/lib/esm/imodel-components-react/color/ColorPickerPopup.d.ts +0 -47
  368. package/lib/esm/imodel-components-react/color/ColorPickerPopup.d.ts.map +0 -1
  369. package/lib/esm/imodel-components-react/color/ColorPickerPopup.js.map +0 -1
  370. package/lib/esm/imodel-components-react/color/HueSlider.d.ts +0 -25
  371. package/lib/esm/imodel-components-react/color/HueSlider.d.ts.map +0 -1
  372. package/lib/esm/imodel-components-react/color/SaturationPicker.d.ts +0 -23
  373. package/lib/esm/imodel-components-react/color/SaturationPicker.d.ts.map +0 -1
  374. package/lib/esm/imodel-components-react/color/SaturationPicker.js.map +0 -1
  375. package/lib/esm/imodel-components-react/color/Swatch.d.ts +0 -25
  376. package/lib/esm/imodel-components-react/color/Swatch.d.ts.map +0 -1
  377. package/lib/esm/imodel-components-react/color/getCSSColorFromDef.d.ts +0 -7
  378. package/lib/esm/imodel-components-react/color/getCSSColorFromDef.d.ts.map +0 -1
  379. package/lib/esm/imodel-components-react/color/getCSSColorFromDef.js.map +0 -1
  380. package/lib/esm/imodel-components-react/editors/ColorEditor.d.ts +0 -42
  381. package/lib/esm/imodel-components-react/editors/ColorEditor.d.ts.map +0 -1
  382. package/lib/esm/imodel-components-react/editors/ColorEditor.js.map +0 -1
  383. package/lib/esm/imodel-components-react/editors/WeightEditor.d.ts +0 -44
  384. package/lib/esm/imodel-components-react/editors/WeightEditor.d.ts.map +0 -1
  385. package/lib/esm/imodel-components-react/editors/WeightEditor.js.map +0 -1
  386. package/lib/esm/imodel-components-react/inputs/QuantityInput.d.ts +0 -26
  387. package/lib/esm/imodel-components-react/inputs/QuantityInput.d.ts.map +0 -1
  388. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.d.ts +0 -47
  389. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.d.ts.map +0 -1
  390. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.js.map +0 -1
  391. package/lib/esm/imodel-components-react/lineweight/Swatch.d.ts +0 -33
  392. package/lib/esm/imodel-components-react/lineweight/Swatch.d.ts.map +0 -1
  393. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.d.ts +0 -59
  394. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.d.ts.map +0 -1
  395. package/lib/esm/imodel-components-react/navigationaids/Cube.d.ts +0 -46
  396. package/lib/esm/imodel-components-react/navigationaids/Cube.d.ts.map +0 -1
  397. package/lib/esm/imodel-components-react/navigationaids/Cube.js.map +0 -1
  398. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.d.ts.map +0 -1
  399. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.js.map +0 -1
  400. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts +0 -144
  401. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts.map +0 -1
  402. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.js.map +0 -1
  403. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.d.ts +0 -29
  404. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.d.ts.map +0 -1
  405. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.js.map +0 -1
  406. package/lib/esm/imodel-components-react/quantityformat/FormatPrecision.d.ts +0 -19
  407. package/lib/esm/imodel-components-react/quantityformat/FormatPrecision.d.ts.map +0 -1
  408. package/lib/esm/imodel-components-react/quantityformat/FormatPrecision.js.map +0 -1
  409. package/lib/esm/imodel-components-react/quantityformat/FormatSample.d.ts +0 -20
  410. package/lib/esm/imodel-components-react/quantityformat/FormatSample.d.ts.map +0 -1
  411. package/lib/esm/imodel-components-react/quantityformat/FormatSample.js.map +0 -1
  412. package/lib/esm/imodel-components-react/quantityformat/FormatType.d.ts +0 -19
  413. package/lib/esm/imodel-components-react/quantityformat/FormatType.d.ts.map +0 -1
  414. package/lib/esm/imodel-components-react/quantityformat/FormatUnitLabel.d.ts +0 -19
  415. package/lib/esm/imodel-components-react/quantityformat/FormatUnitLabel.d.ts.map +0 -1
  416. package/lib/esm/imodel-components-react/quantityformat/FormatUnits.d.ts +0 -21
  417. package/lib/esm/imodel-components-react/quantityformat/FormatUnits.d.ts.map +0 -1
  418. package/lib/esm/imodel-components-react/quantityformat/FormatUnits.js.map +0 -1
  419. package/lib/esm/imodel-components-react/quantityformat/MiscFormatOptions.d.ts +0 -23
  420. package/lib/esm/imodel-components-react/quantityformat/MiscFormatOptions.d.ts.map +0 -1
  421. package/lib/esm/imodel-components-react/quantityformat/MiscFormatOptions.js.map +0 -1
  422. package/lib/esm/imodel-components-react/quantityformat/QuantityFormatPanel.d.ts +0 -24
  423. package/lib/esm/imodel-components-react/quantityformat/QuantityFormatPanel.d.ts.map +0 -1
  424. package/lib/esm/imodel-components-react/quantityformat/QuantityFormatPanel.js.map +0 -1
  425. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalPrecision.d.ts +0 -18
  426. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalPrecision.d.ts.map +0 -1
  427. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalSeparator.d.ts +0 -18
  428. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalSeparator.d.ts.map +0 -1
  429. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalSeparator.js.map +0 -1
  430. package/lib/esm/imodel-components-react/quantityformat/misc/FractionPrecision.d.ts +0 -17
  431. package/lib/esm/imodel-components-react/quantityformat/misc/FractionPrecision.d.ts.map +0 -1
  432. package/lib/esm/imodel-components-react/quantityformat/misc/FractionPrecision.js.map +0 -1
  433. package/lib/esm/imodel-components-react/quantityformat/misc/ScientificType.d.ts +0 -19
  434. package/lib/esm/imodel-components-react/quantityformat/misc/ScientificType.d.ts.map +0 -1
  435. package/lib/esm/imodel-components-react/quantityformat/misc/ScientificType.js.map +0 -1
  436. package/lib/esm/imodel-components-react/quantityformat/misc/SignOption.d.ts +0 -18
  437. package/lib/esm/imodel-components-react/quantityformat/misc/SignOption.d.ts.map +0 -1
  438. package/lib/esm/imodel-components-react/quantityformat/misc/SignOption.js.map +0 -1
  439. package/lib/esm/imodel-components-react/quantityformat/misc/StationSeparatorSelector.d.ts +0 -18
  440. package/lib/esm/imodel-components-react/quantityformat/misc/StationSeparatorSelector.d.ts.map +0 -1
  441. package/lib/esm/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js.map +0 -1
  442. package/lib/esm/imodel-components-react/quantityformat/misc/StationSizeSelector.d.ts +0 -18
  443. package/lib/esm/imodel-components-react/quantityformat/misc/StationSizeSelector.d.ts.map +0 -1
  444. package/lib/esm/imodel-components-react/quantityformat/misc/StationSizeSelector.js.map +0 -1
  445. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSelector.d.ts +0 -18
  446. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSelector.d.ts.map +0 -1
  447. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSelector.js.map +0 -1
  448. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSeparator.d.ts +0 -18
  449. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSeparator.d.ts.map +0 -1
  450. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSeparator.js.map +0 -1
  451. package/lib/esm/imodel-components-react/quantityformat/misc/UnitDescr.d.ts +0 -24
  452. package/lib/esm/imodel-components-react/quantityformat/misc/UnitDescr.d.ts.map +0 -1
  453. package/lib/esm/imodel-components-react/quantityformat/misc/UnitDescr.js.map +0 -1
  454. package/lib/esm/imodel-components-react/timeline/BaseSolarDataProvider.d.ts +0 -53
  455. package/lib/esm/imodel-components-react/timeline/BaseSolarDataProvider.d.ts.map +0 -1
  456. package/lib/esm/imodel-components-react/timeline/BaseTimelineDataProvider.d.ts +0 -32
  457. package/lib/esm/imodel-components-react/timeline/BaseTimelineDataProvider.d.ts.map +0 -1
  458. package/lib/esm/imodel-components-react/timeline/BaseTimelineDataProvider.js.map +0 -1
  459. package/lib/esm/imodel-components-react/timeline/InlineEdit.d.ts +0 -27
  460. package/lib/esm/imodel-components-react/timeline/InlineEdit.d.ts.map +0 -1
  461. package/lib/esm/imodel-components-react/timeline/InlineEdit.js.map +0 -1
  462. package/lib/esm/imodel-components-react/timeline/PlayButton.d.ts +0 -12
  463. package/lib/esm/imodel-components-react/timeline/PlayButton.d.ts.map +0 -1
  464. package/lib/esm/imodel-components-react/timeline/PlayButton.js.map +0 -1
  465. package/lib/esm/imodel-components-react/timeline/Scrubber.d.ts +0 -54
  466. package/lib/esm/imodel-components-react/timeline/Scrubber.d.ts.map +0 -1
  467. package/lib/esm/imodel-components-react/timeline/Scrubber.js.map +0 -1
  468. package/lib/esm/imodel-components-react/timeline/SolarTimeline.d.ts.map +0 -1
  469. package/lib/esm/imodel-components-react/timeline/SolarTimeline.js.map +0 -1
  470. package/lib/esm/imodel-components-react/timeline/SpeedTimeline.d.ts +0 -16
  471. package/lib/esm/imodel-components-react/timeline/SpeedTimeline.d.ts.map +0 -1
  472. package/lib/esm/imodel-components-react/timeline/SpeedTimeline.js.map +0 -1
  473. package/lib/esm/imodel-components-react/timeline/TimelineComponent.d.ts.map +0 -1
  474. package/lib/esm/imodel-components-react/timeline/TimelineComponent.js.map +0 -1
  475. package/lib/esm/imodel-components-react/timeline/interfaces.d.ts +0 -146
  476. package/lib/esm/imodel-components-react/timeline/interfaces.d.ts.map +0 -1
  477. package/lib/esm/imodel-components-react/timeline/interfaces.js.map +0 -1
  478. package/lib/esm/imodel-components-react/useTranslation.d.ts +0 -7
  479. package/lib/esm/imodel-components-react/useTranslation.d.ts.map +0 -1
  480. package/lib/esm/imodel-components-react/useTranslation.js.map +0 -1
  481. package/lib/esm/imodel-components-react/viewport/ViewportComponent.d.ts +0 -43
  482. package/lib/esm/imodel-components-react/viewport/ViewportComponent.d.ts.map +0 -1
  483. package/lib/esm/imodel-components-react/viewport/ViewportComponent.js.map +0 -1
  484. package/lib/esm/imodel-components-react/viewport/ViewportComponentEvents.d.ts +0 -119
  485. package/lib/esm/imodel-components-react/viewport/ViewportComponentEvents.d.ts.map +0 -1
  486. package/lib/esm/imodel-components-react/viewport/ViewportComponentEvents.js.map +0 -1
  487. package/lib/esm/imodel-components-react.d.ts +0 -80
  488. package/lib/esm/imodel-components-react.d.ts.map +0 -1
  489. package/lib/esm/imodel-components-react.js +0 -85
  490. package/lib/esm/imodel-components-react.js.map +0 -1
  491. /package/lib/{cjs/imodel-components-react → imodel-components-react}/UiIModelComponents.json +0 -0
  492. /package/lib/{cjs/imodel-components-react → imodel-components-react}/color/AlphaSlider.d.ts +0 -0
  493. /package/lib/{cjs/imodel-components-react → imodel-components-react}/color/ColorPickerButton.d.ts +0 -0
  494. /package/lib/{cjs/imodel-components-react → imodel-components-react}/color/ColorPickerDialog.d.ts +0 -0
  495. /package/lib/{esm/imodel-components-react → imodel-components-react}/color/ColorPickerDialog.js +0 -0
  496. /package/lib/{cjs/imodel-components-react → imodel-components-react}/color/ColorPickerPopup.d.ts +0 -0
  497. /package/lib/{cjs/imodel-components-react → imodel-components-react}/color/HueSlider.d.ts +0 -0
  498. /package/lib/{cjs/imodel-components-react → imodel-components-react}/color/SaturationPicker.d.ts +0 -0
  499. /package/lib/{cjs/imodel-components-react → imodel-components-react}/color/Swatch.d.ts +0 -0
  500. /package/lib/{cjs/imodel-components-react → imodel-components-react}/color/getCSSColorFromDef.d.ts +0 -0
  501. /package/lib/{esm/imodel-components-react → imodel-components-react}/color/getCSSColorFromDef.js +0 -0
  502. /package/lib/{cjs/imodel-components-react → imodel-components-react}/editors/ColorEditor.d.ts +0 -0
  503. /package/lib/{cjs/imodel-components-react → imodel-components-react}/editors/WeightEditor.d.ts +0 -0
  504. /package/lib/{cjs/imodel-components-react → imodel-components-react}/inputs/QuantityInput.d.ts +0 -0
  505. /package/lib/{cjs/imodel-components-react → imodel-components-react}/inputs/QuantityNumberInput.d.ts +0 -0
  506. /package/lib/{esm/imodel-components-react → imodel-components-react}/inputs/QuantityNumberInput.js +0 -0
  507. /package/lib/{cjs/imodel-components-react → imodel-components-react}/lineweight/Swatch.d.ts +0 -0
  508. /package/lib/{cjs/imodel-components-react → imodel-components-react}/lineweight/WeightPickerButton.d.ts +0 -0
  509. /package/lib/{cjs/imodel-components-react → imodel-components-react}/navigationaids/Cube.d.ts +0 -0
  510. /package/lib/{esm/imodel-components-react → imodel-components-react}/navigationaids/Cube.js +0 -0
  511. /package/lib/{cjs/imodel-components-react → imodel-components-react}/navigationaids/DrawingNavigationAid.d.ts +0 -0
  512. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/FormatPanel.d.ts +0 -0
  513. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/FormatPrecision.d.ts +0 -0
  514. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/FormatSample.d.ts +0 -0
  515. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/FormatType.d.ts +0 -0
  516. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/FormatUnitLabel.d.ts +0 -0
  517. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/FormatUnits.d.ts +0 -0
  518. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/MiscFormatOptions.d.ts +0 -0
  519. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/QuantityFormatPanel.d.ts +0 -0
  520. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/misc/DecimalPrecision.d.ts +0 -0
  521. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/misc/DecimalSeparator.d.ts +0 -0
  522. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/misc/FractionPrecision.d.ts +0 -0
  523. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/misc/ScientificType.d.ts +0 -0
  524. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/misc/SignOption.d.ts +0 -0
  525. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/misc/StationSeparatorSelector.d.ts +0 -0
  526. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/misc/StationSizeSelector.d.ts +0 -0
  527. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/misc/ThousandsSelector.d.ts +0 -0
  528. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/misc/ThousandsSeparator.d.ts +0 -0
  529. /package/lib/{cjs/imodel-components-react → imodel-components-react}/quantityformat/misc/UnitDescr.d.ts +0 -0
  530. /package/lib/{esm/imodel-components-react → imodel-components-react}/quantityformat/misc/UnitDescr.js +0 -0
  531. /package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/BaseSolarDataProvider.js +0 -0
  532. /package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/BaseTimelineDataProvider.js +0 -0
  533. /package/lib/{cjs/imodel-components-react → imodel-components-react}/timeline/InlineEdit.d.ts +0 -0
  534. /package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/InlineEdit.js +0 -0
  535. /package/lib/{cjs/imodel-components-react → imodel-components-react}/timeline/PlayButton.d.ts +0 -0
  536. /package/lib/{cjs/imodel-components-react → imodel-components-react}/timeline/SpeedTimeline.d.ts +0 -0
  537. /package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/SpeedTimeline.js +0 -0
  538. /package/lib/{cjs/imodel-components-react → imodel-components-react}/timeline/interfaces.d.ts +0 -0
  539. /package/lib/{esm/imodel-components-react → imodel-components-react}/timeline/interfaces.js +0 -0
  540. /package/lib/{cjs/imodel-components-react → imodel-components-react}/useTranslation.d.ts +0 -0
  541. /package/lib/{cjs/imodel-components-react → imodel-components-react}/viewport/ViewportComponent.d.ts +0 -0
@@ -1,153 +0,0 @@
1
- "use strict";
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
- * See LICENSE.md in the project root for license terms and full copyright notice.
5
- *--------------------------------------------------------------------------------------------*/
6
- /** @packageDocumentation
7
- * @module PropertyEditors
8
- */
9
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- var desc = Object.getOwnPropertyDescriptor(m, k);
12
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
13
- desc = { enumerable: true, get: function() { return m[k]; } };
14
- }
15
- Object.defineProperty(o, k2, desc);
16
- }) : (function(o, m, k, k2) {
17
- if (k2 === undefined) k2 = k;
18
- o[k2] = m[k];
19
- }));
20
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
21
- Object.defineProperty(o, "default", { enumerable: true, value: v });
22
- }) : function(o, v) {
23
- o["default"] = v;
24
- });
25
- var __importStar = (this && this.__importStar) || function (mod) {
26
- if (mod && mod.__esModule) return mod;
27
- var result = {};
28
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
29
- __setModuleDefault(result, mod);
30
- return result;
31
- };
32
- var __importDefault = (this && this.__importDefault) || function (mod) {
33
- return (mod && mod.__esModule) ? mod : { "default": mod };
34
- };
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.WeightPropertyEditor = exports.WeightEditor = void 0;
37
- require("./WeightEditor.scss");
38
- const classnames_1 = __importDefault(require("classnames"));
39
- const React = __importStar(require("react"));
40
- const appui_abstract_1 = require("@itwin/appui-abstract");
41
- const components_react_1 = require("@itwin/components-react");
42
- const WeightPickerButton_1 = require("../lineweight/WeightPickerButton");
43
- /** WeightEditor React component that is a property editor for picking a weight using a [[WeightPickerButton]] component
44
- * @public
45
- */
46
- class WeightEditor extends React.PureComponent {
47
- constructor(props) {
48
- super(props);
49
- this._control = null;
50
- this._isMounted = false;
51
- this._availableWeights = [];
52
- this._divElement = React.createRef();
53
- this.state = {
54
- weightValue: 0,
55
- readonly: false,
56
- };
57
- this._onLineWeightPick = (weight) => {
58
- const propertyRecord = this.props.propertyRecord;
59
- this.setState({
60
- weightValue: weight,
61
- }, async () => {
62
- if (propertyRecord && this.props.onCommit) {
63
- const propertyValue = await this.getPropertyValue();
64
- if (propertyValue !== undefined) {
65
- this.props.onCommit({ propertyRecord, newValue: propertyValue });
66
- }
67
- }
68
- });
69
- };
70
- // TODO: add support for following if we need to specify set of weights to display
71
- // const record = this.props.propertyRecord;
72
- // if (record && record.property && record.property.editor && record.property.editor.params) {
73
- // const weightParams = record.property.editor.params.find((param: PropertyEditorParams) => param.type === PropertyEditorParamTypes.ColorData) as WeightEditorParams;
74
- // // if (weightParams) {
75
- // weightParams.weightValues.forEach((weight: number) => {
76
- // this._availableWeights.push(weight);
77
- // });
78
- // }
79
- // }
80
- }
81
- async getPropertyValue() {
82
- const record = this.props.propertyRecord;
83
- let propertyValue;
84
- if (record && record.value.valueFormat === appui_abstract_1.PropertyValueFormat.Primitive) {
85
- propertyValue = {
86
- valueFormat: appui_abstract_1.PropertyValueFormat.Primitive,
87
- value: this.state.weightValue,
88
- displayValue: "",
89
- };
90
- }
91
- return propertyValue;
92
- }
93
- get htmlElement() {
94
- return this._divElement.current;
95
- }
96
- get hasFocus() {
97
- let containsFocus = false;
98
- if (this._divElement.current)
99
- containsFocus = this._divElement.current.contains(document.activeElement);
100
- return containsFocus;
101
- }
102
- setFocus() {
103
- if (this._control && !this.state.isDisabled) {
104
- this._control.setFocus();
105
- }
106
- }
107
- componentDidMount() {
108
- this._isMounted = true;
109
- void this.setStateFromProps();
110
- }
111
- componentWillUnmount() {
112
- this._isMounted = false;
113
- }
114
- componentDidUpdate(prevProps) {
115
- if (this.props.propertyRecord !== prevProps.propertyRecord) {
116
- void this.setStateFromProps();
117
- }
118
- }
119
- async setStateFromProps() {
120
- const record = this.props.propertyRecord;
121
- let initialValue = 0;
122
- if (record && record.value.valueFormat === appui_abstract_1.PropertyValueFormat.Primitive) {
123
- initialValue = record.value.value;
124
- }
125
- const readonly = record && undefined !== record.isReadonly ? record.isReadonly : false;
126
- const isDisabled = record ? record.isDisabled : undefined;
127
- if (this._isMounted)
128
- this.setState({ weightValue: initialValue, readonly, isDisabled }, () => {
129
- if (this.props.setFocus) {
130
- this.setFocus();
131
- }
132
- });
133
- }
134
- render() {
135
- return (React.createElement("div", { className: (0, classnames_1.default)("components-weight-editor", this.props.className), style: this.props.style, ref: this._divElement },
136
- React.createElement(WeightPickerButton_1.WeightPickerButton, { ref: (control) => (this._control = control), activeWeight: this.state.weightValue, weights: this._availableWeights.length > 0
137
- ? this._availableWeights
138
- : undefined, disabled: this.state.isDisabled ? true : false, readonly: this.state.readonly, onLineWeightPick: this._onLineWeightPick, "data-testid": "components-weight-editor" })));
139
- }
140
- }
141
- exports.WeightEditor = WeightEditor;
142
- /** Weight Property Editor registered for the "number" type name and "weight-picker" editor name.
143
- * It uses the [[WeightEditor]] React component.
144
- * @public
145
- */
146
- class WeightPropertyEditor extends components_react_1.PropertyEditorBase {
147
- get reactNode() {
148
- return React.createElement(WeightEditor, null);
149
- }
150
- }
151
- exports.WeightPropertyEditor = WeightPropertyEditor;
152
- components_react_1.PropertyEditorManager.registerEditor(appui_abstract_1.StandardTypeNames.Number, WeightPropertyEditor, appui_abstract_1.StandardEditorNames.WeightPicker);
153
- //# sourceMappingURL=WeightEditor.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"WeightEditor.js","sourceRoot":"","sources":["../../../../src/imodel-components-react/editors/WeightEditor.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 PropertyEditors\n */\n\nimport \"./WeightEditor.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport type { PropertyRecord, PropertyValue } from \"@itwin/appui-abstract\";\nimport {\n PropertyValueFormat,\n StandardEditorNames,\n StandardTypeNames,\n} from \"@itwin/appui-abstract\";\nimport type { PropertyEditorProps, TypeEditor } from \"@itwin/components-react\";\nimport {\n PropertyEditorBase,\n PropertyEditorManager,\n} from \"@itwin/components-react\";\nimport { WeightPickerButton } from \"../lineweight/WeightPickerButton\";\n\n// cspell:ignore lineweight\n\n/** @internal */\ninterface WeightEditorState {\n weightValue: number;\n readonly: boolean;\n isDisabled?: boolean;\n}\n\n/** WeightEditor React component that is a property editor for picking a weight using a [[WeightPickerButton]] component\n * @public\n */\nexport class WeightEditor\n extends React.PureComponent<PropertyEditorProps, WeightEditorState>\n implements TypeEditor\n{\n private _control: any = null;\n private _isMounted = false;\n private _availableWeights: number[] = [];\n private _divElement = React.createRef<HTMLDivElement>();\n\n public override readonly state: Readonly<WeightEditorState> = {\n weightValue: 0,\n readonly: false,\n };\n\n constructor(props: PropertyEditorProps) {\n super(props);\n\n // TODO: add support for following if we need to specify set of weights to display\n // const record = this.props.propertyRecord;\n // if (record && record.property && record.property.editor && record.property.editor.params) {\n // const weightParams = record.property.editor.params.find((param: PropertyEditorParams) => param.type === PropertyEditorParamTypes.ColorData) as WeightEditorParams;\n // // if (weightParams) {\n // weightParams.weightValues.forEach((weight: number) => {\n // this._availableWeights.push(weight);\n // });\n // }\n // }\n }\n\n public async getPropertyValue(): Promise<PropertyValue | undefined> {\n const record = this.props.propertyRecord;\n let propertyValue: PropertyValue | undefined;\n\n if (record && record.value.valueFormat === PropertyValueFormat.Primitive) {\n propertyValue = {\n valueFormat: PropertyValueFormat.Primitive,\n value: this.state.weightValue,\n displayValue: \"\",\n };\n }\n\n return propertyValue;\n }\n\n public get htmlElement(): HTMLElement | null {\n return this._divElement.current;\n }\n\n public get hasFocus(): boolean {\n let containsFocus = false;\n if (this._divElement.current)\n containsFocus = this._divElement.current.contains(document.activeElement);\n return containsFocus;\n }\n\n private setFocus(): void {\n if (this._control && !this.state.isDisabled) {\n this._control.setFocus();\n }\n }\n\n private _onLineWeightPick = (weight: number) => {\n const propertyRecord = this.props.propertyRecord as PropertyRecord;\n\n this.setState(\n {\n weightValue: weight,\n },\n async () => {\n if (propertyRecord && this.props.onCommit) {\n const propertyValue = await this.getPropertyValue();\n if (propertyValue !== undefined) {\n this.props.onCommit({ propertyRecord, newValue: propertyValue });\n }\n }\n }\n );\n };\n\n public override componentDidMount() {\n this._isMounted = true;\n void this.setStateFromProps();\n }\n\n public override componentWillUnmount() {\n this._isMounted = false;\n }\n\n public override componentDidUpdate(prevProps: PropertyEditorProps) {\n if (this.props.propertyRecord !== prevProps.propertyRecord) {\n void this.setStateFromProps();\n }\n }\n\n private async setStateFromProps() {\n const record = this.props.propertyRecord;\n let initialValue = 0;\n\n if (record && record.value.valueFormat === PropertyValueFormat.Primitive) {\n initialValue = record.value.value as number;\n }\n\n const readonly =\n record && undefined !== record.isReadonly ? record.isReadonly : false;\n const isDisabled = record ? record.isDisabled : undefined;\n\n if (this._isMounted)\n this.setState({ weightValue: initialValue, readonly, isDisabled }, () => {\n if (this.props.setFocus) {\n this.setFocus();\n }\n });\n }\n\n public override render() {\n return (\n <div\n className={classnames(\"components-weight-editor\", this.props.className)}\n style={this.props.style}\n ref={this._divElement}\n >\n <WeightPickerButton\n ref={(control) => (this._control = control)}\n activeWeight={this.state.weightValue}\n weights={\n this._availableWeights.length > 0\n ? this._availableWeights\n : undefined\n }\n disabled={this.state.isDisabled ? true : false}\n readonly={this.state.readonly}\n onLineWeightPick={this._onLineWeightPick}\n data-testid=\"components-weight-editor\"\n />\n </div>\n );\n }\n}\n\n/** Weight Property Editor registered for the \"number\" type name and \"weight-picker\" editor name.\n * It uses the [[WeightEditor]] React component.\n * @public\n */\nexport class WeightPropertyEditor extends PropertyEditorBase {\n public get reactNode(): React.ReactNode {\n return <WeightEditor />;\n }\n}\n\nPropertyEditorManager.registerEditor(\n StandardTypeNames.Number,\n WeightPropertyEditor,\n StandardEditorNames.WeightPicker\n);\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"QuantityInput.d.ts","sourceRoot":"","sources":["../../../../src/imodel-components-react/inputs/QuantityInput.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAGH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAI5D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAIrD;;GAEG;AAEH,MAAM,WAAW,aAAc,SAAQ,WAAW;IAChD,8HAA8H;IAC9H,YAAY,EAAE,MAAM,CAAC;IACrB,oCAAoC;IACpC,YAAY,EAAE,eAAe,CAAC;IAC9B,4GAA4G;IAC5G,gBAAgB,EAAE,CAAC,gBAAgB,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD,iDAAiD;IACjD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,+DAA+D;IAC/D,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;CACnC;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,EAC5B,YAAY,EACZ,YAAY,EACZ,QAAQ,EACR,SAAS,EACT,KAAK,EACL,gBAAgB,EAChB,GAAG,GACJ,EAAE,aAAa,qBAiGf"}
@@ -1,94 +0,0 @@
1
- "use strict";
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
- * See LICENSE.md in the project root for license terms and full copyright notice.
5
- *--------------------------------------------------------------------------------------------*/
6
- /** @packageDocumentation
7
- * @module Inputs
8
- */
9
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- var desc = Object.getOwnPropertyDescriptor(m, k);
12
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
13
- desc = { enumerable: true, get: function() { return m[k]; } };
14
- }
15
- Object.defineProperty(o, k2, desc);
16
- }) : (function(o, m, k, k2) {
17
- if (k2 === undefined) k2 = k;
18
- o[k2] = m[k];
19
- }));
20
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
21
- Object.defineProperty(o, "default", { enumerable: true, value: v });
22
- }) : function(o, v) {
23
- o["default"] = v;
24
- });
25
- var __importStar = (this && this.__importStar) || function (mod) {
26
- if (mod && mod.__esModule) return mod;
27
- var result = {};
28
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
29
- __setModuleDefault(result, mod);
30
- return result;
31
- };
32
- var __importDefault = (this && this.__importDefault) || function (mod) {
33
- return (mod && mod.__esModule) ? mod : { "default": mod };
34
- };
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.QuantityInput = void 0;
37
- const classnames_1 = __importDefault(require("classnames"));
38
- const React = __importStar(require("react"));
39
- const core_frontend_1 = require("@itwin/core-frontend");
40
- const core_quantity_1 = require("@itwin/core-quantity");
41
- const components_react_1 = require("@itwin/components-react");
42
- const useTranslation_1 = require("../useTranslation");
43
- /** Input control that allows users to input a quantity and show the formatted string that represents the value.
44
- * @beta
45
- */
46
- function QuantityInput({ initialValue, quantityType, readonly, className, style, onQuantityChange, ref, }) {
47
- const { translate } = (0, useTranslation_1.useTranslation)();
48
- const [formatterSpec, setFormatterSpec] = React.useState(() => core_frontend_1.IModelApp.quantityFormatter.findFormatterSpecByQuantityType(quantityType));
49
- const [parserSpec, setParserSpec] = React.useState(() => core_frontend_1.IModelApp.quantityFormatter.findParserSpecByQuantityType(quantityType));
50
- const formatValue = React.useCallback((value) => {
51
- if (formatterSpec) {
52
- return formatterSpec.applyFormatting(value);
53
- }
54
- return value.toFixed(2);
55
- }, [formatterSpec]);
56
- const parseString = React.useCallback((userInput) => {
57
- if (parserSpec) {
58
- const parseResult = core_frontend_1.IModelApp.quantityFormatter.parseToQuantityValue(userInput, parserSpec);
59
- if (core_quantity_1.Parser.isParsedQuantity(parseResult)) {
60
- return { value: parseResult.value };
61
- }
62
- else {
63
- const statusId = core_quantity_1.Parser.isParseError(parseResult)
64
- ? parseResult.error.toString()
65
- : "Unknown";
66
- return {
67
- parseError: `${translate("QuantityInput.NoParserDefined")}${statusId}`,
68
- };
69
- }
70
- }
71
- return {
72
- parseError: translate("QuantityInput.NoParserDefined"),
73
- };
74
- }, [parserSpec, translate]);
75
- const classNames = (0, classnames_1.default)(className, "components-quantity-input");
76
- React.useEffect(() => {
77
- return core_frontend_1.IModelApp.quantityFormatter.onActiveFormattingUnitSystemChanged.addListener(() => {
78
- setFormatterSpec(core_frontend_1.IModelApp.quantityFormatter.findFormatterSpecByQuantityType(quantityType));
79
- setParserSpec(core_frontend_1.IModelApp.quantityFormatter.findParserSpecByQuantityType(quantityType));
80
- });
81
- }, [quantityType]);
82
- React.useEffect(() => {
83
- return core_frontend_1.IModelApp.quantityFormatter.onQuantityFormatsChanged.addListener((args) => {
84
- const quantityKey = core_frontend_1.IModelApp.quantityFormatter.getQuantityTypeKey(quantityType);
85
- if (args.quantityType === quantityKey) {
86
- setFormatterSpec(core_frontend_1.IModelApp.quantityFormatter.findFormatterSpecByQuantityType(quantityType));
87
- setParserSpec(core_frontend_1.IModelApp.quantityFormatter.findParserSpecByQuantityType(quantityType));
88
- }
89
- });
90
- }, [quantityType]);
91
- return (React.createElement(components_react_1.ParsedInput, { "data-testid": "components-quantity-input", ref: ref, style: style, className: classNames, onChange: onQuantityChange, initialValue: initialValue, readonly: readonly, formatValue: formatValue, parseString: parseString }));
92
- }
93
- exports.QuantityInput = QuantityInput;
94
- //# sourceMappingURL=QuantityInput.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"QuantityInput.js","sourceRoot":"","sources":["../../../../src/imodel-components-react/inputs/QuantityInput.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 Inputs\n */\n\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport type { QuantityTypeArg } from \"@itwin/core-frontend\";\nimport { IModelApp } from \"@itwin/core-frontend\";\nimport { Parser } from \"@itwin/core-quantity\";\nimport type { ParseResults } from \"@itwin/appui-abstract\";\nimport type { CommonProps } from \"@itwin/core-react\";\nimport { ParsedInput } from \"@itwin/components-react\";\nimport { useTranslation } from \"../useTranslation\";\n\n/** Props for [[QuantityInput]] control\n * @beta\n */\n// eslint-disable-next-line deprecation/deprecation\nexport interface QuantityProps extends CommonProps {\n /** Initial magnitude in 'persistence' units. See `getPersistenceUnitByQuantityType` in [QuantityFormatter]($core-frontend) */\n initialValue: number;\n /** Type of quantity being input. */\n quantityType: QuantityTypeArg;\n /** Function to call in the quantity value is changed. The value returned will be in 'persistence' units. */\n onQuantityChange: (newQuantityValue: number) => void;\n /** Set to `true` if value is for display only */\n readonly?: boolean;\n /** Provides ability to return reference to HTMLInputElement */\n ref?: React.Ref<HTMLInputElement>;\n}\n\n/** Input control that allows users to input a quantity and show the formatted string that represents the value.\n * @beta\n */\nexport function QuantityInput({\n initialValue,\n quantityType,\n readonly,\n className,\n style,\n onQuantityChange,\n ref,\n}: QuantityProps) {\n const { translate } = useTranslation();\n const [formatterSpec, setFormatterSpec] = React.useState(() =>\n IModelApp.quantityFormatter.findFormatterSpecByQuantityType(quantityType)\n );\n const [parserSpec, setParserSpec] = React.useState(() =>\n IModelApp.quantityFormatter.findParserSpecByQuantityType(quantityType)\n );\n\n const formatValue = React.useCallback(\n (value: number) => {\n if (formatterSpec) {\n return formatterSpec.applyFormatting(value);\n }\n return value.toFixed(2);\n },\n [formatterSpec]\n );\n\n const parseString = React.useCallback(\n (userInput: string): ParseResults => {\n if (parserSpec) {\n const parseResult = IModelApp.quantityFormatter.parseToQuantityValue(\n userInput,\n parserSpec\n );\n if (Parser.isParsedQuantity(parseResult)) {\n return { value: parseResult.value };\n } else {\n const statusId = Parser.isParseError(parseResult)\n ? parseResult.error.toString()\n : \"Unknown\";\n return {\n parseError: `${translate(\n \"QuantityInput.NoParserDefined\"\n )}${statusId}`,\n };\n }\n }\n return {\n parseError: translate(\"QuantityInput.NoParserDefined\"),\n };\n },\n [parserSpec, translate]\n );\n\n const classNames = classnames(className, \"components-quantity-input\");\n\n React.useEffect(() => {\n return IModelApp.quantityFormatter.onActiveFormattingUnitSystemChanged.addListener(\n () => {\n setFormatterSpec(\n IModelApp.quantityFormatter.findFormatterSpecByQuantityType(\n quantityType\n )\n );\n setParserSpec(\n IModelApp.quantityFormatter.findParserSpecByQuantityType(quantityType)\n );\n }\n );\n }, [quantityType]);\n\n React.useEffect(() => {\n return IModelApp.quantityFormatter.onQuantityFormatsChanged.addListener(\n (args) => {\n const quantityKey =\n IModelApp.quantityFormatter.getQuantityTypeKey(quantityType);\n if (args.quantityType === quantityKey) {\n setFormatterSpec(\n IModelApp.quantityFormatter.findFormatterSpecByQuantityType(\n quantityType\n )\n );\n setParserSpec(\n IModelApp.quantityFormatter.findParserSpecByQuantityType(\n quantityType\n )\n );\n }\n }\n );\n }, [quantityType]);\n\n return (\n <ParsedInput\n data-testid=\"components-quantity-input\"\n ref={ref}\n style={style}\n className={classNames}\n onChange={onQuantityChange}\n initialValue={initialValue}\n readonly={readonly}\n formatValue={formatValue}\n parseString={parseString}\n />\n );\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"QuantityNumberInput.d.ts","sourceRoot":"","sources":["../../../../src/imodel-components-react/inputs/QuantityNumberInput.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,4BAA4B,CAAC;AAEpC,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAc5D,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAQ7C,KAAK,UAAU,GAAG,KAAK,CAAC,wBAAwB,CAAC,OAAO,KAAK,CAAC,CAAC;AAE/D;;GAEG;AACH,MAAM,MAAM,gBAAgB,GACxB,MAAM,GACN,CAAC,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC,CAAC;AAEhD;;GAEG;AACH,MAAM,WAAW,wBACf,SAAQ,IAAI,CACV,UAAU,EACV,OAAO,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,SAAS,GAAG,UAAU,CAC1D;IACD;qDACiD;IACjD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,yEAAyE;IACzE,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iDAAiD;IACjD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,6DAA6D;IAC7D,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,kHAAkH;IAClH,IAAI,CAAC,EAAE,gBAAgB,CAAC;IACxB,0HAA0H;IAC1H,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,8GAA8G;IAC9G,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,gEAAgE;IAChE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,+DAA+D;IAC/D,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAClC,oCAAoC;IACpC,YAAY,EAAE,eAAe,CAAC;CAC/B;AA8XD;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,EAAE,CAChC,KAAK,EAAE,wBAAwB,KAC5B,KAAK,CAAC,SAAyC,CAAC"}
@@ -1,265 +0,0 @@
1
- "use strict";
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
- * See LICENSE.md in the project root for license terms and full copyright notice.
5
- *--------------------------------------------------------------------------------------------*/
6
- /** @packageDocumentation
7
- * @module Inputs
8
- */
9
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- var desc = Object.getOwnPropertyDescriptor(m, k);
12
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
13
- desc = { enumerable: true, get: function() { return m[k]; } };
14
- }
15
- Object.defineProperty(o, k2, desc);
16
- }) : (function(o, m, k, k2) {
17
- if (k2 === undefined) k2 = k;
18
- o[k2] = m[k];
19
- }));
20
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
21
- Object.defineProperty(o, "default", { enumerable: true, value: v });
22
- }) : function(o, v) {
23
- o["default"] = v;
24
- });
25
- var __importStar = (this && this.__importStar) || function (mod) {
26
- if (mod && mod.__esModule) return mod;
27
- var result = {};
28
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
29
- __setModuleDefault(result, mod);
30
- return result;
31
- };
32
- var __importDefault = (this && this.__importDefault) || function (mod) {
33
- return (mod && mod.__esModule) ? mod : { "default": mod };
34
- };
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.QuantityNumberInput = void 0;
37
- require("./QuantityNumberInput.scss");
38
- const classnames_1 = __importDefault(require("classnames"));
39
- const React = __importStar(require("react"));
40
- const ts_key_enum_1 = require("ts-key-enum");
41
- const core_react_1 = require("@itwin/core-react");
42
- const core_frontend_1 = require("@itwin/core-frontend");
43
- const core_quantity_1 = require("@itwin/core-quantity");
44
- const itwinui_react_1 = require("@itwin/itwinui-react");
45
- const itwinui_icons_react_1 = require("@itwin/itwinui-icons-react");
46
- /** adjust formatter spec to show only primary unit without a label. */
47
- function adjustFormatterSpec(formatterSpec) {
48
- if (undefined === formatterSpec)
49
- return formatterSpec;
50
- const singleUnitConversion = [];
51
- singleUnitConversion.push(formatterSpec.unitConversions[0]);
52
- const newFormat = formatterSpec.format.clone({
53
- showOnlyPrimaryUnit: true,
54
- traits: formatterSpec.format.formatTraits & ~core_quantity_1.FormatTraits.ShowUnitLabel,
55
- type: core_quantity_1.FormatType.Decimal,
56
- precision: core_quantity_1.FormatType.Decimal !== formatterSpec.format.type
57
- ? core_quantity_1.DecimalPrecision.Four
58
- : formatterSpec.format.precision,
59
- });
60
- return new core_quantity_1.FormatterSpec("single-value", newFormat, singleUnitConversion, formatterSpec.persistenceUnit);
61
- }
62
- function convertValueFromDisplayToPersistence(value, unitConversions, unit) {
63
- if (!unitConversions || 0 === unitConversions.length)
64
- return value;
65
- const unitConversion = unitConversions.find((spec) => spec.name === unit.name);
66
- if (!unitConversion)
67
- return value;
68
- const convertedValue = value * unitConversion.conversion.factor + unitConversion.conversion.offset;
69
- return convertedValue;
70
- }
71
- function getUnitLabel(parserSpec) {
72
- if (undefined === parserSpec)
73
- return "";
74
- const format = parserSpec.format;
75
- if (!format.units || !format.units[0])
76
- return parserSpec.outUnit.label;
77
- const [unit, label] = format.units[0];
78
- return label ?? unit.label;
79
- }
80
- const ForwardRefQuantityNumberInput = React.forwardRef(function ForwardRefQuantityNumberInput(props, ref) {
81
- const { containerClassName, persistenceValue, min, max, onChange, onBlur, onKeyDown, step, snap, showTouchButtons, quantityType, ...otherProps } = props;
82
- const rawValueRef = React.useRef(persistenceValue);
83
- const [formatterSpec, setFormatterSpec] = React.useState(() => adjustFormatterSpec(core_frontend_1.IModelApp.quantityFormatter.findFormatterSpecByQuantityType(quantityType)));
84
- const [parserSpec, setParserSpec] = React.useState(() => core_frontend_1.IModelApp.quantityFormatter.findParserSpecByQuantityType(quantityType));
85
- const formatValue = React.useCallback((value) => {
86
- if (undefined === value)
87
- return "";
88
- if (formatterSpec) {
89
- return formatterSpec.applyFormatting(value);
90
- }
91
- return value.toFixed(2);
92
- }, [formatterSpec]);
93
- const lastFormattedValueRef = React.useRef(formatValue(persistenceValue));
94
- const [formattedValue, setFormattedValue] = React.useState(() => lastFormattedValueRef.current);
95
- React.useEffect(() => {
96
- return core_frontend_1.IModelApp.quantityFormatter.onActiveFormattingUnitSystemChanged.addListener(() => {
97
- setFormatterSpec(adjustFormatterSpec(core_frontend_1.IModelApp.quantityFormatter.findFormatterSpecByQuantityType(quantityType)));
98
- setParserSpec(core_frontend_1.IModelApp.quantityFormatter.findParserSpecByQuantityType(quantityType));
99
- });
100
- }, [quantityType]);
101
- React.useEffect(() => {
102
- return core_frontend_1.IModelApp.quantityFormatter.onQuantityFormatsChanged.addListener((args) => {
103
- const quantityKey = core_frontend_1.IModelApp.quantityFormatter.getQuantityTypeKey(quantityType);
104
- if (args.quantityType === quantityKey) {
105
- setFormatterSpec(adjustFormatterSpec(core_frontend_1.IModelApp.quantityFormatter.findFormatterSpecByQuantityType(quantityType)));
106
- setParserSpec(core_frontend_1.IModelApp.quantityFormatter.findParserSpecByQuantityType(quantityType));
107
- }
108
- });
109
- }, [quantityType]);
110
- const unitLabel = getUnitLabel(parserSpec);
111
- // See if new initialValue props have changed since component mounted
112
- React.useEffect(() => {
113
- rawValueRef.current = persistenceValue;
114
- const currentFormattedValue = formatValue(rawValueRef.current);
115
- setFormattedValue(currentFormattedValue);
116
- }, [formatValue, persistenceValue]);
117
- // this is the unprocessed input from user, it is not processed until blur or enter key press
118
- const handleDisplayValueChange = React.useCallback((event) => {
119
- setFormattedValue(event.currentTarget.value);
120
- }, []);
121
- const updateValue = React.useCallback((newValue) => {
122
- let persistedValue = newValue;
123
- if (parserSpec) {
124
- // convert value from display unit to persistence unit
125
- const [unit] = parserSpec.format.units
126
- ? parserSpec.format.units[0]
127
- : [parserSpec.outUnit];
128
- persistedValue = convertValueFromDisplayToPersistence(newValue, parserSpec.unitConversions, unit);
129
- rawValueRef.current = persistedValue;
130
- }
131
- const newFormattedVal = formatValue(persistedValue);
132
- onChange && onChange(persistedValue);
133
- setFormattedValue(newFormattedVal);
134
- }, [formatValue, onChange, parserSpec]);
135
- /**
136
- * Used internally to parse the argument x to it's numeric representation.
137
- * If the argument cannot be converted to finite number returns 0; If a
138
- * "precision" prop is specified uses it round the number with that
139
- * precision (no fixed precision here because the return value is float, not
140
- * string).
141
- */
142
- const parseInternal = React.useCallback((x) => {
143
- if (!x)
144
- return 0;
145
- let n = parseFloat(x);
146
- if (isNaN(n) || !isFinite(n)) {
147
- n = 0;
148
- }
149
- const localPrecision = 6; // TODO get a reasonable value from format
150
- const q = Math.pow(10, localPrecision);
151
- const localMin = undefined === min ? Number.MIN_SAFE_INTEGER : min;
152
- const localMax = undefined === max ? Number.MAX_SAFE_INTEGER : max;
153
- n = Math.min(Math.max(n, localMin), localMax);
154
- n = Math.round(n * q) / q;
155
- return n;
156
- }, [min, max]);
157
- const updateValueFromString = React.useCallback((strValue) => {
158
- if (parserSpec) {
159
- const parseResult = core_frontend_1.IModelApp.quantityFormatter.parseToQuantityValue(strValue, parserSpec);
160
- // at this point we should have a string value in persistence units without a label
161
- if (core_quantity_1.Parser.isParsedQuantity(parseResult)) {
162
- const persistedValue = parseResult.value; // in persistence units
163
- // set strValue and let it go through parseInternal which will ensure min/max limits are observed
164
- strValue = formatValue(persistedValue);
165
- }
166
- else {
167
- if (rawValueRef.current) {
168
- // restore last known good value
169
- const lastKnownFormattedVal = formatValue(rawValueRef.current);
170
- setFormattedValue(lastKnownFormattedVal);
171
- return;
172
- }
173
- }
174
- }
175
- const newValue = parseInternal(strValue);
176
- if (undefined !== newValue)
177
- updateValue(newValue);
178
- }, [formatValue, parseInternal, parserSpec, updateValue]);
179
- const handleBlur = React.useCallback((event) => {
180
- const newVal = parseInternal(event.target.value);
181
- onBlur && onBlur(event);
182
- updateValue(newVal);
183
- }, [parseInternal, updateValue, onBlur]);
184
- const getIncrementValue = React.useCallback((increment) => {
185
- if (typeof step === "function") {
186
- const stepVal = step(increment ? "up" : "down");
187
- return stepVal ? stepVal : 1;
188
- }
189
- return !step ? 1 : step;
190
- }, [step]);
191
- /**
192
- * The internal method that actually sets the new value on the input
193
- */
194
- const applyStep = React.useCallback((increment) => {
195
- const incrementValue = getIncrementValue(increment);
196
- let num = parseInternal(formattedValue) +
197
- (increment ? incrementValue : -incrementValue);
198
- if (snap) {
199
- num = Math.round(num / incrementValue) * incrementValue;
200
- }
201
- const localMin = undefined === min ? Number.MIN_SAFE_INTEGER : min;
202
- const localMax = undefined === max ? Number.MAX_SAFE_INTEGER : max;
203
- num = Math.min(Math.max(num, localMin), localMax);
204
- updateValue(num);
205
- }, [
206
- formattedValue,
207
- getIncrementValue,
208
- max,
209
- min,
210
- parseInternal,
211
- snap,
212
- updateValue,
213
- ]);
214
- const handleKeyDown = React.useCallback((event) => {
215
- if (event.key === ts_key_enum_1.Key.Enter.valueOf()) {
216
- updateValueFromString(event.currentTarget.value);
217
- event.preventDefault();
218
- }
219
- else if (event.key === ts_key_enum_1.Key.Escape.valueOf()) {
220
- setFormattedValue(formatValue(rawValueRef.current));
221
- event.preventDefault();
222
- }
223
- else if (event.key === ts_key_enum_1.Key.ArrowDown.valueOf()) {
224
- applyStep(false);
225
- event.preventDefault();
226
- }
227
- else if (event.key === ts_key_enum_1.Key.ArrowUp.valueOf()) {
228
- applyStep(true);
229
- event.preventDefault();
230
- }
231
- onKeyDown && onKeyDown(event);
232
- }, [onKeyDown, updateValueFromString, formatValue, applyStep]);
233
- const handleDownClick = React.useCallback((event) => {
234
- applyStep(false);
235
- event.preventDefault();
236
- }, [applyStep]);
237
- const handleUpClick = React.useCallback((event) => {
238
- applyStep(true);
239
- event.preventDefault();
240
- }, [applyStep]);
241
- const handleFocus = React.useCallback((event) => {
242
- event.currentTarget.select();
243
- }, []);
244
- const isDisabled = !!otherProps.disabled;
245
- const containerClasses = (0, classnames_1.default)("component-quantity-number-input-container", containerClassName, showTouchButtons && "component-number-buttons-for-touch", isDisabled && "component-quantity-number-input-disabled");
246
- const caretUp = showTouchButtons ? React.createElement(itwinui_icons_react_1.SvgCaretUp, null) : React.createElement(itwinui_icons_react_1.SvgCaretUpSmall, null);
247
- const caretDown = showTouchButtons ? React.createElement(itwinui_icons_react_1.SvgCaretDown, null) : React.createElement(itwinui_icons_react_1.SvgCaretDownSmall, null);
248
- return (React.createElement("div", { className: containerClasses },
249
- React.createElement("div", { className: "component-quantity-number-input-value-and-buttons-container" },
250
- React.createElement(itwinui_react_1.Input, { ref: ref, value: formattedValue, onChange: handleDisplayValueChange, onKeyDown: handleKeyDown, onBlur: handleBlur, onFocus: handleFocus, size: "small", ...otherProps }),
251
- React.createElement("div", { className: (0, classnames_1.default)("component-quantity-number-input-buttons-container", showTouchButtons && "component-number-buttons-for-touch") },
252
- React.createElement("div", { className: "component-quantity-number-input-button component-quantity-number-input-button-up", tabIndex: -1, onClick: handleUpClick },
253
- React.createElement(core_react_1.Icon, { iconSpec: caretUp })),
254
- React.createElement("div", { className: "component-quantity-number-input-button component-quantity-number-input-button-down", tabIndex: -1, onClick: handleDownClick },
255
- React.createElement(core_react_1.Icon, { iconSpec: caretDown })))),
256
- React.createElement("span", { className: "component-quantity-number-input-suffix" }, unitLabel)));
257
- });
258
- /** The QuantityNumberInput component accepts input for quantity values. The quantity value is shown as a single numeric value and the quantity's
259
- * "display" unit is shown next to the input control. The "display" unit is determined by the active unit system as defined by the [QuantityFormatter]($frontend).
260
- * The control also display buttons to increment and decrement the "displayed" value. The value reported by via the onChange function is in "persistence"
261
- * units that can be stored in the iModel.
262
- * @beta
263
- */
264
- exports.QuantityNumberInput = ForwardRefQuantityNumberInput;
265
- //# sourceMappingURL=QuantityNumberInput.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"QuantityNumberInput.js","sourceRoot":"","sources":["../../../../src/imodel-components-react/inputs/QuantityNumberInput.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 Inputs\n */\n\nimport \"./QuantityNumberInput.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport { Key } from \"ts-key-enum\";\nimport { Icon } from \"@itwin/core-react\";\nimport type { QuantityTypeArg } from \"@itwin/core-frontend\";\nimport { IModelApp } from \"@itwin/core-frontend\";\nimport type {\n ParserSpec,\n UnitConversionSpec,\n UnitProps,\n} from \"@itwin/core-quantity\";\nimport {\n DecimalPrecision,\n FormatterSpec,\n FormatTraits,\n FormatType,\n Parser,\n} from \"@itwin/core-quantity\";\nimport { Input } from \"@itwin/itwinui-react\";\nimport {\n SvgCaretDown,\n SvgCaretDownSmall,\n SvgCaretUp,\n SvgCaretUpSmall,\n} from \"@itwin/itwinui-icons-react\";\n\ntype InputProps = React.ComponentPropsWithoutRef<typeof Input>;\n\n/** Step function prototype for [[QuantityNumberInput]] component\n * @beta\n */\nexport type StepFunctionProp =\n | number\n | ((direction: string) => number | undefined);\n\n/** Properties for the [[QuantityNumberInput]] component\n * @beta\n */\nexport interface QuantityNumberInputProps\n extends Omit<\n InputProps,\n \"value\" | \"min\" | \"max\" | \"step\" | \"onFocus\" | \"onChange\"\n > {\n /** Initial magnitude in 'persistence' units. See `getPersistenceUnitByQuantityType` in [QuantityFormatter]($core-frontend).\n * Set to `undefined` to show placeholder text */\n persistenceValue?: number;\n /** CSS class name for the QuantityNumberInput component container div */\n containerClassName?: string;\n /** number or function\tNumber.MIN_SAFE_INTEGER */\n min?: number;\n /** number or function\tdefaults to Number.MAX_SAFE_INTEGER */\n max?: number;\n /** increment step value used while incrementing or decrementing (up/down buttons or arrow keys) defaults to 1. */\n step?: StepFunctionProp;\n /** Set to true to \"snap\" to the closest step value while incrementing or decrementing (up/down buttons or arrow keys). */\n snap?: boolean;\n /** Function to call when the quantity value is changed. The value returned will be in 'persistence' units. */\n onChange?: (value: number) => void;\n /** if true up/down buttons are shown larger and side by side */\n showTouchButtons?: boolean;\n /** Provides ability to return reference to HTMLInputElement */\n ref?: React.Ref<HTMLInputElement>;\n /** Type of quantity being input. */\n quantityType: QuantityTypeArg;\n}\n\n/** adjust formatter spec to show only primary unit without a label. */\nfunction adjustFormatterSpec(formatterSpec: FormatterSpec | undefined) {\n if (undefined === formatterSpec) return formatterSpec;\n const singleUnitConversion: UnitConversionSpec[] = [];\n singleUnitConversion.push(formatterSpec.unitConversions[0]);\n const newFormat = formatterSpec.format.clone({\n showOnlyPrimaryUnit: true,\n traits: formatterSpec.format.formatTraits & ~FormatTraits.ShowUnitLabel,\n type: FormatType.Decimal,\n precision:\n FormatType.Decimal !== formatterSpec.format.type\n ? DecimalPrecision.Four\n : formatterSpec.format.precision,\n });\n return new FormatterSpec(\n \"single-value\",\n newFormat,\n singleUnitConversion,\n formatterSpec.persistenceUnit\n );\n}\n\nfunction convertValueFromDisplayToPersistence(\n value: number,\n unitConversions: UnitConversionSpec[] | undefined,\n unit: UnitProps\n) {\n if (!unitConversions || 0 === unitConversions.length) return value;\n\n const unitConversion = unitConversions.find(\n (spec) => spec.name === unit.name\n );\n if (!unitConversion) return value;\n\n const convertedValue =\n value * unitConversion.conversion.factor + unitConversion.conversion.offset;\n return convertedValue;\n}\n\nfunction getUnitLabel(parserSpec: ParserSpec | undefined) {\n if (undefined === parserSpec) return \"\";\n\n const format = parserSpec.format;\n if (!format.units || !format.units[0]) return parserSpec.outUnit.label;\n const [unit, label] = format.units[0];\n return label ?? unit.label;\n}\n\nconst ForwardRefQuantityNumberInput = React.forwardRef<\n HTMLInputElement,\n QuantityNumberInputProps\n>(function ForwardRefQuantityNumberInput(props, ref) {\n const {\n containerClassName,\n persistenceValue,\n min,\n max,\n onChange,\n onBlur,\n onKeyDown,\n step,\n snap,\n showTouchButtons,\n quantityType,\n ...otherProps\n } = props;\n const rawValueRef = React.useRef(persistenceValue);\n\n const [formatterSpec, setFormatterSpec] = React.useState(() =>\n adjustFormatterSpec(\n IModelApp.quantityFormatter.findFormatterSpecByQuantityType(quantityType)\n )\n );\n const [parserSpec, setParserSpec] = React.useState(() =>\n IModelApp.quantityFormatter.findParserSpecByQuantityType(quantityType)\n );\n\n const formatValue = React.useCallback(\n (value: number | undefined) => {\n if (undefined === value) return \"\";\n\n if (formatterSpec) {\n return formatterSpec.applyFormatting(value);\n }\n return value.toFixed(2);\n },\n [formatterSpec]\n );\n\n const lastFormattedValueRef = React.useRef(formatValue(persistenceValue));\n const [formattedValue, setFormattedValue] = React.useState(\n () => lastFormattedValueRef.current\n );\n\n React.useEffect(() => {\n return IModelApp.quantityFormatter.onActiveFormattingUnitSystemChanged.addListener(\n () => {\n setFormatterSpec(\n adjustFormatterSpec(\n IModelApp.quantityFormatter.findFormatterSpecByQuantityType(\n quantityType\n )\n )\n );\n setParserSpec(\n IModelApp.quantityFormatter.findParserSpecByQuantityType(quantityType)\n );\n }\n );\n }, [quantityType]);\n\n React.useEffect(() => {\n return IModelApp.quantityFormatter.onQuantityFormatsChanged.addListener(\n (args) => {\n const quantityKey =\n IModelApp.quantityFormatter.getQuantityTypeKey(quantityType);\n if (args.quantityType === quantityKey) {\n setFormatterSpec(\n adjustFormatterSpec(\n IModelApp.quantityFormatter.findFormatterSpecByQuantityType(\n quantityType\n )\n )\n );\n setParserSpec(\n IModelApp.quantityFormatter.findParserSpecByQuantityType(\n quantityType\n )\n );\n }\n }\n );\n }, [quantityType]);\n\n const unitLabel = getUnitLabel(parserSpec);\n\n // See if new initialValue props have changed since component mounted\n React.useEffect(() => {\n rawValueRef.current = persistenceValue;\n const currentFormattedValue = formatValue(rawValueRef.current);\n setFormattedValue(currentFormattedValue);\n }, [formatValue, persistenceValue]);\n\n // this is the unprocessed input from user, it is not processed until blur or enter key press\n const handleDisplayValueChange = React.useCallback(\n (event: React.ChangeEvent<HTMLInputElement>) => {\n setFormattedValue(event.currentTarget.value);\n },\n []\n );\n\n const updateValue = React.useCallback(\n (newValue: number) => {\n let persistedValue = newValue;\n if (parserSpec) {\n // convert value from display unit to persistence unit\n const [unit] = parserSpec.format.units\n ? parserSpec.format.units[0]\n : [parserSpec.outUnit];\n persistedValue = convertValueFromDisplayToPersistence(\n newValue,\n parserSpec.unitConversions,\n unit\n );\n rawValueRef.current = persistedValue;\n }\n const newFormattedVal = formatValue(persistedValue);\n onChange && onChange(persistedValue);\n setFormattedValue(newFormattedVal);\n },\n [formatValue, onChange, parserSpec]\n );\n\n /**\n * Used internally to parse the argument x to it's numeric representation.\n * If the argument cannot be converted to finite number returns 0; If a\n * \"precision\" prop is specified uses it round the number with that\n * precision (no fixed precision here because the return value is float, not\n * string).\n */\n const parseInternal = React.useCallback(\n (x: string | undefined) => {\n if (!x) return 0;\n\n let n = parseFloat(x);\n if (isNaN(n) || !isFinite(n)) {\n n = 0;\n }\n\n const localPrecision = 6; // TODO get a reasonable value from format\n const q = Math.pow(10, localPrecision);\n const localMin = undefined === min ? Number.MIN_SAFE_INTEGER : min;\n const localMax = undefined === max ? Number.MAX_SAFE_INTEGER : max;\n n = Math.min(Math.max(n, localMin), localMax);\n n = Math.round(n * q) / q;\n\n return n;\n },\n [min, max]\n );\n\n const updateValueFromString = React.useCallback(\n (strValue: string) => {\n if (parserSpec) {\n const parseResult = IModelApp.quantityFormatter.parseToQuantityValue(\n strValue,\n parserSpec\n );\n // at this point we should have a string value in persistence units without a label\n if (Parser.isParsedQuantity(parseResult)) {\n const persistedValue = parseResult.value; // in persistence units\n // set strValue and let it go through parseInternal which will ensure min/max limits are observed\n strValue = formatValue(persistedValue)!;\n } else {\n if (rawValueRef.current) {\n // restore last known good value\n const lastKnownFormattedVal = formatValue(rawValueRef.current);\n setFormattedValue(lastKnownFormattedVal);\n return;\n }\n }\n }\n const newValue = parseInternal(strValue);\n if (undefined !== newValue) updateValue(newValue);\n },\n [formatValue, parseInternal, parserSpec, updateValue]\n );\n\n const handleBlur = React.useCallback(\n (event: React.FocusEvent<HTMLInputElement>) => {\n const newVal = parseInternal(event.target.value);\n onBlur && onBlur(event);\n updateValue(newVal);\n },\n [parseInternal, updateValue, onBlur]\n );\n\n const getIncrementValue = React.useCallback(\n (increment: boolean) => {\n if (typeof step === \"function\") {\n const stepVal = step(increment ? \"up\" : \"down\");\n return stepVal ? stepVal : 1;\n }\n\n return !step ? 1 : step;\n },\n [step]\n );\n\n /**\n * The internal method that actually sets the new value on the input\n */\n const applyStep = React.useCallback(\n (increment: boolean) => {\n const incrementValue = getIncrementValue(increment);\n\n let num =\n parseInternal(formattedValue) +\n (increment ? incrementValue : -incrementValue);\n if (snap) {\n num = Math.round(num / incrementValue) * incrementValue;\n }\n\n const localMin = undefined === min ? Number.MIN_SAFE_INTEGER : min;\n const localMax = undefined === max ? Number.MAX_SAFE_INTEGER : max;\n num = Math.min(Math.max(num, localMin), localMax);\n\n updateValue(num);\n },\n [\n formattedValue,\n getIncrementValue,\n max,\n min,\n parseInternal,\n snap,\n updateValue,\n ]\n );\n\n const handleKeyDown = React.useCallback(\n (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (event.key === Key.Enter.valueOf()) {\n updateValueFromString(event.currentTarget.value);\n event.preventDefault();\n } else if (event.key === Key.Escape.valueOf()) {\n setFormattedValue(formatValue(rawValueRef.current));\n event.preventDefault();\n } else if (event.key === Key.ArrowDown.valueOf()) {\n applyStep(false);\n event.preventDefault();\n } else if (event.key === Key.ArrowUp.valueOf()) {\n applyStep(true);\n event.preventDefault();\n }\n onKeyDown && onKeyDown(event);\n },\n [onKeyDown, updateValueFromString, formatValue, applyStep]\n );\n\n const handleDownClick = React.useCallback(\n (event: React.MouseEvent<HTMLDivElement, MouseEvent>) => {\n applyStep(false);\n event.preventDefault();\n },\n [applyStep]\n );\n\n const handleUpClick = React.useCallback(\n (event: React.MouseEvent<HTMLDivElement, MouseEvent>) => {\n applyStep(true);\n event.preventDefault();\n },\n [applyStep]\n );\n\n const handleFocus = React.useCallback(\n (event: React.FocusEvent<HTMLInputElement>) => {\n event.currentTarget.select();\n },\n []\n );\n\n const isDisabled = !!otherProps.disabled;\n const containerClasses = classnames(\n \"component-quantity-number-input-container\",\n containerClassName,\n showTouchButtons && \"component-number-buttons-for-touch\",\n isDisabled && \"component-quantity-number-input-disabled\"\n );\n\n const caretUp = showTouchButtons ? <SvgCaretUp /> : <SvgCaretUpSmall />;\n const caretDown = showTouchButtons ? <SvgCaretDown /> : <SvgCaretDownSmall />;\n\n return (\n <div className={containerClasses}>\n <div className=\"component-quantity-number-input-value-and-buttons-container\">\n <Input\n ref={ref}\n value={formattedValue}\n onChange={handleDisplayValueChange}\n onKeyDown={handleKeyDown}\n onBlur={handleBlur}\n onFocus={handleFocus}\n size=\"small\"\n {...otherProps}\n />\n <div\n className={classnames(\n \"component-quantity-number-input-buttons-container\",\n showTouchButtons && \"component-number-buttons-for-touch\"\n )}\n >\n {/* eslint-disable-next-line jsx-a11y/no-static-element-interactions, jsx-a11y/click-events-have-key-events */}\n <div\n className=\"component-quantity-number-input-button component-quantity-number-input-button-up\"\n tabIndex={-1}\n onClick={handleUpClick}\n >\n {/* eslint-disable-next-line deprecation/deprecation */}\n <Icon iconSpec={caretUp} />\n </div>\n {/* eslint-disable-next-line jsx-a11y/no-static-element-interactions, jsx-a11y/click-events-have-key-events */}\n <div\n className=\"component-quantity-number-input-button component-quantity-number-input-button-down\"\n tabIndex={-1}\n onClick={handleDownClick}\n >\n {/* eslint-disable-next-line deprecation/deprecation */}\n <Icon iconSpec={caretDown} />\n </div>\n </div>\n </div>\n <span className=\"component-quantity-number-input-suffix\">\n {unitLabel}\n </span>\n </div>\n );\n});\n\n/** The QuantityNumberInput component accepts input for quantity values. The quantity value is shown as a single numeric value and the quantity's\n * \"display\" unit is shown next to the input control. The \"display\" unit is determined by the active unit system as defined by the [QuantityFormatter]($frontend).\n * The control also display buttons to increment and decrement the \"displayed\" value. The value reported by via the onChange function is in \"persistence\"\n * units that can be stored in the iModel.\n * @beta\n */\nexport const QuantityNumberInput: (\n props: QuantityNumberInputProps\n) => React.ReactNode = ForwardRefQuantityNumberInput;\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Swatch.d.ts","sourceRoot":"","sources":["../../../../src/imodel-components-react/lineweight/Swatch.tsx"],"names":[],"mappings":"AAIA;;GAEG;AAEH,OAAO,eAAe,CAAC;AAEvB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAGrD;;GAEG;AACH,MAAM,WAAW,qBACf,SAAQ,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAEnD,WAAW;IACb,0BAA0B;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,4BAA4B;IAC5B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,sBAAsB;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,sBAAsB;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,6DAA6D;IAC7D,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,KAAK,CAAC,aAAa,CAAC,qBAAqB,CAAC;gBAClE,KAAK,EAAE,qBAAqB;IAIxB,iBAAiB;IAEjB,MAAM;CA4DvB"}