@itwin/imodel-components-react 3.6.0-dev.8 → 3.6.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 (346) hide show
  1. package/CHANGELOG.md +33 -1
  2. package/LICENSE.md +1 -1
  3. package/lib/cjs/imodel-components-react/UiIModelComponents.d.ts +28 -28
  4. package/lib/cjs/imodel-components-react/UiIModelComponents.js +79 -79
  5. package/lib/cjs/imodel-components-react/UiIModelComponents.js.map +1 -1
  6. package/lib/cjs/imodel-components-react/color/AlphaSlider.d.ts +36 -36
  7. package/lib/cjs/imodel-components-react/color/AlphaSlider.js +186 -186
  8. package/lib/cjs/imodel-components-react/color/AlphaSlider.js.map +1 -1
  9. package/lib/cjs/imodel-components-react/color/AlphaSlider.scss +63 -63
  10. package/lib/cjs/imodel-components-react/color/ColorPickerButton.d.ts +37 -37
  11. package/lib/cjs/imodel-components-react/color/ColorPickerButton.js +107 -107
  12. package/lib/cjs/imodel-components-react/color/ColorPickerButton.js.map +1 -1
  13. package/lib/cjs/imodel-components-react/color/ColorPickerButton.scss +91 -91
  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.js +137 -137
  23. package/lib/cjs/imodel-components-react/color/ColorPickerPopup.js.map +1 -1
  24. package/lib/cjs/imodel-components-react/color/ColorPickerPopup.scss +64 -64
  25. package/lib/cjs/imodel-components-react/color/HueSlider.d.ts +22 -22
  26. package/lib/cjs/imodel-components-react/color/HueSlider.js +199 -199
  27. package/lib/cjs/imodel-components-react/color/HueSlider.js.map +1 -1
  28. package/lib/cjs/imodel-components-react/color/HueSlider.scss +61 -61
  29. package/lib/cjs/imodel-components-react/color/SaturationPicker.d.ts +20 -20
  30. package/lib/cjs/imodel-components-react/color/SaturationPicker.js +213 -213
  31. package/lib/cjs/imodel-components-react/color/SaturationPicker.js.map +1 -1
  32. package/lib/cjs/imodel-components-react/color/SaturationPicker.scss +35 -35
  33. package/lib/cjs/imodel-components-react/color/Swatch.d.ts +22 -22
  34. package/lib/cjs/imodel-components-react/color/Swatch.js +60 -60
  35. package/lib/cjs/imodel-components-react/color/Swatch.js.map +1 -1
  36. package/lib/cjs/imodel-components-react/color/Swatch.scss +23 -23
  37. package/lib/cjs/imodel-components-react/color/getCSSColorFromDef.d.ts +6 -6
  38. package/lib/cjs/imodel-components-react/color/getCSSColorFromDef.js +23 -23
  39. package/lib/cjs/imodel-components-react/color/getCSSColorFromDef.js.map +1 -1
  40. package/lib/cjs/imodel-components-react/editors/ColorEditor.d.ts +44 -44
  41. package/lib/cjs/imodel-components-react/editors/ColorEditor.js +151 -151
  42. package/lib/cjs/imodel-components-react/editors/ColorEditor.js.map +1 -1
  43. package/lib/cjs/imodel-components-react/editors/ColorEditor.scss +18 -18
  44. package/lib/cjs/imodel-components-react/editors/WeightEditor.d.ts +47 -47
  45. package/lib/cjs/imodel-components-react/editors/WeightEditor.js +160 -160
  46. package/lib/cjs/imodel-components-react/editors/WeightEditor.js.map +1 -1
  47. package/lib/cjs/imodel-components-react/editors/WeightEditor.scss +16 -16
  48. package/lib/cjs/imodel-components-react/inputs/QuantityInput.d.ts +25 -25
  49. package/lib/cjs/imodel-components-react/inputs/QuantityInput.js +96 -96
  50. package/lib/cjs/imodel-components-react/inputs/QuantityInput.js.map +1 -1
  51. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.d.ts +44 -44
  52. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.js +265 -265
  53. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.js.map +1 -1
  54. package/lib/cjs/imodel-components-react/inputs/QuantityNumberInput.scss +107 -107
  55. package/lib/cjs/imodel-components-react/lineweight/Swatch.d.ts +33 -33
  56. package/lib/cjs/imodel-components-react/lineweight/Swatch.js +85 -85
  57. package/lib/cjs/imodel-components-react/lineweight/Swatch.js.map +1 -1
  58. package/lib/cjs/imodel-components-react/lineweight/Swatch.scss +48 -48
  59. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.d.ts +60 -60
  60. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.js +159 -159
  61. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.js.map +1 -1
  62. package/lib/cjs/imodel-components-react/lineweight/WeightPickerButton.scss +52 -52
  63. package/lib/cjs/imodel-components-react/navigationaids/Cube.d.ts +45 -45
  64. package/lib/cjs/imodel-components-react/navigationaids/Cube.js +127 -127
  65. package/lib/cjs/imodel-components-react/navigationaids/Cube.js.map +1 -1
  66. package/lib/cjs/imodel-components-react/navigationaids/Cube.scss +19 -19
  67. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.d.ts +174 -174
  68. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.d.ts.map +1 -1
  69. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.js +634 -634
  70. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.js.map +1 -1
  71. package/lib/cjs/imodel-components-react/navigationaids/CubeNavigationAid.scss +180 -180
  72. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts +145 -145
  73. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.js +647 -647
  74. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.js.map +1 -1
  75. package/lib/cjs/imodel-components-react/navigationaids/DrawingNavigationAid.scss +133 -133
  76. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.d.ts +26 -26
  77. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.js +99 -99
  78. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.js.map +1 -1
  79. package/lib/cjs/imodel-components-react/quantityformat/FormatPanel.scss +64 -64
  80. package/lib/cjs/imodel-components-react/quantityformat/FormatPrecision.d.ts +17 -17
  81. package/lib/cjs/imodel-components-react/quantityformat/FormatPrecision.js +53 -53
  82. package/lib/cjs/imodel-components-react/quantityformat/FormatPrecision.js.map +1 -1
  83. package/lib/cjs/imodel-components-react/quantityformat/FormatSample.d.ts +18 -18
  84. package/lib/cjs/imodel-components-react/quantityformat/FormatSample.js +83 -83
  85. package/lib/cjs/imodel-components-react/quantityformat/FormatSample.js.map +1 -1
  86. package/lib/cjs/imodel-components-react/quantityformat/FormatType.d.ts +17 -17
  87. package/lib/cjs/imodel-components-react/quantityformat/FormatType.js +86 -86
  88. package/lib/cjs/imodel-components-react/quantityformat/FormatType.js.map +1 -1
  89. package/lib/cjs/imodel-components-react/quantityformat/FormatUnitLabel.d.ts +17 -17
  90. package/lib/cjs/imodel-components-react/quantityformat/FormatUnitLabel.js +109 -109
  91. package/lib/cjs/imodel-components-react/quantityformat/FormatUnitLabel.js.map +1 -1
  92. package/lib/cjs/imodel-components-react/quantityformat/FormatUnits.d.ts +19 -19
  93. package/lib/cjs/imodel-components-react/quantityformat/FormatUnits.js +133 -133
  94. package/lib/cjs/imodel-components-react/quantityformat/FormatUnits.js.map +1 -1
  95. package/lib/cjs/imodel-components-react/quantityformat/MiscFormatOptions.d.ts +21 -21
  96. package/lib/cjs/imodel-components-react/quantityformat/MiscFormatOptions.js +184 -184
  97. package/lib/cjs/imodel-components-react/quantityformat/MiscFormatOptions.js.map +1 -1
  98. package/lib/cjs/imodel-components-react/quantityformat/QuantityFormatPanel.d.ts +22 -22
  99. package/lib/cjs/imodel-components-react/quantityformat/QuantityFormatPanel.js +154 -154
  100. package/lib/cjs/imodel-components-react/quantityformat/QuantityFormatPanel.js.map +1 -1
  101. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalPrecision.d.ts +17 -17
  102. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalPrecision.js +59 -59
  103. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalPrecision.js.map +1 -1
  104. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalSeparator.d.ts +17 -17
  105. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalSeparator.js +47 -47
  106. package/lib/cjs/imodel-components-react/quantityformat/misc/DecimalSeparator.js.map +1 -1
  107. package/lib/cjs/imodel-components-react/quantityformat/misc/FractionPrecision.d.ts +16 -16
  108. package/lib/cjs/imodel-components-react/quantityformat/misc/FractionPrecision.js +54 -54
  109. package/lib/cjs/imodel-components-react/quantityformat/misc/FractionPrecision.js.map +1 -1
  110. package/lib/cjs/imodel-components-react/quantityformat/misc/ScientificType.d.ts +18 -18
  111. package/lib/cjs/imodel-components-react/quantityformat/misc/ScientificType.js +48 -48
  112. package/lib/cjs/imodel-components-react/quantityformat/misc/ScientificType.js.map +1 -1
  113. package/lib/cjs/imodel-components-react/quantityformat/misc/SignOption.d.ts +17 -17
  114. package/lib/cjs/imodel-components-react/quantityformat/misc/SignOption.js +50 -50
  115. package/lib/cjs/imodel-components-react/quantityformat/misc/SignOption.js.map +1 -1
  116. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSeparatorSelector.d.ts +17 -17
  117. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js +58 -58
  118. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js.map +1 -1
  119. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSizeSelector.d.ts +17 -17
  120. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSizeSelector.js +47 -47
  121. package/lib/cjs/imodel-components-react/quantityformat/misc/StationSizeSelector.js.map +1 -1
  122. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSelector.d.ts +17 -17
  123. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSelector.js +56 -56
  124. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSelector.js.map +1 -1
  125. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSeparator.d.ts +17 -17
  126. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSeparator.js +95 -95
  127. package/lib/cjs/imodel-components-react/quantityformat/misc/ThousandsSeparator.js.map +1 -1
  128. package/lib/cjs/imodel-components-react/quantityformat/misc/UnitDescr.d.ts +23 -23
  129. package/lib/cjs/imodel-components-react/quantityformat/misc/UnitDescr.js +119 -119
  130. package/lib/cjs/imodel-components-react/quantityformat/misc/UnitDescr.js.map +1 -1
  131. package/lib/cjs/imodel-components-react/timeline/BaseSolarDataProvider.d.ts +52 -52
  132. package/lib/cjs/imodel-components-react/timeline/BaseSolarDataProvider.js +143 -143
  133. package/lib/cjs/imodel-components-react/timeline/BaseSolarDataProvider.js.map +1 -1
  134. package/lib/cjs/imodel-components-react/timeline/BaseTimelineDataProvider.d.ts +31 -31
  135. package/lib/cjs/imodel-components-react/timeline/BaseTimelineDataProvider.js +69 -69
  136. package/lib/cjs/imodel-components-react/timeline/BaseTimelineDataProvider.js.map +1 -1
  137. package/lib/cjs/imodel-components-react/timeline/InlineEdit.d.ts +27 -27
  138. package/lib/cjs/imodel-components-react/timeline/InlineEdit.js +81 -81
  139. package/lib/cjs/imodel-components-react/timeline/InlineEdit.js.map +1 -1
  140. package/lib/cjs/imodel-components-react/timeline/InlineEdit.scss +26 -26
  141. package/lib/cjs/imodel-components-react/timeline/PlayerButton.d.ts +33 -33
  142. package/lib/cjs/imodel-components-react/timeline/PlayerButton.js +91 -91
  143. package/lib/cjs/imodel-components-react/timeline/PlayerButton.js.map +1 -1
  144. package/lib/cjs/imodel-components-react/timeline/PlayerButton.scss +25 -25
  145. package/lib/cjs/imodel-components-react/timeline/Scrubber.d.ts +54 -54
  146. package/lib/cjs/imodel-components-react/timeline/Scrubber.js +191 -191
  147. package/lib/cjs/imodel-components-react/timeline/Scrubber.js.map +1 -1
  148. package/lib/cjs/imodel-components-react/timeline/Scrubber.scss +106 -106
  149. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.d.ts +77 -77
  150. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.js +424 -424
  151. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.js.map +1 -1
  152. package/lib/cjs/imodel-components-react/timeline/SolarTimeline.scss +357 -357
  153. package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.d.ts +15 -15
  154. package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.js +54 -54
  155. package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.js.map +1 -1
  156. package/lib/cjs/imodel-components-react/timeline/SpeedTimeline.scss +39 -39
  157. package/lib/cjs/imodel-components-react/timeline/Timeline.scss +164 -164
  158. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.d.ts +133 -133
  159. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.js +358 -358
  160. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.js.map +1 -1
  161. package/lib/cjs/imodel-components-react/timeline/TimelineComponent.scss +163 -163
  162. package/lib/cjs/imodel-components-react/timeline/interfaces.d.ts +174 -174
  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.js +274 -274
  167. package/lib/cjs/imodel-components-react/viewport/ViewportComponent.js.map +1 -1
  168. package/lib/cjs/imodel-components-react/viewport/ViewportComponentEvents.d.ts +106 -106
  169. package/lib/cjs/imodel-components-react/viewport/ViewportComponentEvents.js +105 -105
  170. package/lib/cjs/imodel-components-react/viewport/ViewportComponentEvents.js.map +1 -1
  171. package/lib/cjs/imodel-components-react.d.ts +82 -82
  172. package/lib/cjs/imodel-components-react.js +101 -101
  173. package/lib/cjs/imodel-components-react.js.map +1 -1
  174. package/lib/esm/imodel-components-react/UiIModelComponents.d.ts +28 -28
  175. package/lib/esm/imodel-components-react/UiIModelComponents.js +75 -75
  176. package/lib/esm/imodel-components-react/UiIModelComponents.js.map +1 -1
  177. package/lib/esm/imodel-components-react/color/AlphaSlider.d.ts +36 -36
  178. package/lib/esm/imodel-components-react/color/AlphaSlider.js +160 -160
  179. package/lib/esm/imodel-components-react/color/AlphaSlider.js.map +1 -1
  180. package/lib/esm/imodel-components-react/color/AlphaSlider.scss +63 -63
  181. package/lib/esm/imodel-components-react/color/ColorPickerButton.d.ts +37 -37
  182. package/lib/esm/imodel-components-react/color/ColorPickerButton.js +82 -82
  183. package/lib/esm/imodel-components-react/color/ColorPickerButton.js.map +1 -1
  184. package/lib/esm/imodel-components-react/color/ColorPickerButton.scss +91 -91
  185. package/lib/esm/imodel-components-react/color/ColorPickerDialog.d.ts +23 -23
  186. package/lib/esm/imodel-components-react/color/ColorPickerDialog.js +51 -51
  187. package/lib/esm/imodel-components-react/color/ColorPickerDialog.js.map +1 -1
  188. package/lib/esm/imodel-components-react/color/ColorPickerPanel.d.ts +21 -21
  189. package/lib/esm/imodel-components-react/color/ColorPickerPanel.js +122 -122
  190. package/lib/esm/imodel-components-react/color/ColorPickerPanel.js.map +1 -1
  191. package/lib/esm/imodel-components-react/color/ColorPickerPanel.scss +93 -93
  192. package/lib/esm/imodel-components-react/color/ColorPickerPopup.d.ts +44 -44
  193. package/lib/esm/imodel-components-react/color/ColorPickerPopup.js +112 -112
  194. package/lib/esm/imodel-components-react/color/ColorPickerPopup.js.map +1 -1
  195. package/lib/esm/imodel-components-react/color/ColorPickerPopup.scss +64 -64
  196. package/lib/esm/imodel-components-react/color/HueSlider.d.ts +22 -22
  197. package/lib/esm/imodel-components-react/color/HueSlider.js +173 -173
  198. package/lib/esm/imodel-components-react/color/HueSlider.js.map +1 -1
  199. package/lib/esm/imodel-components-react/color/HueSlider.scss +61 -61
  200. package/lib/esm/imodel-components-react/color/SaturationPicker.d.ts +20 -20
  201. package/lib/esm/imodel-components-react/color/SaturationPicker.js +187 -187
  202. package/lib/esm/imodel-components-react/color/SaturationPicker.js.map +1 -1
  203. package/lib/esm/imodel-components-react/color/SaturationPicker.scss +35 -35
  204. package/lib/esm/imodel-components-react/color/Swatch.d.ts +22 -22
  205. package/lib/esm/imodel-components-react/color/Swatch.js +34 -34
  206. package/lib/esm/imodel-components-react/color/Swatch.js.map +1 -1
  207. package/lib/esm/imodel-components-react/color/Swatch.scss +23 -23
  208. package/lib/esm/imodel-components-react/color/getCSSColorFromDef.d.ts +6 -6
  209. package/lib/esm/imodel-components-react/color/getCSSColorFromDef.js +19 -19
  210. package/lib/esm/imodel-components-react/color/getCSSColorFromDef.js.map +1 -1
  211. package/lib/esm/imodel-components-react/editors/ColorEditor.d.ts +44 -44
  212. package/lib/esm/imodel-components-react/editors/ColorEditor.js +124 -124
  213. package/lib/esm/imodel-components-react/editors/ColorEditor.js.map +1 -1
  214. package/lib/esm/imodel-components-react/editors/ColorEditor.scss +18 -18
  215. package/lib/esm/imodel-components-react/editors/WeightEditor.d.ts +47 -47
  216. package/lib/esm/imodel-components-react/editors/WeightEditor.js +133 -133
  217. package/lib/esm/imodel-components-react/editors/WeightEditor.js.map +1 -1
  218. package/lib/esm/imodel-components-react/editors/WeightEditor.scss +16 -16
  219. package/lib/esm/imodel-components-react/inputs/QuantityInput.d.ts +25 -25
  220. package/lib/esm/imodel-components-react/inputs/QuantityInput.js +70 -70
  221. package/lib/esm/imodel-components-react/inputs/QuantityInput.js.map +1 -1
  222. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.d.ts +44 -44
  223. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.js +240 -240
  224. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.js.map +1 -1
  225. package/lib/esm/imodel-components-react/inputs/QuantityNumberInput.scss +107 -107
  226. package/lib/esm/imodel-components-react/lineweight/Swatch.d.ts +33 -33
  227. package/lib/esm/imodel-components-react/lineweight/Swatch.js +59 -59
  228. package/lib/esm/imodel-components-react/lineweight/Swatch.js.map +1 -1
  229. package/lib/esm/imodel-components-react/lineweight/Swatch.scss +48 -48
  230. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.d.ts +60 -60
  231. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.js +133 -133
  232. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.js.map +1 -1
  233. package/lib/esm/imodel-components-react/lineweight/WeightPickerButton.scss +52 -52
  234. package/lib/esm/imodel-components-react/navigationaids/Cube.d.ts +45 -45
  235. package/lib/esm/imodel-components-react/navigationaids/Cube.js +100 -100
  236. package/lib/esm/imodel-components-react/navigationaids/Cube.js.map +1 -1
  237. package/lib/esm/imodel-components-react/navigationaids/Cube.scss +19 -19
  238. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.d.ts +174 -174
  239. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.d.ts.map +1 -1
  240. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.js +606 -606
  241. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.js.map +1 -1
  242. package/lib/esm/imodel-components-react/navigationaids/CubeNavigationAid.scss +180 -180
  243. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.d.ts +145 -145
  244. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.js +620 -620
  245. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.js.map +1 -1
  246. package/lib/esm/imodel-components-react/navigationaids/DrawingNavigationAid.scss +133 -133
  247. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.d.ts +26 -26
  248. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.js +76 -76
  249. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.js.map +1 -1
  250. package/lib/esm/imodel-components-react/quantityformat/FormatPanel.scss +64 -64
  251. package/lib/esm/imodel-components-react/quantityformat/FormatPrecision.d.ts +17 -17
  252. package/lib/esm/imodel-components-react/quantityformat/FormatPrecision.js +30 -30
  253. package/lib/esm/imodel-components-react/quantityformat/FormatPrecision.js.map +1 -1
  254. package/lib/esm/imodel-components-react/quantityformat/FormatSample.d.ts +18 -18
  255. package/lib/esm/imodel-components-react/quantityformat/FormatSample.js +60 -60
  256. package/lib/esm/imodel-components-react/quantityformat/FormatSample.js.map +1 -1
  257. package/lib/esm/imodel-components-react/quantityformat/FormatType.d.ts +17 -17
  258. package/lib/esm/imodel-components-react/quantityformat/FormatType.js +63 -63
  259. package/lib/esm/imodel-components-react/quantityformat/FormatType.js.map +1 -1
  260. package/lib/esm/imodel-components-react/quantityformat/FormatUnitLabel.d.ts +17 -17
  261. package/lib/esm/imodel-components-react/quantityformat/FormatUnitLabel.js +83 -83
  262. package/lib/esm/imodel-components-react/quantityformat/FormatUnitLabel.js.map +1 -1
  263. package/lib/esm/imodel-components-react/quantityformat/FormatUnits.d.ts +19 -19
  264. package/lib/esm/imodel-components-react/quantityformat/FormatUnits.js +110 -110
  265. package/lib/esm/imodel-components-react/quantityformat/FormatUnits.js.map +1 -1
  266. package/lib/esm/imodel-components-react/quantityformat/MiscFormatOptions.d.ts +21 -21
  267. package/lib/esm/imodel-components-react/quantityformat/MiscFormatOptions.js +158 -158
  268. package/lib/esm/imodel-components-react/quantityformat/MiscFormatOptions.js.map +1 -1
  269. package/lib/esm/imodel-components-react/quantityformat/QuantityFormatPanel.d.ts +22 -22
  270. package/lib/esm/imodel-components-react/quantityformat/QuantityFormatPanel.js +131 -131
  271. package/lib/esm/imodel-components-react/quantityformat/QuantityFormatPanel.js.map +1 -1
  272. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalPrecision.d.ts +17 -17
  273. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalPrecision.js +36 -36
  274. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalPrecision.js.map +1 -1
  275. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalSeparator.d.ts +17 -17
  276. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalSeparator.js +24 -24
  277. package/lib/esm/imodel-components-react/quantityformat/misc/DecimalSeparator.js.map +1 -1
  278. package/lib/esm/imodel-components-react/quantityformat/misc/FractionPrecision.d.ts +16 -16
  279. package/lib/esm/imodel-components-react/quantityformat/misc/FractionPrecision.js +31 -31
  280. package/lib/esm/imodel-components-react/quantityformat/misc/FractionPrecision.js.map +1 -1
  281. package/lib/esm/imodel-components-react/quantityformat/misc/ScientificType.d.ts +18 -18
  282. package/lib/esm/imodel-components-react/quantityformat/misc/ScientificType.js +25 -25
  283. package/lib/esm/imodel-components-react/quantityformat/misc/ScientificType.js.map +1 -1
  284. package/lib/esm/imodel-components-react/quantityformat/misc/SignOption.d.ts +17 -17
  285. package/lib/esm/imodel-components-react/quantityformat/misc/SignOption.js +27 -27
  286. package/lib/esm/imodel-components-react/quantityformat/misc/SignOption.js.map +1 -1
  287. package/lib/esm/imodel-components-react/quantityformat/misc/StationSeparatorSelector.d.ts +17 -17
  288. package/lib/esm/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js +35 -35
  289. package/lib/esm/imodel-components-react/quantityformat/misc/StationSeparatorSelector.js.map +1 -1
  290. package/lib/esm/imodel-components-react/quantityformat/misc/StationSizeSelector.d.ts +17 -17
  291. package/lib/esm/imodel-components-react/quantityformat/misc/StationSizeSelector.js +24 -24
  292. package/lib/esm/imodel-components-react/quantityformat/misc/StationSizeSelector.js.map +1 -1
  293. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSelector.d.ts +17 -17
  294. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSelector.js +33 -33
  295. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSelector.js.map +1 -1
  296. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSeparator.d.ts +17 -17
  297. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSeparator.js +69 -69
  298. package/lib/esm/imodel-components-react/quantityformat/misc/ThousandsSeparator.js.map +1 -1
  299. package/lib/esm/imodel-components-react/quantityformat/misc/UnitDescr.d.ts +23 -23
  300. package/lib/esm/imodel-components-react/quantityformat/misc/UnitDescr.js +96 -96
  301. package/lib/esm/imodel-components-react/quantityformat/misc/UnitDescr.js.map +1 -1
  302. package/lib/esm/imodel-components-react/timeline/BaseSolarDataProvider.d.ts +52 -52
  303. package/lib/esm/imodel-components-react/timeline/BaseSolarDataProvider.js +139 -139
  304. package/lib/esm/imodel-components-react/timeline/BaseSolarDataProvider.js.map +1 -1
  305. package/lib/esm/imodel-components-react/timeline/BaseTimelineDataProvider.d.ts +31 -31
  306. package/lib/esm/imodel-components-react/timeline/BaseTimelineDataProvider.js +65 -65
  307. package/lib/esm/imodel-components-react/timeline/BaseTimelineDataProvider.js.map +1 -1
  308. package/lib/esm/imodel-components-react/timeline/InlineEdit.d.ts +27 -27
  309. package/lib/esm/imodel-components-react/timeline/InlineEdit.js +55 -55
  310. package/lib/esm/imodel-components-react/timeline/InlineEdit.js.map +1 -1
  311. package/lib/esm/imodel-components-react/timeline/InlineEdit.scss +26 -26
  312. package/lib/esm/imodel-components-react/timeline/PlayerButton.d.ts +33 -33
  313. package/lib/esm/imodel-components-react/timeline/PlayerButton.js +64 -64
  314. package/lib/esm/imodel-components-react/timeline/PlayerButton.js.map +1 -1
  315. package/lib/esm/imodel-components-react/timeline/PlayerButton.scss +25 -25
  316. package/lib/esm/imodel-components-react/timeline/Scrubber.d.ts +54 -54
  317. package/lib/esm/imodel-components-react/timeline/Scrubber.js +164 -164
  318. package/lib/esm/imodel-components-react/timeline/Scrubber.js.map +1 -1
  319. package/lib/esm/imodel-components-react/timeline/Scrubber.scss +106 -106
  320. package/lib/esm/imodel-components-react/timeline/SolarTimeline.d.ts +77 -77
  321. package/lib/esm/imodel-components-react/timeline/SolarTimeline.js +398 -398
  322. package/lib/esm/imodel-components-react/timeline/SolarTimeline.js.map +1 -1
  323. package/lib/esm/imodel-components-react/timeline/SolarTimeline.scss +357 -357
  324. package/lib/esm/imodel-components-react/timeline/SpeedTimeline.d.ts +15 -15
  325. package/lib/esm/imodel-components-react/timeline/SpeedTimeline.js +28 -28
  326. package/lib/esm/imodel-components-react/timeline/SpeedTimeline.js.map +1 -1
  327. package/lib/esm/imodel-components-react/timeline/SpeedTimeline.scss +39 -39
  328. package/lib/esm/imodel-components-react/timeline/Timeline.scss +164 -164
  329. package/lib/esm/imodel-components-react/timeline/TimelineComponent.d.ts +133 -133
  330. package/lib/esm/imodel-components-react/timeline/TimelineComponent.js +332 -332
  331. package/lib/esm/imodel-components-react/timeline/TimelineComponent.js.map +1 -1
  332. package/lib/esm/imodel-components-react/timeline/TimelineComponent.scss +163 -163
  333. package/lib/esm/imodel-components-react/timeline/interfaces.d.ts +174 -174
  334. package/lib/esm/imodel-components-react/timeline/interfaces.js +42 -42
  335. package/lib/esm/imodel-components-react/timeline/interfaces.js.map +1 -1
  336. package/lib/esm/imodel-components-react/viewport/ViewportComponent.d.ts +42 -42
  337. package/lib/esm/imodel-components-react/viewport/ViewportComponent.js +251 -251
  338. package/lib/esm/imodel-components-react/viewport/ViewportComponent.js.map +1 -1
  339. package/lib/esm/imodel-components-react/viewport/ViewportComponentEvents.d.ts +106 -106
  340. package/lib/esm/imodel-components-react/viewport/ViewportComponentEvents.js +95 -95
  341. package/lib/esm/imodel-components-react/viewport/ViewportComponentEvents.js.map +1 -1
  342. package/lib/esm/imodel-components-react.d.ts +82 -82
  343. package/lib/esm/imodel-components-react.js +87 -87
  344. package/lib/esm/imodel-components-react.js.map +1 -1
  345. package/lib/public/locales/en/UiIModelComponents.json +139 -139
  346. package/package.json +20 -20
@@ -1 +1 @@
1
- {"version":3,"file":"SaturationPicker.js","sourceRoot":"","sources":["../../../../src/imodel-components-react/color/SaturationPicker.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 Color\r\n */\r\n\r\nimport \"./SaturationPicker.scss\";\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { ColorDef, HSVColor } from \"@itwin/core-common\";\r\nimport { SpecialKey } from \"@itwin/appui-abstract\";\r\nimport { CommonProps } from \"@itwin/core-react\";\r\nimport { UiIModelComponents } from \"../UiIModelComponents\";\r\n\r\nfunction calculateChange(e: React.MouseEvent<HTMLDivElement> | React.TouchEvent<HTMLDivElement>,\r\n hsv: HSVColor, container: HTMLDivElement): HSVColor | undefined {\r\n const { width: containerWidth, height: containerHeight, top: containerTop, left: containerLeft } = container.getBoundingClientRect();\r\n\r\n let x: number | undefined;\r\n if (\"pageX\" in e) {\r\n x = e.pageX;\r\n } else {\r\n // istanbul ignore next\r\n if (undefined !== e.touches && e.touches.length)\r\n x = e.touches[0].pageX;\r\n }\r\n // istanbul ignore if\r\n if (undefined === x)\r\n return hsv;\r\n\r\n let y = 0;\r\n if (\"pageY\" in e) {\r\n y = e.pageY;\r\n } else {\r\n // istanbul ignore next\r\n if (undefined !== e.touches && e.touches.length)\r\n y = e.touches[0].pageY;\r\n }\r\n // istanbul ignore if\r\n if (undefined === y)\r\n return hsv;\r\n\r\n let left = x - (containerLeft + window.scrollX);\r\n let top = y - (containerTop + window.scrollY);\r\n\r\n // istanbul ignore next\r\n if (left < 0) {\r\n left = 0;\r\n } else if (left > containerWidth) {\r\n left = containerWidth;\r\n } else if (top < 0) {\r\n top = 0;\r\n } else if (top > containerHeight) {\r\n top = containerHeight;\r\n }\r\n\r\n let saturation = Math.round((left * 100) / containerWidth);\r\n let value = Math.round(-((top * 100) / containerHeight) + 100);\r\n\r\n // istanbul ignore if\r\n if (saturation < 0)\r\n saturation = 0;\r\n // istanbul ignore if\r\n if (saturation > 100)\r\n saturation = 100;\r\n // istanbul ignore if\r\n if (value < 0)\r\n value = 0;\r\n // istanbul ignore if\r\n if (value > 100)\r\n value = 100;\r\n\r\n return hsv.clone(hsv.h, saturation, value);\r\n}\r\n\r\n/** Properties for the [[SaturationPicker]] React component\r\n * @beta\r\n */\r\nexport interface SaturationPickerProps extends React.HTMLAttributes<HTMLDivElement>, CommonProps {\r\n /** function to run when user selects location in saturation region */\r\n onSaturationChange?: ((saturation: HSVColor) => void) | undefined;\r\n /** HSV Color Value */\r\n hsv: HSVColor;\r\n}\r\n\r\n/** SaturationPicker component used to set the saturation value.\r\n * @beta\r\n */\r\nexport function SaturationPicker({ onSaturationChange, hsv, className, style }: SaturationPickerProps) {\r\n const container = React.useRef<HTMLDivElement>(null);\r\n const [saturationLabel] = React.useState(() => UiIModelComponents.translate(\"color.saturation\"));\r\n const isDragging = React.useRef(false);\r\n\r\n const onChange = React.useCallback((e: React.MouseEvent<HTMLDivElement> | React.TouchEvent<HTMLDivElement>) => {\r\n // istanbul ignore else\r\n if (container.current) {\r\n const newHsvColor = calculateChange(e, hsv, container.current);\r\n // istanbul ignore else\r\n if (newHsvColor) {\r\n // istanbul ignore else\r\n if (onSaturationChange)\r\n onSaturationChange(newHsvColor);\r\n }\r\n }\r\n }, [hsv, onSaturationChange]);\r\n\r\n const onDragging = React.useCallback((e: React.MouseEvent<HTMLDivElement> | React.TouchEvent<HTMLDivElement>) => {\r\n // istanbul ignore else\r\n if (isDragging.current) {\r\n onChange(e);\r\n }\r\n }, [onChange]);\r\n\r\n const onMouseUp = React.useCallback(() => {\r\n // istanbul ignore else\r\n if (isDragging.current) {\r\n isDragging.current = false;\r\n }\r\n }, []);\r\n\r\n const onTouchEnd = React.useCallback((event: React.TouchEvent<HTMLDivElement>) => {\r\n // istanbul ignore else\r\n if (isDragging.current) {\r\n onChange(event);\r\n isDragging.current = false;\r\n }\r\n }, [onChange]);\r\n\r\n const onMouseDown = React.useCallback((e: React.MouseEvent<HTMLDivElement>) => {\r\n // istanbul ignore else\r\n if (e.target !== e.currentTarget) {\r\n isDragging.current = true;\r\n document.addEventListener(\"mouseup\", onMouseUp, { capture: true, once: true });\r\n }\r\n\r\n onChange(e);\r\n\r\n // istanbul ignore else\r\n if (container.current)\r\n container.current.focus();\r\n\r\n e.preventDefault();\r\n }, [onChange, onMouseUp]);\r\n\r\n const onTouchStart = React.useCallback((e: React.TouchEvent<HTMLDivElement>) => {\r\n // istanbul ignore else\r\n if (e.target !== e.currentTarget)\r\n isDragging.current = true;\r\n\r\n onChange(e);\r\n\r\n // istanbul ignore else\r\n if (container.current)\r\n container.current.focus();\r\n }, [onChange]);\r\n\r\n const onKeyDown = React.useCallback((evt: React.KeyboardEvent<HTMLDivElement>) => {\r\n const h = hsv.h;\r\n let { s, v } = { ...hsv };\r\n if (evt.key === SpecialKey.ArrowLeft) {\r\n s -= (evt.ctrlKey ? 10 : 1);\r\n } else if (evt.key === SpecialKey.ArrowDown) {\r\n v -= (evt.ctrlKey ? 10 : 1);\r\n } else if (evt.key === SpecialKey.ArrowRight) {\r\n s += (evt.ctrlKey ? 10 : 1);\r\n } else if (evt.key === SpecialKey.ArrowUp) {\r\n v += (evt.ctrlKey ? 10 : 1);\r\n } else if (evt.key === SpecialKey.PageDown) {\r\n v = 0;\r\n } else if (evt.key === SpecialKey.PageUp) {\r\n v = 100;\r\n } else if (evt.key === SpecialKey.Home) {\r\n s = 0;\r\n } else {\r\n // istanbul ignore else\r\n if (evt.key === SpecialKey.End) {\r\n s = 100;\r\n }\r\n }\r\n\r\n // istanbul ignore if\r\n if (s < 0)\r\n s = 0;\r\n // istanbul ignore if\r\n if (s > 100)\r\n s = 100;\r\n // istanbul ignore if\r\n if (v < 0)\r\n v = 0;\r\n // istanbul ignore if\r\n if (v > 100)\r\n v = 100;\r\n\r\n const newColor = new HSVColor(h, s, v);\r\n // istanbul ignore else\r\n if (onSaturationChange)\r\n onSaturationChange(newColor);\r\n\r\n evt.preventDefault();\r\n }, [hsv, onSaturationChange]);\r\n\r\n const pointerStyle: React.CSSProperties = React.useMemo(() => ({\r\n left: `${hsv.s}%`,\r\n top: `${-(hsv.v) + 100}%`,\r\n backgroundColor: `${ColorDef.fromHSV(hsv).toRgbString()}`,\r\n }), [hsv]);\r\n\r\n const colorStyle: React.CSSProperties = React.useMemo(() => ({ backgroundColor: `hsl(${hsv.h} ,100%, 50%)` }), [hsv]);\r\n\r\n return (\r\n <div className={classnames(\"components-saturation-container\", className)} style={style} data-testid=\"saturation-container\" >\r\n <div\r\n data-testid=\"saturation-region\"\r\n role=\"slider\" aria-label={saturationLabel} aria-valuenow={hsv.s}\r\n style={colorStyle}\r\n className=\"components-saturation-region\"\r\n ref={container}\r\n onMouseDown={onMouseDown}\r\n onMouseMove={onDragging}\r\n onTouchMove={onDragging}\r\n onTouchStart={onTouchStart}\r\n onTouchEnd={onTouchEnd}\r\n tabIndex={0}\r\n onKeyDown={onKeyDown}\r\n >\r\n <div style={pointerStyle} className=\"components-saturation-pointer\" data-testid=\"saturation-pointer\" />\r\n </div>\r\n </div >\r\n );\r\n}\r\n"]}
1
+ {"version":3,"file":"SaturationPicker.js","sourceRoot":"","sources":["../../../../src/imodel-components-react/color/SaturationPicker.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 Color\n */\n\nimport \"./SaturationPicker.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport { ColorDef, HSVColor } from \"@itwin/core-common\";\nimport { SpecialKey } from \"@itwin/appui-abstract\";\nimport { CommonProps } from \"@itwin/core-react\";\nimport { UiIModelComponents } from \"../UiIModelComponents\";\n\nfunction calculateChange(e: React.MouseEvent<HTMLDivElement> | React.TouchEvent<HTMLDivElement>,\n hsv: HSVColor, container: HTMLDivElement): HSVColor | undefined {\n const { width: containerWidth, height: containerHeight, top: containerTop, left: containerLeft } = container.getBoundingClientRect();\n\n let x: number | undefined;\n if (\"pageX\" in e) {\n x = e.pageX;\n } else {\n // istanbul ignore next\n if (undefined !== e.touches && e.touches.length)\n x = e.touches[0].pageX;\n }\n // istanbul ignore if\n if (undefined === x)\n return hsv;\n\n let y = 0;\n if (\"pageY\" in e) {\n y = e.pageY;\n } else {\n // istanbul ignore next\n if (undefined !== e.touches && e.touches.length)\n y = e.touches[0].pageY;\n }\n // istanbul ignore if\n if (undefined === y)\n return hsv;\n\n let left = x - (containerLeft + window.scrollX);\n let top = y - (containerTop + window.scrollY);\n\n // istanbul ignore next\n if (left < 0) {\n left = 0;\n } else if (left > containerWidth) {\n left = containerWidth;\n } else if (top < 0) {\n top = 0;\n } else if (top > containerHeight) {\n top = containerHeight;\n }\n\n let saturation = Math.round((left * 100) / containerWidth);\n let value = Math.round(-((top * 100) / containerHeight) + 100);\n\n // istanbul ignore if\n if (saturation < 0)\n saturation = 0;\n // istanbul ignore if\n if (saturation > 100)\n saturation = 100;\n // istanbul ignore if\n if (value < 0)\n value = 0;\n // istanbul ignore if\n if (value > 100)\n value = 100;\n\n return hsv.clone(hsv.h, saturation, value);\n}\n\n/** Properties for the [[SaturationPicker]] React component\n * @beta\n */\nexport interface SaturationPickerProps extends React.HTMLAttributes<HTMLDivElement>, CommonProps {\n /** function to run when user selects location in saturation region */\n onSaturationChange?: ((saturation: HSVColor) => void) | undefined;\n /** HSV Color Value */\n hsv: HSVColor;\n}\n\n/** SaturationPicker component used to set the saturation value.\n * @beta\n */\nexport function SaturationPicker({ onSaturationChange, hsv, className, style }: SaturationPickerProps) {\n const container = React.useRef<HTMLDivElement>(null);\n const [saturationLabel] = React.useState(() => UiIModelComponents.translate(\"color.saturation\"));\n const isDragging = React.useRef(false);\n\n const onChange = React.useCallback((e: React.MouseEvent<HTMLDivElement> | React.TouchEvent<HTMLDivElement>) => {\n // istanbul ignore else\n if (container.current) {\n const newHsvColor = calculateChange(e, hsv, container.current);\n // istanbul ignore else\n if (newHsvColor) {\n // istanbul ignore else\n if (onSaturationChange)\n onSaturationChange(newHsvColor);\n }\n }\n }, [hsv, onSaturationChange]);\n\n const onDragging = React.useCallback((e: React.MouseEvent<HTMLDivElement> | React.TouchEvent<HTMLDivElement>) => {\n // istanbul ignore else\n if (isDragging.current) {\n onChange(e);\n }\n }, [onChange]);\n\n const onMouseUp = React.useCallback(() => {\n // istanbul ignore else\n if (isDragging.current) {\n isDragging.current = false;\n }\n }, []);\n\n const onTouchEnd = React.useCallback((event: React.TouchEvent<HTMLDivElement>) => {\n // istanbul ignore else\n if (isDragging.current) {\n onChange(event);\n isDragging.current = false;\n }\n }, [onChange]);\n\n const onMouseDown = React.useCallback((e: React.MouseEvent<HTMLDivElement>) => {\n // istanbul ignore else\n if (e.target !== e.currentTarget) {\n isDragging.current = true;\n document.addEventListener(\"mouseup\", onMouseUp, { capture: true, once: true });\n }\n\n onChange(e);\n\n // istanbul ignore else\n if (container.current)\n container.current.focus();\n\n e.preventDefault();\n }, [onChange, onMouseUp]);\n\n const onTouchStart = React.useCallback((e: React.TouchEvent<HTMLDivElement>) => {\n // istanbul ignore else\n if (e.target !== e.currentTarget)\n isDragging.current = true;\n\n onChange(e);\n\n // istanbul ignore else\n if (container.current)\n container.current.focus();\n }, [onChange]);\n\n const onKeyDown = React.useCallback((evt: React.KeyboardEvent<HTMLDivElement>) => {\n const h = hsv.h;\n let { s, v } = { ...hsv };\n if (evt.key === SpecialKey.ArrowLeft) {\n s -= (evt.ctrlKey ? 10 : 1);\n } else if (evt.key === SpecialKey.ArrowDown) {\n v -= (evt.ctrlKey ? 10 : 1);\n } else if (evt.key === SpecialKey.ArrowRight) {\n s += (evt.ctrlKey ? 10 : 1);\n } else if (evt.key === SpecialKey.ArrowUp) {\n v += (evt.ctrlKey ? 10 : 1);\n } else if (evt.key === SpecialKey.PageDown) {\n v = 0;\n } else if (evt.key === SpecialKey.PageUp) {\n v = 100;\n } else if (evt.key === SpecialKey.Home) {\n s = 0;\n } else {\n // istanbul ignore else\n if (evt.key === SpecialKey.End) {\n s = 100;\n }\n }\n\n // istanbul ignore if\n if (s < 0)\n s = 0;\n // istanbul ignore if\n if (s > 100)\n s = 100;\n // istanbul ignore if\n if (v < 0)\n v = 0;\n // istanbul ignore if\n if (v > 100)\n v = 100;\n\n const newColor = new HSVColor(h, s, v);\n // istanbul ignore else\n if (onSaturationChange)\n onSaturationChange(newColor);\n\n evt.preventDefault();\n }, [hsv, onSaturationChange]);\n\n const pointerStyle: React.CSSProperties = React.useMemo(() => ({\n left: `${hsv.s}%`,\n top: `${-(hsv.v) + 100}%`,\n backgroundColor: `${ColorDef.fromHSV(hsv).toRgbString()}`,\n }), [hsv]);\n\n const colorStyle: React.CSSProperties = React.useMemo(() => ({ backgroundColor: `hsl(${hsv.h} ,100%, 50%)` }), [hsv]);\n\n return (\n <div className={classnames(\"components-saturation-container\", className)} style={style} data-testid=\"saturation-container\" >\n <div\n data-testid=\"saturation-region\"\n role=\"slider\" aria-label={saturationLabel} aria-valuenow={hsv.s}\n style={colorStyle}\n className=\"components-saturation-region\"\n ref={container}\n onMouseDown={onMouseDown}\n onMouseMove={onDragging}\n onTouchMove={onDragging}\n onTouchStart={onTouchStart}\n onTouchEnd={onTouchEnd}\n tabIndex={0}\n onKeyDown={onKeyDown}\n >\n <div style={pointerStyle} className=\"components-saturation-pointer\" data-testid=\"saturation-pointer\" />\n </div>\n </div >\n );\n}\n"]}
@@ -1,35 +1,35 @@
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
-
6
- .components-saturation-container {
7
- width: 100%;
8
- height: 100%;
9
- min-width: 100px;
10
- min-height: 100px;
11
-
12
- .components-saturation-region {
13
- position: relative;
14
- width: 100%;
15
- height: 100%;
16
- background-image: linear-gradient(to top, #000, rgba(0, 0, 0, 0)), linear-gradient(to right, #fff, rgba(255, 255, 255, 0));
17
- background-size: cover, cover;
18
- overflow: visible;
19
-
20
- .components-saturation-pointer {
21
- position: absolute;
22
- width: 2em;
23
- height: 2em;
24
- border-radius: 50%;
25
- box-shadow: rgba(0, 0, 0, 0.37) 0px 4px 4px 0px;
26
- border: 2px solid #fff;
27
- transform: translate(-1em, -1em);
28
-
29
- &:focus {
30
- outline: none;
31
- border: none;
32
- }
33
- }
34
- }
35
- }
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
+
6
+ .components-saturation-container {
7
+ width: 100%;
8
+ height: 100%;
9
+ min-width: 100px;
10
+ min-height: 100px;
11
+
12
+ .components-saturation-region {
13
+ position: relative;
14
+ width: 100%;
15
+ height: 100%;
16
+ background-image: linear-gradient(to top, #000, rgba(0, 0, 0, 0)), linear-gradient(to right, #fff, rgba(255, 255, 255, 0));
17
+ background-size: cover, cover;
18
+ overflow: visible;
19
+
20
+ .components-saturation-pointer {
21
+ position: absolute;
22
+ width: 2em;
23
+ height: 2em;
24
+ border-radius: 50%;
25
+ box-shadow: rgba(0, 0, 0, 0.37) 0px 4px 4px 0px;
26
+ border: 2px solid #fff;
27
+ transform: translate(-1em, -1em);
28
+
29
+ &:focus {
30
+ outline: none;
31
+ border: none;
32
+ }
33
+ }
34
+ }
35
+ }
@@ -1,23 +1,23 @@
1
- /** @packageDocumentation
2
- * @module Color
3
- */
4
- import "./Swatch.scss";
5
- import * as React from "react";
6
- import { ColorDef } from "@itwin/core-common";
7
- import { CommonProps } from "@itwin/core-react";
8
- /** Properties for the [[ColorSwatch]] React component
9
- * @beta
10
- */
11
- export interface ColorSwatchProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, CommonProps {
12
- /** color specification */
13
- colorDef: ColorDef;
14
- /** function to run when user selects color swatch */
15
- onColorPick?: ((color: ColorDef, e: React.MouseEvent) => void) | undefined;
16
- /** Show swatches as squares unless round is set to true */
17
- round?: boolean;
18
- }
19
- /** ColorSwatch Functional component displays a color swatch in a button
20
- * @beta
21
- */
22
- export declare function ColorSwatch(props: ColorSwatchProps): JSX.Element;
1
+ /** @packageDocumentation
2
+ * @module Color
3
+ */
4
+ import "./Swatch.scss";
5
+ import * as React from "react";
6
+ import { ColorDef } from "@itwin/core-common";
7
+ import { CommonProps } from "@itwin/core-react";
8
+ /** Properties for the [[ColorSwatch]] React component
9
+ * @beta
10
+ */
11
+ export interface ColorSwatchProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, CommonProps {
12
+ /** color specification */
13
+ colorDef: ColorDef;
14
+ /** function to run when user selects color swatch */
15
+ onColorPick?: ((color: ColorDef, e: React.MouseEvent) => void) | undefined;
16
+ /** Show swatches as squares unless round is set to true */
17
+ round?: boolean;
18
+ }
19
+ /** ColorSwatch Functional component displays a color swatch in a button
20
+ * @beta
21
+ */
22
+ export declare function ColorSwatch(props: ColorSwatchProps): JSX.Element;
23
23
  //# sourceMappingURL=Swatch.d.ts.map
@@ -1,61 +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 Color
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.ColorSwatch = void 0;
33
- require("./Swatch.scss");
34
- const classnames_1 = __importDefault(require("classnames"));
35
- const React = __importStar(require("react"));
36
- const getCSSColorFromDef_1 = require("./getCSSColorFromDef");
37
- /** ColorSwatch Functional component displays a color swatch in a button
38
- * @beta
39
- */
40
- function ColorSwatch(props) {
41
- const rgbaString = (0, getCSSColorFromDef_1.getCSSColorFromDef)(props.colorDef);
42
- const colorStyle = {
43
- backgroundColor: rgbaString,
44
- ...props.style,
45
- };
46
- const handleClick = (e) => {
47
- // istanbul ignore else
48
- if (props && props.onColorPick)
49
- props.onColorPick(props.colorDef, e);
50
- };
51
- const classes = (0, classnames_1.default)("components-color-swatch", props.round && "round", props.className);
52
- const {
53
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
54
- onColorPick, colorDef, round, // do not pass on color swatch specific props
55
- // eslint-disable-next-line comma-dangle
56
- ...otherProps // pass-through props
57
- } = props;
58
- return React.createElement("button", { ...otherProps, style: colorStyle, className: classes, onClick: handleClick });
59
- }
60
- exports.ColorSwatch = ColorSwatch;
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 Color
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.ColorSwatch = void 0;
33
+ require("./Swatch.scss");
34
+ const classnames_1 = __importDefault(require("classnames"));
35
+ const React = __importStar(require("react"));
36
+ const getCSSColorFromDef_1 = require("./getCSSColorFromDef");
37
+ /** ColorSwatch Functional component displays a color swatch in a button
38
+ * @beta
39
+ */
40
+ function ColorSwatch(props) {
41
+ const rgbaString = (0, getCSSColorFromDef_1.getCSSColorFromDef)(props.colorDef);
42
+ const colorStyle = {
43
+ backgroundColor: rgbaString,
44
+ ...props.style,
45
+ };
46
+ const handleClick = (e) => {
47
+ // istanbul ignore else
48
+ if (props && props.onColorPick)
49
+ props.onColorPick(props.colorDef, e);
50
+ };
51
+ const classes = (0, classnames_1.default)("components-color-swatch", props.round && "round", props.className);
52
+ const {
53
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
54
+ onColorPick, colorDef, round, // do not pass on color swatch specific props
55
+ // eslint-disable-next-line comma-dangle
56
+ ...otherProps // pass-through props
57
+ } = props;
58
+ return React.createElement("button", { ...otherProps, style: colorStyle, className: classes, onClick: handleClick });
59
+ }
60
+ exports.ColorSwatch = ColorSwatch;
61
61
  //# sourceMappingURL=Swatch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Swatch.js","sourceRoot":"","sources":["../../../../src/imodel-components-react/color/Swatch.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,yBAAuB;AACvB,4DAAoC;AACpC,6CAA+B;AAG/B,6DAA0D;AAc1D;;GAEG;AACH,SAAgB,WAAW,CAAC,KAAuB;IACjD,MAAM,UAAU,GAAG,IAAA,uCAAkB,EAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACtD,MAAM,UAAU,GAAwB;QACtC,eAAe,EAAE,UAAU;QAC3B,GAAG,KAAK,CAAC,KAAK;KACf,CAAC;IAEF,MAAM,WAAW,GAAG,CAAC,CAAmB,EAAE,EAAE;QAC1C,uBAAuB;QACvB,IAAI,KAAK,IAAI,KAAK,CAAC,WAAW;YAC5B,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IACzC,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,IAAA,oBAAU,EACxB,yBAAyB,EACzB,KAAK,CAAC,KAAK,IAAI,OAAO,EACtB,KAAK,CAAC,SAAS,CAChB,CAAC;IAEF,MAAM;IACJ,6DAA6D;IAC7D,WAAW,EAAE,QAAQ,EAAE,KAAK,EAAE,6CAA6C;IAC3E,wCAAwC;IACxC,GAAG,UAAU,CAAC,qBAAqB;MACpC,GAAG,KAAK,CAAC;IAEV,OAAO,mCAAY,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,GAAI,CAAC;AACjG,CAAC;AA3BD,kCA2BC","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 Color\r\n */\r\n\r\nimport \"./Swatch.scss\";\r\nimport classnames from \"classnames\";\r\nimport * as React from \"react\";\r\nimport { ColorDef } from \"@itwin/core-common\";\r\nimport { CommonProps } from \"@itwin/core-react\";\r\nimport { getCSSColorFromDef } from \"./getCSSColorFromDef\";\r\n\r\n/** Properties for the [[ColorSwatch]] React component\r\n * @beta\r\n */\r\nexport interface ColorSwatchProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, CommonProps {\r\n /** color specification */\r\n colorDef: ColorDef;\r\n /** function to run when user selects color swatch */\r\n onColorPick?: ((color: ColorDef, e: React.MouseEvent) => void) | undefined;\r\n /** Show swatches as squares unless round is set to true */\r\n round?: boolean;\r\n}\r\n\r\n/** ColorSwatch Functional component displays a color swatch in a button\r\n * @beta\r\n */\r\nexport function ColorSwatch(props: ColorSwatchProps) {\r\n const rgbaString = getCSSColorFromDef(props.colorDef);\r\n const colorStyle: React.CSSProperties = {\r\n backgroundColor: rgbaString,\r\n ...props.style,\r\n };\r\n\r\n const handleClick = (e: React.MouseEvent) => {\r\n // istanbul ignore else\r\n if (props && props.onColorPick)\r\n props.onColorPick(props.colorDef, e);\r\n };\r\n\r\n const classes = classnames(\r\n \"components-color-swatch\",\r\n props.round && \"round\",\r\n props.className,\r\n );\r\n\r\n const {\r\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\r\n onColorPick, colorDef, round, // do not pass on color swatch specific props\r\n // eslint-disable-next-line comma-dangle\r\n ...otherProps // pass-through props\r\n } = props;\r\n\r\n return <button {...otherProps} style={colorStyle} className={classes} onClick={handleClick} />;\r\n}\r\n"]}
1
+ {"version":3,"file":"Swatch.js","sourceRoot":"","sources":["../../../../src/imodel-components-react/color/Swatch.tsx"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,yBAAuB;AACvB,4DAAoC;AACpC,6CAA+B;AAG/B,6DAA0D;AAc1D;;GAEG;AACH,SAAgB,WAAW,CAAC,KAAuB;IACjD,MAAM,UAAU,GAAG,IAAA,uCAAkB,EAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACtD,MAAM,UAAU,GAAwB;QACtC,eAAe,EAAE,UAAU;QAC3B,GAAG,KAAK,CAAC,KAAK;KACf,CAAC;IAEF,MAAM,WAAW,GAAG,CAAC,CAAmB,EAAE,EAAE;QAC1C,uBAAuB;QACvB,IAAI,KAAK,IAAI,KAAK,CAAC,WAAW;YAC5B,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IACzC,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,IAAA,oBAAU,EACxB,yBAAyB,EACzB,KAAK,CAAC,KAAK,IAAI,OAAO,EACtB,KAAK,CAAC,SAAS,CAChB,CAAC;IAEF,MAAM;IACJ,6DAA6D;IAC7D,WAAW,EAAE,QAAQ,EAAE,KAAK,EAAE,6CAA6C;IAC3E,wCAAwC;IACxC,GAAG,UAAU,CAAC,qBAAqB;MACpC,GAAG,KAAK,CAAC;IAEV,OAAO,mCAAY,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,GAAI,CAAC;AACjG,CAAC;AA3BD,kCA2BC","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 Color\n */\n\nimport \"./Swatch.scss\";\nimport classnames from \"classnames\";\nimport * as React from \"react\";\nimport { ColorDef } from \"@itwin/core-common\";\nimport { CommonProps } from \"@itwin/core-react\";\nimport { getCSSColorFromDef } from \"./getCSSColorFromDef\";\n\n/** Properties for the [[ColorSwatch]] React component\n * @beta\n */\nexport interface ColorSwatchProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, CommonProps {\n /** color specification */\n colorDef: ColorDef;\n /** function to run when user selects color swatch */\n onColorPick?: ((color: ColorDef, e: React.MouseEvent) => void) | undefined;\n /** Show swatches as squares unless round is set to true */\n round?: boolean;\n}\n\n/** ColorSwatch Functional component displays a color swatch in a button\n * @beta\n */\nexport function ColorSwatch(props: ColorSwatchProps) {\n const rgbaString = getCSSColorFromDef(props.colorDef);\n const colorStyle: React.CSSProperties = {\n backgroundColor: rgbaString,\n ...props.style,\n };\n\n const handleClick = (e: React.MouseEvent) => {\n // istanbul ignore else\n if (props && props.onColorPick)\n props.onColorPick(props.colorDef, e);\n };\n\n const classes = classnames(\n \"components-color-swatch\",\n props.round && \"round\",\n props.className,\n );\n\n const {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n onColorPick, colorDef, round, // do not pass on color swatch specific props\n // eslint-disable-next-line comma-dangle\n ...otherProps // pass-through props\n } = props;\n\n return <button {...otherProps} style={colorStyle} className={classes} onClick={handleClick} />;\n}\n"]}
@@ -1,24 +1,24 @@
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/style/themecolors";
6
- @import "~@itwin/itwinui-css/scss/style/typography";
7
-
8
- .components-color-swatch {
9
- font-size: $iui-font-size;
10
- height: 1em * 1.2;
11
- width: 1em * 1.2;
12
- border-width: 1px;
13
- border-radius: 3px;
14
- border-style: solid;
15
- border-color: $buic-inputs-border;
16
-
17
- &.round {
18
- border-radius: 50%;
19
- }
20
-
21
- &[disabled] {
22
- opacity: .2;
23
- }
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/style/themecolors";
6
+ @import "~@itwin/itwinui-css/scss/style/typography";
7
+
8
+ .components-color-swatch {
9
+ font-size: $iui-font-size;
10
+ height: 1em * 1.2;
11
+ width: 1em * 1.2;
12
+ border-width: 1px;
13
+ border-radius: 3px;
14
+ border-style: solid;
15
+ border-color: $buic-inputs-border;
16
+
17
+ &.round {
18
+ border-radius: 50%;
19
+ }
20
+
21
+ &[disabled] {
22
+ opacity: .2;
23
+ }
24
24
  }
@@ -1,7 +1,7 @@
1
- /** @packageDocumentation
2
- * @module Color
3
- */
4
- import { ColorDef } from "@itwin/core-common";
5
- /** @internal */
6
- export declare function getCSSColorFromDef(colorDef: ColorDef): string;
1
+ /** @packageDocumentation
2
+ * @module Color
3
+ */
4
+ import { ColorDef } from "@itwin/core-common";
5
+ /** @internal */
6
+ export declare function getCSSColorFromDef(colorDef: ColorDef): string;
7
7
  //# sourceMappingURL=getCSSColorFromDef.d.ts.map
@@ -1,24 +1,24 @@
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 Color
8
- */
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- exports.getCSSColorFromDef = void 0;
11
- /** @internal */
12
- function getCSSColorFromDef(colorDef) {
13
- const { b, g, r, t } = colorDef.colors;
14
- let rgbaString = "";
15
- if (t === 0)
16
- rgbaString = `rgb(${r},${g},${b})`;
17
- else {
18
- const alpha = ((255 - t) / 255).toFixed(2);
19
- rgbaString = `rgba(${r},${g},${b},${alpha})`;
20
- }
21
- return rgbaString;
22
- }
23
- exports.getCSSColorFromDef = getCSSColorFromDef;
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 Color
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.getCSSColorFromDef = void 0;
11
+ /** @internal */
12
+ function getCSSColorFromDef(colorDef) {
13
+ const { b, g, r, t } = colorDef.colors;
14
+ let rgbaString = "";
15
+ if (t === 0)
16
+ rgbaString = `rgb(${r},${g},${b})`;
17
+ else {
18
+ const alpha = ((255 - t) / 255).toFixed(2);
19
+ rgbaString = `rgba(${r},${g},${b},${alpha})`;
20
+ }
21
+ return rgbaString;
22
+ }
23
+ exports.getCSSColorFromDef = getCSSColorFromDef;
24
24
  //# sourceMappingURL=getCSSColorFromDef.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getCSSColorFromDef.js","sourceRoot":"","sources":["../../../../src/imodel-components-react/color/getCSSColorFromDef.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAIH,gBAAgB;AAChB,SAAgB,kBAAkB,CAAC,QAAkB;IACnD,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAC;IACvC,IAAI,UAAU,GAAG,EAAE,CAAC;IACpB,IAAI,CAAC,KAAK,CAAC;QACT,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;SAChC;QACH,MAAM,KAAK,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3C,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,GAAG,CAAC;KAC9C;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAVD,gDAUC","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 Color\r\n */\r\n\r\nimport { ColorDef } from \"@itwin/core-common\";\r\n\r\n/** @internal */\r\nexport function getCSSColorFromDef(colorDef: ColorDef): string {\r\n const { b, g, r, t } = colorDef.colors;\r\n let rgbaString = \"\";\r\n if (t === 0)\r\n rgbaString = `rgb(${r},${g},${b})`;\r\n else {\r\n const alpha = ((255 - t) / 255).toFixed(2);\r\n rgbaString = `rgba(${r},${g},${b},${alpha})`;\r\n }\r\n return rgbaString;\r\n}\r\n"]}
1
+ {"version":3,"file":"getCSSColorFromDef.js","sourceRoot":"","sources":["../../../../src/imodel-components-react/color/getCSSColorFromDef.ts"],"names":[],"mappings":";AAAA;;;+FAG+F;AAC/F;;GAEG;;;AAIH,gBAAgB;AAChB,SAAgB,kBAAkB,CAAC,QAAkB;IACnD,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAC;IACvC,IAAI,UAAU,GAAG,EAAE,CAAC;IACpB,IAAI,CAAC,KAAK,CAAC;QACT,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;SAChC;QACH,MAAM,KAAK,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3C,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,GAAG,CAAC;KAC9C;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAVD,gDAUC","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 Color\n */\n\nimport { ColorDef } from \"@itwin/core-common\";\n\n/** @internal */\nexport function getCSSColorFromDef(colorDef: ColorDef): string {\n const { b, g, r, t } = colorDef.colors;\n let rgbaString = \"\";\n if (t === 0)\n rgbaString = `rgb(${r},${g},${b})`;\n else {\n const alpha = ((255 - t) / 255).toFixed(2);\n rgbaString = `rgba(${r},${g},${b},${alpha})`;\n }\n return rgbaString;\n}\n"]}
@@ -1,45 +1,45 @@
1
- /** @packageDocumentation
2
- * @module PropertyEditors
3
- */
4
- import "./ColorEditor.scss";
5
- import * as React from "react";
6
- import { ColorDef } from "@itwin/core-common";
7
- import { PropertyValue } from "@itwin/appui-abstract";
8
- import { PropertyEditorBase, PropertyEditorProps, TypeEditor } from "@itwin/components-react";
9
- /** @internal */
10
- interface ColorEditorState {
11
- colorValue: number;
12
- readonly: boolean;
13
- isDisabled?: boolean;
14
- numColumns: number;
15
- availableColors: ColorDef[];
16
- }
17
- /** ColorEditor React component that is a property editor with text input
18
- * @beta
19
- */
20
- export declare class ColorEditor extends React.PureComponent<PropertyEditorProps, ColorEditorState> implements TypeEditor {
21
- private _buttonElement;
22
- /** @internal */
23
- readonly state: Readonly<ColorEditorState>;
24
- getPropertyValue(): Promise<PropertyValue | undefined>;
25
- get htmlElement(): HTMLElement | null;
26
- get hasFocus(): boolean;
27
- private setFocus;
28
- private _onColorPick;
29
- /** @internal */
30
- componentDidMount(): void;
31
- /** @internal */
32
- componentDidUpdate(prevProps: PropertyEditorProps): void;
33
- private setStateFromProps;
34
- /** @internal */
35
- render(): JSX.Element;
36
- }
37
- /** Color Property Editor registered for the "number" type name and "color-picker" editor name.
38
- * It uses the [[ColorEditor]] React component.
39
- * @beta
40
- */
41
- export declare class ColorPropertyEditor extends PropertyEditorBase {
42
- get reactNode(): React.ReactNode;
43
- }
44
- export {};
1
+ /** @packageDocumentation
2
+ * @module PropertyEditors
3
+ */
4
+ import "./ColorEditor.scss";
5
+ import * as React from "react";
6
+ import { ColorDef } from "@itwin/core-common";
7
+ import { PropertyValue } from "@itwin/appui-abstract";
8
+ import { PropertyEditorBase, PropertyEditorProps, TypeEditor } from "@itwin/components-react";
9
+ /** @internal */
10
+ interface ColorEditorState {
11
+ colorValue: number;
12
+ readonly: boolean;
13
+ isDisabled?: boolean;
14
+ numColumns: number;
15
+ availableColors: ColorDef[];
16
+ }
17
+ /** ColorEditor React component that is a property editor with text input
18
+ * @beta
19
+ */
20
+ export declare class ColorEditor extends React.PureComponent<PropertyEditorProps, ColorEditorState> implements TypeEditor {
21
+ private _buttonElement;
22
+ /** @internal */
23
+ readonly state: Readonly<ColorEditorState>;
24
+ getPropertyValue(): Promise<PropertyValue | undefined>;
25
+ get htmlElement(): HTMLElement | null;
26
+ get hasFocus(): boolean;
27
+ private setFocus;
28
+ private _onColorPick;
29
+ /** @internal */
30
+ componentDidMount(): void;
31
+ /** @internal */
32
+ componentDidUpdate(prevProps: PropertyEditorProps): void;
33
+ private setStateFromProps;
34
+ /** @internal */
35
+ render(): JSX.Element;
36
+ }
37
+ /** Color Property Editor registered for the "number" type name and "color-picker" editor name.
38
+ * It uses the [[ColorEditor]] React component.
39
+ * @beta
40
+ */
41
+ export declare class ColorPropertyEditor extends PropertyEditorBase {
42
+ get reactNode(): React.ReactNode;
43
+ }
44
+ export {};
45
45
  //# sourceMappingURL=ColorEditor.d.ts.map