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

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 (362) hide show
  1. package/lib/cjs/imodel-components-react/UiIModelComponents.d.ts +28 -28
  2. package/lib/cjs/imodel-components-react/UiIModelComponents.d.ts.map +1 -1
  3. package/lib/cjs/imodel-components-react/UiIModelComponents.js +77 -79
  4. package/lib/cjs/imodel-components-react/UiIModelComponents.js.map +1 -1
  5. package/lib/cjs/imodel-components-react/color/AlphaSlider.d.ts +36 -36
  6. package/lib/cjs/imodel-components-react/color/AlphaSlider.js +186 -186
  7. package/lib/cjs/imodel-components-react/color/AlphaSlider.js.map +1 -1
  8. package/lib/cjs/imodel-components-react/color/AlphaSlider.scss +63 -63
  9. package/lib/cjs/imodel-components-react/color/ColorPickerButton.d.ts +37 -37
  10. package/lib/cjs/imodel-components-react/color/ColorPickerButton.d.ts.map +1 -1
  11. package/lib/cjs/imodel-components-react/color/ColorPickerButton.js +108 -107
  12. package/lib/cjs/imodel-components-react/color/ColorPickerButton.js.map +1 -1
  13. package/lib/cjs/imodel-components-react/color/ColorPickerButton.scss +90 -90
  14. package/lib/cjs/imodel-components-react/color/ColorPickerDialog.d.ts +23 -23
  15. package/lib/cjs/imodel-components-react/color/ColorPickerDialog.js +74 -74
  16. package/lib/cjs/imodel-components-react/color/ColorPickerDialog.js.map +1 -1
  17. package/lib/cjs/imodel-components-react/color/ColorPickerPanel.d.ts +21 -21
  18. package/lib/cjs/imodel-components-react/color/ColorPickerPanel.js +145 -145
  19. package/lib/cjs/imodel-components-react/color/ColorPickerPanel.js.map +1 -1
  20. package/lib/cjs/imodel-components-react/color/ColorPickerPanel.scss +93 -93
  21. package/lib/cjs/imodel-components-react/color/ColorPickerPopup.d.ts +44 -44
  22. package/lib/cjs/imodel-components-react/color/ColorPickerPopup.d.ts.map +1 -1
  23. package/lib/cjs/imodel-components-react/color/ColorPickerPopup.js +139 -137
  24. package/lib/cjs/imodel-components-react/color/ColorPickerPopup.js.map +1 -1
  25. package/lib/cjs/imodel-components-react/color/ColorPickerPopup.scss +62 -63
  26. package/lib/cjs/imodel-components-react/color/HueSlider.d.ts +22 -22
  27. package/lib/cjs/imodel-components-react/color/HueSlider.js +199 -199
  28. package/lib/cjs/imodel-components-react/color/HueSlider.js.map +1 -1
  29. package/lib/cjs/imodel-components-react/color/HueSlider.scss +61 -61
  30. package/lib/cjs/imodel-components-react/color/SaturationPicker.d.ts +20 -20
  31. package/lib/cjs/imodel-components-react/color/SaturationPicker.js +213 -213
  32. package/lib/cjs/imodel-components-react/color/SaturationPicker.js.map +1 -1
  33. package/lib/cjs/imodel-components-react/color/SaturationPicker.scss +35 -35
  34. package/lib/cjs/imodel-components-react/color/Swatch.d.ts +22 -22
  35. package/lib/cjs/imodel-components-react/color/Swatch.js +60 -60
  36. package/lib/cjs/imodel-components-react/color/Swatch.js.map +1 -1
  37. package/lib/cjs/imodel-components-react/color/Swatch.scss +22 -23
  38. package/lib/cjs/imodel-components-react/color/getCSSColorFromDef.d.ts +6 -6
  39. package/lib/cjs/imodel-components-react/color/getCSSColorFromDef.js +23 -23
  40. package/lib/cjs/imodel-components-react/color/getCSSColorFromDef.js.map +1 -1
  41. package/lib/cjs/imodel-components-react/editors/ColorEditor.d.ts +44 -44
  42. package/lib/cjs/imodel-components-react/editors/ColorEditor.js +151 -151
  43. package/lib/cjs/imodel-components-react/editors/ColorEditor.js.map +1 -1
  44. package/lib/cjs/imodel-components-react/editors/ColorEditor.scss +18 -18
  45. package/lib/cjs/imodel-components-react/editors/WeightEditor.d.ts +47 -47
  46. package/lib/cjs/imodel-components-react/editors/WeightEditor.js +160 -160
  47. package/lib/cjs/imodel-components-react/editors/WeightEditor.js.map +1 -1
  48. package/lib/cjs/imodel-components-react/editors/WeightEditor.scss +16 -16
  49. package/lib/cjs/imodel-components-react/inputs/QuantityInput.d.ts +25 -25
  50. package/lib/cjs/imodel-components-react/inputs/QuantityInput.js +96 -96
  51. package/lib/cjs/imodel-components-react/inputs/QuantityInput.js.map +1 -1
  52. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.d.ts +44 -44
  53. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.d.ts.map +1 -1
  54. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.js +268 -265
  55. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.js.map +1 -1
  56. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.scss +106 -107
  57. package/lib/cjs/imodel-components-react/lineweight/Swatch.d.ts +33 -33
  58. package/lib/cjs/imodel-components-react/lineweight/Swatch.js +85 -85
  59. package/lib/cjs/imodel-components-react/lineweight/Swatch.js.map +1 -1
  60. package/lib/cjs/imodel-components-react/lineweight/Swatch.scss +48 -48
  61. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.d.ts +60 -60
  62. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.js +159 -159
  63. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.js.map +1 -1
  64. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.scss +52 -52
  65. package/lib/cjs/imodel-components-react/navigationaids/Cube.d.ts +45 -45
  66. package/lib/cjs/imodel-components-react/navigationaids/Cube.js +127 -127
  67. package/lib/cjs/imodel-components-react/navigationaids/Cube.js.map +1 -1
  68. package/lib/cjs/imodel-components-react/navigationaids/Cube.scss +19 -19
  69. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.d.ts +174 -174
  70. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.d.ts.map +1 -1
  71. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.js +638 -634
  72. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.js.map +1 -1
  73. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.scss +178 -182
  74. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts +145 -145
  75. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts.map +1 -1
  76. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.js +653 -647
  77. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.js.map +1 -1
  78. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.scss +135 -134
  79. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.d.ts +26 -26
  80. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.js +99 -99
  81. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.js.map +1 -1
  82. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.scss +63 -63
  83. package/lib/cjs/imodel-components-react/quantityformat/FormatPrecision.d.ts +17 -17
  84. package/lib/cjs/imodel-components-react/quantityformat/FormatPrecision.js +53 -53
  85. package/lib/cjs/imodel-components-react/quantityformat/FormatPrecision.js.map +1 -1
  86. package/lib/cjs/imodel-components-react/quantityformat/FormatSample.d.ts +18 -18
  87. package/lib/cjs/imodel-components-react/quantityformat/FormatSample.d.ts.map +1 -1
  88. package/lib/cjs/imodel-components-react/quantityformat/FormatSample.js +84 -83
  89. package/lib/cjs/imodel-components-react/quantityformat/FormatSample.js.map +1 -1
  90. package/lib/cjs/imodel-components-react/quantityformat/FormatType.d.ts +17 -17
  91. package/lib/cjs/imodel-components-react/quantityformat/FormatType.js +86 -86
  92. package/lib/cjs/imodel-components-react/quantityformat/FormatType.js.map +1 -1
  93. package/lib/cjs/imodel-components-react/quantityformat/FormatUnitLabel.d.ts +17 -17
  94. package/lib/cjs/imodel-components-react/quantityformat/FormatUnitLabel.js +109 -109
  95. package/lib/cjs/imodel-components-react/quantityformat/FormatUnitLabel.js.map +1 -1
  96. package/lib/cjs/imodel-components-react/quantityformat/FormatUnits.d.ts +19 -19
  97. package/lib/cjs/imodel-components-react/quantityformat/FormatUnits.js +133 -133
  98. package/lib/cjs/imodel-components-react/quantityformat/FormatUnits.js.map +1 -1
  99. package/lib/cjs/imodel-components-react/quantityformat/MiscFormatOptions.d.ts +21 -21
  100. package/lib/cjs/imodel-components-react/quantityformat/MiscFormatOptions.js +184 -184
  101. package/lib/cjs/imodel-components-react/quantityformat/MiscFormatOptions.js.map +1 -1
  102. package/lib/cjs/imodel-components-react/quantityformat/QuantityFormatPanel.d.ts +22 -22
  103. package/lib/cjs/imodel-components-react/quantityformat/QuantityFormatPanel.js +145 -145
  104. package/lib/cjs/imodel-components-react/quantityformat/QuantityFormatPanel.js.map +1 -1
  105. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalPrecision.d.ts +17 -17
  106. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalPrecision.js +59 -59
  107. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalPrecision.js.map +1 -1
  108. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalSeparator.d.ts +17 -17
  109. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalSeparator.js +47 -47
  110. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalSeparator.js.map +1 -1
  111. package/lib/cjs/imodel-components-react/quantityformat/misc/FractionPrecision.d.ts +16 -16
  112. package/lib/cjs/imodel-components-react/quantityformat/misc/FractionPrecision.js +54 -54
  113. package/lib/cjs/imodel-components-react/quantityformat/misc/FractionPrecision.js.map +1 -1
  114. package/lib/cjs/imodel-components-react/quantityformat/misc/ScientificType.d.ts +18 -18
  115. package/lib/cjs/imodel-components-react/quantityformat/misc/ScientificType.js +48 -48
  116. package/lib/cjs/imodel-components-react/quantityformat/misc/ScientificType.js.map +1 -1
  117. package/lib/cjs/imodel-components-react/quantityformat/misc/SignOption.d.ts +17 -17
  118. package/lib/cjs/imodel-components-react/quantityformat/misc/SignOption.js +50 -50
  119. package/lib/cjs/imodel-components-react/quantityformat/misc/SignOption.js.map +1 -1
  120. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSeparatorSelector.d.ts +17 -17
  121. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js +58 -58
  122. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js.map +1 -1
  123. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSizeSelector.d.ts +17 -17
  124. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSizeSelector.js +47 -47
  125. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSizeSelector.js.map +1 -1
  126. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSelector.d.ts +17 -17
  127. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSelector.js +56 -56
  128. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSelector.js.map +1 -1
  129. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSeparator.d.ts +17 -17
  130. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSeparator.js +95 -95
  131. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSeparator.js.map +1 -1
  132. package/lib/cjs/imodel-components-react/quantityformat/misc/UnitDescr.d.ts +23 -23
  133. package/lib/cjs/imodel-components-react/quantityformat/misc/UnitDescr.js +119 -119
  134. package/lib/cjs/imodel-components-react/quantityformat/misc/UnitDescr.js.map +1 -1
  135. package/lib/cjs/imodel-components-react/timeline/BaseSolarDataProvider.d.ts +52 -52
  136. package/lib/cjs/imodel-components-react/timeline/BaseSolarDataProvider.js +143 -143
  137. package/lib/cjs/imodel-components-react/timeline/BaseSolarDataProvider.js.map +1 -1
  138. package/lib/cjs/imodel-components-react/timeline/BaseTimelineDataProvider.d.ts +31 -31
  139. package/lib/cjs/imodel-components-react/timeline/BaseTimelineDataProvider.js +69 -69
  140. package/lib/cjs/imodel-components-react/timeline/BaseTimelineDataProvider.js.map +1 -1
  141. package/lib/cjs/imodel-components-react/timeline/InlineEdit.d.ts +27 -27
  142. package/lib/cjs/imodel-components-react/timeline/InlineEdit.js +81 -81
  143. package/lib/cjs/imodel-components-react/timeline/InlineEdit.js.map +1 -1
  144. package/lib/cjs/imodel-components-react/timeline/InlineEdit.scss +26 -26
  145. package/lib/cjs/imodel-components-react/timeline/PlayerButton.d.ts +33 -33
  146. package/lib/cjs/imodel-components-react/timeline/PlayerButton.d.ts.map +1 -1
  147. package/lib/cjs/imodel-components-react/timeline/PlayerButton.js +95 -91
  148. package/lib/cjs/imodel-components-react/timeline/PlayerButton.js.map +1 -1
  149. package/lib/cjs/imodel-components-react/timeline/PlayerButton.scss +28 -31
  150. package/lib/cjs/imodel-components-react/timeline/Scrubber.d.ts +54 -54
  151. package/lib/cjs/imodel-components-react/timeline/Scrubber.js +191 -191
  152. package/lib/cjs/imodel-components-react/timeline/Scrubber.js.map +1 -1
  153. package/lib/cjs/imodel-components-react/timeline/Scrubber.scss +105 -112
  154. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.d.ts +77 -77
  155. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.d.ts.map +1 -1
  156. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.js +428 -424
  157. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.js.map +1 -1
  158. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.scss +359 -356
  159. package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.d.ts +15 -15
  160. package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.js +54 -54
  161. package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.js.map +1 -1
  162. package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.scss +39 -39
  163. package/lib/cjs/imodel-components-react/timeline/Timeline.scss +164 -164
  164. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.d.ts +133 -133
  165. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.d.ts.map +1 -1
  166. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.js +365 -358
  167. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.js.map +1 -1
  168. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.scss +161 -164
  169. package/lib/cjs/imodel-components-react/timeline/interfaces.d.ts +174 -174
  170. package/lib/cjs/imodel-components-react/timeline/interfaces.js +45 -45
  171. package/lib/cjs/imodel-components-react/timeline/interfaces.js.map +1 -1
  172. package/lib/cjs/imodel-components-react/viewport/ViewportComponent.d.ts +42 -42
  173. package/lib/cjs/imodel-components-react/viewport/ViewportComponent.js +274 -274
  174. package/lib/cjs/imodel-components-react/viewport/ViewportComponent.js.map +1 -1
  175. package/lib/cjs/imodel-components-react/viewport/ViewportComponentEvents.d.ts +106 -106
  176. package/lib/cjs/imodel-components-react/viewport/ViewportComponentEvents.js +105 -105
  177. package/lib/cjs/imodel-components-react/viewport/ViewportComponentEvents.js.map +1 -1
  178. package/lib/cjs/imodel-components-react.d.ts +82 -82
  179. package/lib/cjs/imodel-components-react.js +101 -101
  180. package/lib/cjs/imodel-components-react.js.map +1 -1
  181. package/lib/esm/imodel-components-react/UiIModelComponents.d.ts +28 -28
  182. package/lib/esm/imodel-components-react/UiIModelComponents.d.ts.map +1 -1
  183. package/lib/esm/imodel-components-react/UiIModelComponents.js +73 -75
  184. package/lib/esm/imodel-components-react/UiIModelComponents.js.map +1 -1
  185. package/lib/esm/imodel-components-react/color/AlphaSlider.d.ts +36 -36
  186. package/lib/esm/imodel-components-react/color/AlphaSlider.js +160 -160
  187. package/lib/esm/imodel-components-react/color/AlphaSlider.js.map +1 -1
  188. package/lib/esm/imodel-components-react/color/AlphaSlider.scss +63 -63
  189. package/lib/esm/imodel-components-react/color/ColorPickerButton.d.ts +37 -37
  190. package/lib/esm/imodel-components-react/color/ColorPickerButton.d.ts.map +1 -1
  191. package/lib/esm/imodel-components-react/color/ColorPickerButton.js +83 -82
  192. package/lib/esm/imodel-components-react/color/ColorPickerButton.js.map +1 -1
  193. package/lib/esm/imodel-components-react/color/ColorPickerButton.scss +90 -90
  194. package/lib/esm/imodel-components-react/color/ColorPickerDialog.d.ts +23 -23
  195. package/lib/esm/imodel-components-react/color/ColorPickerDialog.js +51 -51
  196. package/lib/esm/imodel-components-react/color/ColorPickerDialog.js.map +1 -1
  197. package/lib/esm/imodel-components-react/color/ColorPickerPanel.d.ts +21 -21
  198. package/lib/esm/imodel-components-react/color/ColorPickerPanel.js +122 -122
  199. package/lib/esm/imodel-components-react/color/ColorPickerPanel.js.map +1 -1
  200. package/lib/esm/imodel-components-react/color/ColorPickerPanel.scss +93 -93
  201. package/lib/esm/imodel-components-react/color/ColorPickerPopup.d.ts +44 -44
  202. package/lib/esm/imodel-components-react/color/ColorPickerPopup.d.ts.map +1 -1
  203. package/lib/esm/imodel-components-react/color/ColorPickerPopup.js +114 -112
  204. package/lib/esm/imodel-components-react/color/ColorPickerPopup.js.map +1 -1
  205. package/lib/esm/imodel-components-react/color/ColorPickerPopup.scss +62 -63
  206. package/lib/esm/imodel-components-react/color/HueSlider.d.ts +22 -22
  207. package/lib/esm/imodel-components-react/color/HueSlider.js +173 -173
  208. package/lib/esm/imodel-components-react/color/HueSlider.js.map +1 -1
  209. package/lib/esm/imodel-components-react/color/HueSlider.scss +61 -61
  210. package/lib/esm/imodel-components-react/color/SaturationPicker.d.ts +20 -20
  211. package/lib/esm/imodel-components-react/color/SaturationPicker.js +187 -187
  212. package/lib/esm/imodel-components-react/color/SaturationPicker.js.map +1 -1
  213. package/lib/esm/imodel-components-react/color/SaturationPicker.scss +35 -35
  214. package/lib/esm/imodel-components-react/color/Swatch.d.ts +22 -22
  215. package/lib/esm/imodel-components-react/color/Swatch.js +34 -34
  216. package/lib/esm/imodel-components-react/color/Swatch.js.map +1 -1
  217. package/lib/esm/imodel-components-react/color/Swatch.scss +22 -23
  218. package/lib/esm/imodel-components-react/color/getCSSColorFromDef.d.ts +6 -6
  219. package/lib/esm/imodel-components-react/color/getCSSColorFromDef.js +19 -19
  220. package/lib/esm/imodel-components-react/color/getCSSColorFromDef.js.map +1 -1
  221. package/lib/esm/imodel-components-react/editors/ColorEditor.d.ts +44 -44
  222. package/lib/esm/imodel-components-react/editors/ColorEditor.js +124 -124
  223. package/lib/esm/imodel-components-react/editors/ColorEditor.js.map +1 -1
  224. package/lib/esm/imodel-components-react/editors/ColorEditor.scss +18 -18
  225. package/lib/esm/imodel-components-react/editors/WeightEditor.d.ts +47 -47
  226. package/lib/esm/imodel-components-react/editors/WeightEditor.js +133 -133
  227. package/lib/esm/imodel-components-react/editors/WeightEditor.js.map +1 -1
  228. package/lib/esm/imodel-components-react/editors/WeightEditor.scss +16 -16
  229. package/lib/esm/imodel-components-react/inputs/QuantityInput.d.ts +25 -25
  230. package/lib/esm/imodel-components-react/inputs/QuantityInput.js +70 -70
  231. package/lib/esm/imodel-components-react/inputs/QuantityInput.js.map +1 -1
  232. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.d.ts +44 -44
  233. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.d.ts.map +1 -1
  234. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.js +243 -240
  235. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.js.map +1 -1
  236. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.scss +106 -107
  237. package/lib/esm/imodel-components-react/lineweight/Swatch.d.ts +33 -33
  238. package/lib/esm/imodel-components-react/lineweight/Swatch.js +59 -59
  239. package/lib/esm/imodel-components-react/lineweight/Swatch.js.map +1 -1
  240. package/lib/esm/imodel-components-react/lineweight/Swatch.scss +48 -48
  241. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.d.ts +60 -60
  242. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.js +133 -133
  243. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.js.map +1 -1
  244. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.scss +52 -52
  245. package/lib/esm/imodel-components-react/navigationaids/Cube.d.ts +45 -45
  246. package/lib/esm/imodel-components-react/navigationaids/Cube.js +100 -100
  247. package/lib/esm/imodel-components-react/navigationaids/Cube.js.map +1 -1
  248. package/lib/esm/imodel-components-react/navigationaids/Cube.scss +19 -19
  249. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.d.ts +174 -174
  250. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.d.ts.map +1 -1
  251. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.js +610 -606
  252. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.js.map +1 -1
  253. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.scss +178 -182
  254. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts +145 -145
  255. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts.map +1 -1
  256. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.js +626 -620
  257. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.js.map +1 -1
  258. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.scss +135 -134
  259. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.d.ts +26 -26
  260. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.js +76 -76
  261. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.js.map +1 -1
  262. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.scss +63 -63
  263. package/lib/esm/imodel-components-react/quantityformat/FormatPrecision.d.ts +17 -17
  264. package/lib/esm/imodel-components-react/quantityformat/FormatPrecision.js +30 -30
  265. package/lib/esm/imodel-components-react/quantityformat/FormatPrecision.js.map +1 -1
  266. package/lib/esm/imodel-components-react/quantityformat/FormatSample.d.ts +18 -18
  267. package/lib/esm/imodel-components-react/quantityformat/FormatSample.d.ts.map +1 -1
  268. package/lib/esm/imodel-components-react/quantityformat/FormatSample.js +61 -60
  269. package/lib/esm/imodel-components-react/quantityformat/FormatSample.js.map +1 -1
  270. package/lib/esm/imodel-components-react/quantityformat/FormatType.d.ts +17 -17
  271. package/lib/esm/imodel-components-react/quantityformat/FormatType.js +63 -63
  272. package/lib/esm/imodel-components-react/quantityformat/FormatType.js.map +1 -1
  273. package/lib/esm/imodel-components-react/quantityformat/FormatUnitLabel.d.ts +17 -17
  274. package/lib/esm/imodel-components-react/quantityformat/FormatUnitLabel.js +83 -83
  275. package/lib/esm/imodel-components-react/quantityformat/FormatUnitLabel.js.map +1 -1
  276. package/lib/esm/imodel-components-react/quantityformat/FormatUnits.d.ts +19 -19
  277. package/lib/esm/imodel-components-react/quantityformat/FormatUnits.js +110 -110
  278. package/lib/esm/imodel-components-react/quantityformat/FormatUnits.js.map +1 -1
  279. package/lib/esm/imodel-components-react/quantityformat/MiscFormatOptions.d.ts +21 -21
  280. package/lib/esm/imodel-components-react/quantityformat/MiscFormatOptions.js +158 -158
  281. package/lib/esm/imodel-components-react/quantityformat/MiscFormatOptions.js.map +1 -1
  282. package/lib/esm/imodel-components-react/quantityformat/QuantityFormatPanel.d.ts +22 -22
  283. package/lib/esm/imodel-components-react/quantityformat/QuantityFormatPanel.js +122 -122
  284. package/lib/esm/imodel-components-react/quantityformat/QuantityFormatPanel.js.map +1 -1
  285. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalPrecision.d.ts +17 -17
  286. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalPrecision.js +36 -36
  287. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalPrecision.js.map +1 -1
  288. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalSeparator.d.ts +17 -17
  289. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalSeparator.js +24 -24
  290. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalSeparator.js.map +1 -1
  291. package/lib/esm/imodel-components-react/quantityformat/misc/FractionPrecision.d.ts +16 -16
  292. package/lib/esm/imodel-components-react/quantityformat/misc/FractionPrecision.js +31 -31
  293. package/lib/esm/imodel-components-react/quantityformat/misc/FractionPrecision.js.map +1 -1
  294. package/lib/esm/imodel-components-react/quantityformat/misc/ScientificType.d.ts +18 -18
  295. package/lib/esm/imodel-components-react/quantityformat/misc/ScientificType.js +25 -25
  296. package/lib/esm/imodel-components-react/quantityformat/misc/ScientificType.js.map +1 -1
  297. package/lib/esm/imodel-components-react/quantityformat/misc/SignOption.d.ts +17 -17
  298. package/lib/esm/imodel-components-react/quantityformat/misc/SignOption.js +27 -27
  299. package/lib/esm/imodel-components-react/quantityformat/misc/SignOption.js.map +1 -1
  300. package/lib/esm/imodel-components-react/quantityformat/misc/StationSeparatorSelector.d.ts +17 -17
  301. package/lib/esm/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js +35 -35
  302. package/lib/esm/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js.map +1 -1
  303. package/lib/esm/imodel-components-react/quantityformat/misc/StationSizeSelector.d.ts +17 -17
  304. package/lib/esm/imodel-components-react/quantityformat/misc/StationSizeSelector.js +24 -24
  305. package/lib/esm/imodel-components-react/quantityformat/misc/StationSizeSelector.js.map +1 -1
  306. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSelector.d.ts +17 -17
  307. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSelector.js +33 -33
  308. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSelector.js.map +1 -1
  309. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSeparator.d.ts +17 -17
  310. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSeparator.js +69 -69
  311. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSeparator.js.map +1 -1
  312. package/lib/esm/imodel-components-react/quantityformat/misc/UnitDescr.d.ts +23 -23
  313. package/lib/esm/imodel-components-react/quantityformat/misc/UnitDescr.js +96 -96
  314. package/lib/esm/imodel-components-react/quantityformat/misc/UnitDescr.js.map +1 -1
  315. package/lib/esm/imodel-components-react/timeline/BaseSolarDataProvider.d.ts +52 -52
  316. package/lib/esm/imodel-components-react/timeline/BaseSolarDataProvider.js +139 -139
  317. package/lib/esm/imodel-components-react/timeline/BaseSolarDataProvider.js.map +1 -1
  318. package/lib/esm/imodel-components-react/timeline/BaseTimelineDataProvider.d.ts +31 -31
  319. package/lib/esm/imodel-components-react/timeline/BaseTimelineDataProvider.js +65 -65
  320. package/lib/esm/imodel-components-react/timeline/BaseTimelineDataProvider.js.map +1 -1
  321. package/lib/esm/imodel-components-react/timeline/InlineEdit.d.ts +27 -27
  322. package/lib/esm/imodel-components-react/timeline/InlineEdit.js +55 -55
  323. package/lib/esm/imodel-components-react/timeline/InlineEdit.js.map +1 -1
  324. package/lib/esm/imodel-components-react/timeline/InlineEdit.scss +26 -26
  325. package/lib/esm/imodel-components-react/timeline/PlayerButton.d.ts +33 -33
  326. package/lib/esm/imodel-components-react/timeline/PlayerButton.d.ts.map +1 -1
  327. package/lib/esm/imodel-components-react/timeline/PlayerButton.js +68 -64
  328. package/lib/esm/imodel-components-react/timeline/PlayerButton.js.map +1 -1
  329. package/lib/esm/imodel-components-react/timeline/PlayerButton.scss +28 -31
  330. package/lib/esm/imodel-components-react/timeline/Scrubber.d.ts +54 -54
  331. package/lib/esm/imodel-components-react/timeline/Scrubber.js +164 -164
  332. package/lib/esm/imodel-components-react/timeline/Scrubber.js.map +1 -1
  333. package/lib/esm/imodel-components-react/timeline/Scrubber.scss +105 -112
  334. package/lib/esm/imodel-components-react/timeline/SolarTimeline.d.ts +77 -77
  335. package/lib/esm/imodel-components-react/timeline/SolarTimeline.d.ts.map +1 -1
  336. package/lib/esm/imodel-components-react/timeline/SolarTimeline.js +402 -398
  337. package/lib/esm/imodel-components-react/timeline/SolarTimeline.js.map +1 -1
  338. package/lib/esm/imodel-components-react/timeline/SolarTimeline.scss +359 -356
  339. package/lib/esm/imodel-components-react/timeline/SpeedTimeline.d.ts +15 -15
  340. package/lib/esm/imodel-components-react/timeline/SpeedTimeline.js +28 -28
  341. package/lib/esm/imodel-components-react/timeline/SpeedTimeline.js.map +1 -1
  342. package/lib/esm/imodel-components-react/timeline/SpeedTimeline.scss +39 -39
  343. package/lib/esm/imodel-components-react/timeline/Timeline.scss +164 -164
  344. package/lib/esm/imodel-components-react/timeline/TimelineComponent.d.ts +133 -133
  345. package/lib/esm/imodel-components-react/timeline/TimelineComponent.d.ts.map +1 -1
  346. package/lib/esm/imodel-components-react/timeline/TimelineComponent.js +339 -332
  347. package/lib/esm/imodel-components-react/timeline/TimelineComponent.js.map +1 -1
  348. package/lib/esm/imodel-components-react/timeline/TimelineComponent.scss +161 -164
  349. package/lib/esm/imodel-components-react/timeline/interfaces.d.ts +174 -174
  350. package/lib/esm/imodel-components-react/timeline/interfaces.js +42 -42
  351. package/lib/esm/imodel-components-react/timeline/interfaces.js.map +1 -1
  352. package/lib/esm/imodel-components-react/viewport/ViewportComponent.d.ts +42 -42
  353. package/lib/esm/imodel-components-react/viewport/ViewportComponent.js +251 -251
  354. package/lib/esm/imodel-components-react/viewport/ViewportComponent.js.map +1 -1
  355. package/lib/esm/imodel-components-react/viewport/ViewportComponentEvents.d.ts +106 -106
  356. package/lib/esm/imodel-components-react/viewport/ViewportComponentEvents.js +95 -95
  357. package/lib/esm/imodel-components-react/viewport/ViewportComponentEvents.js.map +1 -1
  358. package/lib/esm/imodel-components-react.d.ts +82 -82
  359. package/lib/esm/imodel-components-react.js +87 -87
  360. package/lib/esm/imodel-components-react.js.map +1 -1
  361. package/lib/public/locales/en/UiIModelComponents.json +139 -139
  362. package/package.json +22 -26
@@ -1,27 +1,27 @@
1
- /** @packageDocumentation
2
- * @module QuantityFormat
3
- */
4
- import "./FormatPanel.scss";
5
- import * as React from "react";
6
- import { FormatProps, FormatterSpec, UnitProps, UnitsProvider } from "@itwin/core-quantity";
7
- import { CommonProps } from "@itwin/core-react";
8
- /** Properties of [[FormatPanel]] component.
9
- * @alpha
10
- */
11
- export interface FormatPanelProps extends CommonProps {
12
- initialFormat: FormatProps;
13
- unitsProvider: UnitsProvider;
14
- persistenceUnit: Promise<UnitProps> | UnitProps;
15
- showSample?: boolean;
16
- initialMagnitude?: number;
17
- enableMinimumProperties?: boolean;
18
- onFormatChange?: (format: FormatProps) => void;
19
- provideFormatSpec?: (formatProps: FormatProps, persistenceUnit: UnitProps, unitsProvider: UnitsProvider) => Promise<FormatterSpec>;
20
- providePrimaryChildren?: (formatProps: FormatProps, fireFormatChange: (newProps: FormatProps) => void) => React.ReactNode;
21
- provideSecondaryChildren?: (formatProps: FormatProps, fireFormatChange: (newProps: FormatProps) => void) => React.ReactNode;
22
- }
23
- /** Component to show/edit Quantity Format.
24
- * @alpha
25
- */
26
- export declare function FormatPanel(props: FormatPanelProps): JSX.Element;
1
+ /** @packageDocumentation
2
+ * @module QuantityFormat
3
+ */
4
+ import "./FormatPanel.scss";
5
+ import * as React from "react";
6
+ import { FormatProps, FormatterSpec, UnitProps, UnitsProvider } from "@itwin/core-quantity";
7
+ import { CommonProps } from "@itwin/core-react";
8
+ /** Properties of [[FormatPanel]] component.
9
+ * @alpha
10
+ */
11
+ export interface FormatPanelProps extends CommonProps {
12
+ initialFormat: FormatProps;
13
+ unitsProvider: UnitsProvider;
14
+ persistenceUnit: Promise<UnitProps> | UnitProps;
15
+ showSample?: boolean;
16
+ initialMagnitude?: number;
17
+ enableMinimumProperties?: boolean;
18
+ onFormatChange?: (format: FormatProps) => void;
19
+ provideFormatSpec?: (formatProps: FormatProps, persistenceUnit: UnitProps, unitsProvider: UnitsProvider) => Promise<FormatterSpec>;
20
+ providePrimaryChildren?: (formatProps: FormatProps, fireFormatChange: (newProps: FormatProps) => void) => React.ReactNode;
21
+ provideSecondaryChildren?: (formatProps: FormatProps, fireFormatChange: (newProps: FormatProps) => void) => React.ReactNode;
22
+ }
23
+ /** Component to show/edit Quantity Format.
24
+ * @alpha
25
+ */
26
+ export declare function FormatPanel(props: FormatPanelProps): JSX.Element;
27
27
  //# sourceMappingURL=FormatPanel.d.ts.map
@@ -1,77 +1,77 @@
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 QuantityFormat
7
- */
8
- import "./FormatPanel.scss";
9
- import * as React from "react";
10
- import { Format, FormatterSpec } from "@itwin/core-quantity";
11
- import { FormatPrecision } from "./FormatPrecision";
12
- import { FormatSample } from "./FormatSample";
13
- import { FormatTypeOption } from "./FormatType";
14
- import { FormatUnitLabel } from "./FormatUnitLabel";
15
- import { FormatUnits } from "./FormatUnits";
16
- import { MiscFormatOptions } from "./MiscFormatOptions";
17
- async function generateFormatSpec(formatProps, persistenceUnit, unitsProvider) {
18
- const actualFormat = await Format.createFromJSON("custom", unitsProvider, formatProps);
19
- return FormatterSpec.create(actualFormat.name, actualFormat, unitsProvider, persistenceUnit);
20
- }
21
- /** Component to show/edit Quantity Format.
22
- * @alpha
23
- */
24
- export function FormatPanel(props) {
25
- const [formatSpec, setFormatSpec] = React.useState();
26
- const { initialFormat, showSample, initialMagnitude, unitsProvider, persistenceUnit, onFormatChange, provideFormatSpec, enableMinimumProperties } = props;
27
- const [formatProps, setFormatProps] = React.useState(initialFormat);
28
- const [showOptions, setShowOptions] = React.useState(false);
29
- React.useEffect(() => {
30
- setFormatProps(initialFormat);
31
- setFormatSpec(undefined); // this will trigger the new spec to be created in the useEffect hook
32
- }, [initialFormat]);
33
- const handleUserFormatChanges = React.useCallback((newProps) => {
34
- setFormatProps(newProps);
35
- setFormatSpec(undefined); // this will trigger the new spec to be created in the useEffect hook
36
- onFormatChange && onFormatChange(newProps);
37
- }, [onFormatChange]);
38
- const isMounted = React.useRef(false);
39
- // runs returned function only when component is unmounted.
40
- React.useEffect(() => {
41
- isMounted.current = true;
42
- return (() => {
43
- isMounted.current = false;
44
- });
45
- }, []);
46
- React.useEffect(() => {
47
- async function fetchFormatSpec() {
48
- const pu = await persistenceUnit;
49
- let newFormatSpec;
50
- if (provideFormatSpec) {
51
- newFormatSpec = await provideFormatSpec(formatProps, pu, unitsProvider);
52
- }
53
- else {
54
- newFormatSpec = await generateFormatSpec(formatProps, pu, unitsProvider);
55
- }
56
- isMounted.current && setFormatSpec(newFormatSpec);
57
- }
58
- if (!formatSpec)
59
- fetchFormatSpec(); // eslint-disable-line @typescript-eslint/no-floating-promises
60
- }, [formatProps, formatSpec, persistenceUnit, provideFormatSpec, unitsProvider]);
61
- const handleFormatChange = React.useCallback((newFormatProps) => {
62
- handleUserFormatChanges(newFormatProps);
63
- }, [handleUserFormatChanges]);
64
- const handleShowOptions = React.useCallback((show) => {
65
- setShowOptions(show);
66
- }, []);
67
- return (React.createElement("div", { className: "components-quantityFormat-panel" },
68
- showSample &&
69
- React.createElement(FormatSample, { formatSpec: formatSpec, initialMagnitude: initialMagnitude }),
70
- React.createElement(FormatUnits, { unitsProvider: unitsProvider, persistenceUnit: formatSpec === null || formatSpec === void 0 ? void 0 : formatSpec.persistenceUnit, initialFormat: formatProps, onUnitsChange: handleFormatChange }),
71
- React.createElement(FormatUnitLabel, { formatProps: formatProps, onUnitLabelChange: handleFormatChange }),
72
- React.createElement(FormatTypeOption, { formatProps: formatProps, onChange: handleFormatChange }),
73
- React.createElement(FormatPrecision, { formatProps: formatProps, onChange: handleFormatChange }),
74
- props.providePrimaryChildren && props.providePrimaryChildren(formatProps, handleFormatChange),
75
- React.createElement(MiscFormatOptions, { formatProps: formatProps, onChange: handleFormatChange, enableMinimumProperties: enableMinimumProperties, showOptions: showOptions, onShowHideOptions: handleShowOptions }, props.provideSecondaryChildren && props.provideSecondaryChildren(formatProps, handleFormatChange))));
76
- }
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 QuantityFormat
7
+ */
8
+ import "./FormatPanel.scss";
9
+ import * as React from "react";
10
+ import { Format, FormatterSpec } from "@itwin/core-quantity";
11
+ import { FormatPrecision } from "./FormatPrecision";
12
+ import { FormatSample } from "./FormatSample";
13
+ import { FormatTypeOption } from "./FormatType";
14
+ import { FormatUnitLabel } from "./FormatUnitLabel";
15
+ import { FormatUnits } from "./FormatUnits";
16
+ import { MiscFormatOptions } from "./MiscFormatOptions";
17
+ async function generateFormatSpec(formatProps, persistenceUnit, unitsProvider) {
18
+ const actualFormat = await Format.createFromJSON("custom", unitsProvider, formatProps);
19
+ return FormatterSpec.create(actualFormat.name, actualFormat, unitsProvider, persistenceUnit);
20
+ }
21
+ /** Component to show/edit Quantity Format.
22
+ * @alpha
23
+ */
24
+ export function FormatPanel(props) {
25
+ const [formatSpec, setFormatSpec] = React.useState();
26
+ const { initialFormat, showSample, initialMagnitude, unitsProvider, persistenceUnit, onFormatChange, provideFormatSpec, enableMinimumProperties } = props;
27
+ const [formatProps, setFormatProps] = React.useState(initialFormat);
28
+ const [showOptions, setShowOptions] = React.useState(false);
29
+ React.useEffect(() => {
30
+ setFormatProps(initialFormat);
31
+ setFormatSpec(undefined); // this will trigger the new spec to be created in the useEffect hook
32
+ }, [initialFormat]);
33
+ const handleUserFormatChanges = React.useCallback((newProps) => {
34
+ setFormatProps(newProps);
35
+ setFormatSpec(undefined); // this will trigger the new spec to be created in the useEffect hook
36
+ onFormatChange && onFormatChange(newProps);
37
+ }, [onFormatChange]);
38
+ const isMounted = React.useRef(false);
39
+ // runs returned function only when component is unmounted.
40
+ React.useEffect(() => {
41
+ isMounted.current = true;
42
+ return (() => {
43
+ isMounted.current = false;
44
+ });
45
+ }, []);
46
+ React.useEffect(() => {
47
+ async function fetchFormatSpec() {
48
+ const pu = await persistenceUnit;
49
+ let newFormatSpec;
50
+ if (provideFormatSpec) {
51
+ newFormatSpec = await provideFormatSpec(formatProps, pu, unitsProvider);
52
+ }
53
+ else {
54
+ newFormatSpec = await generateFormatSpec(formatProps, pu, unitsProvider);
55
+ }
56
+ isMounted.current && setFormatSpec(newFormatSpec);
57
+ }
58
+ if (!formatSpec)
59
+ fetchFormatSpec(); // eslint-disable-line @typescript-eslint/no-floating-promises
60
+ }, [formatProps, formatSpec, persistenceUnit, provideFormatSpec, unitsProvider]);
61
+ const handleFormatChange = React.useCallback((newFormatProps) => {
62
+ handleUserFormatChanges(newFormatProps);
63
+ }, [handleUserFormatChanges]);
64
+ const handleShowOptions = React.useCallback((show) => {
65
+ setShowOptions(show);
66
+ }, []);
67
+ return (React.createElement("div", { className: "components-quantityFormat-panel" },
68
+ showSample &&
69
+ React.createElement(FormatSample, { formatSpec: formatSpec, initialMagnitude: initialMagnitude }),
70
+ React.createElement(FormatUnits, { unitsProvider: unitsProvider, persistenceUnit: formatSpec === null || formatSpec === void 0 ? void 0 : formatSpec.persistenceUnit, initialFormat: formatProps, onUnitsChange: handleFormatChange }),
71
+ React.createElement(FormatUnitLabel, { formatProps: formatProps, onUnitLabelChange: handleFormatChange }),
72
+ React.createElement(FormatTypeOption, { formatProps: formatProps, onChange: handleFormatChange }),
73
+ React.createElement(FormatPrecision, { formatProps: formatProps, onChange: handleFormatChange }),
74
+ props.providePrimaryChildren && props.providePrimaryChildren(formatProps, handleFormatChange),
75
+ React.createElement(MiscFormatOptions, { formatProps: formatProps, onChange: handleFormatChange, enableMinimumProperties: enableMinimumProperties, showOptions: showOptions, onShowHideOptions: handleShowOptions }, props.provideSecondaryChildren && props.provideSecondaryChildren(formatProps, handleFormatChange))));
76
+ }
77
77
  //# sourceMappingURL=FormatPanel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FormatPanel.js","sourceRoot":"","sources":["../../../../src/imodel-components-react/quantityformat/FormatPanel.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 QuantityFormat\n */\n\nimport \"./FormatPanel.scss\";\nimport * as React from \"react\";\nimport { Format, FormatProps, FormatterSpec, UnitProps, UnitsProvider } from \"@itwin/core-quantity\";\nimport { CommonProps } from \"@itwin/core-react\";\nimport { FormatPrecision } from \"./FormatPrecision\";\nimport { FormatSample } from \"./FormatSample\";\nimport { FormatTypeOption } from \"./FormatType\";\nimport { FormatUnitLabel } from \"./FormatUnitLabel\";\nimport { FormatUnits } from \"./FormatUnits\";\nimport { MiscFormatOptions } from \"./MiscFormatOptions\";\n\n/** Properties of [[FormatPanel]] component.\n * @alpha\n */\nexport interface FormatPanelProps extends CommonProps {\n initialFormat: FormatProps;\n unitsProvider: UnitsProvider;\n persistenceUnit: Promise<UnitProps> | UnitProps;\n showSample?: boolean;\n initialMagnitude?: number;\n // if true a only primary format properties are initially displayed and a \"More/Less\" link is added.\n enableMinimumProperties?: boolean;\n onFormatChange?: (format: FormatProps) => void;\n provideFormatSpec?: (formatProps: FormatProps, persistenceUnit: UnitProps, unitsProvider: UnitsProvider) => Promise<FormatterSpec>;\n providePrimaryChildren?: (formatProps: FormatProps, fireFormatChange: (newProps: FormatProps) => void) => React.ReactNode;\n provideSecondaryChildren?: (formatProps: FormatProps, fireFormatChange: (newProps: FormatProps) => void) => React.ReactNode;\n}\n\nasync function generateFormatSpec(formatProps: FormatProps, persistenceUnit: UnitProps, unitsProvider: UnitsProvider) {\n const actualFormat = await Format.createFromJSON(\"custom\", unitsProvider, formatProps);\n return FormatterSpec.create(actualFormat.name, actualFormat, unitsProvider, persistenceUnit);\n}\n\n/** Component to show/edit Quantity Format.\n * @alpha\n */\nexport function FormatPanel(props: FormatPanelProps) {\n const [formatSpec, setFormatSpec] = React.useState<FormatterSpec>();\n const { initialFormat, showSample, initialMagnitude, unitsProvider, persistenceUnit, onFormatChange, provideFormatSpec, enableMinimumProperties } = props;\n const [formatProps, setFormatProps] = React.useState(initialFormat);\n const [showOptions, setShowOptions] = React.useState(false);\n\n React.useEffect(() => {\n setFormatProps(initialFormat);\n setFormatSpec(undefined); // this will trigger the new spec to be created in the useEffect hook\n }, [initialFormat]);\n\n const handleUserFormatChanges = React.useCallback((newProps: FormatProps) => {\n setFormatProps(newProps);\n setFormatSpec(undefined); // this will trigger the new spec to be created in the useEffect hook\n onFormatChange && onFormatChange(newProps);\n }, [onFormatChange]);\n\n const isMounted = React.useRef(false);\n\n // runs returned function only when component is unmounted.\n React.useEffect(() => {\n isMounted.current = true;\n return (() => {\n isMounted.current = false;\n });\n }, []);\n\n React.useEffect(() => {\n async function fetchFormatSpec() {\n const pu = await persistenceUnit;\n let newFormatSpec: FormatterSpec;\n if (provideFormatSpec) {\n newFormatSpec = await provideFormatSpec(formatProps, pu, unitsProvider);\n } else {\n newFormatSpec = await generateFormatSpec(formatProps, pu, unitsProvider);\n }\n isMounted.current && setFormatSpec(newFormatSpec);\n }\n if (!formatSpec)\n fetchFormatSpec(); // eslint-disable-line @typescript-eslint/no-floating-promises\n }, [formatProps, formatSpec, persistenceUnit, provideFormatSpec, unitsProvider]);\n\n const handleFormatChange = React.useCallback((newFormatProps: FormatProps) => {\n handleUserFormatChanges(newFormatProps);\n }, [handleUserFormatChanges]);\n\n const handleShowOptions = React.useCallback((show: boolean) => {\n setShowOptions(show);\n }, []);\n\n return (\n <div className=\"components-quantityFormat-panel\">\n {showSample &&\n <FormatSample formatSpec={formatSpec} initialMagnitude={initialMagnitude} />\n }\n <FormatUnits unitsProvider={unitsProvider} persistenceUnit={formatSpec?.persistenceUnit} initialFormat={formatProps} onUnitsChange={handleFormatChange} />\n <FormatUnitLabel formatProps={formatProps} onUnitLabelChange={handleFormatChange} />\n <FormatTypeOption formatProps={formatProps} onChange={handleFormatChange} />\n <FormatPrecision formatProps={formatProps} onChange={handleFormatChange} />\n {props.providePrimaryChildren && props.providePrimaryChildren(formatProps, handleFormatChange)}\n <MiscFormatOptions formatProps={formatProps} onChange={handleFormatChange} enableMinimumProperties={enableMinimumProperties} showOptions={showOptions} onShowHideOptions={handleShowOptions}>\n {props.provideSecondaryChildren && props.provideSecondaryChildren(formatProps, handleFormatChange)}\n </MiscFormatOptions>\n </div>\n );\n}\n"]}
1
+ {"version":3,"file":"FormatPanel.js","sourceRoot":"","sources":["../../../../src/imodel-components-react/quantityformat/FormatPanel.tsx"],"names":[],"mappings":"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","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module QuantityFormat\r\n */\r\n\r\nimport \"./FormatPanel.scss\";\r\nimport * as React from \"react\";\r\nimport { Format, FormatProps, FormatterSpec, UnitProps, UnitsProvider } from \"@itwin/core-quantity\";\r\nimport { CommonProps } from \"@itwin/core-react\";\r\nimport { FormatPrecision } from \"./FormatPrecision\";\r\nimport { FormatSample } from \"./FormatSample\";\r\nimport { FormatTypeOption } from \"./FormatType\";\r\nimport { FormatUnitLabel } from \"./FormatUnitLabel\";\r\nimport { FormatUnits } from \"./FormatUnits\";\r\nimport { MiscFormatOptions } from \"./MiscFormatOptions\";\r\n\r\n/** Properties of [[FormatPanel]] component.\r\n * @alpha\r\n */\r\nexport interface FormatPanelProps extends CommonProps {\r\n initialFormat: FormatProps;\r\n unitsProvider: UnitsProvider;\r\n persistenceUnit: Promise<UnitProps> | UnitProps;\r\n showSample?: boolean;\r\n initialMagnitude?: number;\r\n // if true a only primary format properties are initially displayed and a \"More/Less\" link is added.\r\n enableMinimumProperties?: boolean;\r\n onFormatChange?: (format: FormatProps) => void;\r\n provideFormatSpec?: (formatProps: FormatProps, persistenceUnit: UnitProps, unitsProvider: UnitsProvider) => Promise<FormatterSpec>;\r\n providePrimaryChildren?: (formatProps: FormatProps, fireFormatChange: (newProps: FormatProps) => void) => React.ReactNode;\r\n provideSecondaryChildren?: (formatProps: FormatProps, fireFormatChange: (newProps: FormatProps) => void) => React.ReactNode;\r\n}\r\n\r\nasync function generateFormatSpec(formatProps: FormatProps, persistenceUnit: UnitProps, unitsProvider: UnitsProvider) {\r\n const actualFormat = await Format.createFromJSON(\"custom\", unitsProvider, formatProps);\r\n return FormatterSpec.create(actualFormat.name, actualFormat, unitsProvider, persistenceUnit);\r\n}\r\n\r\n/** Component to show/edit Quantity Format.\r\n * @alpha\r\n */\r\nexport function FormatPanel(props: FormatPanelProps) {\r\n const [formatSpec, setFormatSpec] = React.useState<FormatterSpec>();\r\n const { initialFormat, showSample, initialMagnitude, unitsProvider, persistenceUnit, onFormatChange, provideFormatSpec, enableMinimumProperties } = props;\r\n const [formatProps, setFormatProps] = React.useState(initialFormat);\r\n const [showOptions, setShowOptions] = React.useState(false);\r\n\r\n React.useEffect(() => {\r\n setFormatProps(initialFormat);\r\n setFormatSpec(undefined); // this will trigger the new spec to be created in the useEffect hook\r\n }, [initialFormat]);\r\n\r\n const handleUserFormatChanges = React.useCallback((newProps: FormatProps) => {\r\n setFormatProps(newProps);\r\n setFormatSpec(undefined); // this will trigger the new spec to be created in the useEffect hook\r\n onFormatChange && onFormatChange(newProps);\r\n }, [onFormatChange]);\r\n\r\n const isMounted = React.useRef(false);\r\n\r\n // runs returned function only when component is unmounted.\r\n React.useEffect(() => {\r\n isMounted.current = true;\r\n return (() => {\r\n isMounted.current = false;\r\n });\r\n }, []);\r\n\r\n React.useEffect(() => {\r\n async function fetchFormatSpec() {\r\n const pu = await persistenceUnit;\r\n let newFormatSpec: FormatterSpec;\r\n if (provideFormatSpec) {\r\n newFormatSpec = await provideFormatSpec(formatProps, pu, unitsProvider);\r\n } else {\r\n newFormatSpec = await generateFormatSpec(formatProps, pu, unitsProvider);\r\n }\r\n isMounted.current && setFormatSpec(newFormatSpec);\r\n }\r\n if (!formatSpec)\r\n fetchFormatSpec(); // eslint-disable-line @typescript-eslint/no-floating-promises\r\n }, [formatProps, formatSpec, persistenceUnit, provideFormatSpec, unitsProvider]);\r\n\r\n const handleFormatChange = React.useCallback((newFormatProps: FormatProps) => {\r\n handleUserFormatChanges(newFormatProps);\r\n }, [handleUserFormatChanges]);\r\n\r\n const handleShowOptions = React.useCallback((show: boolean) => {\r\n setShowOptions(show);\r\n }, []);\r\n\r\n return (\r\n <div className=\"components-quantityFormat-panel\">\r\n {showSample &&\r\n <FormatSample formatSpec={formatSpec} initialMagnitude={initialMagnitude} />\r\n }\r\n <FormatUnits unitsProvider={unitsProvider} persistenceUnit={formatSpec?.persistenceUnit} initialFormat={formatProps} onUnitsChange={handleFormatChange} />\r\n <FormatUnitLabel formatProps={formatProps} onUnitLabelChange={handleFormatChange} />\r\n <FormatTypeOption formatProps={formatProps} onChange={handleFormatChange} />\r\n <FormatPrecision formatProps={formatProps} onChange={handleFormatChange} />\r\n {props.providePrimaryChildren && props.providePrimaryChildren(formatProps, handleFormatChange)}\r\n <MiscFormatOptions formatProps={formatProps} onChange={handleFormatChange} enableMinimumProperties={enableMinimumProperties} showOptions={showOptions} onShowHideOptions={handleShowOptions}>\r\n {props.provideSecondaryChildren && props.provideSecondaryChildren(formatProps, handleFormatChange)}\r\n </MiscFormatOptions>\r\n </div>\r\n );\r\n}\r\n"]}
@@ -1,63 +1,63 @@
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
- @import "~@itwin/core-react/lib/cjs/core-react/inputs/variables";
6
-
7
- .components-quantityFormat-panel {
8
- display: grid;
9
- grid-template-columns: auto 1fr;
10
- row-gap: 0;
11
- column-gap: 6px;
12
- align-items: center;
13
-
14
- > .uicore-label {
15
- font-size: var(--iui-font-size-1);
16
- margin: 4.4px 0;
17
-
18
- /* match margin on other select controls so it spaces properly in grid */
19
- &.uicore-disabled {
20
- color: $buic-text-color-disabled;
21
- }
22
- }
23
-
24
- > span.components-inline {
25
- display: flex;
26
- flex-direction: row;
27
- align-items: center;
28
- gap: 4px;
29
- }
30
-
31
- > label.core-checkbox.core-checkbox-no-label {
32
- min-height: 1.57em;
33
- }
34
-
35
- > button.components-quantityFormat-more-button {
36
- grid-column: 1 / span 2;
37
- border: none;
38
- outline: none;
39
- background: none;
40
- }
41
-
42
- .components-quantityFormat-more-button-label {
43
- margin-right: 0.25em;
44
- }
45
-
46
- > a.components-quantityFormat-more-less {
47
- font-size: var(--iui-font-size-1);
48
- color: $buic-foreground-alert;
49
- -webkit-transition: text-decoration 1s ease;
50
- -moz-transition: text-decoration 1s ease;
51
- -o-transition: text-decoration 1s ease;
52
- transition: text-decoration 0.1s ease;
53
-
54
- &:hover {
55
- text-decoration: underline;
56
- cursor: pointer;
57
- }
58
- }
59
-
60
- .iui-input {
61
- padding: $uicore-iui-input-padding;
62
- }
63
- }
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
+ @import "~@itwin/core-react/lib/cjs/core-react/inputs/variables";
6
+
7
+ .components-quantityFormat-panel {
8
+ display: grid;
9
+ grid-template-columns: auto 1fr;
10
+ row-gap: 0;
11
+ column-gap: 6px;
12
+ align-items: center;
13
+
14
+ > .uicore-label {
15
+ font-size: var(--iui-font-size-1);
16
+ margin: 4.4px 0;
17
+
18
+ /* match margin on other select controls so it spaces properly in grid */
19
+ &.uicore-disabled {
20
+ color: var(--iui-color-text-disabled);
21
+ }
22
+ }
23
+
24
+ > span.components-inline {
25
+ display: flex;
26
+ flex-direction: row;
27
+ align-items: center;
28
+ gap: 4px;
29
+ }
30
+
31
+ > label.core-checkbox.core-checkbox-no-label {
32
+ min-height: 1.57em;
33
+ }
34
+
35
+ > button.components-quantityFormat-more-button {
36
+ grid-column: 1 / span 2;
37
+ border: none;
38
+ outline: none;
39
+ background: none;
40
+ }
41
+
42
+ .components-quantityFormat-more-button-label {
43
+ margin-right: 0.25em;
44
+ }
45
+
46
+ > a.components-quantityFormat-more-less {
47
+ font-size: var(--iui-font-size-1);
48
+ color: var(--iui-color-text-negative);
49
+ -webkit-transition: text-decoration 1s ease;
50
+ -moz-transition: text-decoration 1s ease;
51
+ -o-transition: text-decoration 1s ease;
52
+ transition: text-decoration 0.1s ease;
53
+
54
+ &:hover {
55
+ text-decoration: underline;
56
+ cursor: pointer;
57
+ }
58
+ }
59
+
60
+ .iui-input {
61
+ padding: $uicore-iui-input-padding;
62
+ }
63
+ }
@@ -1,18 +1,18 @@
1
- /** @packageDocumentation
2
- * @module QuantityFormat
3
- */
4
- /// <reference types="react" />
5
- import { CommonProps } from "@itwin/core-react";
6
- import { FormatProps } from "@itwin/core-quantity";
7
- /** Properties of [[FormatPrecision]] component.
8
- * @alpha
9
- */
10
- export interface FormatPrecisionProps extends CommonProps {
11
- formatProps: FormatProps;
12
- onChange?: (format: FormatProps) => void;
13
- }
14
- /** Component to show/edit Quantity Format Precision.
15
- * @alpha
16
- */
17
- export declare function FormatPrecision(props: FormatPrecisionProps): JSX.Element;
1
+ /** @packageDocumentation
2
+ * @module QuantityFormat
3
+ */
4
+ /// <reference types="react" />
5
+ import { CommonProps } from "@itwin/core-react";
6
+ import { FormatProps } from "@itwin/core-quantity";
7
+ /** Properties of [[FormatPrecision]] component.
8
+ * @alpha
9
+ */
10
+ export interface FormatPrecisionProps extends CommonProps {
11
+ formatProps: FormatProps;
12
+ onChange?: (format: FormatProps) => void;
13
+ }
14
+ /** Component to show/edit Quantity Format Precision.
15
+ * @alpha
16
+ */
17
+ export declare function FormatPrecision(props: FormatPrecisionProps): JSX.Element;
18
18
  //# sourceMappingURL=FormatPrecision.d.ts.map
@@ -1,31 +1,31 @@
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 QuantityFormat
7
- */
8
- import * as React from "react";
9
- import { FormatType, parseFormatType } from "@itwin/core-quantity";
10
- import { DecimalPrecisionSelector } from "./misc/DecimalPrecision";
11
- import { FractionPrecisionSelector } from "./misc/FractionPrecision";
12
- import { UiIModelComponents } from "../UiIModelComponents";
13
- /** Component to show/edit Quantity Format Precision.
14
- * @alpha
15
- */
16
- export function FormatPrecision(props) {
17
- var _a, _b;
18
- const { formatProps, onChange } = props;
19
- const handlePrecisionChange = React.useCallback((precision) => {
20
- const newFormatProps = { ...formatProps, precision };
21
- onChange && onChange(newFormatProps);
22
- }, [formatProps, onChange]);
23
- const formatType = parseFormatType(formatProps.type, "format");
24
- const label = React.useRef(UiIModelComponents.translate("QuantityFormat.labels.precision"));
25
- return (React.createElement(React.Fragment, null,
26
- React.createElement("span", { className: "uicore-label" }, label.current),
27
- formatType === FormatType.Fractional ?
28
- React.createElement(FractionPrecisionSelector, { "data-testid": "fraction-precision-selector", precision: (_a = formatProps.precision) !== null && _a !== void 0 ? _a : 0, onChange: handlePrecisionChange }) :
29
- React.createElement(DecimalPrecisionSelector, { "data-testid": "decimal-precision-selector", precision: (_b = formatProps.precision) !== null && _b !== void 0 ? _b : 0, onChange: handlePrecisionChange })));
30
- }
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 QuantityFormat
7
+ */
8
+ import * as React from "react";
9
+ import { FormatType, parseFormatType } from "@itwin/core-quantity";
10
+ import { DecimalPrecisionSelector } from "./misc/DecimalPrecision";
11
+ import { FractionPrecisionSelector } from "./misc/FractionPrecision";
12
+ import { UiIModelComponents } from "../UiIModelComponents";
13
+ /** Component to show/edit Quantity Format Precision.
14
+ * @alpha
15
+ */
16
+ export function FormatPrecision(props) {
17
+ var _a, _b;
18
+ const { formatProps, onChange } = props;
19
+ const handlePrecisionChange = React.useCallback((precision) => {
20
+ const newFormatProps = { ...formatProps, precision };
21
+ onChange && onChange(newFormatProps);
22
+ }, [formatProps, onChange]);
23
+ const formatType = parseFormatType(formatProps.type, "format");
24
+ const label = React.useRef(UiIModelComponents.translate("QuantityFormat.labels.precision"));
25
+ return (React.createElement(React.Fragment, null,
26
+ React.createElement("span", { className: "uicore-label" }, label.current),
27
+ formatType === FormatType.Fractional ?
28
+ React.createElement(FractionPrecisionSelector, { "data-testid": "fraction-precision-selector", precision: (_a = formatProps.precision) !== null && _a !== void 0 ? _a : 0, onChange: handlePrecisionChange }) :
29
+ React.createElement(DecimalPrecisionSelector, { "data-testid": "decimal-precision-selector", precision: (_b = formatProps.precision) !== null && _b !== void 0 ? _b : 0, onChange: handlePrecisionChange })));
30
+ }
31
31
  //# sourceMappingURL=FormatPrecision.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FormatPrecision.js","sourceRoot":"","sources":["../../../../src/imodel-components-react/quantityformat/FormatPrecision.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAe,UAAU,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAU3D;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,KAA2B;;IACzD,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAExC,MAAM,qBAAqB,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,SAAiB,EAAE,EAAE;QACpE,MAAM,cAAc,GAAG,EAAE,GAAG,WAAW,EAAE,SAAS,EAAE,CAAC;QACrD,QAAQ,IAAI,QAAQ,CAAC,cAAc,CAAC,CAAC;IACvC,CAAC,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC;IAE5B,MAAM,UAAU,GAAG,eAAe,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAE/D,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,SAAS,CAAC,iCAAiC,CAAC,CAAC,CAAC;IAC5F,OAAO,CACL;QACE,8BAAM,SAAS,EAAE,cAAc,IAAG,KAAK,CAAC,OAAO,CAAQ;QACtD,UAAU,KAAK,UAAU,CAAC,UAAU,CAAC,CAAC;YACrC,oBAAC,yBAAyB,mBAAa,6BAA6B,EAAC,SAAS,EAAE,MAAA,WAAW,CAAC,SAAS,mCAAI,CAAC,EAAE,QAAQ,EAAE,qBAAqB,GAAI,CAAC,CAAC;YACjJ,oBAAC,wBAAwB,mBAAa,4BAA4B,EAAC,SAAS,EAAE,MAAA,WAAW,CAAC,SAAS,mCAAI,CAAC,EAAE,QAAQ,EAAE,qBAAqB,GAAI,CAE9I,CACJ,CAAC;AACJ,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\n* See LICENSE.md in the project root for license terms and full copyright notice.\n*--------------------------------------------------------------------------------------------*/\n/** @packageDocumentation\n * @module QuantityFormat\n */\n\nimport * as React from \"react\";\nimport { CommonProps } from \"@itwin/core-react\";\nimport { FormatProps, FormatType, parseFormatType } from \"@itwin/core-quantity\";\nimport { DecimalPrecisionSelector } from \"./misc/DecimalPrecision\";\nimport { FractionPrecisionSelector } from \"./misc/FractionPrecision\";\nimport { UiIModelComponents } from \"../UiIModelComponents\";\n\n/** Properties of [[FormatPrecision]] component.\n * @alpha\n */\nexport interface FormatPrecisionProps extends CommonProps {\n formatProps: FormatProps;\n onChange?: (format: FormatProps) => void;\n}\n\n/** Component to show/edit Quantity Format Precision.\n * @alpha\n */\nexport function FormatPrecision(props: FormatPrecisionProps) {\n const { formatProps, onChange } = props;\n\n const handlePrecisionChange = React.useCallback((precision: number) => {\n const newFormatProps = { ...formatProps, precision };\n onChange && onChange(newFormatProps);\n }, [formatProps, onChange]);\n\n const formatType = parseFormatType(formatProps.type, \"format\");\n\n const label = React.useRef(UiIModelComponents.translate(\"QuantityFormat.labels.precision\"));\n return (\n <>\n <span className={\"uicore-label\"}>{label.current}</span>\n {formatType === FormatType.Fractional ?\n <FractionPrecisionSelector data-testid=\"fraction-precision-selector\" precision={formatProps.precision ?? 0} onChange={handlePrecisionChange} /> :\n <DecimalPrecisionSelector data-testid=\"decimal-precision-selector\" precision={formatProps.precision ?? 0} onChange={handlePrecisionChange} />\n }\n </>\n );\n}\n"]}
1
+ {"version":3,"file":"FormatPrecision.js","sourceRoot":"","sources":["../../../../src/imodel-components-react/quantityformat/FormatPrecision.tsx"],"names":[],"mappings":"AAAA;;;+FAG+F;AAC/F;;GAEG;AAEH,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAO,EAAe,UAAU,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAU3D;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,KAA2B;;IACzD,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IAExC,MAAM,qBAAqB,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,SAAiB,EAAE,EAAE;QACpE,MAAM,cAAc,GAAG,EAAE,GAAG,WAAW,EAAE,SAAS,EAAE,CAAC;QACrD,QAAQ,IAAI,QAAQ,CAAC,cAAc,CAAC,CAAC;IACvC,CAAC,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC;IAE5B,MAAM,UAAU,GAAG,eAAe,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAE/D,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,SAAS,CAAC,iCAAiC,CAAC,CAAC,CAAC;IAC5F,OAAO,CACL;QACE,8BAAM,SAAS,EAAE,cAAc,IAAG,KAAK,CAAC,OAAO,CAAQ;QACtD,UAAU,KAAK,UAAU,CAAC,UAAU,CAAC,CAAC;YACrC,oBAAC,yBAAyB,mBAAa,6BAA6B,EAAC,SAAS,EAAE,MAAA,WAAW,CAAC,SAAS,mCAAI,CAAC,EAAE,QAAQ,EAAE,qBAAqB,GAAI,CAAC,CAAC;YACjJ,oBAAC,wBAAwB,mBAAa,4BAA4B,EAAC,SAAS,EAAE,MAAA,WAAW,CAAC,SAAS,mCAAI,CAAC,EAAE,QAAQ,EAAE,qBAAqB,GAAI,CAE9I,CACJ,CAAC;AACJ,CAAC","sourcesContent":["/*---------------------------------------------------------------------------------------------\r\n* Copyright (c) Bentley Systems, Incorporated. All rights reserved.\r\n* See LICENSE.md in the project root for license terms and full copyright notice.\r\n*--------------------------------------------------------------------------------------------*/\r\n/** @packageDocumentation\r\n * @module QuantityFormat\r\n */\r\n\r\nimport * as React from \"react\";\r\nimport { CommonProps } from \"@itwin/core-react\";\r\nimport { FormatProps, FormatType, parseFormatType } from \"@itwin/core-quantity\";\r\nimport { DecimalPrecisionSelector } from \"./misc/DecimalPrecision\";\r\nimport { FractionPrecisionSelector } from \"./misc/FractionPrecision\";\r\nimport { UiIModelComponents } from \"../UiIModelComponents\";\r\n\r\n/** Properties of [[FormatPrecision]] component.\r\n * @alpha\r\n */\r\nexport interface FormatPrecisionProps extends CommonProps {\r\n formatProps: FormatProps;\r\n onChange?: (format: FormatProps) => void;\r\n}\r\n\r\n/** Component to show/edit Quantity Format Precision.\r\n * @alpha\r\n */\r\nexport function FormatPrecision(props: FormatPrecisionProps) {\r\n const { formatProps, onChange } = props;\r\n\r\n const handlePrecisionChange = React.useCallback((precision: number) => {\r\n const newFormatProps = { ...formatProps, precision };\r\n onChange && onChange(newFormatProps);\r\n }, [formatProps, onChange]);\r\n\r\n const formatType = parseFormatType(formatProps.type, \"format\");\r\n\r\n const label = React.useRef(UiIModelComponents.translate(\"QuantityFormat.labels.precision\"));\r\n return (\r\n <>\r\n <span className={\"uicore-label\"}>{label.current}</span>\r\n {formatType === FormatType.Fractional ?\r\n <FractionPrecisionSelector data-testid=\"fraction-precision-selector\" precision={formatProps.precision ?? 0} onChange={handlePrecisionChange} /> :\r\n <DecimalPrecisionSelector data-testid=\"decimal-precision-selector\" precision={formatProps.precision ?? 0} onChange={handlePrecisionChange} />\r\n }\r\n </>\r\n );\r\n}\r\n"]}
@@ -1,19 +1,19 @@
1
- /** @packageDocumentation
2
- * @module QuantityFormat
3
- */
4
- /// <reference types="react" />
5
- import { FormatterSpec } from "@itwin/core-quantity";
6
- import { CommonProps } from "@itwin/core-react";
7
- /** Properties of [[FormatSample]] component.
8
- * @alpha
9
- */
10
- export interface FormatSampleProps extends CommonProps {
11
- formatSpec?: FormatterSpec;
12
- initialMagnitude?: number;
13
- hideLabels?: boolean;
14
- }
15
- /** Component to show the persistence value and formatted value given a FormatterSpec.
16
- * @alpha
17
- */
18
- export declare function FormatSample(props: FormatSampleProps): JSX.Element;
1
+ /** @packageDocumentation
2
+ * @module QuantityFormat
3
+ */
4
+ /// <reference types="react" />
5
+ import { FormatterSpec } from "@itwin/core-quantity";
6
+ import { CommonProps } from "@itwin/core-react";
7
+ /** Properties of [[FormatSample]] component.
8
+ * @alpha
9
+ */
10
+ export interface FormatSampleProps extends CommonProps {
11
+ formatSpec?: FormatterSpec;
12
+ initialMagnitude?: number;
13
+ hideLabels?: boolean;
14
+ }
15
+ /** Component to show the persistence value and formatted value given a FormatterSpec.
16
+ * @alpha
17
+ */
18
+ export declare function FormatSample(props: FormatSampleProps): JSX.Element;
19
19
  //# sourceMappingURL=FormatSample.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"FormatSample.d.ts","sourceRoot":"","sources":["../../../../src/imodel-components-react/quantityformat/FormatSample.tsx"],"names":[],"mappings":"AAIA;;GAEG;;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAE,WAAW,EAAe,MAAM,mBAAmB,CAAC;AAI7D;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACpD,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB,eAuDpD"}
1
+ {"version":3,"file":"FormatSample.d.ts","sourceRoot":"","sources":["../../../../src/imodel-components-react/quantityformat/FormatSample.tsx"],"names":[],"mappings":"AAIA;;GAEG;;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAE,WAAW,EAAQ,MAAM,mBAAmB,CAAC;AAKtD;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACpD,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,iBAAiB,eAuDpD"}