@itwin/imodel-components-react 4.0.0-dev.12 → 4.0.0-dev.14

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 (282) hide show
  1. package/CHANGELOG.md +113 -1
  2. package/README.md +2 -2
  3. package/lib/cjs/imodel-components-react/UiIModelComponents.d.ts +28 -28
  4. package/lib/cjs/imodel-components-react/UiIModelComponents.js +75 -77
  5. package/lib/cjs/imodel-components-react/UiIModelComponents.js.map +1 -1
  6. package/lib/cjs/imodel-components-react/color/AlphaSlider.d.ts +36 -36
  7. package/lib/cjs/imodel-components-react/color/AlphaSlider.js +190 -186
  8. package/lib/cjs/imodel-components-react/color/AlphaSlider.js.map +1 -1
  9. package/lib/cjs/imodel-components-react/color/ColorPickerButton.d.ts +37 -37
  10. package/lib/cjs/imodel-components-react/color/ColorPickerButton.js +112 -108
  11. package/lib/cjs/imodel-components-react/color/ColorPickerButton.js.map +1 -1
  12. package/lib/cjs/imodel-components-react/color/ColorPickerDialog.d.ts +23 -23
  13. package/lib/cjs/imodel-components-react/color/ColorPickerDialog.js +78 -74
  14. package/lib/cjs/imodel-components-react/color/ColorPickerDialog.js.map +1 -1
  15. package/lib/cjs/imodel-components-react/color/ColorPickerPanel.d.ts +21 -21
  16. package/lib/cjs/imodel-components-react/color/ColorPickerPanel.js +149 -145
  17. package/lib/cjs/imodel-components-react/color/ColorPickerPanel.js.map +1 -1
  18. package/lib/cjs/imodel-components-react/color/ColorPickerPopup.d.ts +44 -44
  19. package/lib/cjs/imodel-components-react/color/ColorPickerPopup.js +143 -139
  20. package/lib/cjs/imodel-components-react/color/ColorPickerPopup.js.map +1 -1
  21. package/lib/cjs/imodel-components-react/color/HueSlider.d.ts +22 -22
  22. package/lib/cjs/imodel-components-react/color/HueSlider.js +203 -199
  23. package/lib/cjs/imodel-components-react/color/HueSlider.js.map +1 -1
  24. package/lib/cjs/imodel-components-react/color/SaturationPicker.d.ts +20 -20
  25. package/lib/cjs/imodel-components-react/color/SaturationPicker.js +217 -213
  26. package/lib/cjs/imodel-components-react/color/SaturationPicker.js.map +1 -1
  27. package/lib/cjs/imodel-components-react/color/Swatch.d.ts +22 -22
  28. package/lib/cjs/imodel-components-react/color/Swatch.js +64 -60
  29. package/lib/cjs/imodel-components-react/color/Swatch.js.map +1 -1
  30. package/lib/cjs/imodel-components-react/color/getCSSColorFromDef.d.ts +6 -6
  31. package/lib/cjs/imodel-components-react/color/getCSSColorFromDef.js +23 -23
  32. package/lib/cjs/imodel-components-react/editors/ColorEditor.d.ts +44 -44
  33. package/lib/cjs/imodel-components-react/editors/ColorEditor.js +155 -151
  34. package/lib/cjs/imodel-components-react/editors/ColorEditor.js.map +1 -1
  35. package/lib/cjs/imodel-components-react/editors/WeightEditor.d.ts +47 -47
  36. package/lib/cjs/imodel-components-react/editors/WeightEditor.js +164 -160
  37. package/lib/cjs/imodel-components-react/editors/WeightEditor.js.map +1 -1
  38. package/lib/cjs/imodel-components-react/inputs/QuantityInput.d.ts +25 -25
  39. package/lib/cjs/imodel-components-react/inputs/QuantityInput.js +100 -96
  40. package/lib/cjs/imodel-components-react/inputs/QuantityInput.js.map +1 -1
  41. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.d.ts +44 -44
  42. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.d.ts.map +1 -1
  43. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.js +272 -268
  44. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.js.map +1 -1
  45. package/lib/cjs/imodel-components-react/lineweight/Swatch.d.ts +33 -33
  46. package/lib/cjs/imodel-components-react/lineweight/Swatch.js +89 -85
  47. package/lib/cjs/imodel-components-react/lineweight/Swatch.js.map +1 -1
  48. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.d.ts +60 -60
  49. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.js +163 -159
  50. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.js.map +1 -1
  51. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.scss +1 -2
  52. package/lib/cjs/imodel-components-react/navigationaids/Cube.d.ts +45 -45
  53. package/lib/cjs/imodel-components-react/navigationaids/Cube.js +131 -127
  54. package/lib/cjs/imodel-components-react/navigationaids/Cube.js.map +1 -1
  55. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.d.ts +175 -174
  56. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.d.ts.map +1 -1
  57. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.js +650 -638
  58. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.js.map +1 -1
  59. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts +145 -145
  60. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.js +657 -653
  61. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.js.map +1 -1
  62. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.d.ts +26 -26
  63. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.js +103 -99
  64. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.js.map +1 -1
  65. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.scss +0 -4
  66. package/lib/cjs/imodel-components-react/quantityformat/FormatPrecision.d.ts +17 -17
  67. package/lib/cjs/imodel-components-react/quantityformat/FormatPrecision.js +56 -53
  68. package/lib/cjs/imodel-components-react/quantityformat/FormatPrecision.js.map +1 -1
  69. package/lib/cjs/imodel-components-react/quantityformat/FormatSample.d.ts +18 -18
  70. package/lib/cjs/imodel-components-react/quantityformat/FormatSample.js +88 -84
  71. package/lib/cjs/imodel-components-react/quantityformat/FormatSample.js.map +1 -1
  72. package/lib/cjs/imodel-components-react/quantityformat/FormatType.d.ts +17 -17
  73. package/lib/cjs/imodel-components-react/quantityformat/FormatType.js +89 -86
  74. package/lib/cjs/imodel-components-react/quantityformat/FormatType.js.map +1 -1
  75. package/lib/cjs/imodel-components-react/quantityformat/FormatUnitLabel.d.ts +17 -17
  76. package/lib/cjs/imodel-components-react/quantityformat/FormatUnitLabel.js +112 -109
  77. package/lib/cjs/imodel-components-react/quantityformat/FormatUnitLabel.js.map +1 -1
  78. package/lib/cjs/imodel-components-react/quantityformat/FormatUnits.d.ts +19 -19
  79. package/lib/cjs/imodel-components-react/quantityformat/FormatUnits.js +133 -133
  80. package/lib/cjs/imodel-components-react/quantityformat/FormatUnits.js.map +1 -1
  81. package/lib/cjs/imodel-components-react/quantityformat/MiscFormatOptions.d.ts +21 -21
  82. package/lib/cjs/imodel-components-react/quantityformat/MiscFormatOptions.js +187 -184
  83. package/lib/cjs/imodel-components-react/quantityformat/MiscFormatOptions.js.map +1 -1
  84. package/lib/cjs/imodel-components-react/quantityformat/QuantityFormatPanel.d.ts +22 -22
  85. package/lib/cjs/imodel-components-react/quantityformat/QuantityFormatPanel.js +149 -145
  86. package/lib/cjs/imodel-components-react/quantityformat/QuantityFormatPanel.js.map +1 -1
  87. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalPrecision.d.ts +17 -17
  88. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalPrecision.js +63 -59
  89. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalPrecision.js.map +1 -1
  90. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalSeparator.d.ts +17 -17
  91. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalSeparator.js +51 -47
  92. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalSeparator.js.map +1 -1
  93. package/lib/cjs/imodel-components-react/quantityformat/misc/FractionPrecision.d.ts +16 -16
  94. package/lib/cjs/imodel-components-react/quantityformat/misc/FractionPrecision.js +58 -54
  95. package/lib/cjs/imodel-components-react/quantityformat/misc/FractionPrecision.js.map +1 -1
  96. package/lib/cjs/imodel-components-react/quantityformat/misc/ScientificType.d.ts +18 -18
  97. package/lib/cjs/imodel-components-react/quantityformat/misc/ScientificType.js +52 -48
  98. package/lib/cjs/imodel-components-react/quantityformat/misc/ScientificType.js.map +1 -1
  99. package/lib/cjs/imodel-components-react/quantityformat/misc/SignOption.d.ts +17 -17
  100. package/lib/cjs/imodel-components-react/quantityformat/misc/SignOption.js +54 -50
  101. package/lib/cjs/imodel-components-react/quantityformat/misc/SignOption.js.map +1 -1
  102. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSeparatorSelector.d.ts +17 -17
  103. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js +62 -58
  104. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js.map +1 -1
  105. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSizeSelector.d.ts +17 -17
  106. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSizeSelector.js +51 -47
  107. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSizeSelector.js.map +1 -1
  108. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSelector.d.ts +17 -17
  109. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSelector.js +60 -56
  110. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSelector.js.map +1 -1
  111. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSeparator.d.ts +17 -17
  112. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSeparator.js +98 -95
  113. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSeparator.js.map +1 -1
  114. package/lib/cjs/imodel-components-react/quantityformat/misc/UnitDescr.d.ts +23 -23
  115. package/lib/cjs/imodel-components-react/quantityformat/misc/UnitDescr.js +123 -119
  116. package/lib/cjs/imodel-components-react/quantityformat/misc/UnitDescr.js.map +1 -1
  117. package/lib/cjs/imodel-components-react/timeline/BaseSolarDataProvider.d.ts +52 -52
  118. package/lib/cjs/imodel-components-react/timeline/BaseSolarDataProvider.d.ts.map +1 -1
  119. package/lib/cjs/imodel-components-react/timeline/BaseSolarDataProvider.js +142 -143
  120. package/lib/cjs/imodel-components-react/timeline/BaseSolarDataProvider.js.map +1 -1
  121. package/lib/cjs/imodel-components-react/timeline/BaseTimelineDataProvider.d.ts +31 -31
  122. package/lib/cjs/imodel-components-react/timeline/BaseTimelineDataProvider.js +69 -69
  123. package/lib/cjs/imodel-components-react/timeline/InlineEdit.d.ts +27 -27
  124. package/lib/cjs/imodel-components-react/timeline/InlineEdit.js +85 -81
  125. package/lib/cjs/imodel-components-react/timeline/InlineEdit.js.map +1 -1
  126. package/lib/cjs/imodel-components-react/timeline/PlayerButton.d.ts +33 -33
  127. package/lib/cjs/imodel-components-react/timeline/PlayerButton.js +99 -95
  128. package/lib/cjs/imodel-components-react/timeline/PlayerButton.js.map +1 -1
  129. package/lib/cjs/imodel-components-react/timeline/Scrubber.d.ts +54 -54
  130. package/lib/cjs/imodel-components-react/timeline/Scrubber.js +195 -191
  131. package/lib/cjs/imodel-components-react/timeline/Scrubber.js.map +1 -1
  132. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.d.ts +77 -77
  133. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.js +432 -428
  134. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.js.map +1 -1
  135. package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.d.ts +15 -15
  136. package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.js +58 -54
  137. package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.js.map +1 -1
  138. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.d.ts +130 -133
  139. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.d.ts.map +1 -1
  140. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.js +398 -365
  141. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.js.map +1 -1
  142. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.scss +17 -0
  143. package/lib/cjs/imodel-components-react/timeline/interfaces.d.ts +174 -174
  144. package/lib/cjs/imodel-components-react/timeline/interfaces.d.ts.map +1 -1
  145. package/lib/cjs/imodel-components-react/timeline/interfaces.js +45 -45
  146. package/lib/cjs/imodel-components-react/viewport/ViewportComponent.d.ts +42 -42
  147. package/lib/cjs/imodel-components-react/viewport/ViewportComponent.d.ts.map +1 -1
  148. package/lib/cjs/imodel-components-react/viewport/ViewportComponent.js +276 -274
  149. package/lib/cjs/imodel-components-react/viewport/ViewportComponent.js.map +1 -1
  150. package/lib/cjs/imodel-components-react/viewport/ViewportComponentEvents.d.ts +106 -106
  151. package/lib/cjs/imodel-components-react/viewport/ViewportComponentEvents.js +105 -105
  152. package/lib/cjs/imodel-components-react/viewport/ViewportComponentEvents.js.map +1 -1
  153. package/lib/cjs/imodel-components-react.d.ts +82 -82
  154. package/lib/cjs/imodel-components-react.js +105 -101
  155. package/lib/cjs/imodel-components-react.js.map +1 -1
  156. package/lib/esm/imodel-components-react/UiIModelComponents.d.ts +28 -28
  157. package/lib/esm/imodel-components-react/UiIModelComponents.js +72 -73
  158. package/lib/esm/imodel-components-react/UiIModelComponents.js.map +1 -1
  159. package/lib/esm/imodel-components-react/color/AlphaSlider.d.ts +36 -36
  160. package/lib/esm/imodel-components-react/color/AlphaSlider.js +160 -160
  161. package/lib/esm/imodel-components-react/color/ColorPickerButton.d.ts +37 -37
  162. package/lib/esm/imodel-components-react/color/ColorPickerButton.js +83 -83
  163. package/lib/esm/imodel-components-react/color/ColorPickerButton.js.map +1 -1
  164. package/lib/esm/imodel-components-react/color/ColorPickerDialog.d.ts +23 -23
  165. package/lib/esm/imodel-components-react/color/ColorPickerDialog.js +51 -51
  166. package/lib/esm/imodel-components-react/color/ColorPickerPanel.d.ts +21 -21
  167. package/lib/esm/imodel-components-react/color/ColorPickerPanel.js +122 -122
  168. package/lib/esm/imodel-components-react/color/ColorPickerPanel.js.map +1 -1
  169. package/lib/esm/imodel-components-react/color/ColorPickerPopup.d.ts +44 -44
  170. package/lib/esm/imodel-components-react/color/ColorPickerPopup.js +114 -114
  171. package/lib/esm/imodel-components-react/color/HueSlider.d.ts +22 -22
  172. package/lib/esm/imodel-components-react/color/HueSlider.js +173 -173
  173. package/lib/esm/imodel-components-react/color/SaturationPicker.d.ts +20 -20
  174. package/lib/esm/imodel-components-react/color/SaturationPicker.js +187 -187
  175. package/lib/esm/imodel-components-react/color/Swatch.d.ts +22 -22
  176. package/lib/esm/imodel-components-react/color/Swatch.js +34 -34
  177. package/lib/esm/imodel-components-react/color/getCSSColorFromDef.d.ts +6 -6
  178. package/lib/esm/imodel-components-react/color/getCSSColorFromDef.js +19 -19
  179. package/lib/esm/imodel-components-react/editors/ColorEditor.d.ts +44 -44
  180. package/lib/esm/imodel-components-react/editors/ColorEditor.js +124 -124
  181. package/lib/esm/imodel-components-react/editors/WeightEditor.d.ts +47 -47
  182. package/lib/esm/imodel-components-react/editors/WeightEditor.js +133 -133
  183. package/lib/esm/imodel-components-react/inputs/QuantityInput.d.ts +25 -25
  184. package/lib/esm/imodel-components-react/inputs/QuantityInput.js +70 -70
  185. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.d.ts +44 -44
  186. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.d.ts.map +1 -1
  187. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.js +243 -243
  188. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.js.map +1 -1
  189. package/lib/esm/imodel-components-react/lineweight/Swatch.d.ts +33 -33
  190. package/lib/esm/imodel-components-react/lineweight/Swatch.js +59 -59
  191. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.d.ts +60 -60
  192. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.js +134 -133
  193. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.js.map +1 -1
  194. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.scss +1 -2
  195. package/lib/esm/imodel-components-react/navigationaids/Cube.d.ts +45 -45
  196. package/lib/esm/imodel-components-react/navigationaids/Cube.js +100 -100
  197. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.d.ts +175 -174
  198. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.d.ts.map +1 -1
  199. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.js +620 -610
  200. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.js.map +1 -1
  201. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts +145 -145
  202. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.js +627 -626
  203. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.js.map +1 -1
  204. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.d.ts +26 -26
  205. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.js +76 -76
  206. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.js.map +1 -1
  207. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.scss +0 -4
  208. package/lib/esm/imodel-components-react/quantityformat/FormatPrecision.d.ts +17 -17
  209. package/lib/esm/imodel-components-react/quantityformat/FormatPrecision.js +29 -30
  210. package/lib/esm/imodel-components-react/quantityformat/FormatPrecision.js.map +1 -1
  211. package/lib/esm/imodel-components-react/quantityformat/FormatSample.d.ts +18 -18
  212. package/lib/esm/imodel-components-react/quantityformat/FormatSample.js +61 -61
  213. package/lib/esm/imodel-components-react/quantityformat/FormatSample.js.map +1 -1
  214. package/lib/esm/imodel-components-react/quantityformat/FormatType.d.ts +17 -17
  215. package/lib/esm/imodel-components-react/quantityformat/FormatType.js +62 -63
  216. package/lib/esm/imodel-components-react/quantityformat/FormatType.js.map +1 -1
  217. package/lib/esm/imodel-components-react/quantityformat/FormatUnitLabel.d.ts +17 -17
  218. package/lib/esm/imodel-components-react/quantityformat/FormatUnitLabel.js +82 -83
  219. package/lib/esm/imodel-components-react/quantityformat/FormatUnitLabel.js.map +1 -1
  220. package/lib/esm/imodel-components-react/quantityformat/FormatUnits.d.ts +19 -19
  221. package/lib/esm/imodel-components-react/quantityformat/FormatUnits.js +106 -110
  222. package/lib/esm/imodel-components-react/quantityformat/FormatUnits.js.map +1 -1
  223. package/lib/esm/imodel-components-react/quantityformat/MiscFormatOptions.d.ts +21 -21
  224. package/lib/esm/imodel-components-react/quantityformat/MiscFormatOptions.js +157 -158
  225. package/lib/esm/imodel-components-react/quantityformat/MiscFormatOptions.js.map +1 -1
  226. package/lib/esm/imodel-components-react/quantityformat/QuantityFormatPanel.d.ts +22 -22
  227. package/lib/esm/imodel-components-react/quantityformat/QuantityFormatPanel.js +122 -122
  228. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalPrecision.d.ts +17 -17
  229. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalPrecision.js +36 -36
  230. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalSeparator.d.ts +17 -17
  231. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalSeparator.js +24 -24
  232. package/lib/esm/imodel-components-react/quantityformat/misc/FractionPrecision.d.ts +16 -16
  233. package/lib/esm/imodel-components-react/quantityformat/misc/FractionPrecision.js +31 -31
  234. package/lib/esm/imodel-components-react/quantityformat/misc/ScientificType.d.ts +18 -18
  235. package/lib/esm/imodel-components-react/quantityformat/misc/ScientificType.js +25 -25
  236. package/lib/esm/imodel-components-react/quantityformat/misc/SignOption.d.ts +17 -17
  237. package/lib/esm/imodel-components-react/quantityformat/misc/SignOption.js +27 -27
  238. package/lib/esm/imodel-components-react/quantityformat/misc/StationSeparatorSelector.d.ts +17 -17
  239. package/lib/esm/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js +35 -35
  240. package/lib/esm/imodel-components-react/quantityformat/misc/StationSizeSelector.d.ts +17 -17
  241. package/lib/esm/imodel-components-react/quantityformat/misc/StationSizeSelector.js +24 -24
  242. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSelector.d.ts +17 -17
  243. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSelector.js +33 -33
  244. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSeparator.d.ts +17 -17
  245. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSeparator.js +68 -69
  246. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSeparator.js.map +1 -1
  247. package/lib/esm/imodel-components-react/quantityformat/misc/UnitDescr.d.ts +23 -23
  248. package/lib/esm/imodel-components-react/quantityformat/misc/UnitDescr.js +96 -96
  249. package/lib/esm/imodel-components-react/timeline/BaseSolarDataProvider.d.ts +52 -52
  250. package/lib/esm/imodel-components-react/timeline/BaseSolarDataProvider.d.ts.map +1 -1
  251. package/lib/esm/imodel-components-react/timeline/BaseSolarDataProvider.js +138 -139
  252. package/lib/esm/imodel-components-react/timeline/BaseSolarDataProvider.js.map +1 -1
  253. package/lib/esm/imodel-components-react/timeline/BaseTimelineDataProvider.d.ts +31 -31
  254. package/lib/esm/imodel-components-react/timeline/BaseTimelineDataProvider.js +65 -65
  255. package/lib/esm/imodel-components-react/timeline/InlineEdit.d.ts +27 -27
  256. package/lib/esm/imodel-components-react/timeline/InlineEdit.js +55 -55
  257. package/lib/esm/imodel-components-react/timeline/PlayerButton.d.ts +33 -33
  258. package/lib/esm/imodel-components-react/timeline/PlayerButton.js +68 -68
  259. package/lib/esm/imodel-components-react/timeline/Scrubber.d.ts +54 -54
  260. package/lib/esm/imodel-components-react/timeline/Scrubber.js +164 -164
  261. package/lib/esm/imodel-components-react/timeline/SolarTimeline.d.ts +77 -77
  262. package/lib/esm/imodel-components-react/timeline/SolarTimeline.js +402 -402
  263. package/lib/esm/imodel-components-react/timeline/SpeedTimeline.d.ts +15 -15
  264. package/lib/esm/imodel-components-react/timeline/SpeedTimeline.js +28 -28
  265. package/lib/esm/imodel-components-react/timeline/TimelineComponent.d.ts +130 -133
  266. package/lib/esm/imodel-components-react/timeline/TimelineComponent.d.ts.map +1 -1
  267. package/lib/esm/imodel-components-react/timeline/TimelineComponent.js +368 -339
  268. package/lib/esm/imodel-components-react/timeline/TimelineComponent.js.map +1 -1
  269. package/lib/esm/imodel-components-react/timeline/TimelineComponent.scss +17 -0
  270. package/lib/esm/imodel-components-react/timeline/interfaces.d.ts +174 -174
  271. package/lib/esm/imodel-components-react/timeline/interfaces.d.ts.map +1 -1
  272. package/lib/esm/imodel-components-react/timeline/interfaces.js +42 -42
  273. package/lib/esm/imodel-components-react/viewport/ViewportComponent.d.ts +42 -42
  274. package/lib/esm/imodel-components-react/viewport/ViewportComponent.d.ts.map +1 -1
  275. package/lib/esm/imodel-components-react/viewport/ViewportComponent.js +249 -251
  276. package/lib/esm/imodel-components-react/viewport/ViewportComponent.js.map +1 -1
  277. package/lib/esm/imodel-components-react/viewport/ViewportComponentEvents.d.ts +106 -106
  278. package/lib/esm/imodel-components-react/viewport/ViewportComponentEvents.js +96 -95
  279. package/lib/esm/imodel-components-react/viewport/ViewportComponentEvents.js.map +1 -1
  280. package/lib/esm/imodel-components-react.d.ts +82 -82
  281. package/lib/esm/imodel-components-react.js +87 -87
  282. package/package.json +26 -24
@@ -1,134 +1,134 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
- * See LICENSE.md in the project root for license terms and full copyright notice.
4
- *--------------------------------------------------------------------------------------------*/
5
- /** @packageDocumentation
6
- * @module PropertyEditors
7
- */
8
- import "./WeightEditor.scss";
9
- import classnames from "classnames";
10
- import * as React from "react";
11
- import { PropertyValueFormat, StandardEditorNames, StandardTypeNames } from "@itwin/appui-abstract";
12
- import { PropertyEditorBase, PropertyEditorManager } from "@itwin/components-react";
13
- import { WeightPickerButton } from "../lineweight/WeightPickerButton";
14
- /** WeightEditor React component that is a property editor for picking a weight using a [[WeightPickerButton]] component
15
- * @public
16
- */
17
- export class WeightEditor extends React.PureComponent {
18
- constructor(props) {
19
- super(props);
20
- this._control = null;
21
- this._isMounted = false;
22
- this._availableWeights = [];
23
- this._divElement = React.createRef();
24
- /** @internal */
25
- this.state = {
26
- weightValue: 0,
27
- readonly: false,
28
- };
29
- this._onLineWeightPick = (weight) => {
30
- const propertyRecord = this.props.propertyRecord;
31
- this.setState({
32
- weightValue: weight,
33
- }, async () => {
34
- // istanbul ignore else
35
- if (propertyRecord && this.props.onCommit) {
36
- const propertyValue = await this.getPropertyValue();
37
- // istanbul ignore else
38
- if (propertyValue !== undefined) {
39
- this.props.onCommit({ propertyRecord, newValue: propertyValue });
40
- }
41
- }
42
- });
43
- };
44
- // TODO: add support for following if we need to specify set of weights to display
45
- // const record = this.props.propertyRecord;
46
- // if (record && record.property && record.property.editor && record.property.editor.params) {
47
- // const weightParams = record.property.editor.params.find((param: PropertyEditorParams) => param.type === PropertyEditorParamTypes.ColorData) as WeightEditorParams;
48
- // // istanbul ignore else
49
- // if (weightParams) {
50
- // weightParams.weightValues.forEach((weight: number) => {
51
- // this._availableWeights.push(weight);
52
- // });
53
- // }
54
- // }
55
- }
56
- async getPropertyValue() {
57
- const record = this.props.propertyRecord;
58
- let propertyValue;
59
- // istanbul ignore else
60
- if (record && record.value.valueFormat === PropertyValueFormat.Primitive) {
61
- propertyValue = {
62
- valueFormat: PropertyValueFormat.Primitive,
63
- value: this.state.weightValue,
64
- displayValue: "",
65
- };
66
- }
67
- return propertyValue;
68
- }
69
- get htmlElement() {
70
- return this._divElement.current;
71
- }
72
- get hasFocus() {
73
- let containsFocus = false;
74
- // istanbul ignore else
75
- if (this._divElement.current)
76
- containsFocus = this._divElement.current.contains(document.activeElement);
77
- return containsFocus;
78
- }
79
- setFocus() {
80
- // istanbul ignore else
81
- if (this._control && !this.state.isDisabled) {
82
- this._control.setFocus();
83
- }
84
- }
85
- /** @internal */
86
- componentDidMount() {
87
- this._isMounted = true;
88
- this.setStateFromProps(); // eslint-disable-line @typescript-eslint/no-floating-promises
89
- }
90
- /** @internal */
91
- componentWillUnmount() {
92
- this._isMounted = false;
93
- }
94
- /** @internal */
95
- componentDidUpdate(prevProps) {
96
- if (this.props.propertyRecord !== prevProps.propertyRecord) {
97
- this.setStateFromProps(); // eslint-disable-line @typescript-eslint/no-floating-promises
98
- }
99
- }
100
- async setStateFromProps() {
101
- const record = this.props.propertyRecord;
102
- let initialValue = 0;
103
- // istanbul ignore else
104
- if (record && record.value.valueFormat === PropertyValueFormat.Primitive) {
105
- initialValue = record.value.value;
106
- }
107
- const readonly = record && undefined !== record.isReadonly ? record.isReadonly : false;
108
- const isDisabled = record ? record.isDisabled : undefined;
109
- // istanbul ignore else
110
- if (this._isMounted)
111
- this.setState({ weightValue: initialValue, readonly, isDisabled }, () => {
112
- if (this.props.setFocus) {
113
- this.setFocus();
114
- }
115
- });
116
- }
117
- /** @internal */
118
- render() {
119
- return (React.createElement("div", { className: classnames("components-weight-editor", this.props.className), style: this.props.style, ref: this._divElement },
120
- React.createElement(WeightPickerButton, { ref: (control) => this._control = control, activeWeight: this.state.weightValue, weights: this._availableWeights.length > 0 ? /* istanbul ignore next */ this._availableWeights : undefined, disabled: this.state.isDisabled ? true : false, readonly: this.state.readonly, onLineWeightPick: this._onLineWeightPick, "data-testid": "components-weight-editor" })));
121
- }
122
- }
123
- /** Weight Property Editor registered for the "number" type name and "weight-picker" editor name.
124
- * It uses the [[WeightEditor]] React component.
125
- * @public
126
- */
127
- export class WeightPropertyEditor extends PropertyEditorBase {
128
- // istanbul ignore next
129
- get reactNode() {
130
- return React.createElement(WeightEditor, null);
131
- }
132
- }
133
- PropertyEditorManager.registerEditor(StandardTypeNames.Number, WeightPropertyEditor, StandardEditorNames.WeightPicker);
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /** @packageDocumentation
6
+ * @module PropertyEditors
7
+ */
8
+ import "./WeightEditor.scss";
9
+ import classnames from "classnames";
10
+ import * as React from "react";
11
+ import { PropertyValueFormat, StandardEditorNames, StandardTypeNames } from "@itwin/appui-abstract";
12
+ import { PropertyEditorBase, PropertyEditorManager } from "@itwin/components-react";
13
+ import { WeightPickerButton } from "../lineweight/WeightPickerButton";
14
+ /** WeightEditor React component that is a property editor for picking a weight using a [[WeightPickerButton]] component
15
+ * @public
16
+ */
17
+ export class WeightEditor extends React.PureComponent {
18
+ constructor(props) {
19
+ super(props);
20
+ this._control = null;
21
+ this._isMounted = false;
22
+ this._availableWeights = [];
23
+ this._divElement = React.createRef();
24
+ /** @internal */
25
+ this.state = {
26
+ weightValue: 0,
27
+ readonly: false,
28
+ };
29
+ this._onLineWeightPick = (weight) => {
30
+ const propertyRecord = this.props.propertyRecord;
31
+ this.setState({
32
+ weightValue: weight,
33
+ }, async () => {
34
+ // istanbul ignore else
35
+ if (propertyRecord && this.props.onCommit) {
36
+ const propertyValue = await this.getPropertyValue();
37
+ // istanbul ignore else
38
+ if (propertyValue !== undefined) {
39
+ this.props.onCommit({ propertyRecord, newValue: propertyValue });
40
+ }
41
+ }
42
+ });
43
+ };
44
+ // TODO: add support for following if we need to specify set of weights to display
45
+ // const record = this.props.propertyRecord;
46
+ // if (record && record.property && record.property.editor && record.property.editor.params) {
47
+ // const weightParams = record.property.editor.params.find((param: PropertyEditorParams) => param.type === PropertyEditorParamTypes.ColorData) as WeightEditorParams;
48
+ // // istanbul ignore else
49
+ // if (weightParams) {
50
+ // weightParams.weightValues.forEach((weight: number) => {
51
+ // this._availableWeights.push(weight);
52
+ // });
53
+ // }
54
+ // }
55
+ }
56
+ async getPropertyValue() {
57
+ const record = this.props.propertyRecord;
58
+ let propertyValue;
59
+ // istanbul ignore else
60
+ if (record && record.value.valueFormat === PropertyValueFormat.Primitive) {
61
+ propertyValue = {
62
+ valueFormat: PropertyValueFormat.Primitive,
63
+ value: this.state.weightValue,
64
+ displayValue: "",
65
+ };
66
+ }
67
+ return propertyValue;
68
+ }
69
+ get htmlElement() {
70
+ return this._divElement.current;
71
+ }
72
+ get hasFocus() {
73
+ let containsFocus = false;
74
+ // istanbul ignore else
75
+ if (this._divElement.current)
76
+ containsFocus = this._divElement.current.contains(document.activeElement);
77
+ return containsFocus;
78
+ }
79
+ setFocus() {
80
+ // istanbul ignore else
81
+ if (this._control && !this.state.isDisabled) {
82
+ this._control.setFocus();
83
+ }
84
+ }
85
+ /** @internal */
86
+ componentDidMount() {
87
+ this._isMounted = true;
88
+ this.setStateFromProps(); // eslint-disable-line @typescript-eslint/no-floating-promises
89
+ }
90
+ /** @internal */
91
+ componentWillUnmount() {
92
+ this._isMounted = false;
93
+ }
94
+ /** @internal */
95
+ componentDidUpdate(prevProps) {
96
+ if (this.props.propertyRecord !== prevProps.propertyRecord) {
97
+ this.setStateFromProps(); // eslint-disable-line @typescript-eslint/no-floating-promises
98
+ }
99
+ }
100
+ async setStateFromProps() {
101
+ const record = this.props.propertyRecord;
102
+ let initialValue = 0;
103
+ // istanbul ignore else
104
+ if (record && record.value.valueFormat === PropertyValueFormat.Primitive) {
105
+ initialValue = record.value.value;
106
+ }
107
+ const readonly = record && undefined !== record.isReadonly ? record.isReadonly : false;
108
+ const isDisabled = record ? record.isDisabled : undefined;
109
+ // istanbul ignore else
110
+ if (this._isMounted)
111
+ this.setState({ weightValue: initialValue, readonly, isDisabled }, () => {
112
+ if (this.props.setFocus) {
113
+ this.setFocus();
114
+ }
115
+ });
116
+ }
117
+ /** @internal */
118
+ render() {
119
+ return (React.createElement("div", { className: classnames("components-weight-editor", this.props.className), style: this.props.style, ref: this._divElement },
120
+ React.createElement(WeightPickerButton, { ref: (control) => this._control = control, activeWeight: this.state.weightValue, weights: this._availableWeights.length > 0 ? /* istanbul ignore next */ this._availableWeights : undefined, disabled: this.state.isDisabled ? true : false, readonly: this.state.readonly, onLineWeightPick: this._onLineWeightPick, "data-testid": "components-weight-editor" })));
121
+ }
122
+ }
123
+ /** Weight Property Editor registered for the "number" type name and "weight-picker" editor name.
124
+ * It uses the [[WeightEditor]] React component.
125
+ * @public
126
+ */
127
+ export class WeightPropertyEditor extends PropertyEditorBase {
128
+ // istanbul ignore next
129
+ get reactNode() {
130
+ return React.createElement(WeightEditor, null);
131
+ }
132
+ }
133
+ PropertyEditorManager.registerEditor(StandardTypeNames.Number, WeightPropertyEditor, StandardEditorNames.WeightPicker);
134
134
  //# sourceMappingURL=WeightEditor.js.map
@@ -1,26 +1,26 @@
1
- /** @packageDocumentation
2
- * @module Inputs
3
- */
4
- import * as React from "react";
5
- import { QuantityTypeArg } from "@itwin/core-frontend";
6
- import { CommonProps } from "@itwin/core-react";
7
- /** Props for [[QuantityInput]] control
8
- * @beta
9
- */
10
- export interface QuantityProps extends CommonProps {
11
- /** Initial magnitude in 'persistence' units. See `getPersistenceUnitByQuantityType` in [QuantityFormatter]($core-frontend) */
12
- initialValue: number;
13
- /** Type of quantity being input. */
14
- quantityType: QuantityTypeArg;
15
- /** Function to call in the quantity value is changed. The value returned will be in 'persistence' units. */
16
- onQuantityChange: (newQuantityValue: number) => void;
17
- /** Set to `true` if value is for display only */
18
- readonly?: boolean;
19
- /** Provides ability to return reference to HTMLInputElement */
20
- ref?: React.Ref<HTMLInputElement>;
21
- }
22
- /** Input control that allows users to input a quantity and show the formatted string that represents the value.
23
- * @beta
24
- */
25
- export declare function QuantityInput({ initialValue, quantityType, readonly, className, style, onQuantityChange, ref }: QuantityProps): JSX.Element;
1
+ /** @packageDocumentation
2
+ * @module Inputs
3
+ */
4
+ import * as React from "react";
5
+ import { QuantityTypeArg } from "@itwin/core-frontend";
6
+ import { CommonProps } from "@itwin/core-react";
7
+ /** Props for [[QuantityInput]] control
8
+ * @beta
9
+ */
10
+ export interface QuantityProps extends CommonProps {
11
+ /** Initial magnitude in 'persistence' units. See `getPersistenceUnitByQuantityType` in [QuantityFormatter]($core-frontend) */
12
+ initialValue: number;
13
+ /** Type of quantity being input. */
14
+ quantityType: QuantityTypeArg;
15
+ /** Function to call in the quantity value is changed. The value returned will be in 'persistence' units. */
16
+ onQuantityChange: (newQuantityValue: number) => void;
17
+ /** Set to `true` if value is for display only */
18
+ readonly?: boolean;
19
+ /** Provides ability to return reference to HTMLInputElement */
20
+ ref?: React.Ref<HTMLInputElement>;
21
+ }
22
+ /** Input control that allows users to input a quantity and show the formatted string that represents the value.
23
+ * @beta
24
+ */
25
+ export declare function QuantityInput({ initialValue, quantityType, readonly, className, style, onQuantityChange, ref }: QuantityProps): JSX.Element;
26
26
  //# sourceMappingURL=QuantityInput.d.ts.map
@@ -1,71 +1,71 @@
1
- /*---------------------------------------------------------------------------------------------
2
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
- * See LICENSE.md in the project root for license terms and full copyright notice.
4
- *--------------------------------------------------------------------------------------------*/
5
- /** @packageDocumentation
6
- * @module Inputs
7
- */
8
- import classnames from "classnames";
9
- import * as React from "react";
10
- import { IModelApp } from "@itwin/core-frontend";
11
- import { Parser } from "@itwin/core-quantity";
12
- import { UiIModelComponents } from "../UiIModelComponents";
13
- import { ParsedInput } from "@itwin/components-react";
14
- /** Input control that allows users to input a quantity and show the formatted string that represents the value.
15
- * @beta
16
- */
17
- export function QuantityInput({ initialValue, quantityType, readonly, className, style, onQuantityChange, ref }) {
18
- const [formatterSpec, setFormatterSpec] = React.useState(() => IModelApp.quantityFormatter.findFormatterSpecByQuantityType(quantityType));
19
- const [parserSpec, setParserSpec] = React.useState(() => IModelApp.quantityFormatter.findParserSpecByQuantityType(quantityType));
20
- const formatValue = React.useCallback((value) => {
21
- // istanbul ignore else
22
- if (formatterSpec) {
23
- return formatterSpec.applyFormatting(value);
24
- }
25
- // istanbul ignore next
26
- return value.toFixed(2);
27
- }, [formatterSpec]);
28
- const parseString = React.useCallback((userInput) => {
29
- // istanbul ignore else
30
- if (parserSpec) {
31
- const parseResult = IModelApp.quantityFormatter.parseToQuantityValue(userInput, parserSpec);
32
- // istanbul ignore else
33
- if (Parser.isParsedQuantity(parseResult)) {
34
- return { value: parseResult.value };
35
- }
36
- else {
37
- const statusId = Parser.isParseError(parseResult) ? parseResult.error.toString() : "Unknown";
38
- return { parseError: `${UiIModelComponents.translate("QuantityInput.NoParserDefined")}${statusId}` };
39
- }
40
- }
41
- // istanbul ignore next
42
- return { parseError: UiIModelComponents.translate("QuantityInput.NoParserDefined") };
43
- }, [parserSpec]);
44
- const classNames = classnames(className, "components-quantity-input");
45
- React.useEffect(() => {
46
- const handleUnitSystemChanged = (() => {
47
- setFormatterSpec(IModelApp.quantityFormatter.findFormatterSpecByQuantityType(quantityType));
48
- setParserSpec(IModelApp.quantityFormatter.findParserSpecByQuantityType(quantityType));
49
- });
50
- IModelApp.quantityFormatter.onActiveFormattingUnitSystemChanged.addListener(handleUnitSystemChanged);
51
- return () => {
52
- IModelApp.quantityFormatter.onActiveFormattingUnitSystemChanged.removeListener(handleUnitSystemChanged);
53
- };
54
- }, [quantityType]);
55
- React.useEffect(() => {
56
- const handleUnitSystemChanged = ((args) => {
57
- const quantityKey = IModelApp.quantityFormatter.getQuantityTypeKey(quantityType);
58
- // istanbul ignore else
59
- if (args.quantityType === quantityKey) {
60
- setFormatterSpec(IModelApp.quantityFormatter.findFormatterSpecByQuantityType(quantityType));
61
- setParserSpec(IModelApp.quantityFormatter.findParserSpecByQuantityType(quantityType));
62
- }
63
- });
64
- IModelApp.quantityFormatter.onQuantityFormatsChanged.addListener(handleUnitSystemChanged);
65
- return () => {
66
- IModelApp.quantityFormatter.onQuantityFormatsChanged.removeListener(handleUnitSystemChanged);
67
- };
68
- }, [quantityType]);
69
- return React.createElement(ParsedInput, { "data-testid": "components-quantity-input", ref: ref, style: style, className: classNames, onChange: onQuantityChange, initialValue: initialValue, readonly: readonly, formatValue: formatValue, parseString: parseString });
70
- }
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
3
+ * See LICENSE.md in the project root for license terms and full copyright notice.
4
+ *--------------------------------------------------------------------------------------------*/
5
+ /** @packageDocumentation
6
+ * @module Inputs
7
+ */
8
+ import classnames from "classnames";
9
+ import * as React from "react";
10
+ import { IModelApp } from "@itwin/core-frontend";
11
+ import { Parser } from "@itwin/core-quantity";
12
+ import { UiIModelComponents } from "../UiIModelComponents";
13
+ import { ParsedInput } from "@itwin/components-react";
14
+ /** Input control that allows users to input a quantity and show the formatted string that represents the value.
15
+ * @beta
16
+ */
17
+ export function QuantityInput({ initialValue, quantityType, readonly, className, style, onQuantityChange, ref }) {
18
+ const [formatterSpec, setFormatterSpec] = React.useState(() => IModelApp.quantityFormatter.findFormatterSpecByQuantityType(quantityType));
19
+ const [parserSpec, setParserSpec] = React.useState(() => IModelApp.quantityFormatter.findParserSpecByQuantityType(quantityType));
20
+ const formatValue = React.useCallback((value) => {
21
+ // istanbul ignore else
22
+ if (formatterSpec) {
23
+ return formatterSpec.applyFormatting(value);
24
+ }
25
+ // istanbul ignore next
26
+ return value.toFixed(2);
27
+ }, [formatterSpec]);
28
+ const parseString = React.useCallback((userInput) => {
29
+ // istanbul ignore else
30
+ if (parserSpec) {
31
+ const parseResult = IModelApp.quantityFormatter.parseToQuantityValue(userInput, parserSpec);
32
+ // istanbul ignore else
33
+ if (Parser.isParsedQuantity(parseResult)) {
34
+ return { value: parseResult.value };
35
+ }
36
+ else {
37
+ const statusId = Parser.isParseError(parseResult) ? parseResult.error.toString() : "Unknown";
38
+ return { parseError: `${UiIModelComponents.translate("QuantityInput.NoParserDefined")}${statusId}` };
39
+ }
40
+ }
41
+ // istanbul ignore next
42
+ return { parseError: UiIModelComponents.translate("QuantityInput.NoParserDefined") };
43
+ }, [parserSpec]);
44
+ const classNames = classnames(className, "components-quantity-input");
45
+ React.useEffect(() => {
46
+ const handleUnitSystemChanged = (() => {
47
+ setFormatterSpec(IModelApp.quantityFormatter.findFormatterSpecByQuantityType(quantityType));
48
+ setParserSpec(IModelApp.quantityFormatter.findParserSpecByQuantityType(quantityType));
49
+ });
50
+ IModelApp.quantityFormatter.onActiveFormattingUnitSystemChanged.addListener(handleUnitSystemChanged);
51
+ return () => {
52
+ IModelApp.quantityFormatter.onActiveFormattingUnitSystemChanged.removeListener(handleUnitSystemChanged);
53
+ };
54
+ }, [quantityType]);
55
+ React.useEffect(() => {
56
+ const handleUnitSystemChanged = ((args) => {
57
+ const quantityKey = IModelApp.quantityFormatter.getQuantityTypeKey(quantityType);
58
+ // istanbul ignore else
59
+ if (args.quantityType === quantityKey) {
60
+ setFormatterSpec(IModelApp.quantityFormatter.findFormatterSpecByQuantityType(quantityType));
61
+ setParserSpec(IModelApp.quantityFormatter.findParserSpecByQuantityType(quantityType));
62
+ }
63
+ });
64
+ IModelApp.quantityFormatter.onQuantityFormatsChanged.addListener(handleUnitSystemChanged);
65
+ return () => {
66
+ IModelApp.quantityFormatter.onQuantityFormatsChanged.removeListener(handleUnitSystemChanged);
67
+ };
68
+ }, [quantityType]);
69
+ return React.createElement(ParsedInput, { "data-testid": "components-quantity-input", ref: ref, style: style, className: classNames, onChange: onQuantityChange, initialValue: initialValue, readonly: readonly, formatValue: formatValue, parseString: parseString });
70
+ }
71
71
  //# sourceMappingURL=QuantityInput.js.map
@@ -1,45 +1,45 @@
1
- /** @packageDocumentation
2
- * @module Inputs
3
- */
4
- import "./QuantityNumberInput.scss";
5
- import * as React from "react";
6
- import { QuantityTypeArg } from "@itwin/core-frontend";
7
- import { InputProps } from "@itwin/itwinui-react";
8
- /** Step function prototype for [[QuantityNumberInput]] component
9
- * @beta
10
- */
11
- export declare type StepFunctionProp = number | ((direction: string) => number | undefined);
12
- /** Properties for the [[QuantityNumberInput]] component
13
- * @beta
14
- */
15
- export interface QuantityNumberInputProps extends Omit<InputProps, "value" | "min" | "max" | "step" | "onFocus" | "onChange"> {
16
- /** Initial magnitude in 'persistence' units. See `getPersistenceUnitByQuantityType` in [QuantityFormatter]($core-frontend).
17
- * Set to `undefined` to show placeholder text */
18
- persistenceValue?: number;
19
- /** CSS class name for the QuantityNumberInput component container div */
20
- containerClassName?: string;
21
- /** number or function Number.MIN_SAFE_INTEGER */
22
- min?: number;
23
- /** number or function defaults to Number.MAX_SAFE_INTEGER */
24
- max?: number;
25
- /** increment step value used while incrementing or decrementing (up/down buttons or arrow keys) defaults to 1. */
26
- step?: StepFunctionProp;
27
- /** Set to true to "snap" to the closest step value while incrementing or decrementing (up/down buttons or arrow keys). */
28
- snap?: boolean;
29
- /** Function to call when the quantity value is changed. The value returned will be in 'persistence' units. */
30
- onChange?: (value: number) => void;
31
- /** if true up/down buttons are shown larger and side by side */
32
- showTouchButtons?: boolean;
33
- /** Provides ability to return reference to HTMLInputElement */
34
- ref?: React.Ref<HTMLInputElement>;
35
- /** Type of quantity being input. */
36
- quantityType: QuantityTypeArg;
37
- }
38
- /** The QuantityNumberInput component accepts input for quantity values. The quantity value is shown as a single numeric value and the quantity's
39
- * "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).
40
- * The control also display buttons to increment and decrement the "displayed" value. The value reported by via the onChange function is in "persistence"
41
- * units that can be stored in the iModel.
42
- * @beta
43
- */
44
- export declare const QuantityNumberInput: (props: QuantityNumberInputProps) => JSX.Element | null;
1
+ /** @packageDocumentation
2
+ * @module Inputs
3
+ */
4
+ import "./QuantityNumberInput.scss";
5
+ import * as React from "react";
6
+ import { QuantityTypeArg } from "@itwin/core-frontend";
7
+ import { InputProps } from "@itwin/itwinui-react";
8
+ /** Step function prototype for [[QuantityNumberInput]] component
9
+ * @beta
10
+ */
11
+ export type StepFunctionProp = number | ((direction: string) => number | undefined);
12
+ /** Properties for the [[QuantityNumberInput]] component
13
+ * @beta
14
+ */
15
+ export interface QuantityNumberInputProps extends Omit<InputProps, "value" | "min" | "max" | "step" | "onFocus" | "onChange"> {
16
+ /** Initial magnitude in 'persistence' units. See `getPersistenceUnitByQuantityType` in [QuantityFormatter]($core-frontend).
17
+ * Set to `undefined` to show placeholder text */
18
+ persistenceValue?: number;
19
+ /** CSS class name for the QuantityNumberInput component container div */
20
+ containerClassName?: string;
21
+ /** number or function Number.MIN_SAFE_INTEGER */
22
+ min?: number;
23
+ /** number or function defaults to Number.MAX_SAFE_INTEGER */
24
+ max?: number;
25
+ /** increment step value used while incrementing or decrementing (up/down buttons or arrow keys) defaults to 1. */
26
+ step?: StepFunctionProp;
27
+ /** Set to true to "snap" to the closest step value while incrementing or decrementing (up/down buttons or arrow keys). */
28
+ snap?: boolean;
29
+ /** Function to call when the quantity value is changed. The value returned will be in 'persistence' units. */
30
+ onChange?: (value: number) => void;
31
+ /** if true up/down buttons are shown larger and side by side */
32
+ showTouchButtons?: boolean;
33
+ /** Provides ability to return reference to HTMLInputElement */
34
+ ref?: React.Ref<HTMLInputElement>;
35
+ /** Type of quantity being input. */
36
+ quantityType: QuantityTypeArg;
37
+ }
38
+ /** The QuantityNumberInput component accepts input for quantity values. The quantity value is shown as a single numeric value and the quantity's
39
+ * "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).
40
+ * The control also display buttons to increment and decrement the "displayed" value. The value reported by via the onChange function is in "persistence"
41
+ * units that can be stored in the iModel.
42
+ * @beta
43
+ */
44
+ export declare const QuantityNumberInput: (props: QuantityNumberInputProps) => JSX.Element | null;
45
45
  //# sourceMappingURL=QuantityNumberInput.d.ts.map
@@ -1 +1 @@
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,EAAyC,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE9F,OAAO,EAAS,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGzD;;GAEG;AACH,oBAAY,gBAAgB,GAAG,MAAM,GAAG,CAAC,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC,CAAC;AAEpF;;GAEG;AACH,MAAM,WAAW,wBAAyB,SAAQ,IAAI,CAAC,UAAU,EAAE,OAAO,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,SAAS,GAAG,UAAU,CAAC;IAC3H;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;AAkRD;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,EAAE,CAAC,KAAK,EAAE,wBAAwB,KAAK,GAAG,CAAC,OAAO,GAAG,IAAoC,CAAC"}
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,EAAyC,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE9F,OAAO,EAAS,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGzD;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,CAAC,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC,CAAC;AAEpF;;GAEG;AACH,MAAM,WAAW,wBAAyB,SAAQ,IAAI,CAAC,UAAU,EAAE,OAAO,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,SAAS,GAAG,UAAU,CAAC;IAC3H;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;AAkRD;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,EAAE,CAAC,KAAK,EAAE,wBAAwB,KAAK,GAAG,CAAC,OAAO,GAAG,IAAoC,CAAC"}