@itwin/imodel-components-react 4.0.0-dev.8 → 4.0.0

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 (330) hide show
  1. package/CHANGELOG.md +66 -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.d.ts.map +1 -1
  5. package/lib/cjs/imodel-components-react/UiIModelComponents.js +77 -79
  6. package/lib/cjs/imodel-components-react/UiIModelComponents.js.map +1 -1
  7. package/lib/cjs/imodel-components-react/color/AlphaSlider.d.ts +36 -36
  8. package/lib/cjs/imodel-components-react/color/AlphaSlider.js +190 -186
  9. package/lib/cjs/imodel-components-react/color/AlphaSlider.js.map +1 -1
  10. package/lib/cjs/imodel-components-react/color/ColorPickerButton.d.ts +37 -37
  11. package/lib/cjs/imodel-components-react/color/ColorPickerButton.d.ts.map +1 -1
  12. package/lib/cjs/imodel-components-react/color/ColorPickerButton.js +112 -107
  13. package/lib/cjs/imodel-components-react/color/ColorPickerButton.js.map +1 -1
  14. package/lib/cjs/imodel-components-react/color/ColorPickerButton.scss +19 -21
  15. package/lib/cjs/imodel-components-react/color/ColorPickerDialog.d.ts +23 -23
  16. package/lib/cjs/imodel-components-react/color/ColorPickerDialog.js +78 -74
  17. package/lib/cjs/imodel-components-react/color/ColorPickerDialog.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.d.ts.map +1 -1
  20. package/lib/cjs/imodel-components-react/color/ColorPickerPopup.js +143 -137
  21. package/lib/cjs/imodel-components-react/color/ColorPickerPopup.js.map +1 -1
  22. package/lib/cjs/imodel-components-react/color/ColorPickerPopup.scss +15 -17
  23. package/lib/cjs/imodel-components-react/color/HueSlider.d.ts +22 -22
  24. package/lib/cjs/imodel-components-react/color/HueSlider.js +203 -199
  25. package/lib/cjs/imodel-components-react/color/HueSlider.js.map +1 -1
  26. package/lib/cjs/imodel-components-react/color/SaturationPicker.d.ts +20 -20
  27. package/lib/cjs/imodel-components-react/color/SaturationPicker.js +217 -213
  28. package/lib/cjs/imodel-components-react/color/SaturationPicker.js.map +1 -1
  29. package/lib/cjs/imodel-components-react/color/Swatch.d.ts +22 -22
  30. package/lib/cjs/imodel-components-react/color/Swatch.js +64 -60
  31. package/lib/cjs/imodel-components-react/color/Swatch.js.map +1 -1
  32. package/lib/cjs/imodel-components-react/color/Swatch.scss +5 -7
  33. package/lib/cjs/imodel-components-react/color/getCSSColorFromDef.d.ts +6 -6
  34. package/lib/cjs/imodel-components-react/color/getCSSColorFromDef.js +23 -23
  35. package/lib/cjs/imodel-components-react/editors/ColorEditor.d.ts +44 -44
  36. package/lib/cjs/imodel-components-react/editors/ColorEditor.js +155 -151
  37. package/lib/cjs/imodel-components-react/editors/ColorEditor.js.map +1 -1
  38. package/lib/cjs/imodel-components-react/editors/ColorEditor.scss +4 -5
  39. package/lib/cjs/imodel-components-react/editors/WeightEditor.d.ts +47 -47
  40. package/lib/cjs/imodel-components-react/editors/WeightEditor.js +164 -160
  41. package/lib/cjs/imodel-components-react/editors/WeightEditor.js.map +1 -1
  42. package/lib/cjs/imodel-components-react/editors/WeightEditor.scss +4 -5
  43. package/lib/cjs/imodel-components-react/inputs/QuantityInput.d.ts +25 -25
  44. package/lib/cjs/imodel-components-react/inputs/QuantityInput.js +100 -96
  45. package/lib/cjs/imodel-components-react/inputs/QuantityInput.js.map +1 -1
  46. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.d.ts +44 -44
  47. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.d.ts.map +1 -1
  48. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.js +272 -265
  49. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.js.map +1 -1
  50. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.scss +6 -7
  51. package/lib/cjs/imodel-components-react/lineweight/Swatch.d.ts +33 -33
  52. package/lib/cjs/imodel-components-react/lineweight/Swatch.js +89 -85
  53. package/lib/cjs/imodel-components-react/lineweight/Swatch.js.map +1 -1
  54. package/lib/cjs/imodel-components-react/lineweight/Swatch.scss +7 -8
  55. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.d.ts +60 -60
  56. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.js +163 -159
  57. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.js.map +1 -1
  58. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.scss +13 -15
  59. package/lib/cjs/imodel-components-react/navigationaids/Cube.d.ts +45 -45
  60. package/lib/cjs/imodel-components-react/navigationaids/Cube.js +131 -127
  61. package/lib/cjs/imodel-components-react/navigationaids/Cube.js.map +1 -1
  62. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.d.ts +154 -174
  63. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.d.ts.map +1 -1
  64. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.js +631 -634
  65. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.js.map +1 -1
  66. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.scss +18 -21
  67. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts +145 -145
  68. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts.map +1 -1
  69. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.js +657 -647
  70. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.js.map +1 -1
  71. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.scss +9 -8
  72. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.d.ts +26 -26
  73. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.js +103 -99
  74. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.js.map +1 -1
  75. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.scss +10 -16
  76. package/lib/cjs/imodel-components-react/quantityformat/FormatPrecision.d.ts +17 -17
  77. package/lib/cjs/imodel-components-react/quantityformat/FormatPrecision.js +57 -53
  78. package/lib/cjs/imodel-components-react/quantityformat/FormatPrecision.js.map +1 -1
  79. package/lib/cjs/imodel-components-react/quantityformat/FormatSample.d.ts +18 -18
  80. package/lib/cjs/imodel-components-react/quantityformat/FormatSample.d.ts.map +1 -1
  81. package/lib/cjs/imodel-components-react/quantityformat/FormatSample.js +88 -83
  82. package/lib/cjs/imodel-components-react/quantityformat/FormatSample.js.map +1 -1
  83. package/lib/cjs/imodel-components-react/quantityformat/FormatType.d.ts +17 -17
  84. package/lib/cjs/imodel-components-react/quantityformat/FormatType.js +90 -86
  85. package/lib/cjs/imodel-components-react/quantityformat/FormatType.js.map +1 -1
  86. package/lib/cjs/imodel-components-react/quantityformat/FormatUnitLabel.d.ts +17 -17
  87. package/lib/cjs/imodel-components-react/quantityformat/FormatUnitLabel.js +113 -109
  88. package/lib/cjs/imodel-components-react/quantityformat/FormatUnitLabel.js.map +1 -1
  89. package/lib/cjs/imodel-components-react/quantityformat/FormatUnits.d.ts +19 -19
  90. package/lib/cjs/imodel-components-react/quantityformat/FormatUnits.js +137 -133
  91. package/lib/cjs/imodel-components-react/quantityformat/FormatUnits.js.map +1 -1
  92. package/lib/cjs/imodel-components-react/quantityformat/MiscFormatOptions.d.ts +21 -21
  93. package/lib/cjs/imodel-components-react/quantityformat/MiscFormatOptions.js +188 -184
  94. package/lib/cjs/imodel-components-react/quantityformat/MiscFormatOptions.js.map +1 -1
  95. package/lib/cjs/imodel-components-react/quantityformat/QuantityFormatPanel.d.ts +22 -22
  96. package/lib/cjs/imodel-components-react/quantityformat/QuantityFormatPanel.d.ts.map +1 -1
  97. package/lib/cjs/imodel-components-react/quantityformat/QuantityFormatPanel.js +149 -154
  98. package/lib/cjs/imodel-components-react/quantityformat/QuantityFormatPanel.js.map +1 -1
  99. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalPrecision.d.ts +17 -17
  100. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalPrecision.js +63 -59
  101. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalPrecision.js.map +1 -1
  102. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalSeparator.d.ts +17 -17
  103. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalSeparator.js +51 -47
  104. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalSeparator.js.map +1 -1
  105. package/lib/cjs/imodel-components-react/quantityformat/misc/FractionPrecision.d.ts +16 -16
  106. package/lib/cjs/imodel-components-react/quantityformat/misc/FractionPrecision.js +58 -54
  107. package/lib/cjs/imodel-components-react/quantityformat/misc/FractionPrecision.js.map +1 -1
  108. package/lib/cjs/imodel-components-react/quantityformat/misc/ScientificType.d.ts +18 -18
  109. package/lib/cjs/imodel-components-react/quantityformat/misc/ScientificType.js +52 -48
  110. package/lib/cjs/imodel-components-react/quantityformat/misc/ScientificType.js.map +1 -1
  111. package/lib/cjs/imodel-components-react/quantityformat/misc/SignOption.d.ts +17 -17
  112. package/lib/cjs/imodel-components-react/quantityformat/misc/SignOption.js +54 -50
  113. package/lib/cjs/imodel-components-react/quantityformat/misc/SignOption.js.map +1 -1
  114. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSeparatorSelector.d.ts +17 -17
  115. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js +62 -58
  116. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js.map +1 -1
  117. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSizeSelector.d.ts +17 -17
  118. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSizeSelector.js +51 -47
  119. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSizeSelector.js.map +1 -1
  120. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSelector.d.ts +17 -17
  121. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSelector.js +60 -56
  122. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSelector.js.map +1 -1
  123. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSeparator.d.ts +17 -17
  124. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSeparator.js +99 -95
  125. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSeparator.js.map +1 -1
  126. package/lib/cjs/imodel-components-react/quantityformat/misc/UnitDescr.d.ts +23 -23
  127. package/lib/cjs/imodel-components-react/quantityformat/misc/UnitDescr.js +123 -119
  128. package/lib/cjs/imodel-components-react/quantityformat/misc/UnitDescr.js.map +1 -1
  129. package/lib/cjs/imodel-components-react/timeline/BaseSolarDataProvider.d.ts +52 -52
  130. package/lib/cjs/imodel-components-react/timeline/BaseSolarDataProvider.d.ts.map +1 -1
  131. package/lib/cjs/imodel-components-react/timeline/BaseSolarDataProvider.js +142 -143
  132. package/lib/cjs/imodel-components-react/timeline/BaseSolarDataProvider.js.map +1 -1
  133. package/lib/cjs/imodel-components-react/timeline/BaseTimelineDataProvider.d.ts +31 -31
  134. package/lib/cjs/imodel-components-react/timeline/BaseTimelineDataProvider.js +69 -69
  135. package/lib/cjs/imodel-components-react/timeline/InlineEdit.d.ts +27 -27
  136. package/lib/cjs/imodel-components-react/timeline/InlineEdit.js +85 -81
  137. package/lib/cjs/imodel-components-react/timeline/InlineEdit.js.map +1 -1
  138. package/lib/cjs/imodel-components-react/timeline/InlineEdit.scss +2 -2
  139. package/lib/cjs/imodel-components-react/timeline/PlayerButton.d.ts +33 -33
  140. package/lib/cjs/imodel-components-react/timeline/PlayerButton.d.ts.map +1 -1
  141. package/lib/cjs/imodel-components-react/timeline/PlayerButton.js +99 -91
  142. package/lib/cjs/imodel-components-react/timeline/PlayerButton.js.map +1 -1
  143. package/lib/cjs/imodel-components-react/timeline/PlayerButton.scss +11 -9
  144. package/lib/cjs/imodel-components-react/timeline/Scrubber.d.ts +54 -54
  145. package/lib/cjs/imodel-components-react/timeline/Scrubber.js +195 -191
  146. package/lib/cjs/imodel-components-react/timeline/Scrubber.js.map +1 -1
  147. package/lib/cjs/imodel-components-react/timeline/Scrubber.scss +13 -15
  148. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.d.ts +77 -77
  149. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.d.ts.map +1 -1
  150. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.js +432 -424
  151. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.js.map +1 -1
  152. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.scss +49 -48
  153. package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.d.ts +15 -15
  154. package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.js +58 -54
  155. package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.js.map +1 -1
  156. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.d.ts +130 -133
  157. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.d.ts.map +1 -1
  158. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.js +398 -358
  159. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.js.map +1 -1
  160. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.scss +39 -25
  161. package/lib/cjs/imodel-components-react/timeline/interfaces.d.ts +145 -174
  162. package/lib/cjs/imodel-components-react/timeline/interfaces.d.ts.map +1 -1
  163. package/lib/cjs/imodel-components-react/timeline/interfaces.js +45 -45
  164. package/lib/cjs/imodel-components-react/timeline/interfaces.js.map +1 -1
  165. package/lib/cjs/imodel-components-react/viewport/ViewportComponent.d.ts +42 -42
  166. package/lib/cjs/imodel-components-react/viewport/ViewportComponent.d.ts.map +1 -1
  167. package/lib/cjs/imodel-components-react/viewport/ViewportComponent.js +278 -274
  168. package/lib/cjs/imodel-components-react/viewport/ViewportComponent.js.map +1 -1
  169. package/lib/cjs/imodel-components-react/viewport/ViewportComponentEvents.d.ts +106 -106
  170. package/lib/cjs/imodel-components-react/viewport/ViewportComponentEvents.js +105 -105
  171. package/lib/cjs/imodel-components-react/viewport/ViewportComponentEvents.js.map +1 -1
  172. package/lib/cjs/imodel-components-react.d.ts +81 -82
  173. package/lib/cjs/imodel-components-react.d.ts.map +1 -1
  174. package/lib/cjs/imodel-components-react.js +104 -101
  175. package/lib/cjs/imodel-components-react.js.map +1 -1
  176. package/lib/esm/imodel-components-react/UiIModelComponents.d.ts +28 -28
  177. package/lib/esm/imodel-components-react/UiIModelComponents.d.ts.map +1 -1
  178. package/lib/esm/imodel-components-react/UiIModelComponents.js +74 -75
  179. package/lib/esm/imodel-components-react/UiIModelComponents.js.map +1 -1
  180. package/lib/esm/imodel-components-react/color/AlphaSlider.d.ts +36 -36
  181. package/lib/esm/imodel-components-react/color/AlphaSlider.js +160 -160
  182. package/lib/esm/imodel-components-react/color/AlphaSlider.js.map +1 -1
  183. package/lib/esm/imodel-components-react/color/ColorPickerButton.d.ts +37 -37
  184. package/lib/esm/imodel-components-react/color/ColorPickerButton.d.ts.map +1 -1
  185. package/lib/esm/imodel-components-react/color/ColorPickerButton.js +83 -82
  186. package/lib/esm/imodel-components-react/color/ColorPickerButton.js.map +1 -1
  187. package/lib/esm/imodel-components-react/color/ColorPickerButton.scss +19 -21
  188. package/lib/esm/imodel-components-react/color/ColorPickerDialog.d.ts +23 -23
  189. package/lib/esm/imodel-components-react/color/ColorPickerDialog.js +51 -51
  190. package/lib/esm/imodel-components-react/color/ColorPickerPopup.d.ts +44 -44
  191. package/lib/esm/imodel-components-react/color/ColorPickerPopup.d.ts.map +1 -1
  192. package/lib/esm/imodel-components-react/color/ColorPickerPopup.js +114 -112
  193. package/lib/esm/imodel-components-react/color/ColorPickerPopup.js.map +1 -1
  194. package/lib/esm/imodel-components-react/color/ColorPickerPopup.scss +15 -17
  195. package/lib/esm/imodel-components-react/color/HueSlider.d.ts +22 -22
  196. package/lib/esm/imodel-components-react/color/HueSlider.js +173 -173
  197. package/lib/esm/imodel-components-react/color/SaturationPicker.d.ts +20 -20
  198. package/lib/esm/imodel-components-react/color/SaturationPicker.js +187 -187
  199. package/lib/esm/imodel-components-react/color/Swatch.d.ts +22 -22
  200. package/lib/esm/imodel-components-react/color/Swatch.js +34 -34
  201. package/lib/esm/imodel-components-react/color/Swatch.scss +5 -7
  202. package/lib/esm/imodel-components-react/color/getCSSColorFromDef.d.ts +6 -6
  203. package/lib/esm/imodel-components-react/color/getCSSColorFromDef.js +19 -19
  204. package/lib/esm/imodel-components-react/editors/ColorEditor.d.ts +44 -44
  205. package/lib/esm/imodel-components-react/editors/ColorEditor.js +124 -124
  206. package/lib/esm/imodel-components-react/editors/ColorEditor.scss +4 -5
  207. package/lib/esm/imodel-components-react/editors/WeightEditor.d.ts +47 -47
  208. package/lib/esm/imodel-components-react/editors/WeightEditor.js +133 -133
  209. package/lib/esm/imodel-components-react/editors/WeightEditor.scss +4 -5
  210. package/lib/esm/imodel-components-react/inputs/QuantityInput.d.ts +25 -25
  211. package/lib/esm/imodel-components-react/inputs/QuantityInput.js +70 -70
  212. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.d.ts +44 -44
  213. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.d.ts.map +1 -1
  214. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.js +243 -240
  215. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.js.map +1 -1
  216. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.scss +6 -7
  217. package/lib/esm/imodel-components-react/lineweight/Swatch.d.ts +33 -33
  218. package/lib/esm/imodel-components-react/lineweight/Swatch.js +59 -59
  219. package/lib/esm/imodel-components-react/lineweight/Swatch.scss +7 -8
  220. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.d.ts +60 -60
  221. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.js +134 -133
  222. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.js.map +1 -1
  223. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.scss +13 -15
  224. package/lib/esm/imodel-components-react/navigationaids/Cube.d.ts +45 -45
  225. package/lib/esm/imodel-components-react/navigationaids/Cube.js +100 -100
  226. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.d.ts +154 -174
  227. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.d.ts.map +1 -1
  228. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.js +601 -606
  229. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.js.map +1 -1
  230. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.scss +18 -21
  231. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts +145 -145
  232. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts.map +1 -1
  233. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.js +627 -620
  234. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.js.map +1 -1
  235. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.scss +9 -8
  236. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.d.ts +26 -26
  237. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.js +76 -76
  238. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.scss +10 -16
  239. package/lib/esm/imodel-components-react/quantityformat/FormatPrecision.d.ts +17 -17
  240. package/lib/esm/imodel-components-react/quantityformat/FormatPrecision.js +30 -30
  241. package/lib/esm/imodel-components-react/quantityformat/FormatSample.d.ts +18 -18
  242. package/lib/esm/imodel-components-react/quantityformat/FormatSample.d.ts.map +1 -1
  243. package/lib/esm/imodel-components-react/quantityformat/FormatSample.js +61 -60
  244. package/lib/esm/imodel-components-react/quantityformat/FormatSample.js.map +1 -1
  245. package/lib/esm/imodel-components-react/quantityformat/FormatType.d.ts +17 -17
  246. package/lib/esm/imodel-components-react/quantityformat/FormatType.js +63 -63
  247. package/lib/esm/imodel-components-react/quantityformat/FormatUnitLabel.d.ts +17 -17
  248. package/lib/esm/imodel-components-react/quantityformat/FormatUnitLabel.js +83 -83
  249. package/lib/esm/imodel-components-react/quantityformat/FormatUnits.d.ts +19 -19
  250. package/lib/esm/imodel-components-react/quantityformat/FormatUnits.js +110 -110
  251. package/lib/esm/imodel-components-react/quantityformat/MiscFormatOptions.d.ts +21 -21
  252. package/lib/esm/imodel-components-react/quantityformat/MiscFormatOptions.js +158 -158
  253. package/lib/esm/imodel-components-react/quantityformat/QuantityFormatPanel.d.ts +22 -22
  254. package/lib/esm/imodel-components-react/quantityformat/QuantityFormatPanel.d.ts.map +1 -1
  255. package/lib/esm/imodel-components-react/quantityformat/QuantityFormatPanel.js +122 -131
  256. package/lib/esm/imodel-components-react/quantityformat/QuantityFormatPanel.js.map +1 -1
  257. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalPrecision.d.ts +17 -17
  258. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalPrecision.js +36 -36
  259. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalSeparator.d.ts +17 -17
  260. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalSeparator.js +24 -24
  261. package/lib/esm/imodel-components-react/quantityformat/misc/FractionPrecision.d.ts +16 -16
  262. package/lib/esm/imodel-components-react/quantityformat/misc/FractionPrecision.js +31 -31
  263. package/lib/esm/imodel-components-react/quantityformat/misc/ScientificType.d.ts +18 -18
  264. package/lib/esm/imodel-components-react/quantityformat/misc/ScientificType.js +25 -25
  265. package/lib/esm/imodel-components-react/quantityformat/misc/SignOption.d.ts +17 -17
  266. package/lib/esm/imodel-components-react/quantityformat/misc/SignOption.js +27 -27
  267. package/lib/esm/imodel-components-react/quantityformat/misc/StationSeparatorSelector.d.ts +17 -17
  268. package/lib/esm/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js +35 -35
  269. package/lib/esm/imodel-components-react/quantityformat/misc/StationSizeSelector.d.ts +17 -17
  270. package/lib/esm/imodel-components-react/quantityformat/misc/StationSizeSelector.js +24 -24
  271. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSelector.d.ts +17 -17
  272. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSelector.js +33 -33
  273. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSeparator.d.ts +17 -17
  274. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSeparator.js +69 -69
  275. package/lib/esm/imodel-components-react/quantityformat/misc/UnitDescr.d.ts +23 -23
  276. package/lib/esm/imodel-components-react/quantityformat/misc/UnitDescr.js +96 -96
  277. package/lib/esm/imodel-components-react/timeline/BaseSolarDataProvider.d.ts +52 -52
  278. package/lib/esm/imodel-components-react/timeline/BaseSolarDataProvider.d.ts.map +1 -1
  279. package/lib/esm/imodel-components-react/timeline/BaseSolarDataProvider.js +138 -139
  280. package/lib/esm/imodel-components-react/timeline/BaseSolarDataProvider.js.map +1 -1
  281. package/lib/esm/imodel-components-react/timeline/BaseTimelineDataProvider.d.ts +31 -31
  282. package/lib/esm/imodel-components-react/timeline/BaseTimelineDataProvider.js +65 -65
  283. package/lib/esm/imodel-components-react/timeline/InlineEdit.d.ts +27 -27
  284. package/lib/esm/imodel-components-react/timeline/InlineEdit.js +55 -55
  285. package/lib/esm/imodel-components-react/timeline/InlineEdit.scss +2 -2
  286. package/lib/esm/imodel-components-react/timeline/PlayerButton.d.ts +33 -33
  287. package/lib/esm/imodel-components-react/timeline/PlayerButton.d.ts.map +1 -1
  288. package/lib/esm/imodel-components-react/timeline/PlayerButton.js +68 -64
  289. package/lib/esm/imodel-components-react/timeline/PlayerButton.js.map +1 -1
  290. package/lib/esm/imodel-components-react/timeline/PlayerButton.scss +11 -9
  291. package/lib/esm/imodel-components-react/timeline/Scrubber.d.ts +54 -54
  292. package/lib/esm/imodel-components-react/timeline/Scrubber.js +164 -164
  293. package/lib/esm/imodel-components-react/timeline/Scrubber.scss +13 -15
  294. package/lib/esm/imodel-components-react/timeline/SolarTimeline.d.ts +77 -77
  295. package/lib/esm/imodel-components-react/timeline/SolarTimeline.d.ts.map +1 -1
  296. package/lib/esm/imodel-components-react/timeline/SolarTimeline.js +402 -398
  297. package/lib/esm/imodel-components-react/timeline/SolarTimeline.js.map +1 -1
  298. package/lib/esm/imodel-components-react/timeline/SolarTimeline.scss +49 -48
  299. package/lib/esm/imodel-components-react/timeline/SpeedTimeline.d.ts +15 -15
  300. package/lib/esm/imodel-components-react/timeline/SpeedTimeline.js +28 -28
  301. package/lib/esm/imodel-components-react/timeline/TimelineComponent.d.ts +130 -133
  302. package/lib/esm/imodel-components-react/timeline/TimelineComponent.d.ts.map +1 -1
  303. package/lib/esm/imodel-components-react/timeline/TimelineComponent.js +368 -332
  304. package/lib/esm/imodel-components-react/timeline/TimelineComponent.js.map +1 -1
  305. package/lib/esm/imodel-components-react/timeline/TimelineComponent.scss +39 -25
  306. package/lib/esm/imodel-components-react/timeline/interfaces.d.ts +145 -174
  307. package/lib/esm/imodel-components-react/timeline/interfaces.d.ts.map +1 -1
  308. package/lib/esm/imodel-components-react/timeline/interfaces.js +42 -42
  309. package/lib/esm/imodel-components-react/timeline/interfaces.js.map +1 -1
  310. package/lib/esm/imodel-components-react/viewport/ViewportComponent.d.ts +42 -42
  311. package/lib/esm/imodel-components-react/viewport/ViewportComponent.d.ts.map +1 -1
  312. package/lib/esm/imodel-components-react/viewport/ViewportComponent.js +251 -251
  313. package/lib/esm/imodel-components-react/viewport/ViewportComponentEvents.d.ts +106 -106
  314. package/lib/esm/imodel-components-react/viewport/ViewportComponentEvents.js +96 -95
  315. package/lib/esm/imodel-components-react/viewport/ViewportComponentEvents.js.map +1 -1
  316. package/lib/esm/imodel-components-react.d.ts +81 -82
  317. package/lib/esm/imodel-components-react.d.ts.map +1 -1
  318. package/lib/esm/imodel-components-react.js +86 -87
  319. package/lib/esm/imodel-components-react.js.map +1 -1
  320. package/package.json +38 -47
  321. package/lib/cjs/imodel-components-react/color/ColorPickerPanel.d.ts +0 -22
  322. package/lib/cjs/imodel-components-react/color/ColorPickerPanel.d.ts.map +0 -1
  323. package/lib/cjs/imodel-components-react/color/ColorPickerPanel.js +0 -146
  324. package/lib/cjs/imodel-components-react/color/ColorPickerPanel.js.map +0 -1
  325. package/lib/cjs/imodel-components-react/color/ColorPickerPanel.scss +0 -94
  326. package/lib/esm/imodel-components-react/color/ColorPickerPanel.d.ts +0 -22
  327. package/lib/esm/imodel-components-react/color/ColorPickerPanel.d.ts.map +0 -1
  328. package/lib/esm/imodel-components-react/color/ColorPickerPanel.js +0 -123
  329. package/lib/esm/imodel-components-react/color/ColorPickerPanel.js.map +0 -1
  330. package/lib/esm/imodel-components-react/color/ColorPickerPanel.scss +0 -94
@@ -1 +1 @@
1
- {"version":3,"file":"StationSizeSelector.js","sourceRoot":"","sources":["../../../../../src/imodel-components-react/quantityformat/misc/StationSizeSelector.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;;;;;;;;;;;;;;;;;;;;AAEH,6CAA+B;AAE/B,iEAA8D;AAC9D,wDAA4D;AAW5D;;GAEG;AACH,SAAgB,mBAAmB,CAAC,KAA+B;IACjE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,UAAU,EAAE,GAAG,KAAK,CAAC;IAC3D,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM,CAAyB;QAC5D,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,uCAAkB,CAAC,SAAS,CAAC,iCAAiC,CAAC,EAAE;QACpF,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,uCAAkB,CAAC,SAAS,CAAC,mCAAmC,CAAC,EAAE;KACvF,CAAC,CAAC;IAEH,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,QAAgB,EAAE,EAAE;QAC5D,QAAQ,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,OAAO,CACL,oBAAC,sBAAM,IAAC,OAAO,EAAE,gBAAgB,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAC,OAAO,KAAK,UAAU,GAAI,CACvI,CAAC;AACJ,CAAC;AAdD,kDAcC","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 { UiIModelComponents } from \"../../UiIModelComponents\";\r\nimport { Select, SelectOption } from \"@itwin/itwinui-react\";\r\n\r\n/** Properties of [[StationSizeSelector]] component.\r\n * @internal\r\n */\r\nexport interface StationSizeSelectorProps extends CommonProps {\r\n value: number;\r\n disabled: boolean;\r\n onChange: (value: number) => void;\r\n}\r\n\r\n/** Component use to set Station size (number of digits from right until '+').\r\n * @internal\r\n */\r\nexport function StationSizeSelector(props: StationSizeSelectorProps) {\r\n const { value, disabled, onChange, ...otherProps } = props;\r\n const separatorOptions = React.useRef<SelectOption<number>[]>([\r\n { value: 2, label: UiIModelComponents.translate(\"QuantityFormat.station_size.two\") },\r\n { value: 3, label: UiIModelComponents.translate(\"QuantityFormat.station_size.three\") },\r\n ]);\r\n\r\n const handleOnChange = React.useCallback((newValue: number) => {\r\n onChange && onChange(newValue);\r\n }, [onChange]);\r\n\r\n return (\r\n <Select options={separatorOptions.current} disabled={disabled} value={value} onChange={handleOnChange} size=\"small\" {...otherProps} />\r\n );\r\n}\r\n"]}
1
+ {"version":3,"file":"StationSizeSelector.js","sourceRoot":"","sources":["../../../../../src/imodel-components-react/quantityformat/misc/StationSizeSelector.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,6CAA+B;AAE/B,iEAA8D;AAC9D,wDAA4D;AAW5D;;GAEG;AACH,SAAgB,mBAAmB,CAAC,KAA+B;IACjE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,UAAU,EAAE,GAAG,KAAK,CAAC;IAC3D,MAAM,gBAAgB,GAAG,KAAK,CAAC,MAAM,CAAyB;QAC5D,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,uCAAkB,CAAC,SAAS,CAAC,iCAAiC,CAAC,EAAE;QACpF,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,uCAAkB,CAAC,SAAS,CAAC,mCAAmC,CAAC,EAAE;KACvF,CAAC,CAAC;IAEH,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,QAAgB,EAAE,EAAE;QAC5D,QAAQ,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,OAAO,CACL,oBAAC,sBAAM,IAAC,OAAO,EAAE,gBAAgB,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAC,OAAO,KAAK,UAAU,GAAI,CACvI,CAAC;AACJ,CAAC;AAdD,kDAcC","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 { UiIModelComponents } from \"../../UiIModelComponents\";\r\nimport { Select, SelectOption } from \"@itwin/itwinui-react\";\r\n\r\n/** Properties of [[StationSizeSelector]] component.\r\n * @internal\r\n */\r\nexport interface StationSizeSelectorProps extends CommonProps {\r\n value: number;\r\n disabled: boolean;\r\n onChange: (value: number) => void;\r\n}\r\n\r\n/** Component use to set Station size (number of digits from right until '+').\r\n * @internal\r\n */\r\nexport function StationSizeSelector(props: StationSizeSelectorProps) {\r\n const { value, disabled, onChange, ...otherProps } = props;\r\n const separatorOptions = React.useRef<SelectOption<number>[]>([\r\n { value: 2, label: UiIModelComponents.translate(\"QuantityFormat.station_size.two\") },\r\n { value: 3, label: UiIModelComponents.translate(\"QuantityFormat.station_size.three\") },\r\n ]);\r\n\r\n const handleOnChange = React.useCallback((newValue: number) => {\r\n onChange && onChange(newValue);\r\n }, [onChange]);\r\n\r\n return (\r\n <Select options={separatorOptions.current} disabled={disabled} value={value} onChange={handleOnChange} size=\"small\" {...otherProps} />\r\n );\r\n}\r\n"]}
@@ -1,18 +1,18 @@
1
- /** @packageDocumentation
2
- * @module QuantityFormat
3
- */
4
- /// <reference types="react" />
5
- import { CommonProps } from "@itwin/core-react";
6
- /** Properties of [[ThousandsSelector]] component.
7
- * @internal
8
- */
9
- export interface ThousandsSelectorProps extends CommonProps {
10
- separator: string;
11
- disabled: boolean;
12
- onChange: (value: string) => void;
13
- }
14
- /** Component use to set Quantity Format thousand group separator.
15
- * @internal
16
- */
17
- export declare function ThousandsSelector(props: ThousandsSelectorProps): JSX.Element;
1
+ /** @packageDocumentation
2
+ * @module QuantityFormat
3
+ */
4
+ /// <reference types="react" />
5
+ import { CommonProps } from "@itwin/core-react";
6
+ /** Properties of [[ThousandsSelector]] component.
7
+ * @internal
8
+ */
9
+ export interface ThousandsSelectorProps extends CommonProps {
10
+ separator: string;
11
+ disabled: boolean;
12
+ onChange: (value: string) => void;
13
+ }
14
+ /** Component use to set Quantity Format thousand group separator.
15
+ * @internal
16
+ */
17
+ export declare function ThousandsSelector(props: ThousandsSelectorProps): JSX.Element;
18
18
  //# sourceMappingURL=ThousandsSelector.d.ts.map
@@ -1,57 +1,61 @@
1
- "use strict";
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
- * See LICENSE.md in the project root for license terms and full copyright notice.
5
- *--------------------------------------------------------------------------------------------*/
6
- /** @packageDocumentation
7
- * @module QuantityFormat
8
- */
9
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
12
- }) : (function(o, m, k, k2) {
13
- if (k2 === undefined) k2 = k;
14
- o[k2] = m[k];
15
- }));
16
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
- Object.defineProperty(o, "default", { enumerable: true, value: v });
18
- }) : function(o, v) {
19
- o["default"] = v;
20
- });
21
- var __importStar = (this && this.__importStar) || function (mod) {
22
- if (mod && mod.__esModule) return mod;
23
- var result = {};
24
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25
- __setModuleDefault(result, mod);
26
- return result;
27
- };
28
- Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.ThousandsSelector = void 0;
30
- const React = __importStar(require("react"));
31
- const UiIModelComponents_1 = require("../../UiIModelComponents");
32
- const itwinui_react_1 = require("@itwin/itwinui-react");
33
- /** Component use to set Quantity Format thousand group separator.
34
- * @internal
35
- */
36
- function ThousandsSelector(props) {
37
- const { separator, disabled, onChange, ...otherProps } = props;
38
- const uomDefaultEntries = React.useRef([
39
- { value: ",", label: UiIModelComponents_1.UiIModelComponents.translate("QuantityFormat.thousand_separator.comma") },
40
- { value: ".", label: UiIModelComponents_1.UiIModelComponents.translate("QuantityFormat.thousand_separator.point") },
41
- ]);
42
- const handleOnChange = React.useCallback((newValue) => {
43
- onChange && onChange(newValue);
44
- }, [onChange]);
45
- const separatorOptions = React.useMemo(() => {
46
- const completeListOfEntries = [];
47
- // istanbul ignore next (only used if format already has a character that does not match standard options)
48
- if (undefined === uomDefaultEntries.current.find((option) => option.value === separator)) {
49
- completeListOfEntries.push({ value: separator, label: separator });
50
- }
51
- completeListOfEntries.push(...uomDefaultEntries.current);
52
- return completeListOfEntries;
53
- }, [separator]);
54
- return (React.createElement(itwinui_react_1.Select, { options: separatorOptions, disabled: disabled, value: separator, onChange: handleOnChange, size: "small", ...otherProps }));
55
- }
56
- exports.ThousandsSelector = ThousandsSelector;
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ /** @packageDocumentation
7
+ * @module QuantityFormat
8
+ */
9
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ var desc = Object.getOwnPropertyDescriptor(m, k);
12
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
13
+ desc = { enumerable: true, get: function() { return m[k]; } };
14
+ }
15
+ Object.defineProperty(o, k2, desc);
16
+ }) : (function(o, m, k, k2) {
17
+ if (k2 === undefined) k2 = k;
18
+ o[k2] = m[k];
19
+ }));
20
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
21
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
22
+ }) : function(o, v) {
23
+ o["default"] = v;
24
+ });
25
+ var __importStar = (this && this.__importStar) || function (mod) {
26
+ if (mod && mod.__esModule) return mod;
27
+ var result = {};
28
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
29
+ __setModuleDefault(result, mod);
30
+ return result;
31
+ };
32
+ Object.defineProperty(exports, "__esModule", { value: true });
33
+ exports.ThousandsSelector = void 0;
34
+ const React = __importStar(require("react"));
35
+ const UiIModelComponents_1 = require("../../UiIModelComponents");
36
+ const itwinui_react_1 = require("@itwin/itwinui-react");
37
+ /** Component use to set Quantity Format thousand group separator.
38
+ * @internal
39
+ */
40
+ function ThousandsSelector(props) {
41
+ const { separator, disabled, onChange, ...otherProps } = props;
42
+ const uomDefaultEntries = React.useRef([
43
+ { value: ",", label: UiIModelComponents_1.UiIModelComponents.translate("QuantityFormat.thousand_separator.comma") },
44
+ { value: ".", label: UiIModelComponents_1.UiIModelComponents.translate("QuantityFormat.thousand_separator.point") },
45
+ ]);
46
+ const handleOnChange = React.useCallback((newValue) => {
47
+ onChange && onChange(newValue);
48
+ }, [onChange]);
49
+ const separatorOptions = React.useMemo(() => {
50
+ const completeListOfEntries = [];
51
+ // istanbul ignore next (only used if format already has a character that does not match standard options)
52
+ if (undefined === uomDefaultEntries.current.find((option) => option.value === separator)) {
53
+ completeListOfEntries.push({ value: separator, label: separator });
54
+ }
55
+ completeListOfEntries.push(...uomDefaultEntries.current);
56
+ return completeListOfEntries;
57
+ }, [separator]);
58
+ return (React.createElement(itwinui_react_1.Select, { options: separatorOptions, disabled: disabled, value: separator, onChange: handleOnChange, size: "small", ...otherProps }));
59
+ }
60
+ exports.ThousandsSelector = ThousandsSelector;
57
61
  //# sourceMappingURL=ThousandsSelector.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ThousandsSelector.js","sourceRoot":"","sources":["../../../../../src/imodel-components-react/quantityformat/misc/ThousandsSelector.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;;;;;;;;;;;;;;;;;;;;AAEH,6CAA+B;AAE/B,iEAA8D;AAC9D,wDAA4D;AAW5D;;GAEG;AACH,SAAgB,iBAAiB,CAAC,KAA6B;IAC7D,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,UAAU,EAAE,GAAG,KAAK,CAAC;IAC/D,MAAM,iBAAiB,GAAG,KAAK,CAAC,MAAM,CAAyB;QAC7D,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,uCAAkB,CAAC,SAAS,CAAC,yCAAyC,CAAC,EAAE;QAC9F,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,uCAAkB,CAAC,SAAS,CAAC,yCAAyC,CAAC,EAAE;KAC/F,CAAC,CAAC;IAEH,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,QAAgB,EAAE,EAAE;QAC5D,QAAQ,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QAC1C,MAAM,qBAAqB,GAA2B,EAAE,CAAC;QACzD,0GAA0G;QAC1G,IAAI,SAAS,KAAK,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,EAAE;YACxF,qBAAqB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;SACpE;QACD,qBAAqB,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACzD,OAAO,qBAAqB,CAAC;IAC/B,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,OAAO,CACL,oBAAC,sBAAM,IAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAC,OAAO,KAAK,UAAU,GAAI,CACnI,CAAC;AACJ,CAAC;AAxBD,8CAwBC","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 { UiIModelComponents } from \"../../UiIModelComponents\";\r\nimport { Select, SelectOption } from \"@itwin/itwinui-react\";\r\n\r\n/** Properties of [[ThousandsSelector]] component.\r\n * @internal\r\n */\r\nexport interface ThousandsSelectorProps extends CommonProps {\r\n separator: string;\r\n disabled: boolean;\r\n onChange: (value: string) => void;\r\n}\r\n\r\n/** Component use to set Quantity Format thousand group separator.\r\n * @internal\r\n */\r\nexport function ThousandsSelector(props: ThousandsSelectorProps) {\r\n const { separator, disabled, onChange, ...otherProps } = props;\r\n const uomDefaultEntries = React.useRef<SelectOption<string>[]>([\r\n { value: \",\", label: UiIModelComponents.translate(\"QuantityFormat.thousand_separator.comma\") },\r\n { value: \".\", label: UiIModelComponents.translate(\"QuantityFormat.thousand_separator.point\") },\r\n ]);\r\n\r\n const handleOnChange = React.useCallback((newValue: string) => {\r\n onChange && onChange(newValue);\r\n }, [onChange]);\r\n\r\n const separatorOptions = React.useMemo(() => {\r\n const completeListOfEntries: SelectOption<string>[] = [];\r\n // istanbul ignore next (only used if format already has a character that does not match standard options)\r\n if (undefined === uomDefaultEntries.current.find((option) => option.value === separator)) {\r\n completeListOfEntries.push({ value: separator, label: separator });\r\n }\r\n completeListOfEntries.push(...uomDefaultEntries.current);\r\n return completeListOfEntries;\r\n }, [separator]);\r\n\r\n return (\r\n <Select options={separatorOptions} disabled={disabled} value={separator} onChange={handleOnChange} size=\"small\" {...otherProps} />\r\n );\r\n}\r\n"]}
1
+ {"version":3,"file":"ThousandsSelector.js","sourceRoot":"","sources":["../../../../../src/imodel-components-react/quantityformat/misc/ThousandsSelector.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,6CAA+B;AAE/B,iEAA8D;AAC9D,wDAA4D;AAW5D;;GAEG;AACH,SAAgB,iBAAiB,CAAC,KAA6B;IAC7D,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,UAAU,EAAE,GAAG,KAAK,CAAC;IAC/D,MAAM,iBAAiB,GAAG,KAAK,CAAC,MAAM,CAAyB;QAC7D,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,uCAAkB,CAAC,SAAS,CAAC,yCAAyC,CAAC,EAAE;QAC9F,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,uCAAkB,CAAC,SAAS,CAAC,yCAAyC,CAAC,EAAE;KAC/F,CAAC,CAAC;IAEH,MAAM,cAAc,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,QAAgB,EAAE,EAAE;QAC5D,QAAQ,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QAC1C,MAAM,qBAAqB,GAA2B,EAAE,CAAC;QACzD,0GAA0G;QAC1G,IAAI,SAAS,KAAK,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,KAAK,SAAS,CAAC,EAAE;YACxF,qBAAqB,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;SACpE;QACD,qBAAqB,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACzD,OAAO,qBAAqB,CAAC;IAC/B,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,OAAO,CACL,oBAAC,sBAAM,IAAC,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,EAAE,IAAI,EAAC,OAAO,KAAK,UAAU,GAAI,CACnI,CAAC;AACJ,CAAC;AAxBD,8CAwBC","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 { UiIModelComponents } from \"../../UiIModelComponents\";\r\nimport { Select, SelectOption } from \"@itwin/itwinui-react\";\r\n\r\n/** Properties of [[ThousandsSelector]] component.\r\n * @internal\r\n */\r\nexport interface ThousandsSelectorProps extends CommonProps {\r\n separator: string;\r\n disabled: boolean;\r\n onChange: (value: string) => void;\r\n}\r\n\r\n/** Component use to set Quantity Format thousand group separator.\r\n * @internal\r\n */\r\nexport function ThousandsSelector(props: ThousandsSelectorProps) {\r\n const { separator, disabled, onChange, ...otherProps } = props;\r\n const uomDefaultEntries = React.useRef<SelectOption<string>[]>([\r\n { value: \",\", label: UiIModelComponents.translate(\"QuantityFormat.thousand_separator.comma\") },\r\n { value: \".\", label: UiIModelComponents.translate(\"QuantityFormat.thousand_separator.point\") },\r\n ]);\r\n\r\n const handleOnChange = React.useCallback((newValue: string) => {\r\n onChange && onChange(newValue);\r\n }, [onChange]);\r\n\r\n const separatorOptions = React.useMemo(() => {\r\n const completeListOfEntries: SelectOption<string>[] = [];\r\n // istanbul ignore next (only used if format already has a character that does not match standard options)\r\n if (undefined === uomDefaultEntries.current.find((option) => option.value === separator)) {\r\n completeListOfEntries.push({ value: separator, label: separator });\r\n }\r\n completeListOfEntries.push(...uomDefaultEntries.current);\r\n return completeListOfEntries;\r\n }, [separator]);\r\n\r\n return (\r\n <Select options={separatorOptions} disabled={disabled} value={separator} onChange={handleOnChange} size=\"small\" {...otherProps} />\r\n );\r\n}\r\n"]}
@@ -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 [[ThousandsSeparator]] component.
8
- * @internal
9
- */
10
- export interface ThousandsSeparatorProps extends CommonProps {
11
- formatProps: FormatProps;
12
- onChange?: (format: FormatProps) => void;
13
- }
14
- /** Component use to set Quantity Format thousand group separator.
15
- * @internal
16
- */
17
- export declare function ThousandsSeparator(props: ThousandsSeparatorProps): 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 [[ThousandsSeparator]] component.
8
+ * @internal
9
+ */
10
+ export interface ThousandsSeparatorProps extends CommonProps {
11
+ formatProps: FormatProps;
12
+ onChange?: (format: FormatProps) => void;
13
+ }
14
+ /** Component use to set Quantity Format thousand group separator.
15
+ * @internal
16
+ */
17
+ export declare function ThousandsSeparator(props: ThousandsSeparatorProps): JSX.Element;
18
18
  //# sourceMappingURL=ThousandsSeparator.d.ts.map
@@ -1,96 +1,100 @@
1
- "use strict";
2
- /*---------------------------------------------------------------------------------------------
3
- * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
- * See LICENSE.md in the project root for license terms and full copyright notice.
5
- *--------------------------------------------------------------------------------------------*/
6
- /** @packageDocumentation
7
- * @module QuantityFormat
8
- */
9
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
12
- }) : (function(o, m, k, k2) {
13
- if (k2 === undefined) k2 = k;
14
- o[k2] = m[k];
15
- }));
16
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
- Object.defineProperty(o, "default", { enumerable: true, value: v });
18
- }) : function(o, v) {
19
- o["default"] = v;
20
- });
21
- var __importStar = (this && this.__importStar) || function (mod) {
22
- if (mod && mod.__esModule) return mod;
23
- var result = {};
24
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25
- __setModuleDefault(result, mod);
26
- return result;
27
- };
28
- var __importDefault = (this && this.__importDefault) || function (mod) {
29
- return (mod && mod.__esModule) ? mod : { "default": mod };
30
- };
31
- Object.defineProperty(exports, "__esModule", { value: true });
32
- exports.ThousandsSeparator = void 0;
33
- const classnames_1 = __importDefault(require("classnames"));
34
- const React = __importStar(require("react"));
35
- const core_quantity_1 = require("@itwin/core-quantity");
36
- const itwinui_react_1 = require("@itwin/itwinui-react");
37
- const ThousandsSelector_1 = require("./ThousandsSelector");
38
- const UiIModelComponents_1 = require("../../UiIModelComponents");
39
- /** Component use to set Quantity Format thousand group separator.
40
- * @internal
41
- */
42
- function ThousandsSeparator(props) {
43
- var _a;
44
- const { formatProps, onChange } = props;
45
- const handleSetFormatProps = React.useCallback((newProps) => {
46
- onChange && onChange(newProps);
47
- }, [onChange]);
48
- const setFormatTrait = React.useCallback((trait, setActive) => {
49
- const traitStr = (0, core_quantity_1.getTraitString)(trait);
50
- let formatTraits = [traitStr];
51
- if (setActive) { // setting trait
52
- // istanbul ignore else
53
- if (formatProps.formatTraits) {
54
- const traits = Array.isArray(formatProps.formatTraits) ? formatProps.formatTraits : /* istanbul ignore next */ formatProps.formatTraits.split(/,|;|\|/);
55
- formatTraits = [...traits, traitStr];
56
- }
57
- }
58
- else { // clearing trait
59
- // istanbul ignore else
60
- if (formatProps.formatTraits) {
61
- const traits = Array.isArray(formatProps.formatTraits) ? formatProps.formatTraits : /* istanbul ignore next */ formatProps.formatTraits.split(/,|;|\|/);
62
- formatTraits = traits.filter((traitEntry) => traitEntry !== traitStr);
63
- }
64
- }
65
- const newFormatProps = { ...formatProps, formatTraits };
66
- handleSetFormatProps(newFormatProps);
67
- }, [formatProps, handleSetFormatProps]);
68
- const handleUseThousandsSeparatorChange = React.useCallback((e) => {
69
- setFormatTrait(core_quantity_1.FormatTraits.Use1000Separator, e.target.checked);
70
- }, [setFormatTrait]);
71
- const isFormatTraitSet = React.useCallback((trait) => {
72
- return core_quantity_1.Format.isFormatTraitSetInProps(formatProps, trait);
73
- }, [formatProps]);
74
- const handleThousandSeparatorChange = React.useCallback((thousandSeparator) => {
75
- let decimalSeparator = formatProps.decimalSeparator;
76
- // make sure 1000 and decimal separator do not match
77
- // istanbul ignore else
78
- if (isFormatTraitSet(core_quantity_1.FormatTraits.Use1000Separator)) {
79
- if (thousandSeparator === ".")
80
- decimalSeparator = ",";
81
- else // thousandSeparator === ","
82
- decimalSeparator = ".";
83
- }
84
- const newFormatProps = { ...formatProps, thousandSeparator, decimalSeparator };
85
- handleSetFormatProps(newFormatProps);
86
- }, [formatProps, isFormatTraitSet, handleSetFormatProps]);
87
- const useThousandSeparatorLabel = React.useRef(UiIModelComponents_1.UiIModelComponents.translate("QuantityFormat.labels.useThousandSeparatorLabel"));
88
- const thousandSeparatorLabel = React.useRef(UiIModelComponents_1.UiIModelComponents.translate("QuantityFormat.labels.thousandSeparatorLabel"));
89
- return (React.createElement(React.Fragment, null,
90
- React.createElement("span", { className: "uicore-label" }, useThousandSeparatorLabel.current),
91
- React.createElement(itwinui_react_1.Checkbox, { "data-testid": "use-thousands-separator", checked: isFormatTraitSet(core_quantity_1.FormatTraits.Use1000Separator), onChange: handleUseThousandsSeparatorChange }),
92
- React.createElement("span", { className: (0, classnames_1.default)("uicore-label", !(isFormatTraitSet(core_quantity_1.FormatTraits.Use1000Separator)) && "uicore-disabled") }, thousandSeparatorLabel.current),
93
- React.createElement(ThousandsSelector_1.ThousandsSelector, { "data-testid": "thousands-separator-selector", separator: (_a = formatProps.thousandSeparator) !== null && _a !== void 0 ? _a : ",", disabled: !isFormatTraitSet(core_quantity_1.FormatTraits.Use1000Separator), onChange: handleThousandSeparatorChange })));
94
- }
95
- exports.ThousandsSeparator = ThousandsSeparator;
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4
+ * See LICENSE.md in the project root for license terms and full copyright notice.
5
+ *--------------------------------------------------------------------------------------------*/
6
+ /** @packageDocumentation
7
+ * @module QuantityFormat
8
+ */
9
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ var desc = Object.getOwnPropertyDescriptor(m, k);
12
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
13
+ desc = { enumerable: true, get: function() { return m[k]; } };
14
+ }
15
+ Object.defineProperty(o, k2, desc);
16
+ }) : (function(o, m, k, k2) {
17
+ if (k2 === undefined) k2 = k;
18
+ o[k2] = m[k];
19
+ }));
20
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
21
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
22
+ }) : function(o, v) {
23
+ o["default"] = v;
24
+ });
25
+ var __importStar = (this && this.__importStar) || function (mod) {
26
+ if (mod && mod.__esModule) return mod;
27
+ var result = {};
28
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
29
+ __setModuleDefault(result, mod);
30
+ return result;
31
+ };
32
+ var __importDefault = (this && this.__importDefault) || function (mod) {
33
+ return (mod && mod.__esModule) ? mod : { "default": mod };
34
+ };
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.ThousandsSeparator = void 0;
37
+ const classnames_1 = __importDefault(require("classnames"));
38
+ const React = __importStar(require("react"));
39
+ const core_quantity_1 = require("@itwin/core-quantity");
40
+ const itwinui_react_1 = require("@itwin/itwinui-react");
41
+ const ThousandsSelector_1 = require("./ThousandsSelector");
42
+ const UiIModelComponents_1 = require("../../UiIModelComponents");
43
+ /** Component use to set Quantity Format thousand group separator.
44
+ * @internal
45
+ */
46
+ function ThousandsSeparator(props) {
47
+ var _a;
48
+ const { formatProps, onChange } = props;
49
+ const handleSetFormatProps = React.useCallback((newProps) => {
50
+ onChange && onChange(newProps);
51
+ }, [onChange]);
52
+ const setFormatTrait = React.useCallback((trait, setActive) => {
53
+ const traitStr = (0, core_quantity_1.getTraitString)(trait);
54
+ let formatTraits = [traitStr];
55
+ if (setActive) { // setting trait
56
+ // istanbul ignore else
57
+ if (formatProps.formatTraits) {
58
+ const traits = Array.isArray(formatProps.formatTraits) ? formatProps.formatTraits : /* istanbul ignore next */ formatProps.formatTraits.split(/,|;|\|/);
59
+ formatTraits = [...traits, traitStr];
60
+ }
61
+ }
62
+ else { // clearing trait
63
+ // istanbul ignore else
64
+ if (formatProps.formatTraits) {
65
+ const traits = Array.isArray(formatProps.formatTraits) ? formatProps.formatTraits : /* istanbul ignore next */ formatProps.formatTraits.split(/,|;|\|/);
66
+ formatTraits = traits.filter((traitEntry) => traitEntry !== traitStr);
67
+ }
68
+ }
69
+ const newFormatProps = { ...formatProps, formatTraits };
70
+ handleSetFormatProps(newFormatProps);
71
+ }, [formatProps, handleSetFormatProps]);
72
+ const handleUseThousandsSeparatorChange = React.useCallback((e) => {
73
+ setFormatTrait(core_quantity_1.FormatTraits.Use1000Separator, e.target.checked);
74
+ }, [setFormatTrait]);
75
+ const isFormatTraitSet = React.useCallback((trait) => {
76
+ return core_quantity_1.Format.isFormatTraitSetInProps(formatProps, trait);
77
+ }, [formatProps]);
78
+ const handleThousandSeparatorChange = React.useCallback((thousandSeparator) => {
79
+ let decimalSeparator = formatProps.decimalSeparator;
80
+ // make sure 1000 and decimal separator do not match
81
+ // istanbul ignore else
82
+ if (isFormatTraitSet(core_quantity_1.FormatTraits.Use1000Separator)) {
83
+ if (thousandSeparator === ".")
84
+ decimalSeparator = ",";
85
+ else // thousandSeparator === ","
86
+ decimalSeparator = ".";
87
+ }
88
+ const newFormatProps = { ...formatProps, thousandSeparator, decimalSeparator };
89
+ handleSetFormatProps(newFormatProps);
90
+ }, [formatProps, isFormatTraitSet, handleSetFormatProps]);
91
+ const useThousandSeparatorLabel = React.useRef(UiIModelComponents_1.UiIModelComponents.translate("QuantityFormat.labels.useThousandSeparatorLabel"));
92
+ const thousandSeparatorLabel = React.useRef(UiIModelComponents_1.UiIModelComponents.translate("QuantityFormat.labels.thousandSeparatorLabel"));
93
+ return (React.createElement(React.Fragment, null,
94
+ React.createElement("span", { className: "uicore-label" }, useThousandSeparatorLabel.current),
95
+ React.createElement(itwinui_react_1.Checkbox, { "data-testid": "use-thousands-separator", checked: isFormatTraitSet(core_quantity_1.FormatTraits.Use1000Separator), onChange: handleUseThousandsSeparatorChange }),
96
+ React.createElement("span", { className: (0, classnames_1.default)("uicore-label", !(isFormatTraitSet(core_quantity_1.FormatTraits.Use1000Separator)) && "uicore-disabled") }, thousandSeparatorLabel.current),
97
+ React.createElement(ThousandsSelector_1.ThousandsSelector, { "data-testid": "thousands-separator-selector", separator: (_a = formatProps.thousandSeparator) !== null && _a !== void 0 ? _a : ",", disabled: !isFormatTraitSet(core_quantity_1.FormatTraits.Use1000Separator), onChange: handleThousandSeparatorChange })));
98
+ }
99
+ exports.ThousandsSeparator = ThousandsSeparator;
96
100
  //# sourceMappingURL=ThousandsSeparator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ThousandsSeparator.js","sourceRoot":"","sources":["../../../../../src/imodel-components-react/quantityformat/misc/ThousandsSeparator.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 classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { CommonProps } from \"@itwin/core-react\";\r\nimport { Format, FormatProps, FormatTraits, getTraitString } from \"@itwin/core-quantity\";\r\nimport { Checkbox } from \"@itwin/itwinui-react\";\r\nimport { ThousandsSelector } from \"./ThousandsSelector\";\r\nimport { UiIModelComponents } from \"../../UiIModelComponents\";\r\n\r\n/** Properties of [[ThousandsSeparator]] component.\r\n * @internal\r\n */\r\nexport interface ThousandsSeparatorProps extends CommonProps {\r\n formatProps: FormatProps;\r\n onChange?: (format: FormatProps) => void;\r\n}\r\n\r\n/** Component use to set Quantity Format thousand group separator.\r\n * @internal\r\n */\r\nexport function ThousandsSeparator(props: ThousandsSeparatorProps) {\r\n const { formatProps, onChange } = props;\r\n\r\n const handleSetFormatProps = React.useCallback((newProps: FormatProps) => {\r\n onChange && onChange(newProps);\r\n }, [onChange]);\r\n\r\n const setFormatTrait = React.useCallback((trait: FormatTraits, setActive: boolean) => {\r\n const traitStr = getTraitString(trait);\r\n let formatTraits: string[] = [traitStr];\r\n if (setActive) {// setting trait\r\n // istanbul ignore else\r\n if (formatProps.formatTraits) {\r\n const traits = Array.isArray(formatProps.formatTraits) ? formatProps.formatTraits : /* istanbul ignore next */ formatProps.formatTraits.split(/,|;|\\|/);\r\n formatTraits = [...traits, traitStr];\r\n }\r\n } else { // clearing trait\r\n // istanbul ignore else\r\n if (formatProps.formatTraits) {\r\n const traits = Array.isArray(formatProps.formatTraits) ? formatProps.formatTraits : /* istanbul ignore next */ formatProps.formatTraits.split(/,|;|\\|/);\r\n formatTraits = traits.filter((traitEntry) => traitEntry !== traitStr);\r\n }\r\n }\r\n const newFormatProps = { ...formatProps, formatTraits };\r\n handleSetFormatProps(newFormatProps);\r\n }, [formatProps, handleSetFormatProps]);\r\n\r\n const handleUseThousandsSeparatorChange = React.useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\r\n setFormatTrait(FormatTraits.Use1000Separator, e.target.checked);\r\n }, [setFormatTrait]);\r\n\r\n const isFormatTraitSet = React.useCallback((trait: FormatTraits) => {\r\n return Format.isFormatTraitSetInProps(formatProps, trait);\r\n }, [formatProps]);\r\n\r\n const handleThousandSeparatorChange = React.useCallback((thousandSeparator: string) => {\r\n let decimalSeparator = formatProps.decimalSeparator;\r\n // make sure 1000 and decimal separator do not match\r\n // istanbul ignore else\r\n if (isFormatTraitSet(FormatTraits.Use1000Separator)) {\r\n if (thousandSeparator === \".\")\r\n decimalSeparator = \",\";\r\n else // thousandSeparator === \",\"\r\n decimalSeparator = \".\";\r\n }\r\n const newFormatProps = { ...formatProps, thousandSeparator, decimalSeparator };\r\n handleSetFormatProps(newFormatProps);\r\n }, [formatProps, isFormatTraitSet, handleSetFormatProps]);\r\n\r\n const useThousandSeparatorLabel = React.useRef(UiIModelComponents.translate(\"QuantityFormat.labels.useThousandSeparatorLabel\"));\r\n const thousandSeparatorLabel = React.useRef(UiIModelComponents.translate(\"QuantityFormat.labels.thousandSeparatorLabel\"));\r\n\r\n return (\r\n <>\r\n <span className={\"uicore-label\"}>{useThousandSeparatorLabel.current}</span>\r\n <Checkbox data-testid=\"use-thousands-separator\" checked={isFormatTraitSet(FormatTraits.Use1000Separator)} onChange={handleUseThousandsSeparatorChange} />\r\n <span className={classnames(\"uicore-label\", !(isFormatTraitSet(FormatTraits.Use1000Separator)) && \"uicore-disabled\")}>{thousandSeparatorLabel.current}</span>\r\n <ThousandsSelector data-testid=\"thousands-separator-selector\" separator={formatProps.thousandSeparator ?? \",\"} disabled={!isFormatTraitSet(FormatTraits.Use1000Separator)} onChange={handleThousandSeparatorChange} />\r\n </>\r\n );\r\n}\r\n"]}
1
+ {"version":3,"file":"ThousandsSeparator.js","sourceRoot":"","sources":["../../../../../src/imodel-components-react/quantityformat/misc/ThousandsSeparator.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 classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { CommonProps } from \"@itwin/core-react\";\r\nimport { Format, FormatProps, FormatTraits, getTraitString } from \"@itwin/core-quantity\";\r\nimport { Checkbox } from \"@itwin/itwinui-react\";\r\nimport { ThousandsSelector } from \"./ThousandsSelector\";\r\nimport { UiIModelComponents } from \"../../UiIModelComponents\";\r\n\r\n/** Properties of [[ThousandsSeparator]] component.\r\n * @internal\r\n */\r\nexport interface ThousandsSeparatorProps extends CommonProps {\r\n formatProps: FormatProps;\r\n onChange?: (format: FormatProps) => void;\r\n}\r\n\r\n/** Component use to set Quantity Format thousand group separator.\r\n * @internal\r\n */\r\nexport function ThousandsSeparator(props: ThousandsSeparatorProps) {\r\n const { formatProps, onChange } = props;\r\n\r\n const handleSetFormatProps = React.useCallback((newProps: FormatProps) => {\r\n onChange && onChange(newProps);\r\n }, [onChange]);\r\n\r\n const setFormatTrait = React.useCallback((trait: FormatTraits, setActive: boolean) => {\r\n const traitStr = getTraitString(trait);\r\n let formatTraits: string[] = [traitStr];\r\n if (setActive) {// setting trait\r\n // istanbul ignore else\r\n if (formatProps.formatTraits) {\r\n const traits = Array.isArray(formatProps.formatTraits) ? formatProps.formatTraits : /* istanbul ignore next */ formatProps.formatTraits.split(/,|;|\\|/);\r\n formatTraits = [...traits, traitStr];\r\n }\r\n } else { // clearing trait\r\n // istanbul ignore else\r\n if (formatProps.formatTraits) {\r\n const traits = Array.isArray(formatProps.formatTraits) ? formatProps.formatTraits : /* istanbul ignore next */ formatProps.formatTraits.split(/,|;|\\|/);\r\n formatTraits = traits.filter((traitEntry) => traitEntry !== traitStr);\r\n }\r\n }\r\n const newFormatProps = { ...formatProps, formatTraits };\r\n handleSetFormatProps(newFormatProps);\r\n }, [formatProps, handleSetFormatProps]);\r\n\r\n const handleUseThousandsSeparatorChange = React.useCallback((e: React.ChangeEvent<HTMLInputElement>) => {\r\n setFormatTrait(FormatTraits.Use1000Separator, e.target.checked);\r\n }, [setFormatTrait]);\r\n\r\n const isFormatTraitSet = React.useCallback((trait: FormatTraits) => {\r\n return Format.isFormatTraitSetInProps(formatProps, trait);\r\n }, [formatProps]);\r\n\r\n const handleThousandSeparatorChange = React.useCallback((thousandSeparator: string) => {\r\n let decimalSeparator = formatProps.decimalSeparator;\r\n // make sure 1000 and decimal separator do not match\r\n // istanbul ignore else\r\n if (isFormatTraitSet(FormatTraits.Use1000Separator)) {\r\n if (thousandSeparator === \".\")\r\n decimalSeparator = \",\";\r\n else // thousandSeparator === \",\"\r\n decimalSeparator = \".\";\r\n }\r\n const newFormatProps = { ...formatProps, thousandSeparator, decimalSeparator };\r\n handleSetFormatProps(newFormatProps);\r\n }, [formatProps, isFormatTraitSet, handleSetFormatProps]);\r\n\r\n const useThousandSeparatorLabel = React.useRef(UiIModelComponents.translate(\"QuantityFormat.labels.useThousandSeparatorLabel\"));\r\n const thousandSeparatorLabel = React.useRef(UiIModelComponents.translate(\"QuantityFormat.labels.thousandSeparatorLabel\"));\r\n\r\n return (\r\n <>\r\n <span className={\"uicore-label\"}>{useThousandSeparatorLabel.current}</span>\r\n <Checkbox data-testid=\"use-thousands-separator\" checked={isFormatTraitSet(FormatTraits.Use1000Separator)} onChange={handleUseThousandsSeparatorChange} />\r\n <span className={classnames(\"uicore-label\", !(isFormatTraitSet(FormatTraits.Use1000Separator)) && \"uicore-disabled\")}>{thousandSeparatorLabel.current}</span>\r\n <ThousandsSelector data-testid=\"thousands-separator-selector\" separator={formatProps.thousandSeparator ?? \",\"} disabled={!isFormatTraitSet(FormatTraits.Use1000Separator)} onChange={handleThousandSeparatorChange} />\r\n </>\r\n );\r\n}\r\n"]}
@@ -1,24 +1,24 @@
1
- /** @packageDocumentation
2
- * @module QuantityFormat
3
- */
4
- /// <reference types="react" />
5
- import { UnitsProvider } from "@itwin/core-quantity";
6
- import { CommonProps } from "@itwin/core-react";
7
- /** Properties of [[UnitDescr]] component.
8
- * @internal
9
- */
10
- export interface UnitDescrProps extends CommonProps {
11
- name: string;
12
- parentUnitName?: string;
13
- label: string;
14
- index: number;
15
- unitsProvider: UnitsProvider;
16
- readonly?: boolean;
17
- onUnitChange: (value: string, index: number) => void;
18
- onLabelChange: (value: string, index: number) => void;
19
- }
20
- /** Component use to display dropdown list of possible units.
21
- * @internal
22
- */
23
- export declare function UnitDescr(props: UnitDescrProps): JSX.Element;
1
+ /** @packageDocumentation
2
+ * @module QuantityFormat
3
+ */
4
+ /// <reference types="react" />
5
+ import { UnitsProvider } from "@itwin/core-quantity";
6
+ import { CommonProps } from "@itwin/core-react";
7
+ /** Properties of [[UnitDescr]] component.
8
+ * @internal
9
+ */
10
+ export interface UnitDescrProps extends CommonProps {
11
+ name: string;
12
+ parentUnitName?: string;
13
+ label: string;
14
+ index: number;
15
+ unitsProvider: UnitsProvider;
16
+ readonly?: boolean;
17
+ onUnitChange: (value: string, index: number) => void;
18
+ onLabelChange: (value: string, index: number) => void;
19
+ }
20
+ /** Component use to display dropdown list of possible units.
21
+ * @internal
22
+ */
23
+ export declare function UnitDescr(props: UnitDescrProps): JSX.Element;
24
24
  //# sourceMappingURL=UnitDescr.d.ts.map